Notable changes
- Take a photo of a board to load a position in board editor
- New puzzle themes
- Live activity when playing a game on iOS
What's Changed
- Remove low-value duplicate and trivial tests by @slick-daddy in #3765
- Revert "Upload the debug symbols of libapp.so to the Play Console" by @julien4215 in #3771
- pinned broadcast notes to support clickable links by @HaonRekcef in #3793
- Remove conditional to check who is see TOS violation by @SergioGlorias in #3794
- Stop rebuilding the over-the-board player table on every clock tick by @slick-daddy in #3791
- add FederationId type by @HaonRekcef in #3811
- ci: pin actions, add timeouts, fix release permissions, review dependencies by @slick-daddy in #3783
- Hoist a loop-invariant mainline walk out of the PGN tree part loop by @slick-daddy in #3786
- test: drop tests that cannot fail and the dead surface they kept alive by @slick-daddy in #3785
- support duplicate variations in game tree by @HaonRekcef in #3692
- Add missing puzzle themes available on lichess.org by @gturpin-dev in #3818
- Bump @fastify/busboy from 3.2.0 to 3.2.2 in /scripts/firebase by @dependabot[bot] in #3812
- Bump uuid and firebase-admin in /scripts/firebase by @dependabot[bot] in #3813
- Stop the model layer from importing the view layer by @slick-daddy in #3741
- feat(coordinate training): persist per-side scores in preferences by @slick-daddy in #3754
- Tv & tournament improvements by @andy-ife in #3827
- Live activity when playing online game on iOS by @veloce in #3787
- docs: remove lila-gitpod setup instructions by @rafaliazz in #3820
- Board editor reads position from image/camera by @veloce in #3831
- New Crowdin mobile translations by @github-actions[bot] in #3796
- New Crowdin lila sources and translations by @github-actions[bot] in #3797
New Contributors
- @gturpin-dev made their first contribution in #3818
- @rafaliazz made their first contribution in #3820
Full Changelog: v0.29.1...v0.30.0