-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'release/9.0.1xx' of https://github.com/dotnet/sdk into …
…merge/release/8.0.4xx-to-release/9.0.1xx
- Loading branch information
Showing
5,866 changed files
with
627,664 additions
and
144,504 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
{ | ||
"version": 1, | ||
"isRoot": true, | ||
"tools": { | ||
"microsoft.dotnet.darc": { | ||
"version": "1.1.0-beta.24367.3", | ||
"commands": [ | ||
"darc" | ||
] | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
// For format details, see https://aka.ms/devcontainer.json. | ||
{ | ||
"name": "dotnet", | ||
"image": "mcr.microsoft.com/devcontainers/base:debian", | ||
"customizations": { | ||
"vscode": { | ||
"extensions": [ | ||
"ms-dotnettools.csdevkit", | ||
"EditorConfig.EditorConfig", | ||
"DavidAnson.vscode-markdownlint" | ||
] | ||
} | ||
}, | ||
// Use 'postCreateCommand' to run commands after the container is created. | ||
"postCreateCommand": "bash -i ${containerWorkspaceFolder}/.devcontainer/scripts/post-creation.sh", | ||
// Add the locally installed dotnet to the path to ensure that it is activated | ||
// This is needed so that things like the C# extension can resolve the correct SDK version | ||
"remoteEnv": { | ||
"PATH": "${containerWorkspaceFolder}/.dotnet:${containerEnv:PATH}", | ||
"DOTNET_INSTALL_DIR": "${containerWorkspaceFolder}/.dotnet", | ||
"DOTNET_MULTILEVEL_LOOKUP": "0", | ||
"DOTNET_ROOT": "${containerWorkspaceFolder}/.dotnet", | ||
"DOTNET_MSBUILD_SDK_RESOLVER_CLI_DIR": "${containerWorkspaceFolder}/.dotnet", | ||
"NUGET_PACKAGES": "/home/vscode/.nuget/packages" | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
# Install SDK and tool dependencies before container starts | ||
# Also run the full restore on the repo so that go-to definition | ||
# and other language features will be available in C# files | ||
./restore.sh |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
<!-- | ||
######## ######## ### ######## ######## ## ## #### ###### | ||
## ## ## ## ## ## ## ## ## ## ## ## ## | ||
## ## ## ## ## ## ## ## ## ## ## ## | ||
######## ###### ## ## ## ## ## ######### ## ###### | ||
## ## ## ######### ## ## ## ## ## ## ## | ||
## ## ## ## ## ## ## ## ## ## ## ## ## | ||
## ## ######## ## ## ######## ## ## ## #### ###### | ||
--> | ||
|
||
This Codespace allows you to debug or make changes to the .NET SDK product. In case you ran this | ||
from a `dotnet/sdk` PR branch, the directory tree contains the VMR (`dotnet/dotnet`) checked out into | ||
`/workspaces/dotnet` with the PR changes pulled into it. Building the VMR from the codespace mimics | ||
what the VMR pipelines in an sdk PR are doing. The build takes about 45-75 minutes | ||
(depending on the machine spec and target OS) and, after completion, produces an archived .NET SDK located in | ||
`/workspaces/dotnet/artifacts/assets/Release`. | ||
|
||
## Build the SDK | ||
|
||
To build the repository, run one of the following: | ||
```bash | ||
# Microsoft based build | ||
./build.sh | ||
``` | ||
or | ||
|
||
```bash | ||
# Building from source only | ||
./prep-source-build.sh && ./build.sh -sb | ||
``` | ||
|
||
> Please note that, at this time, the build modifies some of the checked-in sources so it might | ||
be preferential to rebuild the Codespace between attempts (or reset the working tree changes). | ||
|
||
For more details, see the instructions at https://github.com/dotnet/dotnet. | ||
|
||
## Synchronize your changes in locally | ||
|
||
When debugging the build, you have two options how to test your changes in this environment. | ||
|
||
### Making changes to the VMR directly | ||
|
||
You can make the changes directly to the local checkout of the VMR at `/workspaces/dotnet`. You | ||
can then try to build the VMR and see if the change works for you. | ||
|
||
### Pull changes into the Codespace from your fork | ||
|
||
You can also make a fix in the individual source repository (e.g. `dotnet/runtime`) and push the | ||
fix into a branch; can be in your fork too. Once you have the commit pushed, you can pull this | ||
version of the repository into the Codespace by running: | ||
|
||
``` | ||
/workspaces/synchronize-vmr.sh \ | ||
--repository <repo>:<commit, tag or branch> \ | ||
--remote <repo>:<fork URI> | ||
``` | ||
|
||
You can now proceed building the VMR in the Codespace using instructions above. You can repeat | ||
this process and sync a new commit from your fork. Only note that, at this time, Source-Build | ||
modifies some of the checked-in sources so you'll need to revert the working tree changes | ||
between attempts. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
// Container suitable for investigating issues with source build | ||
// Contains the VMR (dotnet/dotnet) with applied changes from the current PR | ||
// The container supports source-building the SDK | ||
{ | ||
"name": "VMR with PR changes", | ||
"image": "mcr.microsoft.com/dotnet-buildtools/prereqs:fedora-39", | ||
"hostRequirements": { | ||
// A completely source built .NET is >64 GB with all the repos/artifacts | ||
"storage": "128gb" | ||
}, | ||
"customizations": { | ||
"vscode": { | ||
"extensions": [ | ||
"ms-dotnettools.csharp" | ||
] | ||
}, | ||
"codespaces": { | ||
"openFiles": [ | ||
"sdk/.devcontainer/vmr/README.md" | ||
] | ||
} | ||
}, | ||
"onCreateCommand": "${containerWorkspaceFolder}/sdk/.devcontainer/vmr/init.sh", | ||
"workspaceFolder": "/workspaces" | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
#!/usr/bin/env bash | ||
|
||
set -ex | ||
|
||
source="${BASH_SOURCE[0]}" | ||
script_root="$( cd -P "$( dirname "$source" )" && pwd )" | ||
|
||
sdk_dir=$(realpath "$script_root/../..") | ||
workspace_dir=$(realpath "$sdk_dir/../") | ||
tmp_dir=$(realpath "$workspace_dir/tmp") | ||
vmr_dir=$(realpath "$workspace_dir/dotnet") | ||
|
||
cp "$sdk_dir/.devcontainer/vmr/synchronize-vmr.sh" "$workspace_dir" | ||
|
||
mkdir -p "$tmp_dir" | ||
|
||
# Codespaces performs a shallow fetch only | ||
git -C "$sdk_dir" fetch --all --unshallow | ||
|
||
# We will try to figure out, which branch is the current (PR) branch based off of | ||
# We need this to figure out, which VMR branch to use | ||
vmr_branch=$(git -C "$sdk_dir" log --pretty=format:'%D' HEAD^ \ | ||
| grep 'origin/' \ | ||
| head -n1 \ | ||
| sed 's@origin/@@' \ | ||
| sed 's@,.*@@') | ||
|
||
"$workspace_dir/synchronize-vmr.sh" --branch "$vmr_branch" --debug | ||
|
||
(cd "$vmr_dir" && ./prep-source-build.sh) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
#!/bin/bash | ||
|
||
(cd /workspaces/sdk \ | ||
&& ./eng/vmr-sync.sh --vmr /workspaces/dotnet --tmp /workspaces/tmp $*) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.