Skip to content

Release v1.4.0

Latest

Choose a tag to compare

@calliostro calliostro released this 20 Sep 09:26
b637069

Added

  • Added Calliostro\SpotifyWebApiBundle\SpotifyClient subclassing SpotifyWebAPI\SpotifyWebAPI with automatic token freshness checking and retry handling on expired token errors (401).
  • Added in-memory token caching with timestamp tracking (55-minute TTL) and force-refresh capabilities to TokenProvider.
  • Solved token expiration after 60 minutes for long-running processes (CLI commands and Symfony Messenger background workers).
  • Added SpotifyClientFactory with runtime credential validation (client_id, client_secret) and actionable configuration error instructions.
  • Added tests/Fixtures/TestKernel.php for clean, isolated testing.
  • Created UPGRADE.md guide.
  • Added comprehensive unit test suite in tests/Unit/ reaching 100% code coverage across all classes, methods, and lines.
  • Compatibility testing and CI matrix coverage for PHP 8.1–8.6 and Symfony 6.4 LTS, 7.x, 8.0, 8.1, and 8.2.
  • Created root phpstan.neon.dist (Level 8) and added PHPStan static analysis.
  • Created .php-cs-fixer.dist.php for PSR-12 and PSR-12:risky code styling.
  • Added DEVELOPMENT.md guide.
  • Added .gitattributes for clean release archives and updated .gitignore.

Deprecated

  • Deprecated SpotifyWebApiFactory in favor of SpotifyClientFactory.
  • Deprecated calliostro_spotify_web_api service alias in favor of calliostro_spotify_web_api.client.
  • Deprecated SpotifyWebAPI\SpotifyWebAPI autowiring alias in favor of Calliostro\SpotifyWebApiBundle\SpotifyClient.

Changed

  • Updated GitHub Actions runners to ubuntu-24.04 and modernized action versions to Node 24 compatible runners (actions/checkout@v7, actions/cache@v6, codecov/codecov-action@v7).
  • Added strict type declarations (declare(strict_types=1);) and typed properties across the entire codebase.
  • Overhauled README.md layout, badges, structure, and sister bundle links to align with sister bundles (discogs-bundle, lastfm-bundle).
  • Updated phpunit.xml.dist with separated Unit Tests, Integration Tests, and All Tests test suites.