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
Since we split some of the code into different packages instead of one package, we had to update the way we publish the packages and automate it when possible, previously we had a different version for both
flutter_quill
andflutter_quill_extensions
, while this approach gives us more flexibility, it's not clear which version offlutter_quill_extensions
is compatible with a specific version offlutter_quill
so we need a table for the compatible versions in theREADME.md
or somewhere else, using a different version for each package will also require a different Github repository for each package to automate the publishing with Github releases, the solution we use instead is to have one universal version andCHANGELOG.md
for all the packages which make things easier but require a little bit more setup from the maintainers side, before this PR, we have to update the version in theversion.dart
file, run a script which will update all the version and CHANGELOG (will use the root CHANGELOG.md file for all the packages) for all the packages we have, while there are other solutions and CLI tools but it require the maintainers and contributors to install them using dart pub command globally, so we had to do it in more quick and manual way, this PR make things a little bit easier:version.dart
, it will require the version in the argument and it's no longer needed to run the script by the maintainers and commit the changes and push them before releasing a new version, thepublish.yml
workflow will automate that process by running the script and pass the version from the version that is used in GitHub releases (from the tag name and not the release name), so the script is only needed from the GitHubpublish.yml
workflowCHANGELOG.md
changes (it's possible but that would require all the developers who send PRs to use a descriptive title for the PR since it will be used for the CHANGELOG files or we could get it from the Release notes from GitHub), we still have to do it manually but only for theCHANGELOG.md
at the root folder, the script that is used in the CI will also copy the contents of theCHANGELOG.md
file and overwrite them into the sub-packages (flutter_quill_extensions
,flutter_quill_test
), we might update in the futuremaster
is hardcoded which will not allow publishing pre/dev releases when working ondev
ordevelop
or other branches as it will cause failure or simply publish the commits (the changes made by the script) to themaster
branchThanks to yves-chevallier as his comment helped me fix the CI failure by the step
Commit the changes of the updated version & CHANGELOG for all the packages
CHANGELOG.md
nor the plugin version inpubspec.yaml
files../scripts/before_push.sh
and it all passed successfullyBreaking Change
Does your PR require plugin users to manually update their apps to accommodate your change?
!
in the title as explained in Conventional Commits).