100 Commits

Author SHA1 Message Date
Lukas Klingsbo
6290b56969 ci: Only trigger docs build on doc changes or new tags (#3877)
# Description

The docs site build was triggered on every push to `main`, causing
unnecessary rebuilds. This PR moves the docs dispatch trigger into a
dedicated `docs.yml` workflow that only runs when:
- Files in `doc/**` change on `main`
- A new `v*` tag is created

The examples gh-pages deployment in `gh-pages.yml` remains unchanged.

## Checklist

- [x] I have followed the [Contributor Guide] when preparing my PR.
- [-] I have updated/added tests for ALL new/updated/fixed
functionality.
- [-] I have updated/added relevant documentation in `docs` and added
dartdoc comments with `///`.
- [-] I have updated/added relevant examples in `examples` or `docs`.

## Breaking Change?

- [ ] Yes, this PR is a breaking change.
- [x] No, this PR is not a breaking change.

## Related Issues

[Contributor Guide]:
https://github.com/flame-engine/flame/blob/main/CONTRIBUTING.md
[Conventional Commit]: https://conventionalcommits.org
[CHANGELOG]:
https://github.com/flame-engine/flame/blob/main/CHANGELOG.md
2026-03-24 09:31:53 +01:00
Lukas Klingsbo
23c33b6fa9 ci: Automate v-tag and GitHub release for flame (#3876)
Adds a new step to the `release-tag.yml` workflow that automatically:
1. Creates a short `v{version}` tag (e.g. `v1.36.0`) pointing at the
same commit as the melos-generated `flame-v{version}` tag
2. Creates a GitHub release with the flame package changelog as release
notes

This removes the manual step of creating the `v` tag and GitHub release
after each flame release.
2026-03-24 09:25:01 +01:00
Lukas Klingsbo
0d50530485 fix: Bump Flutter min version to 3.41.0 (#3807)
Bump the Flutter and dartdoc version so that we can develop with the new
Flutter version.
This aggressive bump is due to Flutter bumping dartdoc to 9.0.0.
2026-02-12 21:42:47 +01:00
Lukas Klingsbo
5514534de3 chore: Remove unnecessary CI steps (#3738)
Since we now have shorebird CI we can remove some of our CI steps, more
of them will be possible to remove later.
2025-10-03 15:01:54 +02:00
Luan Nico
632bb6b722 ci: Update cspell used on CI to latest version (#3727)
Update cspell used on CI to latest version `9.2.1`:

https://www.npmjs.com/package/cspell

Note that the contributing guidelines does not mandate a version, so
this (the latest) will be installed if following those instructions.
2025-09-28 19:06:21 +02:00
Luan Nico
9480b9dc0b ci: Update version of the amannn/action-semantic-pull-request to v6 (#3728)
Update version of the `amannn/action-semantic-pull-request` to the
latest, v6.
2025-09-27 22:39:47 +00:00
Lukas Klingsbo
1cca70e340 chore: Correctly name packages (#3721)
* The root package should be named `_` in pub workspaces that doesn't
have an actual app or package in the root.
* Melos needs to be updated to support this.
* The flame_3d example should be named flame_3d_example to follow the
convention.
2025-09-13 07:56:30 +00:00
Luan Nico
918b9d59df chore: Re-enable melos analyze on CICD following Dart 3.8 migration (#3681)
Re-enable melos analyze on CICD following Dart 3.8 migration.
2025-08-10 14:42:59 -04:00
Luan Nico
b79fee0ae2 chore: Update min Dart constraint to 3.8 (#3676)
Update min Dart constraint to 3.8, which will enable us to use the
fancier collection literals.

This requires bumping the min Flutter version as well:

<img width="1892" height="1122" alt="image"
src="https://github.com/user-attachments/assets/7c7b07fc-4d96-4987-824d-9a7133ecfb85"
/>
2025-08-10 12:42:31 -04:00
Lukas Klingsbo
26c0d78f12 chore: Fix analyze issues for 3.32.0 (#3605)
Just fixing up some small analyzer issues that popped up in 3.32.0
2025-05-21 19:43:33 +02:00
Lukas Klingsbo
d753a3873c ci: Remove benchmark action until results are more stable (#3603)
Removes the benchmark action until is gives more stable results.
It can still be run locally.
2025-05-19 16:06:29 +00:00
Lukas Klingsbo
ba2efcd6cf chore: Loosen up constraints on PR title (#3550)
This enables us to start PR titles with other characters than capital
ones.
2025-04-03 17:43:22 +00:00
Lukas Klingsbo
f66a920159 chore: Don't compile examples to wasm (#3527)
Since flame_spine is using ffi we can't compile the examples to wasm.
2025-03-13 03:20:16 +00:00
Lukas Klingsbo
ccb5cf0c44 chore: Remove deprecated gh-pages build argument (#3526)
The web-renderer isn't needed anymore, and let's try to use the wasm
compiler for the examples by default.
2025-03-13 03:05:20 +00:00
Luan Nico
9238f7fe73 chore: Update dart-benchmark-action to v0.1.14 (#3452)
Update dart-benchmark-action to v0.1.14
2025-01-21 07:36:53 +01:00
Luan Nico
2d4ececbdf test: Ensure correct permissions for any author on dart_benchmark_action config (#3442)
Ensure correct permissions for any author on dart_benchmark_action
config.
2025-01-09 21:39:38 +00:00
Lukas Klingsbo
9bcef051db ci: Use melos v7.0.0-dev.1 (#3433)
This makes the monorepo make use of `Melos v7.0.0-dev.1` so that we can
use the pub workspaces feature.
2025-01-07 22:11:40 +01:00
Luan Nico
4af202faf5 test: Add very basic benchmark infrastructure (#3431)
Add very basic benchmark infrastructure, using the `examples` app as a
centralized benchmark playground and with first ever benchmark file just
testing some components and updates (more to come).

This also sets up the `dart-benchmark-action` to run, starting on this
very PR!
2025-01-07 08:00:03 +01:00
Mike Diarmid
978ad31b42 refactor: Fix lint issues from latest flutter release (#3390)
Updates to use the new color method `withValues`.

---------

Co-authored-by: Lukas Klingsbo <lukas.klingsbo@gmail.com>
Co-authored-by: Jochum van der Ploeg <jochum@vdploeg.net>
2024-12-13 22:40:54 +01:00
Luan Nico
a2cc332161 chore: Bump min supported Flutter version to match stable (#3368)
Bumps min flutter version to 3.24 (stable is at 3.24.5 already).
This allows us to finally merge flame_3d in.
2024-12-10 15:59:23 +00:00
Lukas Klingsbo
d2d4b372d8 ci: Add actions permissions to release tag job (#3330)
This adds the missing permission to the release tag job.
2024-10-07 19:54:27 +00:00
Lukas Klingsbo
6f59f5b20a ci: Correct env formatting for run (#3314)
The `env:` line was on the wrong indentation level.
2024-09-21 00:00:12 +02:00
Lukas Klingsbo
b2271d7978 ci: Run release workflows with fetch-depth 0 (#3311)
This should fetch all history and tags etc, which is needed to properly
version and publish.
2024-09-20 20:31:43 +00:00
Lukas Klingsbo
d4d9cb62b4 ci: Melos publishing from workflow (#3309)
With this PR we'll be able to publish by running an action from the
Actions tab which will create a release PR that we can review and when
that PR is merged it will tag all new packages and trigger release
workflows for them.
2024-09-20 21:44:07 +02:00
Luan Nico
a0e99dd5b1 chore: Use GitHub Actions setup-node@v4 instead of v3 (#3268)
Use GitHub Actions setup-node@v4 instead of v3.

`v3` is deprecated and giving us warnings:


![image](https://github.com/user-attachments/assets/005add87-fa1f-4d19-933b-148dd855f73d)

Co-authored-by: Lukas Klingsbo <me@lukas.fyi>
2024-08-12 05:18:54 +00:00
Luan Nico
b05a279540 chore: Use GitHub Actions github-action-dart-analyzer@v3 instead of v2.0.0 (#3269)
Use GitHub Actions github-action-dart-analyzer@v3 instead of v2.0.0

`v2.0.0` uses deprecated versions of other actions giving us warnings:


![image](https://github.com/user-attachments/assets/005add87-fa1f-4d19-933b-148dd855f73d)
2024-08-12 07:12:08 +02:00
Luan Nico
2b8b9b9224 chore: Use GitHub Actions checkout@v4 instead of v3 (#3266)
Use GitHub Actions checkout@v4 instead of v3.
2024-08-11 21:11:28 -04:00
Lukas Klingsbo
458d53b63c chore(deps): Bump to Flutter 3.22.0 (#3174)
Bumps Flutter to 3.22.0, needed for #3173
2024-05-27 19:32:12 +02:00
DevKage
6dfc1692bd chore: Pin cspell to 8.8.2 (#3167)
This PR pin down the cspell version to 8.8.2. This will avoid random
cspell check failures caused because of cspell updates.
2024-05-24 08:48:30 +02:00
Brett Morgan
330862c98e fix!: Migrate from RawKeyEvent to KeyEvent (#3002)
First pass at migrating from `RawKeyEvent` and `RawKeyboard`
to `KeyEvent` and `HardwareKeyboard`.

Context:
https://docs.flutter.dev/release/breaking-changes/key-event-migration
2024-02-15 23:10:51 +01:00
Erick
d51cd584c7 fix: Minor issues due Flutter 3.16 (#2856)
With the last Flutter version, a few issues were introduced in Flame sourcebase. This PR solves that.
2023-11-16 17:50:39 -03:00
Lukas Klingsbo
f7334439c9 ci: Bump melos-action to v3 (#2850)
Bump the `melos-action` to v3, where only yaml is used instead of
separate scripts.
2023-11-15 08:09:05 +00:00
Lukas Klingsbo
46d6269bac ci: Sets the min flutter version from env (#2788)
Sets the min flutter version in the CI from env and moves to the stable
melos version for the gh pages build.
2023-10-03 15:33:47 +00:00
Lukas Klingsbo
5de3730231 chore: Bump to Flutter 3.13 (#2786)
Due to
[this](https://docs.flutter.dev/release/breaking-changes/add-applifecyclestate-hidden)
breaking change we have to bump our lowest supported Flutter version to
3.13.

This PR also adds so that we both analyze with the latest stable flutter
version and our lowest supported one.
2023-10-02 16:58:32 +02:00
Luan Nico
a036f19517 chore: Add a script to validate and fix all dictionary files (#2780)
The script has two purposes:

remove orphan words
alphabetize the files
I set it up to run on GitHub action as a checker, but a --fix option is available as well for running locally.

When running, I noticed that there are A LOT of orphaned words.
At first, I thought that it might be the case that cSpell was missing words on our docs that were clearly used, which would be a HUGE issue. I made this PR to validate that: #2735

But upon proper investigation, and using cSpell's trace command, I realized that we import multiple standard dictionaries: "en_US" and "softwareTerms", and they are constantly being updated. The word "cypher" was just added 12 hours ago, for example.

Turns out ALL of the current orphan words are properly being detected on our files, but now are included on the official dictionaries! Which is amazing.

Note that I did have to stop using the GitHub Action to run cSpell. The reason is twofold; (1) because I need to install cSpell anyway to run my script and didn't want to have the action download it again; and (2) because the version on the GitHub Action (even though it is the same 7.3.7 from npm that I have locally) doesn't have the latest updates (like does not have the cypher word that was added 12h ago). This would make my script and the CI script incompatible.
2023-10-01 17:44:58 +00:00
Lukas Klingsbo
3084e92500 ci: Fatal-infos should be true for analyze step (#2705)
We aren't even using melos analyze in our pipeline, I forgot that.
This makes the infos fatal, so that it fails properly.
2023-09-02 23:08:33 +02:00
Luan Nico
6dbcd0bd40 chore: Fix typo on cicd.yaml (#2702)
I think that #2698 has introduced a confusing typo to the cicd pipeline.
2023-09-02 21:25:16 +02:00
Lukas Klingsbo
0d7c6a09d2 ci: Try running the test pipeline without spec (#2698)
Try if `flutter test` works better in the pipeline. 😥
Maybe spec is using too much resources and gets killed.
2023-08-31 16:50:25 -03:00
Lukas Klingsbo
ad1a126b09 ci: Try to use ubuntu-20.04 for tests (#2697)
The issue with GitHub killing out test pipeline might be due to the running on the latest ubuntu image, this commit tries to use the older one (which I read could be a solution somewhere...)
2023-08-31 12:34:02 +00:00
Luan Nico
27a8fd61cb refactor: Enable DCM linting (#2667)
This is a first step towards enabling DCM for Flame. Though I have tested with all rules, and am working on selecting, assessing, and fixing violations, as a first step, we can merge the infrastructural changes to flame_lint to and GitHub actions.
As a proof of concept, I am enabling two rules for which we have no violations.
I will followup with enabling more rules, adding discussions for controversial changes, and fixing non-controversial violations.
2023-08-24 13:09:26 +02:00
Lukas Klingsbo
9887892493 chore: Update to Flutter 3.13 (#2656)
Updates the pipeline to use Flutter 3.13 and does all the analyze fixes.
2023-08-18 20:13:17 +02:00
Lukas Klingsbo
aeef9464f6 fix: Set constraint for test dependency in flame_test (#2558)
Pub is complaining that test doesn't have a constraint.
2023-05-31 09:46:27 -03:00
Lukas Klingsbo
52b35fbf56 fix: Avoid creation of unnecessary objects for RiveComponent (#2553)
Avoid creation of unnecessary objects for RiveComponent and simplifies
the example.
2023-05-25 17:04:42 +00:00
Lukas Klingsbo
b41622db8f fix: Solve warnings from 3.10.0 analyzer (#2532)
Just solves the warnings that the new Flutter version complains about (which makes us lose 10 points on pub).
2023-05-14 16:25:23 +02:00
Lukas Klingsbo
5736a0345b ci: Update PR title validator (#2481)
Bump to newest version of amannn/action-semantic-pull-request.
2023-04-11 20:51:03 +00:00
Lukas Klingsbo
18ddc3b57d ci: Bump Melos in gh-pages (#2334) 2023-02-09 19:08:24 +01:00
Lukas Klingsbo
fb3c744e37 ci: Migrate to Melos 3 and Flutter 3.7.1 (#2330)
This PR migrates us to the prerelease version of Melos (3.0.0-dev.0) and our pipelines to Flutter 3.7.1

It's a golden opportunity for us to test the upcoming version of melos and give them any feedback that we might have. :)

The migration instructions can be read here:
https://melos.invertase.dev/guides/migrations
2023-02-08 22:49:05 +01:00
Luan Nico
e0a4c07f2a docs: Update cspell github action and configuration (#2325)
I am on a crusade to improve our spellchecking. I have a big PR that I am now going to break down into very small chunks to for review.

zwaldowski's cspell-action has been deprecated in favor of streetsidesoftware/cspell-action.

This PR:

updates to use the new recommended cspell action
update to use checkout v3, because why not
fixes a few violations the new action caught
Note: I think we should make a distinction between things that should be in a dictionary (e.g. AABB, a standard industry acronym that we expect people to know what it is) and specific edge-cases/ignore rules for specific parts of specific files (e.g. something like fccc which is meaningless outside of the very specific context in which it is used). For the latter, I believe we should use case-by case exceptions.
2023-02-06 11:58:44 +01:00
Lukas Klingsbo
1566e18b58 ci: Pin flutter version until we have done all fixes (#2290) 2023-01-25 14:19:36 +01:00
Pasha Stetsenko
2e646b7fbc fix title validator (#2230) 2022-12-22 00:34:39 +01:00