diff --git a/eng/common/core-templates/steps/source-index-stage1-publish.yml b/eng/common/core-templates/steps/source-index-stage1-publish.yml index 75600735f17..e9a694afa58 100644 --- a/eng/common/core-templates/steps/source-index-stage1-publish.yml +++ b/eng/common/core-templates/steps/source-index-stage1-publish.yml @@ -1,6 +1,6 @@ parameters: - sourceIndexUploadPackageVersion: 2.0.0-20250425.2 - sourceIndexProcessBinlogPackageVersion: 1.0.1-20250515.1 + sourceIndexUploadPackageVersion: 2.0.0-20250818.1 + sourceIndexProcessBinlogPackageVersion: 1.0.1-20250818.1 sourceIndexPackageSource: https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json binlogPath: artifacts/log/Debug/Build.binlog diff --git a/eng/common/sdk-task.ps1 b/eng/common/sdk-task.ps1 index a9d2a2d2699..b62e132d32a 100644 --- a/eng/common/sdk-task.ps1 +++ b/eng/common/sdk-task.ps1 @@ -7,13 +7,14 @@ Param( [switch] $restore, [switch] $prepareMachine, [switch][Alias('nobl')]$excludeCIBinaryLog, + [switch]$noWarnAsError, [switch] $help, [Parameter(ValueFromRemainingArguments=$true)][String[]]$properties ) $ci = $true $binaryLog = if ($excludeCIBinaryLog) { $false } else { $true } -$warnAsError = $true +$warnAsError = if ($noWarnAsError) { $false } else { $true } . $PSScriptRoot\tools.ps1 diff --git a/eng/common/sdk-task.sh b/eng/common/sdk-task.sh index 2f83adc0269..0c92f81d74f 100755 --- a/eng/common/sdk-task.sh +++ b/eng/common/sdk-task.sh @@ -10,6 +10,7 @@ show_usage() { echo "Advanced settings:" echo " --excludeCIBinarylog Don't output binary log (short: -nobl)" + echo " --noWarnAsError Do not warn as error echo "" echo "Command line arguments not listed above are passed thru to msbuild." } @@ -52,6 +53,7 @@ exclude_ci_binary_log=false restore=false help=false properties='' +warnAsError=true while (($# > 0)); do lowerI="$(echo $1 | tr "[:upper:]" "[:lower:]")" @@ -73,6 +75,10 @@ while (($# > 0)); do exclude_ci_binary_log=true shift 1 ;; + --noWarnAsError) + warnAsError=false + shift 1 + ;; --help) help=true shift 1 @@ -85,7 +91,6 @@ while (($# > 0)); do done ci=true -warnAsError=true if $help; then show_usage diff --git a/src/EFCore.SqlServer/Infrastructure/Internal/SqlServerSingletonOptions.cs b/src/EFCore.SqlServer/Infrastructure/Internal/SqlServerSingletonOptions.cs index 98c5f8727ee..90b43fe769b 100644 --- a/src/EFCore.SqlServer/Infrastructure/Internal/SqlServerSingletonOptions.cs +++ b/src/EFCore.SqlServer/Infrastructure/Internal/SqlServerSingletonOptions.cs @@ -70,7 +70,11 @@ public virtual bool SupportsJsonType => EngineType switch { SqlServerEngineType.SqlServer => SqlServerCompatibilityLevel >= 170, - SqlServerEngineType.AzureSql => AzureSqlCompatibilityLevel >= 170, + // TODO: #36460 + // At the time of writing, Azure SQL Database does not yet support OPENJSON over the JSON data type. + // This should get reenabled by the time we GA. + SqlServerEngineType.AzureSql => false, + // SqlServerEngineType.AzureSql => AzureSqlCompatibilityLevel >= 170, SqlServerEngineType.AzureSynapse => false, SqlServerEngineType.Unknown => false, // TODO: We shouldn't observe Unknown here, #36477 _ => throw new UnreachableException() diff --git a/test/EFCore.SqlServer.Tests/Storage/SqlServerTypeMappingSourceTest.cs b/test/EFCore.SqlServer.Tests/Storage/SqlServerTypeMappingSourceTest.cs index 6a19f0a3b8c..1859ff057cd 100644 --- a/test/EFCore.SqlServer.Tests/Storage/SqlServerTypeMappingSourceTest.cs +++ b/test/EFCore.SqlServer.Tests/Storage/SqlServerTypeMappingSourceTest.cs @@ -1588,8 +1588,13 @@ public void Json_is_mapped_to_json_type_with_UseAzureSql_by_default() { var typeMappingSource = CreateTypeMappingSource(o => o.UseAzureSql()); - Assert.Equal("json", typeMappingSource.GetMapping(typeof(JsonTypePlaceholder)).StoreType); - Assert.Equal("json", typeMappingSource.GetMapping(typeof(int[])).StoreType); + // TODO: #36460 + // At the time of writing, Azure SQL Database does not yet support OPENJSON over the JSON data type. + // This should get reenabled by the time we GA. + Assert.Equal("nvarchar(max)", typeMappingSource.GetMapping(typeof(JsonTypePlaceholder)).StoreType); + Assert.Equal("nvarchar(max)", typeMappingSource.GetMapping(typeof(int[])).StoreType); + // Assert.Equal("json", typeMappingSource.GetMapping(typeof(JsonTypePlaceholder)).StoreType); + // Assert.Equal("json", typeMappingSource.GetMapping(typeof(int[])).StoreType); } [ConditionalFact]