Skip to content

Modernize GitHub Actions CI workflows - #515

Merged
rickdijk merged 7 commits into
developfrom
update/workflows
Jul 27, 2026
Merged

Modernize GitHub Actions CI workflows#515
rickdijk merged 7 commits into
developfrom
update/workflows

Conversation

@rickdijk

@rickdijk rickdijk commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

✨ What kind of change does this PR introduce? (Bug fix, feature, docs update...)

CI / tooling update for the GitHub Actions workflows and Dependabot.

⤵️ What is the current behavior?

  • Workflows use older actions (checkout@v4, setup-java@v4)
  • Format, analyze, and tests run as separate jobs with duplicated Flutter setup
  • Firebase workflow has a no-op tests job (test step commented out)
  • Desktop flutter config enable flags and architecture: x64 are still set
  • Publish jobs install both Dart and Flutter
  • No concurrency, default permissions, job timeouts, or Dependabot for actions
  • Path filters watch all of .github/workflows/**, so editing one workflow triggers the other

🆕 What is the new behavior (if this is a feature change)?

  • Bump actions/checkout to @v5 and actions/setup-java to @v5
  • Merge format/analyze/tests into a single quality job with shared Flutter setup
  • Re-enable Firebase unit tests; slim publish jobs to dart-lang/setup-dart only
  • Remove obsolete desktop enable flags and architecture: x64
  • Pin Flutter to 3.44.4, add permissions/concurrency/timeouts
  • Narrow path filters to each workflow file
  • Add Dependabot for monthly github-actions updates

💥 Does this PR introduce a breaking change?

No.

🐛 Recommendations for testing

  • Confirm the build workflow passes on this PR for flutter_cache_manager paths
  • Confirm the build firebase workflow passes when Firebase paths change
  • Spot-check that Dependabot is enabled for the repo after merge

📝 Links to relevant issues/docs

N/A — follow-up to CI hygiene recommendations for .github/workflows/build.yaml and build-firebase.yaml.

🤔 Checklist before submitting

  • All projects build
  • Follows style guide lines (code style guide)
  • Relevant documentation was updated
  • Rebased onto current develop

Rick van Dijk and others added 7 commits July 27, 2026 09:09
Consolidate quality checks, bump actions, pin Flutter, and add concurrency, permissions, and timeouts.

Co-authored-by: Cursor <cursoragent@cursor.com>
Merge format/analyze/tests into a quality job, run unit tests again, and align hygiene with the main workflow.

Co-authored-by: Cursor <cursoragent@cursor.com>
Keep workflow action versions current with weekly grouped PRs.

Co-authored-by: Cursor <cursoragent@cursor.com>
flutter-action rejects flutter-version: stable; use an explicit SDK version instead.

Co-authored-by: Cursor <cursoragent@cursor.com>
AGP 9 with Flutter's builtInKotlin=false opt-out breaks transitive jni 1.0.1, which CI resolves without a lockfile.

Co-authored-by: Cursor <cursoragent@cursor.com>
Empty test mains exit with code 79 under flutter test, which failed the Firebase quality job.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
@rickdijk
rickdijk marked this pull request as ready for review July 27, 2026 16:43
@rickdijk
rickdijk requested review from Copilot and mvanbeusekom July 27, 2026 17:06

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

This PR modernizes the repository’s CI setup (GitHub Actions + Dependabot) and updates the Android example tooling to stay compatible with current Flutter/Gradle/Kotlin constraints, while also re-enabling Firebase package unit tests so CI test runs are meaningful.

Changes:

  • Updates GitHub Actions workflows (newer actions, combined “quality” job, pinned Flutter version, permissions/concurrency/timeouts, narrower path filters).
  • Re-enables Firebase unit tests and adds a small smoke test to avoid “No tests were found”.
  • Adjusts the Android example project tooling versions (AGP/Gradle/Kotlin) for compatibility.

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
flutter_cache_manager/example/android/settings.gradle Pins AGP/Kotlin plugin versions and documents staying on AGP 8.x.
flutter_cache_manager/example/android/gradle/wrapper/gradle-wrapper.properties Downgrades Gradle wrapper to 8.14 for compatibility with AGP 8.x.
flutter_cache_manager/example/android/gradle.properties Updates comments around Flutter migrator compatibility flags.
flutter_cache_manager/example/android/app/build.gradle Updates plugin application order and Kotlin configuration (but see review comment about Kotlin plugin id).
flutter_cache_manager/CHANGELOG.md Adds Unreleased notes for CI + Android example tooling updates.
flutter_cache_manager_firebase/test/flutter_cache_manager_firebase_test.dart Adds a basic test so CI flutter test runs actual tests.
flutter_cache_manager_firebase/CHANGELOG.md Adds Unreleased notes for CI modernization + test addition.
.github/workflows/build.yaml Modernizes main package workflow (combined quality job, pinned Flutter, updated actions, timeouts/concurrency/permissions).
.github/workflows/build-firebase.yaml Modernizes Firebase workflow similarly and re-enables tests.
.github/dependabot.yml Adds monthly Dependabot updates for GitHub Actions.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread flutter_cache_manager/example/android/app/build.gradle
@rickdijk
rickdijk merged commit 3c74f07 into develop Jul 27, 2026
11 checks passed
@rickdijk
rickdijk deleted the update/workflows branch July 27, 2026 18:08
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.

3 participants