Declare the Dart 3.11.0 floor - #62
Merged
Merged
Conversation
Match conceptadev/mix and conceptadev/wayfinder so one SDK serves every Concepta package. tool/release already required 3.11.0 for cli_pkg's xml 7 API, so this collapses the gap rather than widening it. The floor is above what okf's own dependencies need, which is the point being traded: consistency across the organization over reach for consumers on 3.9 and 3.10. Four places hold the number, and the CI gate found the two that are easy to miss: test/ci/gate_test.dart asserts both the pubspec constraint and the SDK floor job's pinned version verbatim. The stale comment claiming the repository targets >=3.4.0 is corrected, and the note beside RELEASE_DART_SDK now says what it still does -- pin an exact SDK where other jobs track stable -- rather than isolating a higher floor it no longer has. The pubspec assertion moves to a local variable so the line stays short: dart format's output is version-dependent and this file is canonically formatted by stable, so a wrapped expect() would have churned the whole file.
leoafarias
force-pushed
the
chore/dart-3-11-floor
branch
from
September 12, 2026 19:16
bc59eea to
dfc8d95
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this changes
Declares
sdk: ">=3.11.0 <4.0.0"for theokfpackage, matchingconceptadev/mixandconceptadev/wayfinderso one SDK serves every Concepta package.tool/releasealready required 3.11.0 for cli_pkg 2.15.2's xml 7 API, so this collapses the gap between the package and its release tooling rather than widening it.The trade-off, stated plainly. The floor is higher than anything
okfdepends on needs. This buys organization-wide consistency and costs reach for consumers still on Dart 3.9 or 3.10. That is the intended trade, not an oversight.Four places hold the number
The CI gate caught the two that are easy to miss —
test/ci/gate_test.dartasserts both the pubspec constraint and the SDK floor job's pinned version verbatim, so the change cannot be done in the pubspec alone:pubspec.yaml— the constraint itselftest/ci/gate_test.dart— the asserted pubspec constrainttest/ci/gate_test.dart— the assertedsdk-versionof theSDK floorjob.github/workflows/test.yml— that job's pinned SDKTwo comments were also wrong or became wrong. The one beside
RELEASE_DART_SDKclaimed "the rest of the repository still targets the>=3.4.0floor", which was already untrue at 3.9.0; it now says what the variable still does, which is pin an exact SDK where the other jobs track stable. TheSDK floorjob's own comment records that it equals the stable job only until stable moves past 3.11, which is the reason to keep it rather than delete it as redundant.Checks
dart pub get,dart format --set-exit-if-changedclean,dart analyze --fatal-infosclean, and 227 tests pass locally on Dart 3.11.0. No lint newly fired: okf was already above the 3.7 tall-style formatter boundary, so unlike the equivalent change inwayfinderthis carries no reformatting churn.