Skip to content

Commit 162f85b

Browse files
Add new scripts and targets
1 parent da5f255 commit 162f85b

File tree

7 files changed

+54
-2
lines changed

7 files changed

+54
-2
lines changed

.ci.yaml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -228,6 +228,24 @@ targets:
228228
channel: stable
229229
version_file: flutter_stable.version
230230

231+
# Analyze with the previous stable (N-1) and the stable before that (N-2). The
232+
# versions in `channel` should be updated after a new major stable release.
233+
- name: Linux analyze_legacy N-1
234+
bringup: true # New target
235+
recipe: packages/packages
236+
timeout: 30
237+
properties:
238+
target_file: analyze_legacy.yaml
239+
channel: "3.7.12"
240+
241+
- name: Linux analyze_legacy N-2
242+
bringup: true # New target
243+
recipe: packages/packages
244+
timeout: 30
245+
properties:
246+
target_file: analyze_legacy.yaml
247+
channel: "3.3.10"
248+
231249
- name: Linux_android custom_package_tests master
232250
recipe: packages/packages
233251
timeout: 30

.ci/scripts/analyze_legacy.sh

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
#!/bin/bash
2+
# Copyright 2013 The Flutter Authors. All rights reserved.
3+
# Use of this source code is governed by a BSD-style license that can be
4+
# found in the LICENSE file.
5+
set -e
6+
7+
# Allow analyzing packages that use a dev dependency with a higher minimum
8+
# Flutter/Dart version than the package itself. Non-client code doesn't need to
9+
# work in legacy versions.
10+
#
11+
# This requires the --lib-only flag below.
12+
./script/tool_runner.sh remove-dev-dependencies
13+
14+
# This uses --run-on-dirty-packages rather than --packages-for-branch
15+
# since only the packages changed by 'make-deps-path-based' need to be
16+
# re-checked.
17+
./script/tool_runner.sh analyze --lib-only \
18+
--skip-if-not-supporting-flutter-version="$CHANNEL" \
19+
--custom-analysis=script/configs/custom_analysis.yaml
20+
21+
# Restore the tree to a clean state, to avoid accidental issues if
22+
# other script steps are added to the enclosing task.
23+
git checkout .
File renamed without changes.

.ci/scripts/dart_unit_tests_pathified.sh

100644100755
File mode changed.

.ci/targets/analyze.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@ tasks:
1212
# the changes won't break analysis of other packages in the respository
1313
# that depend on it.
1414
- name: analyze - pathified
15-
script: .ci/scripts/pathified_analyze.sh
15+
script: .ci/scripts/analyze_pathified.sh

.ci/targets/analyze_legacy.yaml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
tasks:
2+
- name: prepare tool
3+
script: .ci/scripts/prepare_tool.sh
4+
# Does a sanity check that packages at least pass analysis on the N-1 and N-2
5+
# versions of Flutter stable if the package claims to support that version.
6+
# This is to minimize accidentally making changes that break old versions
7+
# (which we don't commit to supporting, but don't want to actively break)
8+
# without updating the constraints.
9+
# See https://github.com/flutter/flutter/wiki/Contributing-to-Plugins-and-Packages#supported-flutter-versions
10+
- name: analyze - downgraded
11+
script: .ci/scripts/analyze_legacy.sh

.ci/targets/repo_checks.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ tasks:
1010
args: ["license-check"]
1111
always: true
1212
# The major and minor version here should match the lowest version analyzed
13-
# in legacy version analysis (currently .cirrus.yaml legacy_version_analyze).
13+
# in legacy version analysis (.ci.yaml analyze_legacy).
1414
- name: pubspec validation
1515
script: script/tool_runner.sh
1616
args:

0 commit comments

Comments
 (0)