Code Monkey home page Code Monkey logo

vscode-dotnet-runtime's Introduction

.NET Install Tool for Extension Authors (Preview)

Version Installs

This extension allows acquisition of the .NET Core runtime specifically for VSCode extension authors. This tool is intended to be leveraged in extensions that are written in .NET and require .NET to boot pieces of the extension (e.g. a language server). The extension is not intended to be used directly by users to install .NET for development.

This is a very early release of this tool. If you want to test it, reach out on GitHub to discuss being in our early beta.

Goals: Acquiring .NET Core for extensions

Extension authors do not know if the .NET core runtime is installed on the target machine. Existing solutions have a number of challenges:

  1. Duplication of .NET Core runtimes and slow updates: Currently, each extension is acquiring its own copy of .NET core at ~30mb each.
  2. Clean up: When extensions install .NET Core in a non-VSCode folder location it is likely to be left behind.
  3. Servicing and floating versions: It is difficult to ensure that extensions will use the latest releases, particuarly without re-shipping.
  4. Corrupted installations: Corrupted installations can arise when VS Code is shut down mid-download or unzip.
  5. Network security policies: Alternative installation methods may result in errors due to blocking from network security policies.
  6. Locked down environments: Some developers are unable to freely install software, requiring the ability to install extensions manually via a VSIX.
  7. Missing dependencies: Users may run into situations where .NET Core cannot run as-is, requiring the installation of missing pieces.

This extension attempts to solve the above issues.

Contributing to Repository

Looking for something to work on? The list of up-for-grabs issues is a great place to start.

Please read the following documents to get started.

This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. For more information, see the .NET Foundation Code of Conduct.

Building

Requirements

  • Node.js + npm
  • VSCode

Running the sample

  1. Run the build script at the root of the repo (build.sh or build.cmd).
  2. Open the repo's workspace in VSCode
  3. Run the Run Sample Extension configuration in VSCode
  4. In the launched experimental instance open the command pallete and run the Sample: Run a dynamically acquired .NET Core Hello World App.

.NET Foundation

.NET Core for VSCode is a .NET Foundation project.

See the .NET home repo to find other .NET-related projects.

License

.NET Core (including this repo) is licensed under the MIT license.

vscode-dotnet-runtime's People

Contributors

carloslahrssen avatar dependabot[bot] avatar ievangelist avatar ntaylormullen avatar scottaddie avatar sfoslund avatar stephenweatherford avatar terrajobst avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.