* Simplify extraction of zip files in setup.sh
Refactor unzip command to directly extract to target directory.
By keeping the /flutter directory from inside the archive, we avoid having to use a temp directory and move afterwards.
* fix: checkout specific version on main/master
* feat: added support for .fvmrc files, so it can fetch the flutter version from there
* feat: changed README description of action to accomodate new changes
macos-13 was retired by GitHub in December 2025 and no longer works.
Intel-based macOS runners are being phased out entirely by GitHub,
with only expensive *-large variants remaining as alternatives.
Closes#387
Made-with: Cursor
* try to fix failing tests
* continue on error
* remove Flutter versions that aren't available natively for arm64 macOS
* explicitly specify arch = x64 (`-a x64`)
* fix order of args
* remove redundant quotes
* make `dry-run` also accept bools
* update README with new info
* setup.sh: update arg parsing to add support for `flutter-version-file` as `-f pubspec.yaml`
* action.yaml: add flutter-version-file
* setup.sh: require `yq` only when -f option is specified
* fix tests and add a new one
* enable shell options: `errexit` and `nounset`
* move falling back to defaults to single place - setup.sh
* action.yaml: reduce number of arguments in the last invocation
* Bump actions/cache to v4 to suppress node warnings
* Respect `PUB_CACHE` from the environment
* Cache pub-cache separately from flutter
In order to reduce the extra work that happens when you update your
pubspec.lock, don't use `hashFiles('**/pubspec.lock')` in the hash of
the flutter installation, and separately cache the `.pubspec-cache`.
Also return the `.pub-cache` to `$HOME`, since it's not part of the tool
installation.
* Fix README example of pub-cache-path and document `PUB_CACHE`