Repository navigation
Release 10.4.0: date the changelogs, tag v10.4.0, carry the sections to main #519
Copy link
Copy link
Closed
Labels
area/releaseVersioning, changelogs, release wiringVersioning, changelogs, release wiringchoreBuild, CI, packaging, refactoring with no behaviour changeBuild, CI, packaging, refactoring with no behaviour changepackage/coreAffects CodoMetis.ValueRangesAffects CodoMetis.ValueRangespackage/efcoreAffects CodoMetis.ValueRanges.EFCore.PostgreSQLAffects CodoMetis.ValueRanges.EFCore.PostgreSQLpackage/efcore-nodatimeAffects CodoMetis.ValueRanges.EFCore.PostgreSQL.NodaTimeAffects CodoMetis.ValueRanges.EFCore.PostgreSQL.NodaTimepackage/nodatimeAffects CodoMetis.ValueRanges.NodaTimeAffects CodoMetis.ValueRanges.NodaTime
Milestone
Description
Change
These are the release steps now that every in-scope PR of #472 has merged into release/10.x, as #470 did for 10.3.0. Version is already 10.4.0 (#473). The last merges were #518 (#517) and #516 (#512) on 2026-10-26, so the release commit to check is release/10.x at 07d92df or later.
- Check before the tag. All of the following must hold on the release commit, with every fix merged, so the fixes are checked together rather than one PR at a time:
- Every CI lane is green: PostgreSQL 16 and 18, on the EF Core floor and on the newest-patch legs (now EF Core 10.0.14), plus both smoke-test modes.
dotnet run tools/oracles.cs seedsre-proves locally that every seed is caught (AGENTS.md, workflow step 4).- The pre-release reviews already ran, and their findings are fixed (Text set ==, != and Count through a scalar subquery skip #485's rewrite and compare the unsorted array_cat #505, YearMonthRange Clamp and UpperBound() in a filter compare as the month's last day, so == against the month is false #506, A case-insensitive collation on the element side still makes string set Contains and Remove compare case-insensitively #507 and their ports 10.x: follow a text set operation through a scalar subquery in the guard's rewrite (port of #505) #510–10.x: reject a string set compared with a value under a collation that may not compare bytes (port of #507) #512).
- Date the five changelogs. Set
## [10.4.0] — yyyy-mm-ddin all five, in the commit that gets tagged. - Tag
v10.4.0(annotated, likev10.3.0) on that commit. The release workflow publishes the packages, and thenugetenvironment approval is the maintainer's. - Check that no 10.x-only issue is left open.
Closes #nacts only onmain. Every sub-issue of Epic: 10.4.0 #472 is closed already, so this step only re-checks. - Carry 10.4.0 to
mainin one PR, as chore: carry the 10.3.0 sections to main (#470) #474 did for 10.3.0. It can't build until 10.4.0 is on nuget.org, because the baseline bump restores it.- Copy the
[10.4.0]sections intomain's five changelogs, verbatim. - Add
## Changed answers in 10.4.0tomain'sdocs/migration.md. The 10.4.0 changelog links#changed-answers-in-1040, and the section must cover 10.x: reject a collation on a string set column unless it compares bytes (port of #483) #496, 10.x: read an exclusive infinite date bound as memory loads it (port of #489) #502, 10.x: read a YearMonthRange upper bound in a query as the first day of its month (port of #506) #511 and 10.x: reject a string set compared with a value under a collation that may not compare bytes (port of #507) #512 (onmain: Text value set operators follow a nondeterministic column collation: on a case-insensitive column, Contains("a") is true for {A} and Remove("a") deletes A #483, LowerBound(), UpperBound() and Clamp in a query read a date range another tool wrote with an exclusive infinite bound one day wider than memory loads it #489, YearMonthRange Clamp and UpperBound() in a filter compare as the month's last day, so == against the month is false #506, A case-insensitive collation on the element side still makes string set Contains and Remove compare case-insensitively #507). - Make whatever changes the conventions then require on
main:PackageValidationBaselineVersion,main's SECURITY.md row and the walkthrough sample's package version.
- Copy the
- Open 10.5.0 on
release/10.x, as Open 10.4.0 on release/10.x #473 did after 10.3.0:Version, the baseline, the SECURITY.md row and the sample move on. Translate ToRangeSet() from Int32Set, Int64Set, DateSet, LocalDateSet and YearMonthSet (split from #407) #487 is already deferred to 10.5.0.
Done when
v10.4.0is on nuget.org for all four packages.- GitHub's Latest release is still the highest stable version.
- Epic: 10.4.0 #472 is closed with a summary.
maincarries the 10.4.0 sections.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
area/releaseVersioning, changelogs, release wiringVersioning, changelogs, release wiringchoreBuild, CI, packaging, refactoring with no behaviour changeBuild, CI, packaging, refactoring with no behaviour changepackage/coreAffects CodoMetis.ValueRangesAffects CodoMetis.ValueRangespackage/efcoreAffects CodoMetis.ValueRanges.EFCore.PostgreSQLAffects CodoMetis.ValueRanges.EFCore.PostgreSQLpackage/efcore-nodatimeAffects CodoMetis.ValueRanges.EFCore.PostgreSQL.NodaTimeAffects CodoMetis.ValueRanges.EFCore.PostgreSQL.NodaTimepackage/nodatimeAffects CodoMetis.ValueRanges.NodaTimeAffects CodoMetis.ValueRanges.NodaTime
Activity
CaffeinatedCoder commentedon Oct 26, 2026
Step 1:
dotnet run tools/oracles.cs seedson release/10.x at 07d92df (the release commit's tree minus the changelog dates): every seed is caught. CI on 07d92df and on the date PR #520 is green on every lane (PostgreSQL 16 and 18, EF Core floor and 10.0.14, both smoke-test modes).Merge pull request #520 from CaffeinatedCoder/chore/date-10.4.0
chore: carry the 10.4.0 sections to main (#519)
Merge pull request #523 from CaffeinatedCoder/chore/carry-10.4.0