Version 4.0.0-RC.1
Pre-release
Pre-release
·
2 commits
to main
since this release
Immutable
release. Only release title and notes can be modified.
4.0.0-RC.1 (2026-08-08)
⚠️ BREAKING CHANGES
- PHP8.1 and 8.2 no more supported
- Parser: Native integer and float inputs are now returned unchanged instead of being normalized by the lexer. This preserves their values and types but may affect callers that rely on implicit conversion or parser validation.
✨ New Features
- Add strict types declaration to all files (7be229c)
- Add unit tests for Angle, Cardinal, Parser, and TokenStream classes (9493d6a)
- Introduce LogicException for handling logic errors in the GeoParser (2dc0057)
- Parser: Return native numeric inputs directly. (7c7c04f)
- Refactor Parser class to streamline input handling and parsing logic (947a5b1)
🐛 Bug Fixes
- add input validation in Parser constructor and corresponding test (8e7b08d)
♻️ Refactoring
- enhance symbol matching logic and coordinate handling in Parser class (97a9d2a)
- improve handling of space-separated coordinate pairs in Parser class (854d1a3)
- simplify symbol matching logic in Parser class (e462dbf)
- streamline cardinal direction handling in Parser class (6bf081f)
- update minutes and seconds methods to return float values and normalize fractions (e324539)
📚 Documentation
- Update contributing guidelines and enhance quality tool commands (2669781)
🌳 Environmental Impact
- ci: reduce cache storage (cc0beeb)
👷 CI/CD
- correct composer cache directory command in CI workflow (cf8e898)
- update CI workflow to conditionally run full CI based on open pull requests (689d8ff)
- update composer require command to use caret versioning for lexer dependency (926c401)
- update output setting for Composer cache directory in CI workflow (ff61117)
🔧 Maintenance
- add a script to use php-xs-fixer (c7414cb)
- release: v4.0.0-RC.0 🎉 (53d12d1)
- update headers (67c68c4)
- Update PHP version requirement to ^8.3 and adjust doctrine/lexer dependency (86be558)
📊 Quality tools
- Clean up PHPStan baseline by removing outdated ignore errors (d80aa7b)
- exclude TooManyPublicMethods rule in code size checks for tests (8b03143)
- Update PHP CS Fixer rules to include case statements in ordered class elements (c4544d7)
- update project metadata in php-cs-fixer configuration file (190e316)