chore: Migrate to Melos 8 with a pub workspace and add the Flame release workflows - #55
Merged
Merged
Conversation
erickzanardo
approved these changes
Sep 23, 2026
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.
Description
Migrates the monorepo to the latest Melos (8.x) on top of a pub workspace and sets up the same
tooling and automation as the flame repository.
Melos and pub workspace
pubspec.yamlis now a pub workspace that lists all packages, and the Melosconfiguration lives in its
melossection, somelos.yamlis gone.resolution: workspaceand the SDK constraints are aligned toDart
>=3.13.0/ Flutter>=3.47.0, which is what the workspace resolution requires(very_good_analysis 11 needs Dart 3.13).
format-check,lint:all,test:select,coverage,upgrade,markdown-check/markdown-fix, pluseditor-run/editor-buildfor the editor app.pubspec.lockfiles, IDE files and the leftover.githubdirectory insidemini_sprite_editorare removed and ignored through the same.gitignoreas flame.Workflows
cicd.yml: format, analyze on the lowest supported Flutter version, analyze on latest stable,markdown lint and tests, replacing the seven per package workflows.
release-prepare.yml,release-tag.ymlandrelease-publish.yml: the flame release flow.Prepare releaserunsmelos versionand opens a release PR, merging it tags the packages andtriggers the publish workflow, which publishes to pub.dev with OIDC and creates GitHub releases.
title-validation.ymlandspell_checker.ymlwith a cspell configuration and dictionaries.gh-pages.ymlnow usesbluefireteam/flutter-gh-pagesto deploy the editor.Repository files
CONTRIBUTING.md,FUNDING.yml, the flame pull request template and the markdownlintconfiguration.
dart formaton all packages with the current formatter, fixes the markdown lint findingsin the READMEs, and fixes the typos that cspell found (including the
toogleGridandnewProperylocalization keys in the editor).dart fixfor the lints that very_good_analysis 11 enables on Dart 3.13, whichrewrites constructors to the new
const new(...)syntax inmini_sprite,flutter_mini_spriteand
mini_treasure_quest. Say so if you would rather disableunnecessary_type_name_in_constructorinstead.
Locally,
melos bootstrap,melos run format-check,melos exec -- dart analyze --fatal-infos .,melos run test:select --no-select, markdownlint and both cspell scripts all pass.Notes for the maintainers
enabled for this repository, with the
release-publish.ymlworkflow and thepkg-v*tagpattern.
main, like in flame. Drop thepushtrigger if the editor should only be deployed manually.
Checklist
///.Breaking Change?