Skip to content

chore: upgrade deps and use pubspec.yaml for actions test#3108

Merged
veloce merged 1 commit into
lichess-org:mainfrom
lsaudon:chore/deps
May 6, 2026
Merged

chore: upgrade deps and use pubspec.yaml for actions test#3108
veloce merged 1 commit into
lichess-org:mainfrom
lsaudon:chore/deps

Conversation

@lsaudon

@lsaudon lsaudon commented May 4, 2026

Copy link
Copy Markdown
Contributor
  • set latest version of dart and flutter because ci use latest version.
  • update test.yaml for use cache and version in pubspec.yaml
  • run dart pub upgrade --major-versions and dart pub upgrade --tighten

@veloce

veloce commented May 5, 2026

Copy link
Copy Markdown
Contributor

Can you explain the benefits of doing this?

Because we haven't had any issues so far with the current setup (the CI fails from time to time when a new flutter version is out, but that is not a problem).

Have you tested it? because you used --major-versions the material icons package has been upgraded, and last time I tried it there was a bug with the tree shaking making icons disappear in a prod build.

In the flutter-action doc it says:

For flutter-version-file to work, you need to have the exact Flutter version defined in your pubspec.yaml:

which is not the case in your PR.

Also I don't see the point of using --tighten.

@lsaudon

lsaudon commented May 5, 2026

Copy link
Copy Markdown
Contributor Author

flutter-version-file allows you to use the version specified in pubspec.yaml, which prevents tests from being run on a version that is not used for development.

I've added cache management (I'm not sure if it's useful; we'll have to see how it works in practice).

For flutter-version-file to work, you need to have the exact Flutter version defined in your pubspec.yaml:

I can provide the version without caret.


Have you tested it? because you used --major-versions the material icons package has been upgraded, and last time I tried it there was a bug with the tree shaking making icons disappear in a prod build.

I run application but I don't build for prod


--tighten is like --major-versions but for minor and patch versions. This ensures that the correct versions are fetched during the flutter pub get command in the CI environment.

$ dart pub upgrade --tighten
[...]
Changed 51 constraints in pubspec.yaml:
  async: ^2.10.0 -> ^2.13.1
  clock: ^1.1.1 -> ^1.1.2
  collection: ^1.17.0 -> ^1.19.1
  connectivity_plus: ^7.0.0 -> ^7.1.1
  cronet_http: ^1.3.1 -> ^1.8.0
  crypto: ^3.0.3 -> ^3.0.7
  cupertino_http: ^2.0.0 -> ^2.4.0
  cupertino_icons: ^1.0.2 -> ^1.0.9
  dartchess: ^0.12.0 -> ^0.12.3
  deep_pick: ^1.0.0 -> ^1.1.0
  device_info_plus: ^12.1.0 -> ^12.4.0
  fast_immutable_collections: ^11.0.0 -> ^11.2.0
  firebase_core: ^4.0.0 -> ^4.7.0
  firebase_crashlytics: ^5.0.0 -> ^5.2.0
  firebase_messaging: ^16.0.0 -> ^16.2.0
  fl_chart: ^1.0.0 -> ^1.2.0
  flutter_layout_grid: ^2.0.1 -> ^2.0.8
  flutter_markdown: ^0.7.3+1 -> ^0.7.7+1
  flutter_native_splash: ^2.3.5 -> ^2.4.7
  flutter_riverpod: ^3.2.0 -> ^3.3.1
  flutter_secure_storage: ^10.0.0-beta.4 -> ^10.0.0
  flutter_slidable: ^4.0.0 -> ^4.0.3
  flutter_spinkit: ^5.2.0 -> ^5.2.2
  freezed_annotation: ^3.0.0 -> ^3.1.0
  home_widget: ^0.9.0 -> ^0.9.1
  http: ^1.1.0 -> ^1.6.0
  image_picker: ^1.1.2 -> ^1.2.2
  json_annotation: ^4.7.0 -> ^4.11.0
  logging: ^1.1.0 -> ^1.3.0
  meta: ^1.8.0 -> ^1.17.0
  package_info_plus: ^9.0.0 -> ^9.0.1
  path: ^1.8.2 -> ^1.9.1
  pub_semver: ^2.1.4 -> ^2.2.0
  share_plus: ^12.0.0 -> ^12.0.2
  shared_preferences: ^2.1.0 -> ^2.5.5
  sound_effect: ^0.1.1 -> ^0.1.3
  sqflite: ^2.2.5 -> ^2.4.2+1
  sqflite_common_ffi: ^2.2.3 -> ^2.4.0+3
  stream_transform: ^2.1.0 -> ^2.1.1
  url_launcher: ^6.1.9 -> ^6.3.2
  visibility_detector: ^0.4.0 -> ^0.4.0+2
  wakelock_plus: ^1.1.1 -> ^1.5.2
  web_socket_channel: ^3.0.0 -> ^3.0.3
  build_runner: ^2.3.2 -> ^2.15.0
  fake_async: ^1.3.1 -> ^1.3.3
  freezed: ^3.0.0 -> ^3.2.5
  json_serializable: ^6.5.4 -> ^6.13.2
  lint: ^2.0.1 -> ^2.8.0
  mocktail: ^1.0.0 -> ^1.0.5
  stream_channel: ^2.1.2 -> ^2.1.4
  wakelock_plus_platform_interface: ^1.3.0 -> ^1.5.0

What do you think about adding pubspec.yaml to the test CI paths? Even a single version update should trigger the CI.

@veloce

veloce commented May 6, 2026

Copy link
Copy Markdown
Contributor

What do you think about adding pubspec.yaml to the test CI paths? Even a single version update should trigger the CI.

Yes it's fine.

@veloce veloce left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can try the cache to see how it goes, but I need the asked changes before I can merge this. Thanks.

Comment thread pubspec.lock Outdated
Comment thread pubspec.yaml
@lsaudon lsaudon force-pushed the chore/deps branch 2 times, most recently from ba57b28 to 83e0914 Compare May 6, 2026 07:26
@veloce veloce merged commit 4c76e74 into lichess-org:main May 6, 2026
1 check passed
@lsaudon lsaudon deleted the chore/deps branch May 6, 2026 15:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants