Skip to content

Releases: maximseshuk/payload-storage-bunny

v2.0.0

05 Sep 13:58
Compare
Choose a tag to compare

⚠️ Breaking Changes

This is a major version upgrade with breaking changes:

  1. Payload CMS Version: Requires Payload CMS 3.53.0 or higher
  2. Configuration Structure:
    • Removed options wrapper - move all configs to top level
    • stream.libraryId now requires number instead of string
    • stream.mp4Fallback is now boolean instead of { enabled: boolean }
    • purge.enabled removed - purging enabled by presence of apiKey
  3. Removed Features:
    • experimental.replaceSaveButtonComponent no longer needed or supported

Users upgrading from v1.x must follow the Migration Guide to update their configuration.

πŸš€ New Features

  • TUS Resumable Uploads: Support for resumable uploads using TUS protocol
  • Signed URLs: Secure file access with geo-restrictions and expiration
  • Advanced URL Transform: Customize file URLs with query parameters or custom functions
  • Stream Cleanup: Automatic cleanup of failed upload sessions

See README.md for detailed configuration examples and usage.

πŸ› οΈ Improvements

  • Simplified Configuration: Flattened configuration structure for better developer experience
  • Code Reorganization: Split handlers into separate modules for better maintenance and performance

Full Changelog: v1.2.2...v2.0.0

v1.2.2

15 Aug 11:51
Compare
Choose a tag to compare

✨ New Features

  • Experimental Features: Added experimental options to address Payload CMS issues. Introduced experimental.replaceSaveButtonComponent option as a temporary workaround for Payload CMS issue #13182 that causes unnecessary file re-downloads during field updates.

    Documentation

πŸ› οΈ Development

  • Development Environment: Added Payload CMS development playground

Full Changelog: v1.2.1...v1.2.2

v1.2.1

16 Jul 15:31
Compare
Choose a tag to compare

πŸ› Bug Fixes

  • Fixed Upload Hanging Issue: Resolved issue where image uploads would get stuck in loading state with submitting indicator (#6 - Thanks to @alexisoney and @jsc604 for reporting and providing detailed investigation)

    • Pinned ky dependency to version 1.7.5 to avoid hanging bug in 1.8.1 on Node versions below 22
    • Ensures compatibility with Node versions below 22
  • Fixed Main Filename Assignment: Resolved issue where main filename was randomly being set to one of the 'sizes' filenames instead of the original filename (#7 - Thanks to @DavidOliver and @alexisoney for reporting and providing solution)

    • Removed filename mutation in upload handler following S3 adapter pattern
    • Fixed filename handling logic to ensure main image retains correct filename
    • Improved filename consistency across different image sizes

πŸ› οΈ Improvements

  • Code Quality: Minor code formatting improvements and refactoring for better maintainability
    • Updated Prettier configuration and ignore rules
    • Improved code consistency across the codebase

Full Changelog: v1.2.0...v1.2.1

v1.2.0

23 Mar 16:02
Compare
Choose a tag to compare

πŸš€ New Features

  • Automatic CDN Cache Purging for Storage Files
    • Automatically purge CDN cache after file uploads and deletions
    • Configurable with options for async operation
    • Ensures visitors always see the most up-to-date content

πŸ› οΈ Improvements

  • Admin Thumbnail Configuration: Enhanced documentation for using existing appendTimestamp option with Bunny CDN's Vary Cache settings

πŸ› Bug Fixes

  • Error with cropping or replacing images (#3 - Thanks to @PP-Tom for reporting)
  • Can't update metadata on an existing image (#4 - Thanks to @wongdigital for reporting)

πŸ“ Documentation

  • Added new "CDN Cache Management" section explaining both purging and how to properly configure Bunny CDN's Vary Cache to work with timestamp parameters
  • Updated examples with cache purging configuration
  • Clearer instructions for obtaining and using the Bunny API key

Full Changelog: v1.1.0...v1.2.0

v1.1.0

14 Mar 13:15
Compare
Choose a tag to compare

πŸš€ New Features

  • Enhanced Video Processing: Improved Bunny Stream integration
    • New mp4Fallback configuration replaces the deprecated mp4FallbackQuality option
    • Smart video resolution detection and caching for better performance
  • Improved File Access Control: More flexible options with the disablePayloadAccessControl setting
    • See documentation for details on optimizing file access

πŸ› οΈ Improvements

  • Configuration Validation: Added checks to prevent common setup mistakes
  • Code Reorganization: Split handlers into separate modules for better maintenance

πŸ› Bug Fixes

  • Fixed issue where regular files (non-video) returned 404 errors when disablePayloadAccessControl was not true and Bunny Stream was enabled (Thanks to @PP-Tom for finding this bug)
  • Fixed thumbnail handling with access control enabled - thumbnails now properly proxy through Payload instead of loading directly from CDN when disablePayloadAccessControl is not true

πŸ“ Documentation

  • Completely redesigned README with clearer structure
  • Added "Performance Recommendation" section highlighting best practices
  • More detailed configuration examples for different use cases
  • Better explanation of API keys and how to get them
  • Improved documentation for storage regions and options

⚠️ Deprecations

  • mp4FallbackQuality is now deprecated - use mp4Fallback: { enabled: true } instead

Full Changelog: v1.0.1...v1.1.0

v1.0.1

26 Jan 09:43
Compare
Choose a tag to compare

Initial release of the Bunny Storage plugin for Payload CMS with support for:

  • Bunny Storage integration
  • Optional Bunny Stream for video files
  • Admin thumbnails

Full Changelog: https://github.com/maximseshuk/payload-storage-bunny/commits/v1.0.1