Skip to content

Commit bda6bae

Browse files
committed
update per feedback on PR dotnet#6081
Moving those changes to a new branch and PR.
1 parent 2ea44cf commit bda6bae

File tree

4 files changed

+25
-25
lines changed

4 files changed

+25
-25
lines changed

docs/core/tutorials/metapackages.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11

22
### Shipping a patch release
33

4-
After shipping a major release of .NET Core, such as version 2.0.0, patch-level changes are made to .NET Core libraries to fix bugs and improve performance and reliability. That means that no new APIs are introduced. The various metapackages are updated to reference the updated .NET Core library packages. The metapackages are versioned as patch updates (`MAJOR.MINOR.PATCH`). Target frameworks are never updated as part of patch releases. A new .NET Core distribution is released with a version number that matches that of the `Microsoft.NETCore.App` metapackage.
4+
After shipping a major or minor release of .NET Core, such as version 2.0.0, patch-level changes are made to .NET Core libraries to fix bugs and improve performance and reliability. That means that no new APIs are introduced. The various metapackages are updated to reference the updated .NET Core library packages. The metapackages are versioned as patch updates (`MAJOR.MINOR.PATCH`). Target frameworks are never updated as part of patch releases. A new .NET Core distribution is released with a version number that matches that of the `Microsoft.NETCore.App` metapackage.
55

66
### Shipping a minor release
77

