Skip to content

v1.0.0 - Major Release 🚀

Choose a tag to compare

@spajxo spajxo released this 24 Jul 12:44
· 23 commits to 1.x since this release
72c812a

What's Changed

Version 1.0.0 represents a complete architectural overhaul of the OpenID Connect library with significant breaking changes and new features.

🔄 Breaking Changes

  • Complete library restructure with new Factory → Facade → Services architecture
  • Replace ClientFactory with OidcFactory for client instantiation
  • Remove parameter objects (AuthorizationParams, CallbackParams, etc.) - use arrays instead
  • Update token access methods: accessToken() instead of getAccessToken()
  • Enhance exception hierarchy with granular, domain-specific exceptions by @spajxo in #46
  • Rename ParamsTrait to ClaimsTrait for semantic accuracy by @spajxo in #44

New Features

  • Resource Server Support - Built-in JWT and opaque token validation
  • Enhanced Caching - HMAC-based secure caching with configurable secrets
  • Logout URL Generation - Support for OIDC logout flows
  • User Info Endpoint - Direct access to user information
  • Refresh Token Support - Built-in token refresh capabilities
  • Add consistent factory methods to token classes by @spajxo in #45
  • Add createLogoutUrl method to AuthorizationCode by @spajxo in #42

🏗️ Architecture Improvements

  • Refactor OidcFactory to static factory pattern by @spajxo in #41
  • Remove refreshToken method from ClientCredentials by @spajxo in #43
  • Overhaul library structure by @spajxo in #39

📚 Documentation

  • Add comprehensive UPGRADE.md guide for 0.x to 1.x migration by @spajxo in #47
  • Add input validation to examples and extend PHPStan coverage
  • Update project description for clarity and consistency

🛠️ Developer Experience

  • PHP 8.4+ Support - Modern PHP features and improved type safety
  • Symfony Contracts - Uses symfony/http-client and symfony/cache contracts
  • Better Testing - Enhanced test coverage and examples
  • Add Claude Code GitHub Workflow by @spajxo in #40

🚨 Migration Required

This is a major breaking release. Please read the UPGRADE.md guide before upgrading from 0.x versions.

Key Migration Steps:

  1. Update to PHP 8.4+
  2. Replace ClientFactory::create() with OidcFactory::create()
  3. Update authorization flow to use new API methods
  4. Replace parameter objects with arrays
  5. Update exception handling for new exception hierarchy

📖 Documentation

Full Changelog: v0.4.0...v1.0.0