diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml
index 87a49ede7..61376627f 100644
--- a/eng/Version.Details.xml
+++ b/eng/Version.Details.xml
@@ -3,9 +3,9 @@
-
+
https://github.com/dotnet/arcade
- 3faeb9817f465151aa4bbcdb315f0a6170206760
+ 269a0e658ebd52b02a34072dc99277be43fe58f7
diff --git a/eng/common/build.cmd b/eng/common/build.cmd
new file mode 100644
index 000000000..99daf368a
--- /dev/null
+++ b/eng/common/build.cmd
@@ -0,0 +1,3 @@
+@echo off
+powershell -ExecutionPolicy ByPass -NoProfile -command "& """%~dp0build.ps1""" %*"
+exit /b %ErrorLevel%
diff --git a/eng/common/build.ps1 b/eng/common/build.ps1
index 33a6f2d0e..510458eb3 100644
--- a/eng/common/build.ps1
+++ b/eng/common/build.ps1
@@ -19,6 +19,8 @@ Param(
[switch] $pack,
[switch] $publish,
[switch] $clean,
+ [switch] $verticalBuild,
+ [switch][Alias('pb')]$productBuild,
[switch][Alias('bl')]$binaryLog,
[switch][Alias('nobl')]$excludeCIBinarylog,
[switch] $ci,
@@ -58,6 +60,8 @@ function Print-Usage() {
Write-Host " -sign Sign build outputs"
Write-Host " -publish Publish artifacts (e.g. symbols)"
Write-Host " -clean Clean the solution"
+ Write-Host " -verticalBuild Run in 'vertical build' infra mode."
+ Write-Host " -productBuild Build the solution in the way it will be built in the full .NET product (VMR) build (short: -pb)"
Write-Host ""
Write-Host "Advanced settings:"
@@ -120,6 +124,8 @@ function Build {
/p:Deploy=$deploy `
/p:Test=$test `
/p:Pack=$pack `
+ /p:DotNetBuildRepo=$($productBuild -or $verticalBuild) `
+ /p:ArcadeBuildVertical=$verticalBuild `
/p:IntegrationTest=$integrationTest `
/p:PerformanceTest=$performanceTest `
/p:Sign=$sign `
diff --git a/eng/common/build.sh b/eng/common/build.sh
index 2c17ba529..2dfb32f2e 100755
--- a/eng/common/build.sh
+++ b/eng/common/build.sh
@@ -22,6 +22,9 @@ usage()
echo " --sourceBuild Source-build the solution (short: -sb)"
echo " Will additionally trigger the following actions: --restore, --build, --pack"
echo " If --configuration is not set explicitly, will also set it to 'Release'"
+ echo " --productBuild Build the solution in the way it will be built in the full .NET product (VMR) build (short: -pb)"
+ echo " Will additionally trigger the following actions: --restore, --build, --pack"
+ echo " If --configuration is not set explicitly, will also set it to 'Release'"
echo " --rebuild Rebuild solution"
echo " --test Run all unit tests in the solution (short: -t)"
echo " --integrationTest Run all integration tests in the solution"
@@ -59,6 +62,8 @@ scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
restore=false
build=false
source_build=false
+vertical_build=false
+product_build=false
rebuild=false
test=false
integration_test=false
@@ -126,6 +131,20 @@ while [[ $# > 0 ]]; do
-sourcebuild|-sb)
build=true
source_build=true
+ product_build=true
+ restore=true
+ pack=true
+ ;;
+ -productBuild|-pb)
+ build=true
+ product_build=true
+ restore=true
+ pack=true
+ ;;
+ -verticalbuild|-vb)
+ build=true
+ vertical_build=true
+ product_build=true
restore=true
pack=true
;;
@@ -219,7 +238,9 @@ function Build {
/p:RepoRoot="$repo_root" \
/p:Restore=$restore \
/p:Build=$build \
+ /p:DotNetBuildRepo=$product_build \
/p:ArcadeBuildFromSource=$source_build \
+ /p:ArcadeBuildVertical=$vertical_build \
/p:Rebuild=$rebuild \
/p:Test=$test \
/p:Pack=$pack \
diff --git a/eng/common/cross/build-rootfs.sh b/eng/common/cross/build-rootfs.sh
index 4228f202e..9b2791cf5 100755
--- a/eng/common/cross/build-rootfs.sh
+++ b/eng/common/cross/build-rootfs.sh
@@ -182,12 +182,12 @@ while :; do
__AlpinePackages="${__AlpinePackages// lldb-dev/}"
__QEMUArch=riscv64
__UbuntuArch=riscv64
- __UbuntuRepo="http://deb.debian.org/debian-ports"
+ __UbuntuRepo="http://deb.debian.org/debian"
__UbuntuPackages="${__UbuntuPackages// libunwind8-dev/}"
unset __LLDB_Package
- if [[ -e "/usr/share/keyrings/debian-ports-archive-keyring.gpg" ]]; then
- __Keyring="--keyring /usr/share/keyrings/debian-ports-archive-keyring.gpg --include=debian-ports-archive-keyring"
+ if [[ -e "/usr/share/keyrings/debian-archive-keyring.gpg" ]]; then
+ __Keyring="--keyring /usr/share/keyrings/debian-archive-keyring.gpg --include=debian-archive-keyring"
fi
;;
ppc64le)
diff --git a/eng/common/cross/riscv64/sources.list.sid b/eng/common/cross/riscv64/sources.list.sid
index 65f730d22..b5f7a7e6e 100644
--- a/eng/common/cross/riscv64/sources.list.sid
+++ b/eng/common/cross/riscv64/sources.list.sid
@@ -1 +1 @@
-deb http://deb.debian.org/debian-ports sid main
+deb http://deb.debian.org/debian sid main
diff --git a/eng/common/helixpublish.proj b/eng/common/helixpublish.proj
index d7f185856..c1323bf41 100644
--- a/eng/common/helixpublish.proj
+++ b/eng/common/helixpublish.proj
@@ -1,3 +1,4 @@
+
diff --git a/eng/common/internal/Directory.Build.props b/eng/common/internal/Directory.Build.props
index dbf99d82a..a735fe9a1 100644
--- a/eng/common/internal/Directory.Build.props
+++ b/eng/common/internal/Directory.Build.props
@@ -1,4 +1,6 @@
+
+
diff --git a/eng/common/internal/Tools.csproj b/eng/common/internal/Tools.csproj
index 7f5ce6d60..8fa77e5b1 100644
--- a/eng/common/internal/Tools.csproj
+++ b/eng/common/internal/Tools.csproj
@@ -1,5 +1,6 @@
+
net472
false
@@ -27,4 +28,5 @@
+
diff --git a/eng/common/sdl/trim-assets-version.ps1 b/eng/common/sdl/trim-assets-version.ps1
index a2e004877..0daa2a9e9 100644
--- a/eng/common/sdl/trim-assets-version.ps1
+++ b/eng/common/sdl/trim-assets-version.ps1
@@ -72,4 +72,4 @@ catch {
Write-Host $_
Write-PipelineTelemetryError -Force -Category 'Sdl' -Message $_
ExitWithExitCode 1
-}
\ No newline at end of file
+}
diff --git a/eng/common/templates/job/job.yml b/eng/common/templates/job/job.yml
index 0b0153135..01c0dd995 100644
--- a/eng/common/templates/job/job.yml
+++ b/eng/common/templates/job/job.yml
@@ -136,7 +136,7 @@ jobs:
condition: and(succeeded(), in(variables['_SignType'], 'real', 'test'), eq(variables['Agent.Os'], 'Windows_NT'))
- ${{ if and(eq(parameters.runAsPublic, 'false'), eq(variables['System.TeamProject'], 'internal')) }}:
- - task: NuGetAuthenticate@0
+ - task: NuGetAuthenticate@1
- ${{ if and(ne(parameters.artifacts.download, 'false'), ne(parameters.artifacts.download, '')) }}:
- task: DownloadPipelineArtifact@2
diff --git a/eng/common/templates/job/publish-build-assets.yml b/eng/common/templates/job/publish-build-assets.yml
index 3b25fd979..3115990d5 100644
--- a/eng/common/templates/job/publish-build-assets.yml
+++ b/eng/common/templates/job/publish-build-assets.yml
@@ -63,6 +63,10 @@ jobs:
steps:
- ${{ if and(eq(parameters.runAsPublic, 'false'), ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}:
+ - checkout: self
+ fetchDepth: 3
+ clean: true
+
- task: DownloadBuildArtifacts@0
displayName: Download artifact
inputs:
@@ -72,7 +76,7 @@ jobs:
condition: ${{ parameters.condition }}
continueOnError: ${{ parameters.continueOnError }}
- - task: NuGetAuthenticate@0
+ - task: NuGetAuthenticate@1
- task: PowerShell@2
displayName: Publish Build Assets
diff --git a/eng/common/templates/job/source-index-stage1.yml b/eng/common/templates/job/source-index-stage1.yml
index b98202aa0..795233662 100644
--- a/eng/common/templates/job/source-index-stage1.yml
+++ b/eng/common/templates/job/source-index-stage1.yml
@@ -1,6 +1,6 @@
parameters:
runAsPublic: false
- sourceIndexPackageVersion: 1.0.1-20230228.2
+ sourceIndexPackageVersion: 1.0.1-20231213.4
sourceIndexPackageSource: https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json
sourceIndexBuildCommand: powershell -NoLogo -NoProfile -ExecutionPolicy Bypass -Command "eng/common/build.ps1 -restore -build -binarylog -ci"
preSteps: []
@@ -30,20 +30,20 @@ jobs:
pool:
${{ if eq(variables['System.TeamProject'], 'public') }}:
name: $(DncEngPublicBuildPool)
- demands: ImageOverride -equals windows.vs2019.amd64.open
+ demands: ImageOverride -equals windows.vs2022.amd64.open
${{ if eq(variables['System.TeamProject'], 'internal') }}:
name: $(DncEngInternalBuildPool)
- demands: ImageOverride -equals windows.vs2019.amd64
+ demands: ImageOverride -equals windows.vs2022.amd64
steps:
- ${{ each preStep in parameters.preSteps }}:
- ${{ preStep }}
- task: UseDotNet@2
- displayName: Use .NET Core SDK 6
+ displayName: Use .NET 8 SDK
inputs:
packageType: sdk
- version: 6.0.x
+ version: 8.0.x
installationPath: $(Agent.TempDirectory)/dotnet
workingDirectory: $(Agent.TempDirectory)
diff --git a/eng/common/templates/post-build/common-variables.yml b/eng/common/templates/post-build/common-variables.yml
index 4ef7bd271..b9ede10bf 100644
--- a/eng/common/templates/post-build/common-variables.yml
+++ b/eng/common/templates/post-build/common-variables.yml
@@ -18,7 +18,7 @@ variables:
- name: SymbolToolVersion
value: 1.0.1
- name: BinlogToolVersion
- value: 1.0.8
+ value: 1.0.11
- name: runCodesignValidationInjection
value: false
diff --git a/eng/common/templates/post-build/post-build.yml b/eng/common/templates/post-build/post-build.yml
index d64236b28..bbc010fe7 100644
--- a/eng/common/templates/post-build/post-build.yml
+++ b/eng/common/templates/post-build/post-build.yml
@@ -169,7 +169,7 @@ stages:
# This is necessary whenever we want to publish/restore to an AzDO private feed
# Since sdk-task.ps1 tries to restore packages we need to do this authentication here
# otherwise it'll complain about accessing a private feed.
- - task: NuGetAuthenticate@0
+ - task: NuGetAuthenticate@1
displayName: 'Authenticate to AzDO Feeds'
# Signing validation will optionally work with the buildmanifest file which is downloaded from
@@ -267,7 +267,7 @@ stages:
BARBuildId: ${{ parameters.BARBuildId }}
PromoteToChannelIds: ${{ parameters.PromoteToChannelIds }}
- - task: NuGetAuthenticate@0
+ - task: NuGetAuthenticate@1
- task: PowerShell@2
displayName: Publish Using Darc
diff --git a/eng/common/templates/steps/publish-logs.yml b/eng/common/templates/steps/publish-logs.yml
index dadf1c464..80861297d 100644
--- a/eng/common/templates/steps/publish-logs.yml
+++ b/eng/common/templates/steps/publish-logs.yml
@@ -3,7 +3,7 @@ parameters:
JobLabel: ''
CustomSensitiveDataList: ''
# A default - in case value from eng/common/templates/post-build/common-variables.yml is not passed
- BinlogToolVersion: '1.0.8'
+ BinlogToolVersion: '1.0.11'
steps:
- task: Powershell@2
diff --git a/eng/common/templates/steps/source-build.yml b/eng/common/templates/steps/source-build.yml
index 41bbb9157..1793eb6be 100644
--- a/eng/common/templates/steps/source-build.yml
+++ b/eng/common/templates/steps/source-build.yml
@@ -94,6 +94,7 @@ steps:
$baseOsArgs \
/p:SourceBuildNonPortable=${{ parameters.platform.nonPortable }} \
/p:ArcadeBuildFromSource=true \
+ /p:DotNetBuildRepo=true \
/p:AssetManifestFileName=$assetManifestFileName
displayName: Build
@@ -105,7 +106,7 @@ steps:
Contents: |
**/*.log
**/*.binlog
- artifacts/source-build/self/prebuilt-report/**
+ artifacts/sb/prebuilt-report/**
TargetFolder: '$(Build.StagingDirectory)/BuildLogs'
CleanTargetFolder: true
continueOnError: true
@@ -126,4 +127,4 @@ steps:
- task: ComponentGovernanceComponentDetection@0
displayName: Component Detection (Exclude upstream cache)
inputs:
- ignoreDirectories: '$(Build.SourcesDirectory)/artifacts/source-build/self/src/artifacts/obj/source-built-upstream-cache'
+ ignoreDirectories: '$(Build.SourcesDirectory)/artifacts/sb/src/artifacts/obj/source-built-upstream-cache'
diff --git a/eng/common/tools.ps1 b/eng/common/tools.ps1
index e8def7e6a..0da65b574 100644
--- a/eng/common/tools.ps1
+++ b/eng/common/tools.ps1
@@ -165,11 +165,6 @@ function InitializeDotNetCli([bool]$install, [bool]$createSdkLocationFile) {
$env:DOTNET_CLI_TELEMETRY_OPTOUT=1
}
- # Source Build uses DotNetCoreSdkDir variable
- if ($env:DotNetCoreSdkDir -ne $null) {
- $env:DOTNET_INSTALL_DIR = $env:DotNetCoreSdkDir
- }
-
# Find the first path on %PATH% that contains the dotnet.exe
if ($useInstalledDotNetCli -and (-not $globalJsonHasRuntimes) -and ($env:DOTNET_INSTALL_DIR -eq $null)) {
$dotnetExecutable = GetExecutableFileName 'dotnet'
@@ -601,7 +596,15 @@ function InitializeBuildTool() {
ExitWithExitCode 1
}
$dotnetPath = Join-Path $dotnetRoot (GetExecutableFileName 'dotnet')
- $buildTool = @{ Path = $dotnetPath; Command = 'msbuild'; Tool = 'dotnet'; Framework = 'net8.0' }
+
+ # Use override if it exists - commonly set by source-build
+ if ($null -eq $env:_OverrideArcadeInitializeBuildToolFramework) {
+ $initializeBuildToolFramework="net9.0"
+ } else {
+ $initializeBuildToolFramework=$env:_OverrideArcadeInitializeBuildToolFramework
+ }
+
+ $buildTool = @{ Path = $dotnetPath; Command = 'msbuild'; Tool = 'dotnet'; Framework = $initializeBuildToolFramework }
} elseif ($msbuildEngine -eq "vs") {
try {
$msbuildPath = InitializeVisualStudioMSBuild -install:$restore
@@ -676,8 +679,14 @@ function Read-ArcadeSdkVersion() {
}
function InitializeToolset() {
- if (Test-Path variable:global:_ToolsetBuildProj) {
- return $global:_ToolsetBuildProj
+ # For Unified Build/Source-build support, check whether the environment variable is
+ # set. If it is, then use this as the toolset build project.
+ if ($env:_InitializeToolset -ne $null) {
+ return $global:_InitializeToolset = $env:_InitializeToolset
+ }
+
+ if (Test-Path variable:global:_InitializeToolset) {
+ return $global:_InitializeToolset
}
$nugetCache = GetNuGetPackageCachePath
@@ -688,7 +697,7 @@ function InitializeToolset() {
if (Test-Path $toolsetLocationFile) {
$path = Get-Content $toolsetLocationFile -TotalCount 1
if (Test-Path $path) {
- return $global:_ToolsetBuildProj = $path
+ return $global:_InitializeToolset = $path
}
}
@@ -711,7 +720,7 @@ function InitializeToolset() {
throw "Invalid toolset path: $path"
}
- return $global:_ToolsetBuildProj = $path
+ return $global:_InitializeToolset = $path
}
function ExitWithExitCode([int] $exitCode) {
@@ -763,12 +772,10 @@ function MSBuild() {
# new scripts need to work with old packages, so we need to look for the old names/versions
(Join-Path $basePath (Join-Path $buildTool.Framework 'Microsoft.DotNet.ArcadeLogging.dll')),
(Join-Path $basePath (Join-Path $buildTool.Framework 'Microsoft.DotNet.Arcade.Sdk.dll')),
- (Join-Path $basePath (Join-Path netcoreapp2.1 'Microsoft.DotNet.ArcadeLogging.dll')),
- (Join-Path $basePath (Join-Path netcoreapp2.1 'Microsoft.DotNet.Arcade.Sdk.dll'))
- (Join-Path $basePath (Join-Path netcoreapp3.1 'Microsoft.DotNet.ArcadeLogging.dll')),
- (Join-Path $basePath (Join-Path netcoreapp3.1 'Microsoft.DotNet.Arcade.Sdk.dll'))
(Join-Path $basePath (Join-Path net7.0 'Microsoft.DotNet.ArcadeLogging.dll')),
- (Join-Path $basePath (Join-Path net7.0 'Microsoft.DotNet.Arcade.Sdk.dll'))
+ (Join-Path $basePath (Join-Path net7.0 'Microsoft.DotNet.Arcade.Sdk.dll')),
+ (Join-Path $basePath (Join-Path net8.0 'Microsoft.DotNet.ArcadeLogging.dll')),
+ (Join-Path $basePath (Join-Path net8.0 'Microsoft.DotNet.Arcade.Sdk.dll'))
)
$selectedPath = $null
foreach ($path in $possiblePaths) {
@@ -827,7 +834,8 @@ function MSBuild-Core() {
}
}
- $env:ARCADE_BUILD_TOOL_COMMAND = "$($buildTool.Path) $cmdArgs"
+ # Be sure quote the path in case there are spaces in the dotnet installation location.
+ $env:ARCADE_BUILD_TOOL_COMMAND = "`"$($buildTool.Path)`" $cmdArgs"
$exitCode = Exec-Process $buildTool.Path $cmdArgs
diff --git a/eng/common/tools.sh b/eng/common/tools.sh
index e98daf50c..ece4b7307 100755
--- a/eng/common/tools.sh
+++ b/eng/common/tools.sh
@@ -123,11 +123,6 @@ function InitializeDotNetCli {
# so it doesn't output warnings to the console.
export LTTNG_HOME="$HOME"
- # Source Build uses DotNetCoreSdkDir variable
- if [[ -n "${DotNetCoreSdkDir:-}" ]]; then
- export DOTNET_INSTALL_DIR="$DotNetCoreSdkDir"
- fi
-
# Find the first path on $PATH that contains the dotnet.exe
if [[ "$use_installed_dotnet_cli" == true && $global_json_has_runtimes == false && -z "${DOTNET_INSTALL_DIR:-}" ]]; then
local dotnet_path=`command -v dotnet`
@@ -343,7 +338,7 @@ function InitializeBuildTool {
_InitializeBuildToolCommand="msbuild"
# use override if it exists - commonly set by source-build
if [[ "${_OverrideArcadeInitializeBuildToolFramework:-x}" == "x" ]]; then
- _InitializeBuildToolFramework="net8.0"
+ _InitializeBuildToolFramework="net9.0"
else
_InitializeBuildToolFramework="${_OverrideArcadeInitializeBuildToolFramework}"
fi
@@ -458,12 +453,10 @@ function MSBuild {
local possiblePaths=()
possiblePaths+=( "$toolset_dir/$_InitializeBuildToolFramework/Microsoft.DotNet.ArcadeLogging.dll" )
possiblePaths+=( "$toolset_dir/$_InitializeBuildToolFramework/Microsoft.DotNet.Arcade.Sdk.dll" )
- possiblePaths+=( "$toolset_dir/netcoreapp2.1/Microsoft.DotNet.ArcadeLogging.dll" )
- possiblePaths+=( "$toolset_dir/netcoreapp2.1/Microsoft.DotNet.Arcade.Sdk.dll" )
- possiblePaths+=( "$toolset_dir/netcoreapp3.1/Microsoft.DotNet.ArcadeLogging.dll" )
- possiblePaths+=( "$toolset_dir/netcoreapp3.1/Microsoft.DotNet.Arcade.Sdk.dll" )
possiblePaths+=( "$toolset_dir/net7.0/Microsoft.DotNet.ArcadeLogging.dll" )
possiblePaths+=( "$toolset_dir/net7.0/Microsoft.DotNet.Arcade.Sdk.dll" )
+ possiblePaths+=( "$toolset_dir/net8.0/Microsoft.DotNet.ArcadeLogging.dll" )
+ possiblePaths+=( "$toolset_dir/net8.0/Microsoft.DotNet.Arcade.Sdk.dll" )
for path in "${possiblePaths[@]}"; do
if [[ -f $path ]]; then
selectedPath=$path
diff --git a/global.json b/global.json
index 5aaab4a54..634502ce7 100644
--- a/global.json
+++ b/global.json
@@ -1,14 +1,14 @@
{
"sdk": {
- "version": "8.0.100",
+ "version": "9.0.100-alpha.1.23615.4",
"allowPrerelease": true,
"rollForward": "major"
},
"tools": {
- "dotnet": "8.0.100"
+ "dotnet": "9.0.100-alpha.1.23615.4"
},
"msbuild-sdks": {
- "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.23607.2",
+ "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.24067.4",
"Microsoft.Build.NoTargets": "3.7.0",
"Microsoft.Build.Traversal": "3.4.0"
}
diff --git a/src/System.Runtime.TimeZoneData/System.Runtime.TimeZoneData.csproj b/src/System.Runtime.TimeZoneData/System.Runtime.TimeZoneData.csproj
index 4e204dad8..b2293c276 100644
--- a/src/System.Runtime.TimeZoneData/System.Runtime.TimeZoneData.csproj
+++ b/src/System.Runtime.TimeZoneData/System.Runtime.TimeZoneData.csproj
@@ -1,6 +1,6 @@
- 2023c
+ 2023d
$([MSBuild]::NormalizeDirectory('$(IntermediateOutputPath)', 'timezonedata'))
$([MSBuild]::NormalizeDirectory('$(MSBuildProjectDirectory)', 'data'))
slim
diff --git a/src/System.Runtime.TimeZoneData/data/America/Ensenada b/src/System.Runtime.TimeZoneData/data/America/Ensenada
index e8be26b13..42087af4c 100644
Binary files a/src/System.Runtime.TimeZoneData/data/America/Ensenada and b/src/System.Runtime.TimeZoneData/data/America/Ensenada differ
diff --git a/src/System.Runtime.TimeZoneData/data/America/Godthab b/src/System.Runtime.TimeZoneData/data/America/Godthab
index 00b57bb13..310774ea4 100644
Binary files a/src/System.Runtime.TimeZoneData/data/America/Godthab and b/src/System.Runtime.TimeZoneData/data/America/Godthab differ
diff --git a/src/System.Runtime.TimeZoneData/data/America/Goose_Bay b/src/System.Runtime.TimeZoneData/data/America/Goose_Bay
index 820e0dd2c..e2cc3eefc 100644
Binary files a/src/System.Runtime.TimeZoneData/data/America/Goose_Bay and b/src/System.Runtime.TimeZoneData/data/America/Goose_Bay differ
diff --git a/src/System.Runtime.TimeZoneData/data/America/Indiana/Winamac b/src/System.Runtime.TimeZoneData/data/America/Indiana/Winamac
index 8700ed9f0..679d321e3 100644
Binary files a/src/System.Runtime.TimeZoneData/data/America/Indiana/Winamac and b/src/System.Runtime.TimeZoneData/data/America/Indiana/Winamac differ
diff --git a/src/System.Runtime.TimeZoneData/data/America/Matamoros b/src/System.Runtime.TimeZoneData/data/America/Matamoros
index 88cabcd15..993ac4755 100644
Binary files a/src/System.Runtime.TimeZoneData/data/America/Matamoros and b/src/System.Runtime.TimeZoneData/data/America/Matamoros differ
diff --git a/src/System.Runtime.TimeZoneData/data/America/Metlakatla b/src/System.Runtime.TimeZoneData/data/America/Metlakatla
index 9fefee388..71b0eab08 100644
Binary files a/src/System.Runtime.TimeZoneData/data/America/Metlakatla and b/src/System.Runtime.TimeZoneData/data/America/Metlakatla differ
diff --git a/src/System.Runtime.TimeZoneData/data/America/Moncton b/src/System.Runtime.TimeZoneData/data/America/Moncton
index ecb69ef2c..020e33d97 100644
Binary files a/src/System.Runtime.TimeZoneData/data/America/Moncton and b/src/System.Runtime.TimeZoneData/data/America/Moncton differ
diff --git a/src/System.Runtime.TimeZoneData/data/America/Nuuk b/src/System.Runtime.TimeZoneData/data/America/Nuuk
index 00b57bb13..310774ea4 100644
Binary files a/src/System.Runtime.TimeZoneData/data/America/Nuuk and b/src/System.Runtime.TimeZoneData/data/America/Nuuk differ
diff --git a/src/System.Runtime.TimeZoneData/data/America/Ojinaga b/src/System.Runtime.TimeZoneData/data/America/Ojinaga
index 2fc74e947..f7e40c081 100644
Binary files a/src/System.Runtime.TimeZoneData/data/America/Ojinaga and b/src/System.Runtime.TimeZoneData/data/America/Ojinaga differ
diff --git a/src/System.Runtime.TimeZoneData/data/America/Santa_Isabel b/src/System.Runtime.TimeZoneData/data/America/Santa_Isabel
index e8be26b13..42087af4c 100644
Binary files a/src/System.Runtime.TimeZoneData/data/America/Santa_Isabel and b/src/System.Runtime.TimeZoneData/data/America/Santa_Isabel differ
diff --git a/src/System.Runtime.TimeZoneData/data/America/Scoresbysund b/src/System.Runtime.TimeZoneData/data/America/Scoresbysund
index 6db49124e..fc1b11cbe 100644
Binary files a/src/System.Runtime.TimeZoneData/data/America/Scoresbysund and b/src/System.Runtime.TimeZoneData/data/America/Scoresbysund differ
diff --git a/src/System.Runtime.TimeZoneData/data/America/St_Johns b/src/System.Runtime.TimeZoneData/data/America/St_Johns
index e5f2aec2b..94d790baa 100644
Binary files a/src/System.Runtime.TimeZoneData/data/America/St_Johns and b/src/System.Runtime.TimeZoneData/data/America/St_Johns differ
diff --git a/src/System.Runtime.TimeZoneData/data/America/Tijuana b/src/System.Runtime.TimeZoneData/data/America/Tijuana
index e8be26b13..42087af4c 100644
Binary files a/src/System.Runtime.TimeZoneData/data/America/Tijuana and b/src/System.Runtime.TimeZoneData/data/America/Tijuana differ
diff --git a/src/System.Runtime.TimeZoneData/data/Antarctica/Casey b/src/System.Runtime.TimeZoneData/data/Antarctica/Casey
index 30315cc07..84f1c61e5 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Antarctica/Casey and b/src/System.Runtime.TimeZoneData/data/Antarctica/Casey differ
diff --git a/src/System.Runtime.TimeZoneData/data/Antarctica/Macquarie b/src/System.Runtime.TimeZoneData/data/Antarctica/Macquarie
index 3fc1f231c..99a8e60ed 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Antarctica/Macquarie and b/src/System.Runtime.TimeZoneData/data/Antarctica/Macquarie differ
diff --git a/src/System.Runtime.TimeZoneData/data/Antarctica/Troll b/src/System.Runtime.TimeZoneData/data/Antarctica/Troll
index 4e31affb5..2359c44bd 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Antarctica/Troll and b/src/System.Runtime.TimeZoneData/data/Antarctica/Troll differ
diff --git a/src/System.Runtime.TimeZoneData/data/Antarctica/Vostok b/src/System.Runtime.TimeZoneData/data/Antarctica/Vostok
index 69ff7f6fb..4ce8f7478 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Antarctica/Vostok and b/src/System.Runtime.TimeZoneData/data/Antarctica/Vostok differ
diff --git a/src/System.Runtime.TimeZoneData/data/Asia/Gaza b/src/System.Runtime.TimeZoneData/data/Asia/Gaza
index 7e8338981..6241b4e7f 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Asia/Gaza and b/src/System.Runtime.TimeZoneData/data/Asia/Gaza differ
diff --git a/src/System.Runtime.TimeZoneData/data/Asia/Hebron b/src/System.Runtime.TimeZoneData/data/Asia/Hebron
index fcf923bd2..5267de96f 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Asia/Hebron and b/src/System.Runtime.TimeZoneData/data/Asia/Hebron differ
diff --git a/src/System.Runtime.TimeZoneData/data/Asia/Nicosia b/src/System.Runtime.TimeZoneData/data/Asia/Nicosia
index c210d0a59..390347f44 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Asia/Nicosia and b/src/System.Runtime.TimeZoneData/data/Asia/Nicosia differ
diff --git a/src/System.Runtime.TimeZoneData/data/Canada/Newfoundland b/src/System.Runtime.TimeZoneData/data/Canada/Newfoundland
index e5f2aec2b..94d790baa 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Canada/Newfoundland and b/src/System.Runtime.TimeZoneData/data/Canada/Newfoundland differ
diff --git a/src/System.Runtime.TimeZoneData/data/Europe/Belfast b/src/System.Runtime.TimeZoneData/data/Europe/Belfast
index 323cd3818..b9e95d926 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Europe/Belfast and b/src/System.Runtime.TimeZoneData/data/Europe/Belfast differ
diff --git a/src/System.Runtime.TimeZoneData/data/Europe/Bucharest b/src/System.Runtime.TimeZoneData/data/Europe/Bucharest
index efa689ba9..c4a391e73 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Europe/Bucharest and b/src/System.Runtime.TimeZoneData/data/Europe/Bucharest differ
diff --git a/src/System.Runtime.TimeZoneData/data/Europe/Chisinau b/src/System.Runtime.TimeZoneData/data/Europe/Chisinau
index 6970b14c5..9152e6859 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Europe/Chisinau and b/src/System.Runtime.TimeZoneData/data/Europe/Chisinau differ
diff --git a/src/System.Runtime.TimeZoneData/data/Europe/Guernsey b/src/System.Runtime.TimeZoneData/data/Europe/Guernsey
index 323cd3818..b9e95d926 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Europe/Guernsey and b/src/System.Runtime.TimeZoneData/data/Europe/Guernsey differ
diff --git a/src/System.Runtime.TimeZoneData/data/Europe/Isle_of_Man b/src/System.Runtime.TimeZoneData/data/Europe/Isle_of_Man
index 323cd3818..b9e95d926 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Europe/Isle_of_Man and b/src/System.Runtime.TimeZoneData/data/Europe/Isle_of_Man differ
diff --git a/src/System.Runtime.TimeZoneData/data/Europe/Jersey b/src/System.Runtime.TimeZoneData/data/Europe/Jersey
index 323cd3818..b9e95d926 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Europe/Jersey and b/src/System.Runtime.TimeZoneData/data/Europe/Jersey differ
diff --git a/src/System.Runtime.TimeZoneData/data/Europe/Kiev b/src/System.Runtime.TimeZoneData/data/Europe/Kiev
index 4e026859f..753a6c86f 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Europe/Kiev and b/src/System.Runtime.TimeZoneData/data/Europe/Kiev differ
diff --git a/src/System.Runtime.TimeZoneData/data/Europe/Kyiv b/src/System.Runtime.TimeZoneData/data/Europe/Kyiv
index 4e026859f..753a6c86f 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Europe/Kyiv and b/src/System.Runtime.TimeZoneData/data/Europe/Kyiv differ
diff --git a/src/System.Runtime.TimeZoneData/data/Europe/London b/src/System.Runtime.TimeZoneData/data/Europe/London
index 323cd3818..b9e95d926 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Europe/London and b/src/System.Runtime.TimeZoneData/data/Europe/London differ
diff --git a/src/System.Runtime.TimeZoneData/data/Europe/Nicosia b/src/System.Runtime.TimeZoneData/data/Europe/Nicosia
index c210d0a59..390347f44 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Europe/Nicosia and b/src/System.Runtime.TimeZoneData/data/Europe/Nicosia differ
diff --git a/src/System.Runtime.TimeZoneData/data/Europe/Riga b/src/System.Runtime.TimeZoneData/data/Europe/Riga
index 26af4c90b..d99170b64 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Europe/Riga and b/src/System.Runtime.TimeZoneData/data/Europe/Riga differ
diff --git a/src/System.Runtime.TimeZoneData/data/Europe/Sofia b/src/System.Runtime.TimeZoneData/data/Europe/Sofia
index eabc972a2..89450685c 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Europe/Sofia and b/src/System.Runtime.TimeZoneData/data/Europe/Sofia differ
diff --git a/src/System.Runtime.TimeZoneData/data/Europe/Tallinn b/src/System.Runtime.TimeZoneData/data/Europe/Tallinn
index 5321bbd46..fbebdc625 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Europe/Tallinn and b/src/System.Runtime.TimeZoneData/data/Europe/Tallinn differ
diff --git a/src/System.Runtime.TimeZoneData/data/Europe/Tiraspol b/src/System.Runtime.TimeZoneData/data/Europe/Tiraspol
index 6970b14c5..9152e6859 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Europe/Tiraspol and b/src/System.Runtime.TimeZoneData/data/Europe/Tiraspol differ
diff --git a/src/System.Runtime.TimeZoneData/data/Europe/Uzhgorod b/src/System.Runtime.TimeZoneData/data/Europe/Uzhgorod
index 4e026859f..753a6c86f 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Europe/Uzhgorod and b/src/System.Runtime.TimeZoneData/data/Europe/Uzhgorod differ
diff --git a/src/System.Runtime.TimeZoneData/data/Europe/Vilnius b/src/System.Runtime.TimeZoneData/data/Europe/Vilnius
index 75b2eebb5..43c3d7f10 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Europe/Vilnius and b/src/System.Runtime.TimeZoneData/data/Europe/Vilnius differ
diff --git a/src/System.Runtime.TimeZoneData/data/Europe/Zaporozhye b/src/System.Runtime.TimeZoneData/data/Europe/Zaporozhye
index 4e026859f..753a6c86f 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Europe/Zaporozhye and b/src/System.Runtime.TimeZoneData/data/Europe/Zaporozhye differ
diff --git a/src/System.Runtime.TimeZoneData/data/Mexico/BajaNorte b/src/System.Runtime.TimeZoneData/data/Mexico/BajaNorte
index e8be26b13..42087af4c 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Mexico/BajaNorte and b/src/System.Runtime.TimeZoneData/data/Mexico/BajaNorte differ
diff --git a/src/System.Runtime.TimeZoneData/data/Pacific/Norfolk b/src/System.Runtime.TimeZoneData/data/Pacific/Norfolk
index 79e2a9419..0c0bdbda2 100644
Binary files a/src/System.Runtime.TimeZoneData/data/Pacific/Norfolk and b/src/System.Runtime.TimeZoneData/data/Pacific/Norfolk differ
diff --git a/src/System.Runtime.TimeZoneData/data/zone.tab b/src/System.Runtime.TimeZoneData/data/zone.tab
index 1f1cecb84..abd948975 100644
--- a/src/System.Runtime.TimeZoneData/data/zone.tab
+++ b/src/System.Runtime.TimeZoneData/data/zone.tab
@@ -37,7 +37,7 @@
#country-
#codes coordinates TZ comments
AD +4230+00131 Europe/Andorra
-AE,OM,RE,SC,TF +2518+05518 Asia/Dubai Crozet, Scattered Is
+AE,OM,RE,SC,TF +2518+05518 Asia/Dubai Crozet
AF +3431+06912 Asia/Kabul
AL +4120+01950 Europe/Tirane
AM +4011+04430 Asia/Yerevan
@@ -47,12 +47,13 @@ AQ -6736+06253 Antarctica/Mawson Mawson
AQ -6448-06406 Antarctica/Palmer Palmer
AQ -6734-06808 Antarctica/Rothera Rothera
AQ -720041+0023206 Antarctica/Troll Troll
+AQ -7824+10654 Antarctica/Vostok Vostok
AR -3436-05827 America/Argentina/Buenos_Aires Buenos Aires (BA, CF)
AR -3124-06411 America/Argentina/Cordoba most areas: CB, CC, CN, ER, FM, MN, SE, SF
AR -2447-06525 America/Argentina/Salta Salta (SA, LP, NQ, RN)
AR -2411-06518 America/Argentina/Jujuy Jujuy (JY)
AR -2649-06513 America/Argentina/Tucuman Tucumán (TM)
-AR -2828-06547 America/Argentina/Catamarca Catamarca (CT); Chubut (CH)
+AR -2828-06547 America/Argentina/Catamarca Catamarca (CT), Chubut (CH)
AR -2926-06651 America/Argentina/La_Rioja La Rioja (LR)
AR -3132-06831 America/Argentina/San_Juan San Juan (SJ)
AR -3253-06849 America/Argentina/Mendoza Mendoza (MZ)
@@ -81,7 +82,7 @@ BG +4241+02319 Europe/Sofia
BM +3217-06446 Atlantic/Bermuda
BO -1630-06809 America/La_Paz
BR -0351-03225 America/Noronha Atlantic islands
-BR -0127-04829 America/Belem Pará (east); Amapá
+BR -0127-04829 America/Belem Pará (east), Amapá
BR -0343-03830 America/Fortaleza Brazil (northeast: MA, PI, CE, RN, PB)
BR -0803-03454 America/Recife Pernambuco
BR -0712-04812 America/Araguaina Tocantins
@@ -99,19 +100,19 @@ BR -0958-06748 America/Rio_Branco Acre
BT +2728+08939 Asia/Thimphu
BY +5354+02734 Europe/Minsk
BZ +1730-08812 America/Belize
-CA +4734-05243 America/St_Johns Newfoundland; Labrador (southeast)
-CA +4439-06336 America/Halifax Atlantic - NS (most areas); PE
+CA +4734-05243 America/St_Johns Newfoundland, Labrador (SE)
+CA +4439-06336 America/Halifax Atlantic - NS (most areas), PE
CA +4612-05957 America/Glace_Bay Atlantic - NS (Cape Breton)
CA +4606-06447 America/Moncton Atlantic - New Brunswick
CA +5320-06025 America/Goose_Bay Atlantic - Labrador (most areas)
-CA,BS +4339-07923 America/Toronto Eastern - ON, QC (most areas)
+CA,BS +4339-07923 America/Toronto Eastern - ON & QC (most areas)
CA +6344-06828 America/Iqaluit Eastern - NU (most areas)
-CA +4953-09709 America/Winnipeg Central - ON (west); Manitoba
+CA +4953-09709 America/Winnipeg Central - ON (west), Manitoba
CA +744144-0944945 America/Resolute Central - NU (Resolute)
CA +624900-0920459 America/Rankin_Inlet Central - NU (central)
CA +5024-10439 America/Regina CST - SK (most areas)
CA +5017-10750 America/Swift_Current CST - SK (midwest)
-CA +5333-11328 America/Edmonton Mountain - AB; BC (E); NT (E); SK (W)
+CA +5333-11328 America/Edmonton Mountain - AB, BC(E), NT(E), SK(W)
CA +690650-1050310 America/Cambridge_Bay Mountain - NU (west)
CA +682059-1334300 America/Inuvik Mountain - NT (west)
CA +5546-12014 America/Dawson_Creek MST - BC (Dawson Cr, Ft St John)
@@ -126,7 +127,7 @@ CL -3327-07040 America/Santiago most of Chile
CL -5309-07055 America/Punta_Arenas Region of Magallanes
CL -2709-10926 Pacific/Easter Easter Island
CN +3114+12128 Asia/Shanghai Beijing Time
-CN,AQ +4348+08735 Asia/Urumqi Xinjiang Time, Vostok
+CN +4348+08735 Asia/Urumqi Xinjiang Time
CO +0436-07405 America/Bogota
CR +0956-08405 America/Costa_Rica
CU +2308-08222 America/Havana
@@ -171,8 +172,8 @@ HT +1832-07220 America/Port-au-Prince
HU +4730+01905 Europe/Budapest
ID -0610+10648 Asia/Jakarta Java, Sumatra
ID -0002+10920 Asia/Pontianak Borneo (west, central)
-ID -0507+11924 Asia/Makassar Borneo (east, south); Sulawesi/Celebes, Bali, Nusa Tengarra; Timor (west)
-ID -0232+14042 Asia/Jayapura New Guinea (West Papua / Irian Jaya); Malukus/Moluccas
+ID -0507+11924 Asia/Makassar Borneo (east, south), Sulawesi/Celebes, Bali, Nusa Tengarra, Timor (west)
+ID -0232+14042 Asia/Jayapura New Guinea (West Papua / Irian Jaya), Malukus/Moluccas
IE +5320-00615 Europe/Dublin
IL +314650+0351326 Asia/Jerusalem
IN +2232+08822 Asia/Kolkata
@@ -251,7 +252,7 @@ PK +2452+06703 Asia/Karachi
PL +5215+02100 Europe/Warsaw
PM +4703-05620 America/Miquelon
PN -2504-13005 Pacific/Pitcairn
-PR,AG,CA,AI,AW,BL,BQ,CW,DM,GD,GP,KN,LC,MF,MS,SX,TT,VC,VG,VI +182806-0660622 America/Puerto_Rico AST
+PR,AG,CA,AI,AW,BL,BQ,CW,DM,GD,GP,KN,LC,MF,MS,SX,TT,VC,VG,VI +182806-0660622 America/Puerto_Rico AST - QC (Lower North Shore)
PS +3130+03428 Asia/Gaza Gaza Strip
PS +313200+0350542 Asia/Hebron West Bank
PT +3843-00908 Europe/Lisbon Portugal (mainland)
@@ -287,7 +288,7 @@ RU +4310+13156 Asia/Vladivostok MSK+07 - Amur River
RU +643337+1431336 Asia/Ust-Nera MSK+07 - Oymyakonsky
RU +5934+15048 Asia/Magadan MSK+08 - Magadan
RU +4658+14242 Asia/Sakhalin MSK+08 - Sakhalin Island
-RU +6728+15343 Asia/Srednekolymsk MSK+08 - Sakha (E); N Kuril Is
+RU +6728+15343 Asia/Srednekolymsk MSK+08 - Sakha (E), N Kuril Is
RU +5301+15839 Asia/Kamchatka MSK+09 - Kamchatka
RU +6445+17729 Asia/Anadyr MSK+09 - Bering Sea
SA,AQ,KW,YE +2438+04643 Asia/Riyadh Syowa
@@ -329,7 +330,7 @@ US +470659-1011757 America/North_Dakota/Center Central - ND (Oliver)
US +465042-1012439 America/North_Dakota/New_Salem Central - ND (Morton rural)
US +471551-1014640 America/North_Dakota/Beulah Central - ND (Mercer)
US +394421-1045903 America/Denver Mountain (most areas)
-US +433649-1161209 America/Boise Mountain - ID (south); OR (east)
+US +433649-1161209 America/Boise Mountain - ID (south), OR (east)
US,CA +332654-1120424 America/Phoenix MST - AZ (most areas), Creston BC
US +340308-1181434 America/Los_Angeles Pacific
US +611305-1495401 America/Anchorage Alaska (most areas)