-
Notifications
You must be signed in to change notification settings - Fork 336
Expand file tree
/
Copy pathDirectory.Packages.props
More file actions
175 lines (145 loc) · 8.3 KB
/
Copy pathDirectory.Packages.props
File metadata and controls
175 lines (145 loc) · 8.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
<Project>
<!-- ===================================================================== -->
<!--
Versions.props import strategy:
The SqlClient family shares a single version, defined in
src/Microsoft.Data.SqlClient/Versions.props (SqlClientPackageVersion, etc.).
src/Directory.Build.props imports that file for every project, so the SqlClient* version
properties are always available.
Microsoft.SqlServer.Server is versioned separately in its own Versions.props. In Package mode
we import that SqlServer canonical file here so that centrally-managed PackageVersion items
below can reference its computed version values for sibling package pinning.
Each Versions.props sets an import-guard property (SqlClientVersionsImported /
SqlServerVersionsImported) on first load. This skips later conditional imports and avoids
MSB4011 warnings; MSBuild would otherwise ignore the duplicate import.
-->
<!--
The SqlClient family version (src/Microsoft.Data.SqlClient/Versions.props) is imported for
every project by src/Directory.Build.props, which evaluates before this file, so
SqlClientPackageVersion is already available below. We only need to import the separately
versioned Microsoft.SqlServer.Server here so its SqlServerPackageVersion is available for
sibling package pinning in Package mode.
-->
<ImportGroup Condition="'$(ReferenceType)' == 'Package'">
<Import Project="src/Microsoft.SqlServer.Server/Versions.props" />
</ImportGroup>
<PropertyGroup>
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
<!--
Do NOT enable CentralPackageTransitivePinningEnabled. This repository
produces NuGet library packages (not applications). Transitive pinning
promotes every pinned transitive dependency into a direct NuGet
dependency in the generated .nuspec, polluting consumers' dependency
graphs with packages they never asked for.
-->
<CentralPackageTransitivePinningEnabled>false</CentralPackageTransitivePinningEnabled>
</PropertyGroup>
<!--
Compute version ceilings for sibling packages. The ceiling is the next major version
(prerelease suffix stripped) derived from the *floor* (XxxPackageVersion), giving a range
like [1.1.0-preview1-ci123, 2.0.0). This prevents NuGet from resolving an incompatible
newer major version while allowing minor/patch updates within the same major.
Because the ceiling is derived from the floor, no separate NextVersion lookup is needed
here — the range is self-contained regardless of what pipeline or developer scenario
computed the floor.
-->
<PropertyGroup>
<!-- SNI version (external package, version declared once here) -->
<SniVersion>7.1.0-preview3.26226.3</SniVersion>
<SniVersionRange>[$(SniVersion), $([MSBuild]::Add($(SniVersion.Split('.')[0]), 1)).0.0)</SniVersionRange>
</PropertyGroup>
<PropertyGroup Condition="'$(ReferenceType)' == 'Package'">
<SqlServerVersionCeiling>$([MSBuild]::Add($(SqlServerPackageVersion.Trim().Split('.')[0]), 1)).0.0</SqlServerVersionCeiling>
<SqlClientVersionCeiling>$([MSBuild]::Add($(SqlClientPackageVersion.Trim().Split('.')[0]), 1)).0.0</SqlClientVersionCeiling>
</PropertyGroup>
<!-- ===================================================================== -->
<!-- Driver Packages -->
<!--
The driver packages need version numbers when we build via Package references.
All packages in the SqlClient family share the SqlClient version, so they all use
SqlClientPackageVersion / SqlClientVersionCeiling. Microsoft.SqlServer.Server is versioned
separately and uses its own SqlServerPackageVersion.
-->
<ItemGroup Condition="'$(ReferenceType)' == 'Package'">
<PackageVersion
Include="Microsoft.SqlServer.Server"
Version="[$(SqlServerPackageVersion), $(SqlServerVersionCeiling))" />
<PackageVersion
Include="Microsoft.Data.SqlClient.Internal.Logging"
Version="[$(SqlClientPackageVersion), $(SqlClientVersionCeiling))" />
<PackageVersion
Include="Microsoft.Data.SqlClient.Extensions.Abstractions"
Version="[$(SqlClientPackageVersion), $(SqlClientVersionCeiling))" />
<PackageVersion
Include="Microsoft.Data.SqlClient"
Version="[$(SqlClientPackageVersion), $(SqlClientVersionCeiling))" />
<PackageVersion
Include="Microsoft.Data.SqlClient.Extensions.Azure"
Version="[$(SqlClientPackageVersion), $(SqlClientVersionCeiling))" />
<PackageVersion
Include="Microsoft.Data.SqlClient.AlwaysEncrypted.AzureKeyVaultProvider"
Version="[$(SqlClientPackageVersion), $(SqlClientVersionCeiling))" />
</ItemGroup>
<!-- ===================================================================== -->
<!-- Dependencies shared by multiple projects -->
<ItemGroup>
<PackageVersion Include="Azure.Core" Version="1.51.1" />
<PackageVersion Include="Microsoft.Identity.Client" Version="4.84.2" />
</ItemGroup>
<ItemGroup Condition="$([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'net9.0'))">
<PackageVersion Include="Microsoft.Extensions.Caching.Memory" Version="9.0.18" />
</ItemGroup>
<ItemGroup Condition="!$([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'net9.0'))">
<PackageVersion Include="Microsoft.Extensions.Caching.Memory" Version="8.0.1" />
</ItemGroup>
<!-- ===================================================================== -->
<!-- SqlServer Dependencies -->
<!-- None -->
<!-- ===================================================================== -->
<!-- Logging Dependencies -->
<!-- None -->
<!-- ===================================================================== -->
<!-- Abstractions Dependencies -->
<!-- None -->
<!-- ===================================================================== -->
<!-- Azure Dependencies -->
<ItemGroup>
<PackageVersion Include="Azure.Identity" Version="1.18.0" />
<PackageVersion Include="Microsoft.Identity.Client.Broker" Version="4.84.2" />
</ItemGroup>
<!-- ===================================================================== -->
<!-- SqlClient Dependencies -->
<ItemGroup>
<PackageVersion Include="Microsoft.Data.SqlClient.SNI" Version="$(SniVersionRange)" />
<PackageVersion Include="Microsoft.Data.SqlClient.SNI.runtime" Version="$(SniVersionRange)" />
<PackageVersion Include="Microsoft.IdentityModel.JsonWebTokens" Version="8.16.0" />
<PackageVersion Include="Microsoft.IdentityModel.Protocols.OpenIdConnect" Version="8.16.0" />
<PackageVersion Include="System.Buffers" Version="4.6.1" />
<PackageVersion Include="System.Data.Common" Version="4.3.0" />
<PackageVersion Include="System.Diagnostics.DiagnosticSource" Version="10.0.3" />
<PackageVersion Include="System.Memory" Version="4.6.3" />
<PackageVersion Include="System.Runtime.InteropServices.RuntimeInformation" Version="4.3.0" />
<PackageVersion Include="System.Text.Json" Version="10.0.3" />
<PackageVersion Include="System.ValueTuple" Version="4.6.2" />
<PackageVersion Include="System.Threading.Channels" Version="10.0.3" />
</ItemGroup>
<ItemGroup Condition="$([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'net9.0'))">
<PackageVersion Include="Microsoft.Bcl.Cryptography" Version="9.0.18" />
<PackageVersion Include="Microsoft.Bcl.TimeProvider" Version="9.0.18" />
<PackageVersion Include="System.Threading.RateLimiting" Version="9.0.18" />
<PackageVersion Include="System.Configuration.ConfigurationManager" Version="9.0.18" />
<PackageVersion Include="System.Security.Cryptography.Pkcs" Version="9.0.18" />
</ItemGroup>
<ItemGroup Condition="!$([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'net9.0'))">
<PackageVersion Include="Microsoft.Bcl.Cryptography" Version="8.0.0" />
<PackageVersion Include="Microsoft.Bcl.TimeProvider" Version="8.0.1" />
<PackageVersion Include="System.Threading.RateLimiting" Version="8.0.0" />
<PackageVersion Include="System.Configuration.ConfigurationManager" Version="8.0.1" />
<PackageVersion Include="System.Security.Cryptography.Pkcs" Version="8.0.1" />
</ItemGroup>
<!-- ===================================================================== -->
<!-- AKV Dependencies -->
<ItemGroup>
<PackageVersion Include="Azure.Security.KeyVault.Keys" Version="4.9.0" />
</ItemGroup>
</Project>