Skip to content

Commit d080c80

Browse files
authored
Preparing v7 release
1 parent 7f953b6 commit d080c80

File tree

8 files changed

+60
-60
lines changed

8 files changed

+60
-60
lines changed

EFCore.VisualBasic.Templates/EFCore.VisualBasic.Templates.vbproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
<ContentTargetFolders>content</ContentTargetFolders>
1717
<PackageLicenseExpression>Unlicense</PackageLicenseExpression>
1818
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
19-
<Version>7.0.0-alpha.1</Version>
19+
<Version>7.0.0</Version>
2020
<Copyright>© 2022 Brice Lambson, et al. All rights reserved.</Copyright>
2121
<PackageProjectUrl>https://github.com/efcore/EFCore.VisualBasic</PackageProjectUrl>
2222
<RepositoryUrl>https://github.com/efcore/EFCore.VisualBasic.git</RepositoryUrl>

EFCore.VisualBasic/EFCore.VisualBasic.vbproj

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
<SignAssembly>true</SignAssembly>
1515
<AssemblyOriginatorKeyFile>key.snk</AssemblyOriginatorKeyFile>
1616
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
17-
<Version>7.0.0-alpha.1</Version>
17+
<Version>7.0.0</Version>
1818
<GenerateDocumentationFile>true</GenerateDocumentationFile>
1919
<OptionStrict>On</OptionStrict>
2020
<LangVersion>latest</LangVersion>
@@ -45,16 +45,16 @@
4545
</ItemGroup>
4646

4747
<ItemGroup>
48-
<PackageReference Include="Microsoft.EntityFrameworkCore.Cosmos" Version="7.0.0-rtm.22501.1">
48+
<PackageReference Include="Microsoft.EntityFrameworkCore.Cosmos" Version="7.0.0">
4949
<PrivateAssets>all</PrivateAssets>
5050
</PackageReference>
51-
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="7.0.0-rtm.22501.1">
51+
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="7.0.0">
5252
<IncludeAssets>all</IncludeAssets>
5353
</PackageReference>
54-
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite.Core" Version="7.0.0-rtm.22501.1">
54+
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite.Core" Version="7.0.0">
5555
<PrivateAssets>all</PrivateAssets>
5656
</PackageReference>
57-
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="7.0.0-rtm.22501.1">
57+
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="7.0.0">
5858
<PrivateAssets>all</PrivateAssets>
5959
</PackageReference>
6060
</ItemGroup>

EFCore.VisualBasic/Multigraph.vb

Lines changed: 37 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -70,9 +70,9 @@ Namespace Utilities
7070
successorEdges([to]) = edgeList
7171
End If
7272

73-
edgeList.Add(Edge)
73+
edgeList.Add(edge)
7474
Else
75-
successorEdges.Add([to], Edge)
75+
successorEdges.Add([to], edge)
7676
End If
7777

7878
Dim predecessorEdges As Dictionary(Of TVertex, Object) = Nothing
@@ -214,39 +214,8 @@ Namespace Utilities
214214

215215
' If the successor has no other predecessors, add it for processing in the next roots pass.
216216
If predecessorCounts(successor) = 0 Then
217-
218217
nextRootsQueue.Add(successor)
219-
220-
' Detect batch boundary (if batching Is enabled).
221-
' If the successor has any predecessor where the edge requires a batching boundary, And that predecessor Is
222-
' already in the current batch, then the next batch will have to be executed in a separate batch.
223-
' TODO: Optimization : Instead of currentBatchSet, store a batch counter On Each vertex, And check if later
224-
' vertexes have a boundary-requiring dependency on a vertex with the same batch counter.
225-
If withBatching AndAlso
226-
_predecessorMap(successor).Any(
227-
Function(kv)
228-
229-
If TypeOf kv.Value Is Edge Then
230-
If DirectCast(kv.Value, Edge).RequiresBatchingBoundary Then
231-
Return True
232-
End If
233-
End If
234-
235-
If TypeOf kv.Value Is IEnumerable(Of Edge) Then
236-
Dim edges = DirectCast(kv.Value, IEnumerable(Of Edge))
237-
238-
If edges.Any(Function(e) e.RequiresBatchingBoundary) AndAlso
239-
currentBatchSet.Contains(kv.Key) Then
240-
241-
Return True
242-
End If
243-
End If
244-
245-
Return False
246-
End Function) Then
247-
248-
batchBoundaryRequired = True
249-
End If
218+
CheckBatchingBoundary(successor, withBatching, currentBatchSet, batchBoundaryRequired)
250219
End If
251220
Next
252221
Next
@@ -256,7 +225,7 @@ Namespace Utilities
256225
currentRootsQueue = nextRootsQueue
257226
nextRootsQueue = temp
258227
nextRootsQueue.Clear()
259-
End While
228+
End While
260229

