@@ -14,35 +14,35 @@ jobs:
1414 strategy :
1515 matrix :
1616 include :
17+ # Version Support Policy: 6 months after next significant version release
18+ # See VERSIONING_POLICY.md for full details
19+ #
1720 # Dart framework may contain breaking changes in minor version releases, not following semver.
1821 # The latest Dart framework (below) is tested on all architectures (Ubuntu, macOS, Windows).
19- - name : Dart 3.5 , Ubuntu
22+ - name : Dart 3.10 , Ubuntu
2023 os : ubuntu-latest
21- sdk : 3.5.3
22- - name : Dart 3.5 , macOS
24+ sdk : 3.10.0
25+ - name : Dart 3.10 , macOS
2326 os : macos-latest
24- sdk : 3.5.3
25- - name : Dart 3.5 , Windows
27+ sdk : 3.10.0
28+ - name : Dart 3.10 , Windows
2629 os : windows-latest
27- sdk : 3.5.3
28- # Older Dart framework versions (below) are only tested with Ubuntu to reduce CI resource usage.
29- - name : Dart 3.4
30- os : ubuntu-latest
31- sdk : 3.4.4
32- - name : Dart 3.3
33- os : ubuntu-latest
34- sdk : 3.3.4
35- - name : Dart 3.2
36- os : ubuntu-latest
37- sdk : 3.2.6
30+ sdk : 3.10.0
31+ # Beta channel helps identify breaking changes early
3832 - name : Dart beta
3933 os : ubuntu-latest
4034 sdk : beta
4135 fail-fast : false
4236 name : Test ${{ matrix.name }}
4337 steps :
4438 - name : Checkout code
45- uses : actions/checkout@v4
39+ uses : actions/checkout@v6
40+ - name : Configure git for line endings (Windows)
41+ if : matrix.os == 'windows-latest'
42+ run : |
43+ git config core.autocrlf false
44+ git rm --cached -r .
45+ git reset --hard
4646 - name : Setup dart
4747 uses : dart-lang/setup-dart@v1.5.0
4848 with :
@@ -67,59 +67,51 @@ jobs:
6767 dart pub global activate coverage
6868 dart pub global run coverage:format_coverage -i coverage/test -o coverage/lcov.info --lcov --packages=.dart_tool/package_config.json --report-on=lib
6969 - name : Upload code coverage
70- uses : codecov/codecov-action@v4
70+ uses : codecov/codecov-action@v5
7171 # Needs to be adapted to collect the coverage at all platforms if platform specific code is added.
7272 if : ${{ always() && matrix.os == 'ubuntu-latest' }}
7373 with :
7474 files : packages/dart/coverage/lcov.info
75- fail_ci_if_error : true
75+ fail_ci_if_error : false
7676 token : ${{ secrets.CODECOV_TOKEN }}
7777 check-flutter :
7878 runs-on : ${{ matrix.os }}
7979 strategy :
8080 matrix :
8181 include :
82+ # Version Support Policy: 6 months after next significant version release
83+ # See VERSIONING_POLICY.md for full details
84+ #
8285 # Flutter framework may contain breaking changes in minor version releases, not following semver.
8386 # The latest Flutter framework (below) is tested on all architectures (Ubuntu, macOS, Windows).
84- - name : Flutter 3.24 , Ubuntu
87+ - name : Flutter 3.38 , Ubuntu
8588 os : ubuntu-latest
86- sdk : 3.24.3
87- - name : Flutter 3.24 , macOS
89+ sdk : 3.38.1
90+ - name : Flutter 3.38 , macOS
8891 os : macos-latest
89- sdk : 3.24.3
90- - name : Flutter 3.24 , Windows
92+ sdk : 3.38.1
93+ - name : Flutter 3.38 , Windows
9194 os : windows-latest
92- sdk : 3.24.3
93- # Older Flutter framework versions (below) are only tested with Ubuntu to reduce CI resource usage.
94- - name : Flutter 3.22
95- os : ubuntu-latest
96- sdk : 3.22.3
97- - name : Flutter 3.19
98- os : ubuntu-latest
99- sdk : 3.19.6
100- - name : Flutter 3.16
101- os : ubuntu-latest
102- sdk : 3.16.9
95+ sdk : 3.38.1
96+ # Beta channel helps identify breaking changes early
10397 - name : Flutter beta
10498 os : ubuntu-latest
10599 sdk : beta
106100 fail-fast : false
107101 name : Test ${{ matrix.name }}
108102 steps :
109103 - name : Checkout code
110- uses : actions/checkout@v4
104+ uses : actions/checkout@v6
111105 - name : Setup flutter (beta)
112106 if : ${{ matrix.sdk == 'beta' }}
113107 uses : subosito/flutter-action@v2
114108 with :
115109 channel : " beta"
116- cache : true
117110 - name : Setup flutter
118111 if : ${{ matrix.sdk != 'beta' }}
119112 uses : subosito/flutter-action@v2
120113 with :
121114 flutter-version : ${{ matrix.sdk }}
122- cache : true
123115 - name : Install dependencies on Ubuntu and MacOS
124116 if : matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest'
125117 run : (cd packages/flutter && flutter pub get)
@@ -142,13 +134,38 @@ jobs:
142134 escapedPath="$(echo `pwd` | sed 's/\//\\\//g')"
143135 sed "s/^SF:lib/SF:$escapedPath\/lib/g" coverage/lcov.info > coverage/lcov-full.info
144136 - name : Upload code coverage
145- uses : codecov/codecov-action@v4
137+ uses : codecov/codecov-action@v5
146138 # Needs to be adapted to collect the coverage at all platforms if platform specific code is added.
147139 if : ${{ always() && matrix.os == 'ubuntu-latest' }}
148140 with :
149141 files : packages/flutter/coverage/lcov-full.info
150- fail_ci_if_error : true
142+ fail_ci_if_error : false
151143 token : ${{ secrets.CODECOV_TOKEN }}
144+ auto-release-dry-run :
145+ runs-on : ubuntu-latest
146+ timeout-minutes : 10
147+ name : Auto-Release Dry Run
148+ steps :
149+ - name : Checkout code
150+ uses : actions/checkout@v6
151+ with :
152+ fetch-depth : 0 # Required for semantic-release to analyze commit history
153+ - name : Setup Node.js
154+ uses : actions/setup-node@v6
155+ with :
156+ node-version : 24
157+ - name : Install dependencies
158+ run : npm ci
159+ - name : Dry run semantic-release for dart package
160+ env :
161+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
162+ PKG_NAME : dart
163+ run : npx semantic-release --dry-run
164+ - name : Dry run semantic-release for flutter package
165+ env :
166+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
167+ PKG_NAME : flutter
168+ run : npx semantic-release --dry-run
152169concurrency :
153170 group : ${{ github.workflow }}-${{ github.ref }}
154171 cancel-in-progress : true
0 commit comments