Skip to content

Instantly share code, notes, and snippets.

@leecow
leecow / netcore-3-acquisition.md
Last active October 17, 2018 16:55
.NET Core 3.0 Acquisition and Deployment

.NET Core 3.0 Acquisition and Deployment

This document describes .NET Core acquisition and deployment by beginning with how each area is handled in .NET Core 2.1 and identifying new scenarios for .NET Core 3.0 which expose gaps in the experiences. For the purposes of this document, acquisition and deployment are defined as follows:

  • Acquisition: Discovery and installation of .NET Core assets on a target system. This includes discovering that updates are available for the Runtime and SDK.
  • Deployment: Delivery of the .NET Runtime, applications and application updates.

Acquisition

The table below outlines all of the artifact types used to deliver .NET Core to target systems, basic action someone must take to use the artifact and whether an update notification and acquisition mechanism is available. Note that any 'update' action, is a complete installation of .NET Core. There is no concept of a delta patch.

.NET Core Release Data (releases.json) Redesign and Deprecation

The releases.json and releases.csv files began life as helper tools for some of our internal release work, some experimentation and to possibly be useful to the community. It has been great to learn the files are indeed in use and many folks depend on them as a trigger for a number of activities.

Between the usages which we have become aware and in considering further activities that could be enabled to reason about things such as checking .NET Core version availability and support status, it became clear the current format is inadequate.

An updated format has been designed and tested which will replace the current files. The timeline below describes the path to obsoleting the current files.

On October 1, 2018 .NET Core 2.0 reached end of life. This means the version is no longer supported and updates will no longer be provided. We recommend moving to .NET Core 2.1, our long term support (LTS) release.

Discussion

Please share you thoughts on this change and see what others are saying at:

Context

@leecow
leecow / dotnet-uninstall.md
Last active August 20, 2018 15:54
Managing .NET Core installations

Managing .NET Core installations

.NET Core is designed to allow multiple versions of the SDK and Runtime to exist side-by-side, enabling version dependency flexibility for both building and running .NET Core applications. These installation and automatic version roll forward behaviors offer valuable benefits but one pronounced drawback. As updates of the .NET Core SDK or .NET Core Runtime are installed, previous versions remain on-disk, resulting in increasing disk usage, over time. More than 50 .NET Core SDK updates have been released, which means there may be many versions of the SDK and Runtime installed on your system that could be removed.

Safe to remove?

The safe removal of previous versions of the SDK and Runtime is enabled by .NET Core version selection behaviors, and the runtime compatibility of .NET Core across updates. It is a first order principle that .NET Core runtime updates are compatible within a major version 'band' s