261230
' We have no more roots to process. That either means we're done, or that there's a cycle which we need to break
262231
If vertexesProcessed < _vertices.Count Then
@@ -293,6 +262,7 @@ Namespace Utilities
293262
predecessorCounts(candidateVertex) -= 1
294263
If predecessorCounts(candidateVertex) = 0 Then
295264
currentRootsQueue.Add(candidateVertex)
265+
CheckBatchingBoundary(candidateVertex, withBatching, currentBatchSet, batchBoundaryRequired)
296266
broken = True
297267
End If
298268
Continue While
@@ -350,6 +320,37 @@ Namespace Utilities
350320
Return result
351321
End Function
352322

323+
' Detect batch boundary (if batching Is enabled).
324+
' If the successor has any predecessor where the edge requires a batching boundary, And that predecessor Is
325+
' already in the current batch, then the next batch will have to be executed in a separate batch.
326+
' TODO: Optimization: Instead of currentBatchSet, store a batch counter on each vertex, And check if later
327+
' vertexes have a boundary-requiring dependency on a vertex with the same batch counter.
328+
Private Sub CheckBatchingBoundary(vertex As TVertex,
329+
withBatching As Boolean,
330+
currentBatchSet As HashSet(Of TVertex),
331+
ByRef batchBoundaryRequired As Boolean)
332+
If withBatching AndAlso
333+
_predecessorMap(vertex).Any(
334+
Function(kv)
335+
If TypeOf kv.Value Is Edge Then
336+
If DirectCast(kv.Value, Edge).RequiresBatchingBoundary Then
337+
Return True
338+
End If
339+
End If
340+
341+
Dim edges = TryCast(kv.Value, IEnumerable(Of Edge))
342+
If edges IsNot Nothing AndAlso
343+
edges.Any(Function(e) e.RequiresBatchingBoundary) AndAlso
344+
currentBatchSet.Contains(kv.Key) Then
345+
Return True
346+
End If
347+
348+
Return False
349+
End Function) Then
350+
batchBoundaryRequired = True
351+
End If
352+
End Sub
353+
353354
Private Sub ThrowCycle(cycle As List(Of TVertex),
354355
formatCycle As Func(Of IReadOnlyList(Of Tuple(Of TVertex, TVertex, IEnumerable(Of TEdge))), String),
355356
Optional formatException As Func(Of String, String) = Nothing)
@@ -389,7 +390,7 @@ Namespace Utilities
389390
Public Overrides Function GetIncomingNeighbors([to] As TVertex) As IEnumerable(Of TVertex)
390391
Dim predecessors As Dictionary(Of TVertex, Object) = Nothing
391392
Return If(_predecessorMap.TryGetValue([to], predecessors),
392-
predecessors.keys,
393+
predecessors.Keys,
393394
Enumerable.Empty(Of TVertex)())
394395
End Function
395396