docs/core/versions/_trash.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ Note: [`Microsoft.NETCore.Portable.Compatibility`](https://www.nuget.org/package
4242

4343
### Target frameworks
4444

45-
Target framework versions are updated when new APIs are added. They have no concept of patch version, since they represent API shape and not implementation concerns. Major and minor versioning follows the SemVer rules specified earlier, and coincides with the `MAJOR` and `MINOR` numbers of the .NET Core distributions that implement them.
45+
Target framework versions are updated when new APIs are added. They have no concept of patch version, since they represent API shape and not implementation concerns. Major and minor versioning follows the SemVer rules specified earlier, and coincides with the `MAJOR` and `MINOR` numbers of the .NET Core distributions that implement them or the .NET Standard version that defines them.
4646

4747
## Versioning in practice
4848

docs/core/versions/version-history.md

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ Version numbers for the .NET Core are challenging because .NET Core SDK and .NET
1212

1313
2.0.0 forced version alignment and this proceeded smoothly for one release. In December 2017 .NET Core SDK had a feature release, with no corresponding release in the .NET Core Runtime. The team chose goals 1 and 3, losing alignment between the .NET Core Runtime and SDK and resulted in a several .NET Core SDK 2.1.x versions that were released before .NET Core Runtime 2.1. Since the SDK is not forwards compatible, these 2.1.x SDK versions could not target .NET Core Runtime 2.1. The team responded to the considerable confusion this caused by switching to goals 1 and 2, abandoning semantic versioning as described in [.NET Core versioning]([[ index.md]]).
1414

15-
Because the timing of the decision to abandon semantic versioning was made between , there were transitional releases in the 2.1.10x and 2.1.20x version number ranges that can also not target .NET Core Runtime 2.1.
15+
Because the timing of the decision to abandon semantic versioning, there were transitional releases in the 2.1.10x and 2.1.20x version number ranges that can also not target .NET Core Runtime 2.1.
1616

1717
The first two digits of the version numbers realign with the 2.1.0 version of the .NET Core Runtime and the 2.1.300 version of the .NET Core SDK.
1818

@@ -21,25 +21,25 @@ Evaluating [releases.json](https://github.com/dotnet/core/blob/master/release-no
2121
| Date | .NET Core SDK(4) | .NET Core Runtimes | Contains C# | Contains VB | Notes |
2222
|------------|------------------|--------------------|-------------|-------------|-------|
2323
| 2017-03-07 | 1.0.1 | 1.0.4,1.1.1 | 7.0 | 15.0 | |
24-
| 2017-05-09 | 1.0.4 | 1.0.5, 1.1.2 | | | |
25-
| 2017-09-21 | 1.1.4 | 1.0.7, 1.1.4 | | | |
26-
| 2017-11-14 | 1.1.7 | 1.0.8, 1.1.5 | | | |
27-
| 2017-11-14 | 1.1.7 | 1.0.9, 1.1.6 | | | |
28-
| 2018-03-13 | 1.1.8 | 1.0.10, 1.1.7 | | | |
29-
| 2018-04-17 | 1.1.9 | 1.0.11, 1.1.8 | | | |
30-
| 2017-08-14 | 2.0.0 | 2.0.0 | 7.1 | | |
31-
| 2017-11-14 | 2.0.3 | 2.0.3 | 7.1 | 15.1 | |
32-
| 2017-12-04 | 2.1.2 | 2.0.3 | 7.1 | 15.1 | (1) |
33-
| 2018-01-09 | 2.1.4 | 2.0.5 | 7.1 | 15.1 | (1) |
34-
| 2018-03-13 | 2.1.100 | 2.0.5 | 7.2 | 15.2 | (1,2) |
35-
| 2018-03-13 | 2.1.101 | 2.0.6 | 7.2 | 15.2 | (1,2) |
36-
| 2018-03-19 | 2.1.102 | 2.0.6 | 7.2 | 15.2 | (1,2) |
37-
| 2018-03-22 | 2.1.103 | 2.0.6 | 7.2 | 15.2 | (1,2) |
38-
| 2018-04-04 | 2.1.104 | 2.0.6 | 7.2 | 15.2 | (1,2) |
39-
| 2018-04-27 | 2.1.105 | 2.0.7 | 7.2 | 15.2 | (1,2) |
40-
| 2018-05-08 | 2.1.200 | 2.0.8 | 7.2 | 15.2 | (1,2) |
41-
| 2018-05-21 | 2.1.201 | 2.0.8 | 7.2 | 15.2 | (1,2) |
42-
| 2018-05-30 | 2.1.300 | 2.1.0 | 7.3 | 15.3 | (3) |
24+
| 2017-05-09 | 1.0.4 | 1.0.5, 1.1.2 | 7.0 | 15.0 | |
25+
| 2017-09-21 | 1.1.4 | 1.0.7, 1.1.4 | 7.0 | 15.0 | |
26+
| 2017-11-14 | 1.1.7 | 1.0.8, 1.1.5 | 7.0 | 15.0 | |
27+
| 2017-11-14 | 1.1.7 | 1.0.9, 1.1.6 | 7.0 | 15.0 | |
28+
| 2018-03-13 | 1.1.8 | 1.0.10, 1.1.7 | 7.0 | 15.0 | |
29+
| 2018-04-17 | 1.1.9 | 1.0.11, 1.1.8 | 7.0 | 15.0 | |
30+
| 2017-08-14 | 2.0.0 | 2.0.0 | 7.1 | 15.3 | |
31+
| 2017-11-14 | 2.0.3 | 2.0.3 | 7.1 | 15.3 | |
32+
| 2017-12-04 | 2.1.2 | 2.0.3 | 7.1 | 15.3 | (1) |
33+
| 2018-01-09 | 2.1.4 | 2.0.5 | 7.1 | 15.3 | (1) |
34+
| 2018-03-13 | 2.1.100 | 2.0.5 | 7.2 | 15.5 | (1,2) |
35+
| 2018-03-13 | 2.1.101 | 2.0.6 | 7.2 | 15.5 | (1,2) |
36+
| 2018-03-19 | 2.1.102 | 2.0.6 | 7.2 | 15.5 | (1,2) |
37+
| 2018-03-22 | 2.1.103 | 2.0.6 | 7.2 | 15.5 | (1,2) |
38+
| 2018-04-04 | 2.1.104 | 2.0.6 | 7.2 | 15.5 | (1,2) |
39+
| 2018-04-27 | 2.1.105 | 2.0.7 | 7.2 | 15.5 | (1,2) |
40+
| 2018-05-08 | 2.1.200 | 2.0.8 | 7.2 | 15.5 | (1,2) |
41+
| 2018-05-21 | 2.1.201 | 2.0.8 | 7.2 | 15.5 | (1,2) |
42+
| 2018-05-30 | 2.1.300 | 2.1.0 | 7.3 | 15.5 | (3) |
4343

4444
(1) These versions of .NET Core SDK 2.1.x cannot build apps targeting .NET Core Runtime 2.1.x
4545
(2) The new version number scheme was decided at the start of 2018. However, there were two feature level releases before .NET Core Runtime 2.10 released. Thus, 2.1.10x and 2.20x represent a transition period.

docs/core/versions/versioning-standard.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,18 +4,18 @@ Your magic stuff
44

55
# Versioning .NET Standard
66

7-
.NET Standard consists of a reference library and implementations specific to each platform. The reference library contains the definition of .NET Standard. Each implementation fulfills the .NET Standard contract on the specific platform. .NET Standard usually refers to the reference library, and the implementation is detail of the corresponding runtime.
7+
.NET Standard consists of a .net reference assembly and implementations specific to each platform. The reference assembly contains the definition of .NET Standard. Each implementation fulfills the .NET Standard contract on the specific platform. .NET Standard usually refers to the reference library, and the implementation is detail of the corresponding runtime.
88

99
The .NET Standard reference implementation uses a `MAJOR.MINOR` versioning scheme. `PATCH` level isn't useful for .NET Standard because if exposes only an API (no implementation) and by definition any change to the API would represent a change in the feature set, and thus a minor version bump.
1010

1111
The implementations on each runtime may version, but this would normally be part of the runtime release, and thus not evident to the programmers using .NET Standard on that platform.
1212

13-
There is no real coupling between .NET Standard versions and .NET Core versions: .NET Core 2.0 happens to implement .NET Standard 2.0, but .NET Core 2.1 also implements .NET Standard 2.0. .NET Core will ship new APIs not yet included in .NET Standard. .NET Standard is also a concept that applies to other targets, such as .NET Framework or Mono, even if its inception happened to coincide with that of .NET Core. If .NET Standard 2.1 ships, .NET Core 2.1 will not support it.
13+
Each version of .NET Core implements a version of .NET standard. .NET Standard and .NET Core version independently. It's a coincidence that .NET Core 2.0 implements .NET Standard 2.0. .NET Core 2.1 also implements .NET Standard 2.0. .NET Core will support future versions of .NET Standard as they become available.
1414

1515
| .NET Core | .NET Standard |
1616
|-----------|---------------|
1717
| 1.0 | up to 1.6 |
1818
| 2.0 | up to 2.0 |
19-
| 2.1 | up to 2.1 |
19+
| 2.1 | up to 2.0 |
2020

2121
## See also

0 commit comments

Comments
 (0)