Skip to content

Commit

Permalink
Remove 7.0 references from documentation (#4479)
Browse files Browse the repository at this point in the history
  • Loading branch information
MichaelSimons authored Jun 24, 2024
1 parent b4b0837 commit c647c27
Show file tree
Hide file tree
Showing 5 changed files with 15 additions and 14 deletions.
2 changes: 1 addition & 1 deletion Documentation/boostrap-new-os.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ Bootstrapping is necessary when:
- You have no version of the SDK available for your platform.
- You are building the SDK for a non-x64 platform.

In practice, most maintainers will bootstrap once every major version (e.g. 6.0.100, 7.0.100, etc). If you bootstrap these initial versions once you will generally be able to build 6.0.101 with 6.0.100, 6.0.102 with 6.0.101, 7.0.101 with 7.0.100, and so on. The source-build team attempts to avoid requiring bootstrapping more than once per major version but sometimes this is unavoidable - often when we move from one feature band to another, or if a major language feature is added, or if there are issues discovered with a given version of the SDK after release. These types of situations will be announced on the source-build [discussions page](https://github.com/dotnet/source-build/discussions).
In practice, most maintainers will bootstrap once every major version (e.g. 6.0.100, 8.0.100, etc). If you bootstrap these initial versions once you will generally be able to build 6.0.101 with 6.0.100, 6.0.102 with 6.0.101, 8.0.101 with 8.0.100, and so on. The source-build team attempts to avoid requiring bootstrapping more than once per major version but sometimes this is unavoidable - often when we move from one feature band to another, or if a major language feature is added, or if there are issues discovered with a given version of the SDK after release. These types of situations will be announced on the source-build [discussions page](https://github.com/dotnet/source-build/discussions).

### Choosing the seed CLI

Expand Down
4 changes: 2 additions & 2 deletions Documentation/bootstrapping-guidelines.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@

.NET utilizes itself to build therefore in order to build .NET from source, you first need to acquire or build a bootstrapping .NET SDK. This document provides guidance around acquiring and building this bootstrapping .NET SDK.

The version of the SDK used to source build .NET is referred to as "N-1" (e.g. 7.0.100). The version of the SDK produced by source build is referred to as "N" (e.g. 7.0.101). The previous SDK (e.g. N-1) supplies the tools required to build.
The version of the SDK used to source build .NET is referred to as "N-1" (e.g. 8.0.100). The version of the SDK produced by source build is referred to as "N" (e.g. 8.0.101). The previous SDK (e.g. N-1) supplies the tools required to build.

For new major versions or new platforms, you need to acquire or build the bootstrapping SDK as you cannot use a previous source-built SDK. This is to say you cannot use a 6.0 version of the SDK to build a 7.0 SDK.
For new major versions or new platforms, you need to acquire or build the bootstrapping SDK as you cannot use a previous source-built SDK. This is to say you cannot use a 8.0 version of the SDK to build a 9.0 SDK.

Bootstrapping typically requires an exception in the distro packaging guidelines (e.g. [Fedora Bootstrapping Guidelines](https://docs.fedoraproject.org/en-US/packaging-guidelines/#bootstrapping)).

Expand Down
2 changes: 1 addition & 1 deletion Documentation/planning/multi-sdk-band-support.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ This document serves as the design planning document for how .NET source build w

## Overview and General Approach

The general approach to supporting more than one SDK band is to **not** view the build of additional SDK feature bands as being any different from any other source build. Each build of the product combines a set of inputs (previously source-built artifacts + source) to produce a set of outputs that can ship to customers. When building two completely different major versions of .NET, the set of inputs is different (e.g. different source, 6.0 SDK vs. 7.0 SDK). Some of the previously source-built artifacts come from .NET, some may come from the source-built package ecosystem (e.g. icu or clang/llvm). If a repo were to be eliminated from the input sources, the binaries previously built from those sources would now need to come from previously-source built binaries.
The general approach to supporting more than one SDK band is to **not** view the build of additional SDK feature bands as being any different from any other source build. Each build of the product combines a set of inputs (previously source-built artifacts + source) to produce a set of outputs that can ship to customers. When building two completely different major versions of .NET, the set of inputs is different (e.g. different source, 6.0 SDK vs. 8.0 SDK). Some of the previously source-built artifacts come from .NET, some may come from the source-built package ecosystem (e.g. icu or clang/llvm). If a repo were to be eliminated from the input sources, the binaries previously built from those sources would now need to come from previously-source built binaries.

The primary restriction on building multiple SDK feature bands is that they must not differ in the shared runtimes. For N bands, there must be a single runtime artifact. Thus, we can view a source-build of N SDK feature bands as:

Expand Down
13 changes: 7 additions & 6 deletions Documentation/system-requirements.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ This document provides the system requirements to source build the .NET SDK for
### Linux

* [Toolchain Setup](https://github.com/dotnet/runtime/blob/main/docs/workflow/requirements/linux-requirements.md#toolchain-setup)
* [Preconfigured Container Images](https://github.com/dotnet/dotnet-buildtools-prereqs-docker) - These images are used by [CI](https://github.com/dotnet/installer/blob/release/7.0.1xx/src/SourceBuild/Arcade/eng/common/templates/job/source-build-run-tarball-build.yml#L12-L16) to build and test source-build.
* [Preconfigured Container Images](https://github.com/dotnet/dotnet-buildtools-prereqs-docker) - These images are used by [CI](https://github.com/dotnet/dotnet/blob/main/src/sdk/eng/pipelines/templates/stages/vmr-build.yml) to build and test source-build.
* [Distros Source Building .NET](https://github.com/dotnet/source-build#net-in-linux-distributions)

### MacOS
Expand Down Expand Up @@ -45,9 +45,10 @@ A minimum of 8 GB of memory is recommended.

The following assets will need to be downloaded in order to build.

* Source: 525 MB
* SDK: 230 MB
* Source:
* .NET 8.0: ~300 MB
* .NET 6.0: ~500 MB
* SDK: ~200 MB
* Artifacts
* .NET 8.0: 1 GB
* .NET 7.0: 1.2 GB
* .NET 6.0: 4 GB
* .NET 8.0: ~1 GB
* .NET 6.0: ~4 GB
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,11 @@ This repo is the starting point for building .NET from source. It contains docum
Clone the dotnet/dotnet repo and check out the tag for the desired release.
Then, follow the instructions in [dotnet/dotnet's README](https://github.com/dotnet/dotnet/blob/main/README.md#dev-instructions) to build .NET from source.

## Building .NET 7.0 and .NET 6.0
## Building .NET 6.0

.NET 6.0 and 7.0 are built from source using the [dotnet/installer](https://github.com/dotnet/installer) repo.
.NET 6.0 is built from source using the [dotnet/installer](https://github.com/dotnet/installer/tree/release/6.0.1xx) repo.
Clone the dotnet/installer repo and check out the tag for the desired release.
Then, follow the instructions in [dotnet/installer's README](https://github.com/dotnet/installer/blob/main/README.md#build-net-from-source-source-build) to build .NET from source.
Then, follow the instructions in [dotnet/installer's README](https://github.com/dotnet/installer/tree/release/6.0.1xx?tab=readme-ov-file#build-net-from-source-source-build) to build .NET from source.
Please see the [support](#support) section below to see which feature branches are currently supported.

> The source-build repository doesn't currently support Windows. See [source-build#1190](https://github.com/dotnet/source-build/issues/1190).
Expand Down Expand Up @@ -79,7 +79,7 @@ Source-build solves common challenges that most developers encounter when trying
## Support

.NET Source-Build is supported on the oldest available .NET SDK feature update for each major release, and on Linux only.
For example, if .NET `6.0.1xx`, `6.0.2xx`, `7.0.1xx`, and `7.0.2xx` feature updates are available from [dotnet.microsoft.com](https://dotnet.microsoft.com/en-us/download/dotnet/6.0), Source-Build will support `6.0.1xx` and `7.0.1xx`.
For example, if .NET `6.0.1xx`, `6.0.2xx`, `8.0.1xx`, and `8.0.2xx` feature updates are available from [dotnet.microsoft.com](https://dotnet.microsoft.com/en-us/download/dotnet/6.0), Source-Build will support `6.0.1xx` and `8.0.1xx`.

For the latest information about Source-Build support for new .NET versions, please check our [GitHub Discussions page](https://github.com/dotnet/source-build/discussions) for announcements.

Expand Down

0 comments on commit c647c27

Please sign in to comment.