NuGet.Config

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
<packageSources>
44
<clear />
55
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
6-
<add key="dotnet7" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet7/nuget/v3/index.json" />
76
</packageSources>
87
<disabledPackageSources>
98
<clear />

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ Installation
1111
The latest version is available on [NuGet](https://www.nuget.org/packages/EntityFrameworkCore.VisualBasic).
1212

1313
```sh
14-
dotnet add package EntityFrameworkCore.VisualBasic --prerelease
14+
dotnet add package EntityFrameworkCore.VisualBasic
1515
```
1616

1717
Usage

Sandbox/Sandbox.vbproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@
88
</PropertyGroup>
99

1010
<ItemGroup>
11-
<PackageReference Include="Microsoft.EntityFrameworkCore.InMemory" Version="7.0.0-rtm.22501.1" />
12-
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="7.0.0-rtm.22501.1" />
13-
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="7.0.0-rtm.22501.1" />
14-
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="7.0.0-rtm.22501.1">
11+
<PackageReference Include="Microsoft.EntityFrameworkCore.InMemory" Version="7.0.0" />
12+
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="7.0.0" />
13+
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="7.0.0" />
14+
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="7.0.0">
1515
<PrivateAssets>all</PrivateAssets>
1616
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
1717
</PackageReference>

Test/EFCore.Design.Tests.Shared/EFCore.Design.Tests.Shared.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66
</PropertyGroup>
77

88
<ItemGroup>
9-
<PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="7.0.0-rtm.22501.1" />
10-
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer.NetTopologySuite" Version="7.0.0-rtm.22501.1" />
9+
<PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="7.0.0" />
10+
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer.NetTopologySuite" Version="7.0.0" />
1111
</ItemGroup>
1212

1313
</Project>

Test/EFCore.VisualBasic.Test/EFCore.VisualBasic.Test.vbproj

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -24,18 +24,18 @@
2424

2525
<ItemGroup>
2626
<PackageReference Include="Microsoft.CodeAnalysis.VisualBasic" Version="4.2.0" />
27-
<PackageReference Include="Microsoft.EntityFrameworkCore.Cosmos" Version="7.0.0-rtm.22501.1" />
28-
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="7.0.0-rtm.22501.1">
27+
<PackageReference Include="Microsoft.EntityFrameworkCore.Cosmos" Version="7.0.0" />
28+
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="7.0.0">
2929
<IncludeAssets>all</IncludeAssets>
3030
</PackageReference>
31-
<PackageReference Include="Microsoft.EntityFrameworkCore.InMemory" Version="7.0.0-rtm.22501.1" />
32-
<PackageReference Include="Microsoft.EntityFrameworkCore.Relational.Specification.Tests" Version="7.0.0-rtm.22501.1" />
33-
<PackageReference Include="Microsoft.EntityFrameworkCore.Specification.Tests" Version="7.0.0-rtm.22501.1" />
34-
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="7.0.0-rtm.22501.1" />
35-
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite.NetTopologySuite" Version="7.0.0-rtm.22501.1" />
36-
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="7.0.0-rtm.22501.1" />
37-
<PackageReference Include="Microsoft.Extensions.DependencyModel" Version="7.0.0-rtm.22480.10" />
38-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.4.0-preview-20220726-02" />
31+
<PackageReference Include="Microsoft.EntityFrameworkCore.InMemory" Version="7.0.0" />
32+
<PackageReference Include="Microsoft.EntityFrameworkCore.Relational.Specification.Tests" Version="7.0.0" />
33+
<PackageReference Include="Microsoft.EntityFrameworkCore.Specification.Tests" Version="7.0.0" />
34+
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="7.0.0" />
35+
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite.NetTopologySuite" Version="7.0.0" />
36+
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="7.0.0" />
37+
<PackageReference Include="Microsoft.Extensions.DependencyModel" Version="7.0.0" />
38+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.4.0" />
3939
<PackageReference Include="xunit" Version="2.4.2" />
4040
<PackageReference Include="xunit.runner.console" Version="2.4.2">
4141
<PrivateAssets>all</PrivateAssets>

0 commit comments

Comments
 (0)