diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index f14d7c3569..dc0cfce7a0 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,71 +1,16 @@ -#------------------------------------------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See https://go.microsoft.com/fwlink/?linkid=2090316 for license information. -#------------------------------------------------------------------------------------------------------------- -ARG VARIANT="3.1" -FROM mcr.microsoft.com/dotnet/sdk:${VARIANT}-focal +# See here for image contents: https://github.com/microsoft/vscode-dev-containers/tree/v0.215.1/containers/dotnet/.devcontainer/base.Dockerfile -# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser" -# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs -# will be updated to match your local UID/GID (when using the dockerFile property). -# See https://aka.ms/vscode-remote/containers/non-root-user for details. -ARG USERNAME=vscode -ARG USER_UID=1000 -ARG USER_GID=$USER_UID +# [Choice] .NET version: 6.0, 5.0, 3.1, 6.0-bullseye, 5.0-bullseye, 3.1-bullseye, 6.0-focal, 5.0-focal, 3.1-focal +ARG VARIANT=6.0-bullseye +FROM mcr.microsoft.com/vscode/devcontainers/dotnet:0-${VARIANT} -# Options for common package install script -ARG INSTALL_ZSH="true" -ARG UPGRADE_PACKAGES="true" -ARG COMMON_SCRIPT_SOURCE="https://raw.githubusercontent.com/microsoft/vscode-dev-containers/v0.126.0/script-library/common-debian.sh" -ARG COMMON_SCRIPT_SHA="a6bfacc5c9c6c3706adc8788bf70182729767955b7a5509598ac205ce6847e1e" - -# [Optional] Settings for installing Node.js. -ARG INSTALL_NODE="true" -ARG NODE_SCRIPT_SOURCE="https://raw.githubusercontent.com/microsoft/vscode-dev-containers/master/script-library/node-debian.sh" -ARG NODE_SCRIPT_SHA="dev-mode" -ARG NODE_VERSION="lts/*" -ENV NVM_DIR=/usr/local/share/nvm -# Have nvm create a "current" symlink and add to path to work around https://github.com/microsoft/vscode-remote-release/issues/3224 -ENV NVM_SYMLINK_CURRENT=true -ENV PATH=${NVM_DIR}/current/bin:${PATH} - -# [Optional] Install the Azure CLI -ARG INSTALL_AZURE_CLI="false" +# [Optional] PoshGit ARG INSTALL_POSHGIT="true" # Configure apt and install packages -RUN apt-get update \ - && export DEBIAN_FRONTEND=noninteractive \ - # - # Verify git, common tools / libs installed, add/modify non-root user, optionally install zsh - && apt-get -y install --no-install-recommends curl ca-certificates 2>&1 \ - && curl -sSL ${COMMON_SCRIPT_SOURCE} -o /tmp/common-setup.sh \ - && ([ "${COMMON_SCRIPT_SHA}" = "dev-mode" ] || (echo "${COMMON_SCRIPT_SHA} */tmp/common-setup.sh" | sha256sum -c -)) \ - && /bin/bash /tmp/common-setup.sh "${INSTALL_ZSH}" "${USERNAME}" "${USER_UID}" "${USER_GID}" "${UPGRADE_PACKAGES}" \ - # - # [Optional] Install Node.js for ASP.NET Core Web Applicationss - && if [ "$INSTALL_NODE" = "true" ]; then \ - curl -sSL ${NODE_SCRIPT_SOURCE} -o /tmp/node-setup.sh \ - && ([ "${NODE_SCRIPT_SHA}" = "dev-mode" ] || (echo "${COMMON_SCRIPT_SHA} */tmp/node-setup.sh" | sha256sum -c -)) \ - && /bin/bash /tmp/node-setup.sh "${NVM_DIR}" "${NODE_VERSION}" "${USERNAME}"; \ - fi \ - # - # [Optional] Install the Azure CLI - && if [ "$INSTALL_AZURE_CLI" = "true" ]; then \ - echo "deb [arch=amd64] https://packages.microsoft.com/repos/azure-cli/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/azure-cli.list \ - && curl -sL https://packages.microsoft.com/keys/microsoft.asc | apt-key add - 2>/dev/null \ - && apt-get update \ - && apt-get install -y azure-cli; \ - fi \ - # +RUN export DEBIAN_FRONTEND=noninteractive \ # [Optional] Install the Posh-Git && if [ "$INSTALL_POSHGIT" = "true" ]; then \ pwsh -command "PowerShellGet\Install-Module posh-git -Scope CurrentUser -AllowPrerelease -Force" \ && pwsh -command "Add-PoshGitToProfile -AllHosts"; \ - fi \ - # - # Clean up - && apt-get autoremove -y \ - && apt-get clean -y \ - && rm -f /tmp/common-setup.sh /tmp/node-setup.sh \ - && rm -rf /var/lib/apt/lists/* + fi diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 99e6d388d4..b2cff21182 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -1,25 +1,55 @@ // For format details, see https://aka.ms/vscode-remote/devcontainer.json or this file's README at: // https://github.com/microsoft/vscode-dev-containers/tree/v0.126.0/containers/dotnetcore { - "name": "C# (.NET Core)", + "name": "C# (.NET 6)", "build": { "dockerfile": "Dockerfile", "args": { - // Update 'VARIANT' to pick a .NET Core version. Rebuild the container if - // it already exists to update. Example variants: 3.1, 5.0, 6.0 + // Update 'VARIANT' to pick a .NET SDK version: 3.1, 5.0, 6.0 + // Append -bullseye or -focal to pin to an OS version. "VARIANT": "6.0", - // Options - "INSTALL_NODE": "false", - "NODE_VERSION": "lts/*", - "INSTALL_ZSH": "false", - "INSTALL_AZURE_CLI": "false", - "UPGRADE_PACKAGES": "false", - "INSTALL_POSHGIT": "true" } }, // Set *default* container specific settings.json values on container create. "settings": { - "terminal.integrated.shell.linux": "/usr/bin/pwsh" + "files.associations": { + "*.csproj": "msbuild", + "*.fsproj": "msbuild", + "*.globalconfig": "ini", + "*.manifest": "xml", + "*.nuspec": "xml", + "*.pkgdef": "ini", + "*.projitems": "msbuild", + "*.props": "msbuild", + "*.resx": "xml", + "*.rsp": "Powershell", + "*.ruleset": "xml", + "*.settings": "xml", + "*.shproj": "msbuild", + "*.slnf": "json", + "*.targets": "msbuild", + "*.vbproj": "msbuild", + "*.vsixmanifest": "xml", + "*.vstemplate": "xml", + "*.xlf": "xml", + "*.yml": "azure-pipelines" + }, + "terminal.integrated.defaultProfile.linux": "pwsh", + // ms-dotnettools.csharp settings + "omnisharp.defaultLaunchSolution": "format.sln", + "omnisharp.disableMSBuildDiagnosticWarning": true, + "omnisharp.useModernNet": true, + "omnisharp.enableAsyncCompletion": true, + "omnisharp.enableEditorConfigSupport": true, + "omnisharp.enableImportCompletion": true, + "omnisharp.enableRoslynAnalyzers": true, + "omnisharp.organizeImportsOnFormat": true, + // ms-vscode.powershell settings + "powershell.promptToUpdatePowerShell": false, + "powershell.integratedConsole.showOnStartup": false, + "powershell.startAutomatically": false, + // ms-azure-devops.azure-pipelines settings + "azure-pipelines.customSchemaFile": ".vscode/dnceng-schema.json" }, // Add the IDs of extensions you want installed when the container is created. "extensions": [ @@ -27,28 +57,9 @@ "editorconfig.editorconfig", "formulahendry.dotnet-test-explorer", "tintoy.msbuild-project-tools", - "ms-vscode.powershell" + "ms-vscode.powershell", + "ms-azure-devops.azure-pipelines" ], - // Use 'forwardPorts' to make a list of ports inside the container available locally. - // "forwardPorts": [5000, 5001], - // [Optional] To reuse of your local HTTPS dev cert, first export it locally using this command: - // * Windows PowerShell: - // dotnet dev-certs https --trust; dotnet dev-certs https -ep "$env:USERPROFILE/.aspnet/https/aspnetapp.pfx" -p "SecurePwdGoesHere" - // * macOS/Linux terminal: - // dotnet dev-certs https --trust; dotnet dev-certs https -ep "${HOME}/.aspnet/https/aspnetapp.pfx" -p "SecurePwdGoesHere" - // - // Next, after running the command above, uncomment lines in the 'mounts' and 'remoteEnv' lines below, - // and open / rebuild the container so the settings take effect. - // - "mounts": [ - // "source=${env:HOME}${env:USERPROFILE}/.aspnet/https,target=/home/vscode/.aspnet/https,type=bind" - ], - "remoteEnv": { - // "ASPNETCORE_Kestrel__Certificates__Default__Password": "SecurePwdGoesHere", - // "ASPNETCORE_Kestrel__Certificates__Default__Path": "/home/vscode/.aspnet/https/aspnetapp.pfx", - }, // Use 'postCreateCommand' to run commands after the container is created. "postCreateCommand": "./restore.sh", - // Uncomment to connect as a non-root user. See https://aka.ms/vscode-remote/containers/non-root. - // "remoteUser": "vscode" } \ No newline at end of file diff --git a/Directory.Packages.props b/Directory.Packages.props index f4be043aed..f75448bfb3 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -3,7 +3,7 @@ - 6.0.0-rc.278 + 6.0.0 @@ -36,4 +36,4 @@ - \ No newline at end of file + diff --git a/azure-pipelines-integration.yml b/azure-pipelines-integration.yml index f45b42cb0e..2695a061bd 100644 --- a/azure-pipelines-integration.yml +++ b/azure-pipelines-integration.yml @@ -24,12 +24,12 @@ jobs: _targetSolution: "format.sln" _branchName: "main" _sha: "c4dcd04da63379e0c4e7c0bd2fa3ef0fcf44a6c1" - roslyn: - _repo: "https://github.com/dotnet/roslyn" - _repoName: "dotnet/roslyn" - _targetSolution: "Compilers.sln" - _branchName: "main" - _sha: "e9ed046c159bfc5caf33b875ab6928a73c5601f3" +# roslyn: +# _repo: "https://github.com/dotnet/roslyn" +# _repoName: "dotnet/roslyn" +# _targetSolution: "Compilers.sln" +# _branchName: "main" +# _sha: "e9ed046c159bfc5caf33b875ab6928a73c5601f3" sdk: _repo: "https://github.com/dotnet/sdk" _repoName: "dotnet/sdk" diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 71b828d558..c73217b8f4 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,17 +1,17 @@ - + https://github.com/dotnet/roslyn - 1fa6e45dd631b37e7b28a78907240aed8a300d50 + cb93a990bf3e8e8ae71ac75e9db7e549a3a44221 - + https://github.com/dotnet/command-line-api - c31ce2797305a4e084736c1d43a078d7e90f9b60 + 82273cb56c83b589e8e5b63da0ac9745ffc6e105 - + https://github.com/dotnet/command-line-api - c31ce2797305a4e084736c1d43a078d7e90f9b60 + 82273cb56c83b589e8e5b63da0ac9745ffc6e105 diff --git a/eng/Versions.props b/eng/Versions.props index c75ce8c88d..b361300356 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -14,13 +14,13 @@ 16.11.0 - 3.3.2 + 3.3.3 5.0.0 - 4.0.1-1.21573.5 + 4.2.0-1.22116.16 - 2.0.0-beta2.21615.1 - 0.4.0-alpha.21615.1 + 2.0.0-beta1.21473.1 + 0.3.0-alpha.21473.1