This release upgrades the ReallySimpleJWT library to work with PHP 8 and above. It also makes some significant design tweaks to the underlying codebase which should empower further improvements and functionality. The core interfaces for the library remain unchanged which should minimise the impact of the release.
The main design changes are the removal of the Secret class and interface, secret validation is now handled in the relevant encoding class. Token structure validation is now enforced in the Jwt value object class and not the Validator class. The Validate class now depends on the Parsed class, not the Parse class. This simplifies the Parse class and means token claim data access is only in one place.
Additional Work:
- Upgraded dependent packages to work with PHP 8.
- Added the new mixed and union types available in PHP 8.
- Removed the secret property from the Jwt class.
- Token secrets now validated by new EncodeHS256Strong class.
- Added PHP CS Fixer to CI pipeline.
- Removed unused import statements.
- Ensured declare strict types were applied everywhere.
- Updated comments and readme documentation.
- Fixed issues with CI pipeline SonarCloud integration.
- Fixed issues with CI pipeline Infection PHP integration.
- Updated and Modified exception messages and codes.
To Do:
- Improve the SonarCloud
sed
command implementation in the CI pipeline. - Look into the issue with the
user_id
andsub
claims. - Fix issues with Infection PHP Implementation.
Notes:
- Welcome to the world Reuben I love you and your big brother Jacob! ❤️