Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Laravel Medialibrary Laravel Package

spatie/laravel-medialibrary

Attach files to Eloquent models with an easy API. Upload from disk or request, store media across multiple filesystems (local/S3), and generate image/PDF conversions and manipulations using Laravel’s Filesystem.

View on GitHub
Deep Wiki
Context7
11.21.0

What's Changed

  • Add Laravel 13 support
11.20.0

What's new

  • Add getAvailableTemporaryUrl method (#3919)

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.19.0...11.20.0

11.18.2

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.18.1...11.18.2

11.18.1

What's Changed

  • Revert breaking interface change on registerAllMediaConversions() — the ?Media $media = null parameter that was added to the HasMedia interface in v11.18.0 has been removed, as it broke userland code that overrides the method without the parameter. The PHPStan error is now handled via the baseline instead. Fixes #3915.
11.18.0

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.17.10...11.18.0

11.17.9

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.17.8...11.17.9

11.17.10
11.17.7
11.17.2
11.17.1
11.17.0

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.14.0...11.17.0

11.16.0

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.15.0...11.16.0

11.15.0

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.14.0...11.15.0

11.14.0

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.13.0...11.14.0

11.13.0
11.12.8

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.12.7...11.12.8

11.12.7
11.12.6

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.12.5...11.12.6

11.12.2

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.12.1...11.12.2

11.12.1

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.12.0...11.12.1

11.12.0

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.11.1...11.12.0

11.11.0

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.10.1...11.11.0

11.10.1

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.10.0...11.10.1

11.10.0

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.9.2...11.10.0

11.9.2

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.9.1...11.9.2

11.9.1
11.9.0

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.8.3...11.9.0

11.8.3

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.8.2...11.8.3

11.8.2

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.8.1...11.8.2

11.8.1

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.8.0...11.8.1

11.8.0

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.7.6...11.8.0

11.7.5

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.7.4...11.7.5

11.7.4

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.7.3...11.7.4

11.7.3

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.7.2...11.7.3

11.5.3

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.5.2...11.5.3

11.5.2

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.5.1...11.5.2

11.5.1

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.5.0...11.5.1

11.5.0
11.4.8

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.4.7...11.4.8

11.4.6

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.4.5...11.4.6

11.4.5

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.4.4...11.4.5

11.4.4

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.4.3...11.4.4

11.4.3

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.4.2...11.4.3

11.4.2

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.4.1...11.4.2

11.4.1

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.4.0...11.4.1

11.4.0

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.3.1...11.4.0

11.3.0

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.2.0...11.3.0

11.2.0

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.1.2...11.2.0

11.1.2

Updated docs.

11.1.1

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.1.0...11.1.1

11.1.0

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.0.5...11.1.0

11.0.5

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.0.4...11.0.5

11.0.4

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.0.3...11.0.4

11.0.3

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.0.2...11.0.3

11.0.2
11.0.1

What's Changed

  • do not throw exceptions when trying to convert PDFs and SVGs using GD

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/11.0.0...11.0.1

11.0.0
10.15.0

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.14.0...10.15.0

10.14.0
10.13.1

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.13.0...10.13.1

10.12.2

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.12.1...10.12.2

10.12.0
10.11.2

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.11.1...10.11.2

10.11.1
  • revert loading media introduced in #3319 (v10.10.2)
10.10.2

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.10.1...10.10.2

10.10.0
10.9.3

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.9.2...10.9.3

10.9.2

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.9.1...10.9.2

10.9.1

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.9.0...10.9.1

10.8.0

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.7.16...10.8.0

10.7.16

Allow any Laravel version up from 9.15

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.7.15...10.7.16

10.7.15
  • revert changes of previous release because of issues report in #3224
10.7.12

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.7.11...10.7.12

10.7.11

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.7.10...10.7.11

10.7.10
  • improve output of command
10.7.8

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.7.7...10.7.8

10.7.7

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.7.6...10.7.7

10.7.6

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.7.5...10.7.6

10.7.5

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.7.4...10.7.5

10.7.4

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.7.3...10.7.4

10.7.2

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.7.1...10.7.2

9.12.4

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/9.12.3...9.12.4

10.7.1

What's Changed

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.7.0...10.7.1

10.7.0

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.6.1...10.7.0

10.6.0
10.5.1

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.5.0...10.5.1

10.5.0

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.4.5...10.5.0

10.4.5
10.4.4
10.4.3
  • Revert order media relationship
10.4.2

What's Changed

New Contributors

Full Changelog: https://github.com/spatie/laravel-medialibrary/compare/10.4.1...10.4.2

10.3.6
10.3.5
10.3.4
  • use anonymous migration
10.3.3
9.12.3
10.3.2
10.3.1
9.12.2
9.12.1
9.12.0
10.3.0
10.2.0
10.1.4
10.1.3
10.1.2
9.11.4
10.1.1
10.1.0
9.11.3
9.11.2
10.0.7
10.0.6
  • improve deps
10.0.5
  • improve deps
10.0.4
  • improve dependencies
10.0.3
10.0.2

Move Larastan to dev deps

10.0.1
  • fix return type
10.0.0
9.11.1
9.11.0
9.10.3
9.10.2
9.10.1
9.10.0
9.9.1
9.9.0
9.8.4
9.8.3
  • appends preview_url and original_url to Media object
9.8.2
  • revert #2609
9.8.1
  • fix missing image preview URLs in Inertia Projects (#2609)
9.8.0
  • add simpler way to prefix the root directory where media are saved (#2576)
9.7.5
  • Remove regex on FileNamer (#2587)
9.7.4
  • include --force param to image_optimzer . jpegoptim (#2580)
9.7.3
  • make sure only the extension is removed on DefaultFileNamer (#2575)
9.7.2
  • add custom header support for temporary uploads (#2557)
9.7.1
  • allow keepOriginalImageFormat() method to work with uppercase file extensions (#2527)
9.7.0
  • add getMediaRepository() to InteractsWithMedia and query() to MediaRepository (#2523)
9.6.4
  • fix syntax error
9.6.3
  • add the option to skip 'deprecated conversions' when cleaning the media directory
7.20.0
  • add support for PHP 8
9.6.2
  • simplify and speed up code for copying a stream to disk (#2425)
9.6.1
  • update InteractsWithMedia.php (#2421)
9.6.0
  • add a way to rename files globally (#2418)
9.5.6
  • include extra_headers when adding media from same S3 Disk (#2403)
9.5.5
  • fix adding private media from same S3 Disk (#2382)
9.5.4
  • add Collection typehint to addMultipleMediaFromRequest (#2389)
9.5.3
  • fix #2372 the fallback should be the original image (#2377)
9.5.2
  • allow v2 of spatie/temporary-directory
9.5.1
  • return Fallback url or path when conversion is not ready yet (#2369)
9.5.0
  • add addMediaFromStream (#2363)
9.4.4
  • allow null in the FileAdder 'order' setter (#2336)
9.4.3
  • DiskDoesNotExist moved to it's own class (#2306)
9.4.2
  • improve preservingOriginal (#2258)
9.4.1
  • fixed generated conversions race-condition (#2235)
9.4.0
  • add moves_media_on_update config value
9.3.0
  • add generate_thumbnails_for_temporary_uploads config value
9.2.0
  • add enable_temporary_uploads_session_affinity config value
9.1.7
  • add unique index to UUID column (#2197)
9.1.6
  • fixes incompatible return types error caused by PHPStorm's inability to resolve self (#2198)
9.1.5
  • fix custom file names for media library pro
9.1.4
  • automatically delete conversion jobs for deleted models (#2191)
9.1.3
  • improve optimizer defaults
9.1.2
  • add original_url to MediaCollection.
9.1.1
  • allow media collection to work with media library pro
9.1.0
  • allow image generators to accept config (#2156)
9.0.1
  • do not enable vapor uploads by default
9.0.0
  • add support for Media Library Pro
  • names of the generated conversions will now be put in a dedicated generated_conversions on media
  • responsive image files can now be named using the file_namer key in the media-library config file (#2114)
8.10.1
  • add queue_conversions_by_default to config file
8.9.3
  • fix responsive images
8.9.2
  • improve responsive image inline script (#2032)
8.9.1
  • missing $loadingAttributeValue test in image view (#2082)
8.9.0
  • add support to include ResponsiveImages based on condition (#2036)
8.8.0
  • allow to change the way the images are being downloaded (#2054)
8.7.5
  • fix for default lazy="auto" value (#2081)
8.7.4
  • fixed conversions when disk != conversions_disk (#2080)
8.7.3
  • fix file deletion problem (#2073)
8.7.2
  • allow Guzzle 7 in dev-deps
8.7.1
  • add support for Laravel 8
8.7.0
  • add toMediaLibrary
8.6.0
  • add useZipOptions
8.5.2
  • fix for custom zip path (#2016)
8.5.1
  • keep sizes 1px if width is 0px (#1993)
8.5.0
  • add method to get registered media collections (#1976)
8.4.1
  • add addMediaFromString
8.4.0
  • add addFromString
8.3.3
  • fix responsive image urls when conversions are stored on different disk. (#1944)
8.3.2
  • report an error when it can't delete a directory (#1938)
8.3.1
  • improve handling of file names with special characters (#1937)
8.3.0
  • added Spatie\MediaLibrary\MediaCollections\Models\Collections\MediaCollection
8.2.9
  • changed freads to fgets as per issue #812 (#1909)
8.2.8
  • when generating responsive images the quallity option of the original will be used (#1881)
8.2.7
  • Unset loaded 'media' relation during updateMedia() (#1878)
8.2.6
  • revert slash because of Vapor errors (#1869)
8.2.5
  • set the media table name explicitly to media to avoid failure caused by doctrine/inflictor now using medias as the plural
8.2.4
  • fix for when using custom model (#1857)
8.2.3
  • fixed duplicated path prefix for temporary urls (#1853)
8.2.2
  • fixed duplicated / in paths (#1854)
8.2.1
  • do not allow local files to be used in addMediaFromUrl
8.2.0
  • add page number support for Pdf image generator (#1829)
8.1.0
  • add support for zip_filename_prefix in custom properties
8.0.8
  • allow ZipStream 2.0 (#1812)
8.0.6
  • fix comment in config file
8.0.5
  • Use float for extractVideoFrameAtSecond (#1794)
8.0.4
  • update php-ffmpeg to ^0.15
8.0.3
  • add callable filter support to getFirstMedia() (#1781)
8.0.1
  • set conversion disk when adding media from remote (#1764)
8.0.0
  • added uuid on media table
  • an empty string is now a proper collection name. getMedia('') will not return media from the default collection anymore (#1697).
  • add the ability to store conversions on a separate disk
  • simplify URL generation. You can now just use the root and url properties on a configured disk
  • spatie/pdf-to-image is now a suggestion dependency, removing the need for always having to install ext-imagick
  • added shouldMatchBothExtensionsAndMimeTypes to Spatie\MediaLibrary\ImageGenerators\BaseGenerator
  • added progress bar on the clean command (#1623)
  • the UrlGenerator interface now contains all required methods (#1656)
  • use PHP 7.4 features where possible
  • added support for the loading attribute (#1667)
  • conversion files can now be named using the conversion_file_namer key in the media-library config file (#1636)
  • improved naming of classes and namespaces.

To learn how to upgrade, take a look in UPGRADING.md

7.19.3
  • fix responsive images extension (#1752)
7.19.2
  • revert changes in 7.19.1
7.19.1
  • Update S3 url generator to use media disk (#1755)
8.0.7
  • solve error when using flysystem-cached-adapter (#1803)
7.19.0
  • add support for Laravel 7
7.18.3
  • allow image_driver config to be set via .env #1738
7.18.2
  • add support for Laravel 7
7.18.0
  • add withResponsiveImages() to custom collection (#1681)
7.17.1
  • fix custom disk url giving invalid urls (#1653)
7.17.0
  • added diskName on copy and move methods in media model (#1666)
7.16.2
  • correctly use the media item's disk when removing responsive images (#1668)
7.16.1
  • escape responsive URL - Fix issue #1659 (#1661)
7.16.0
  • add ability to upload files from a non-local disk
7.18.1
  • revert of pull request #1604 because zip files could not be opened (#1660)
7.15.0
  • bumped dependency of zipstream-php
  • fix so when creating a zip files are read only once (#1604)
7.14.2
  • fix so files without extension could be added
7.14.1
  • generate the name of the converted file in one place (#1577)
7.14.0
  • add a config option to version urls (#1569)
7.13.0
  • add a way to define accepted mime types (#1570)
7.12.4
  • tidy up getFallbackMediaUrl and getFallbackMediaPath
7.12.3
  • fix media stream not working (#1571)
7.12.2
  • fix upload for very large files
7.12.1
  • remove imagick requirement
7.12.0
  • add support for Laravel 6
7.10.1
  • do not export docs
7.10.0
  • add onlyKeepLatest on MediaCollection
7.9.0
  • FileAdder now is macroable
7.8.2
  • make sure CollectionHasBeenCleared will be called when using clearMediaCollectionExcept
7.8.1
  • fix for custom manipulations not getting applied to all relevant conversions with the same name
7.8.0
  • make media collection macroable
7.7.0
  • add useFallbackUrl and useFallbackPath to media collections
7.6.9
  • avoid using deprecated str and arr functions
7.6.8
  • fix for S3 Responsive Image URL Generator not using root
7.6.7
  • allow stable version of zipstream
7.6.6
  • fix absolute references to media.id
7.6.5
  • Support jpeg in \Spatie\MediaLibrary\Conversion\Conversion::getResultExtension
7.6.4
  • Add imagick as required extension, because of nested dependencies (#1480)
7.6.3
  • --only-missing for queued conversions (#1465)
7.6.2
  • Allow Uploading multiple files under the same name using array name (#1471)
7.6.0
  • drop support for PHP 7.1
7.5.6
  • add support for Laravel 5.8
7.5.5
  • avoid exception when getting a video frame that does not exist
7.5.4
  • only set custom_headers property if explicitly set
7.5.3
  • use absolute urls for responsive image sources
  • fix sortable
7.5.2
  • fix for issue #1277
7.5.1
  • fix support for Lumen
7.5.0
  • add rate limiting to clean command
7.4.3
  • fix for determining extension for non-image filetypes
7.4.2
  • fix a bug in clean command when no responsive images were generated
7.4.1
  • add support for Laravel 5.7
7.4.0
  • allow the job classes to be overridden in the config file
7.3.12
  • make sure previews responsive images db entries get cleaned up before regenerating
7.3.11
  • add $copiedOriginalFile to the ConversionWillStart event
7.3.9

do not use - broken

  • fix markAsConversionGenerated
7.3.10
  • fix for multiple files with the same filename in one ZIP archive
  • fix markAsConversionGenerated: disable model events when saving extra properties in Media::updated event
7.3.8
  • fix ids option of RegenerateCommand
7.3.7
  • bugfix around responsive images
7.3.6
  • add support from webp
7.3.5
  • fix bug where addMediaFromUrl would not work if the file contained a space
7.3.4
  • proper check and tests on forced deletion with soft delete models.
7.3.3
  • add dev dependency on pdo SQLite to prevent confusing errors.
7.3.2
  • fix #1076
7.3.1
  • fix custom properties not saved on copy (#1073)
7.3.0
  • Add hasGeneratedConversion
7.1.7
  • improve checking applied traits on the Media model
7.1.6
  • fix ffprobe path
7.1.5
  • always use the correct image driver.
7.1.4
  • ease maennchen/zipstream-php requirements
7.1.8
  • avoid removing the file when the model uses SoftDeletes
7.1.3
  • Fix for renaming files when not all conversions are present
  • Fix bugs when working with remote filesystems
7.1.2
  • fix a typo in medialibrary.disk_name.
7.1.0
  • Filesystem interface removed.
  • rename Filesystem::renameFile(Media $media, string $oldFileName) to Filesystem::syncFileNames(Media $media)
  • The default_filesystem config key has been changed to disk_name.
7.0.6
  • fix publishing views
7.0.5
  • fix for adding remote files with no name
7.0.4
  • fix responsive images rendering of conversions
7.0.3
  • add null fallback when placeholder SVG isn't rendered yet (#967)
  • add ResponsiveImagesGenerated event
7.0.2
  • support custom headers for conversions (#868)
7.0.0
  • added support for responsive images
  • added MediaCollections
  • added single file collections
  • added ZipStreamResponse
  • added move and copy methods on Media
  • file names will be lowercased when adding them to the media library
  • the names of converted images will now start with the name of the original file
  • dropped support for soft deletes
  • removed distinction between HasMedia and HasMediaConversions
  • dropped support for PHP 7.0
  • ffmpeg_binaries renamed to ffmpeg_path, ffprobe_binaries renamed to ffprobe_path
6.9.0
  • add wildcard manipulations
6.8.0
  • add withManipulations to FileAdder
6.7.0
  • add support for root config key for s3 disks.
6.6.9
  • add support for L5.6
6.6.8
  • change the directory deletion order
6.6.7
  • use better default for s3 domain
6.6.6
  • fix download error
6.6.5
  • make returning media in controllers always download the associated file
6.6.4
  • update spatie/image dep
6.6.3
  • fix clearing entire media collection except a single media instance
6.6.2
  • improve config comments
6.6.1
  • fixed the spelling of the getFirstTemporaryUrl method
6.6.0
  • add getFirstTemporaryUrl
6.5.0
  • add only-missing and only options to the media-library:regenerate command
6.4.2
  • fix correct minimal versions for league/flysystem and spatie/image when using --prefer-lowest option with composer
6.4.1
  • fix deletion of files when using a custom path generator
6.4.0
  • implement Responsable interface
  • improve sanitizing filenames
6.3.0
  • add sanitizingFileName
6.2.1
  • fix for working with large files
6.2.0
  • add ConversionWillStart event
6.1.3
  • fixed URL-encoding for S3 files
6.1.2
  • bugfix: getTemporaryUrl now uses disk name instead of disk driver
6.1.1
  • bugfix: remove getTemporaryUrl method from UrlGenerator interface
6.1.0
  • add getTemporaryUrl method for media stored on S3
6.0.0
  • add compatibility for Laravel 5.5
  • dropped support for older Laravel versions
  • the signature of registerMediaConversions has been changed
  • the default disk has changed from media to public
  • defaultFilesystem config option has been renamed to default_filesystem
5.14.0
  • add getPath to S3UrlGenerator
5.13.2
  • fix error when try to close a file that was already closed by flysystem
5.13.1
  • fix MediaCannotBeDeleted exception
5.13.0
  • add support for soft deletes
5.12.1
  • fixed array fields in addMultipleMediaFromRequest
5.12.0
  • add parameter to specify allowed mime types to addMediaFromUrl and addMediaFromBase64
5.11.1
  • fix bugs regarding attaching media to non-existing models
5.11.0
  • add support to addAllMediaFromRequest for file names in the request that contain an array
5.10.0
  • show progress bar when regenerating media
5.9.0
  • media can now be attached to unsaved models
5.8.2
  • fix bug where mediaIsPreloaded always returned true
5.8.1
  • fix bug where the wrong extension would be returned by getResultExtension for keepOriginalImageFormat
5.8.0
  • add clearMediaCollectionExcept method
5.7.0
  • add keepOriginalImageFormat manipulation
5.6.0
  • add toMediaCollection
5.5.3
  • fix bug where streams would be used on external filesystems that do not support streaming
5.5.2
  • prevent migration from being published multiple times
  • LocalUrlGenerator will now use the url property of disk when one has been set
5.5.1
  • fix for using MediaRepository with a custom media model
5.5.0
  • add createMultipleFromRequest and createAllFromRequest on FileAdder
5.4.0
  • add temporary_directory_path to config
5.3.3
  • fix bug around getRemoteHeadersForFile()
5.3.2
  • fix for undefined function getPath when using S3
5.3.1

this version is broken, do not use

  • fix for undefined function getPath when using S3
5.3.0
  • add support for registerMediaConversionsUsingModelInstance
5.2.0
  • add addMediaFromBase64
5.1.0
  • add fullUrl method
5.0.2
  • fix loading manipulations from the db
5.0.1
  • fix for getFirstMediaUrl() always returning the url for the first conversion
5.0.0
  • add toMediaLibraryOnCloudDisk
  • image generators may now be specified in the config file
  • use json columns for manipulations and custom_properties
  • refactor all functions in FileCannotBeAdded to their own exception classes
  • rename config file from laravel-medialibrary to medialibrary
  • remove toCollection and toCollectionOnDisk and toMediaLibraryOnDisk
  • replace dependency on spatie/laravel-glide by spatie/image
  • mime types will now be stored in the database so they can be queried even if files are stored on external filesystems
  • rename Spatie\MediaLibraryFilesystemInterface to Spatie\MediaLibrary\Filesystem\Filesystem
  • remove withCustomProperties, getNestedCustomProperty, setNestedCustomProperty, forgetNestedCustomProperty and hasNestedCustomProperty
  • drop support for Lumen and anything below Laravel 5.4
  • clean up all classes

KNOWN BUG: loading manipulations from the db doesn't work in certain edge cases, fix incoming soon

4.13.0
  • add FilesystemInterface
4.12.1
  • avoid unnecessary regeneration of conversions when saving a model
4.12.0
  • add support for Laravel 5.4
  • drop support for Laravel 5.1
4.11.3
  • put files using r mode instead of r+
4.11.2
  • avoid creating / deleting temp dir if no conversions should be performed
4.11.1
  • fix bug in setNewOrder
4.11.0
  • added hasNestedCustomProperty, getNestedCustomProperty, setNestedCustomProperty and forgetNestedCustomProperty to use dot notation with custom properties
  • renamed removeCustomProperty to forgetCustomProperty (removeCustomProperty still exists but is marked as deprecated)
4.10.3
  • fix for getting preloaded media in the wrong order
4.10.2
  • refactored the preloading of media
4.10.1
  • reduce amount of calls to s3
4.10.0
  • add addCustomHeaders function
4.9.5
  • improve returned values for getUrl methods
4.9.4
  • fix for image generators when using S3
4.9.3
  • the image generators will now do their supported extensions check in a case insensitive manner
4.9.2
  • fixed bug where an exception would be raised when using S3
4.9.1
  • fix bug where urls to media would not be encoded anymore
4.9.0
  • introduced ImageGenerators
4.8.4
  • encode urls to media
4.8.3
  • fix svg and pdf file path when performing conversions
4.8.2
  • made compatible with L5.3
4.8.1
  • fixed some files that had a wrong namespace
4.8.0
  • added thumbnail generation for video's
  • added force option to the artisan commands
4.7.1
  • fixed the src format option when dealing with jpegs
4.7.0
  • added mime attribute on the Media model
4.6.0
  • added removeCustomProperty function
4.5.0
  • added media-library:clean command
  • the media-library:regenerate will continue regenerating files even if a primary media file is missing
4.4.1
  • Fix regeneration command (see #260). It'll now properly regenerate files for all passed media id's
4.4.0
  • Add support for converting svg's
4.3.0
  • Add Lumen compatibility
4.2.1
  • Delete the conversion directory even when it is not underneath the media directory
4.2
  • Added the src option for the fm conversion parameter
4.1
  • Added shouldDeletePreservingMedia
4.0.1
  • Fixed queued jobs in Laravel 5.1
4.0.0
  • add support for Glide 1.0
  • added addMediaFromRequest method
  • small refactors
3.17.4
  • Only detect mimetype from file on local disks
3.17.3
  • Fixed an issue that occurred when deleting models with media in some php versions
3.17.2
  • Fixed mistakes in the version constraints on the illuminate components
3.17.1
  • Improved the file type detection for files without an extension
3.17.0
  • Added support for morphMap
3.16.1
  • Improved the compatibility with packages that hook into the delete method of an Eloquent model
What's
3.9.2
  • Fixed an issue where a model would not regenerate manipulations after changing manipulations on media
3.9.1
  • Fix bug when using a custom UrlGenerator class
3.9.0
  • Added PathGenerator

This version contains a bug when using a custom UrlGenerator, please upgrade to 3.9.1

3.8.0
  • Added ability to add media from a url

$media = $this->testModel->addMediaFromUrl($url)

3.7.3
  • clearMediaCollection is now chainable
3.7.2
  • Add mimetype when putting a file on a disk.
3.7.1
  • Fix generation of local url's on non-unix hosts
3.7.0
  • Added setCustomProperty-method on Media
3.6.0
  • Added withProperties and withAttributes methods
3.5.1
  • Bugfix: HasMediaTrait::updateMedia now also updates custom properties. It also updates the order column starting at 1 instead of 0 (behaves the same as the sortable trait)
3.5.0
  • Added the ability to provide a default value fallback to the getCustomProperty method
3.4.0
  • Added support for using a custom model
3.3.1
  • Fixed a bug where conversions would always be performed on the default queue
3.3.0
  • Added hasCustomProperty- and getCustomProperty-convenience-methods
3.2.5
  • Allow 0 for x and y parameters in setRectangle
3.2.4
  • Removed dependency on spatie/eloquent-sortable
3.2.3
  • Add index to morphable fields in migration which could improve performance.
  • Remove unnecessary query when adding a file
3.2.2
  • Fixes tests
3.2.1
  • Add index to morphable fields in migration which could improve performance.
  • NOTE: if you started out using this version, the tests will be broken. You should make sure
  • model_id and model_type are nullable in your database.
3.2.0
  • Added functions to get a path to a file in the media library
3.16.0
  • The regenerate-command now accepts an ids-option
3.15.0
  • Added media-library:clear command
3.14.1
  • Make migrations compatible with mysql's strict mode
3.14.0
  • Added a deletePreservingMedia-function that will delete the model but not remove the associated files
3.13.4
  • Use config_path helper in ServiceProvider to allow easier integration in Lumen
3.13.3
  • Recognize gifs as images
3.12.2
  • Removed support for laravel-glide v3
  • Added missing InvalidNewOrder-exception
3.12.1

Important node: there is a bug in this version that prevents the creation of derived files

  • Add support for laravel-glide v3
3.12.0
  • Add configurable headers when uploading media to a remote disk
3.11.3
  • use database_path when publishing migrations
3.11.2
  • Fixed the processing a file name with special characters
3.11.1
  • Remove adding .gitignore files
3.11.0
  • Accept Symfony\Component\HttpFoundation\File\File-object when adding files
3.10.2
  • Fixed mime-type errors when using the local filesystem
3.10.1
  • Fixed the event names to make them more readable CollectionHasBeenCleared, ConversionHasBeenCompleted, MediaHasBeenAdded
3.10.0
  • Added CollectionClearedEvent, ConversionCompleteEvent, MediaAddedEvent
3.1.5
  • Avoid creating empty conversions-directories
3.1.4
  • Fixed a bug where chaining the conversion convenience methods would not give the right result
3.1.3
  • Fixed a bug where getByModelType would return null
3.1.2
  • Images and pdf with capitalized extensions will now be recognized
3.1.1
  • Fixed: a rare issue where binding the command would fail
3.1.0
  • Added: methods to rename the media object and file name before adding a file to the collection
3.0.1
  • Fixed: updateMedia now returns updated media
3.0.0
  • Replaced addMedia by a fluent interface
  • Added the ability to store custom properties on a media object
  • Added support for multi-filesystem libraries
  • getMedia will now return all media regardless of collection
  • hasMedia will count all media regardless of collection
  • Uploads can now be processed directly when importing a file
  • Renamed various classes to better reflect their functionality
2.3.0
  • Added: hasMedia convenience method
2.2.3
  • Fixed: when renaming file_name on a media object the original file gets renamed as well
2.2.2
  • Fixed: use FQCN for facades instead of using the aliases
2.2.1
  • Fixed an issue where too many queries were executed
2.2.0
  • Added hasMediaWithoutConversions-interface
2.1.5
  • Fixes a bug where a valid UrlGenerator would not be recognized
2.1.4
  • Fixes a bug where an exception would be thrown when adding a pdf on systems without Imagick installed
2.1.3
  • Fixes some bugs where files would not be removed when deleting a media-object
2.1.2
  • Require correct version of spatie/string
2.1.1
  • Bugfix: correct typehint in HasMediaTrait
2.1.0
  • Added some convenience methods for some frequent used manipulations
2.0.1
  • fix bug in regenerate command
2.0.0

This version is a complete rewrite. Though there are lots of breaking changes most features of v1 are retained. Notable new functions:

  • filesystem abstraction: associated files can be stored on any filesystem Laravel 5's filesystem allows. So you could for instance store everything on S3.
  • thumbnails can now be generated for pdf files
  • registering conversions has been made more intuïtive
  • it's now very easy to add custom logic to generate urls
  • images can be manipulated per media object
1.6.2
  • Bugfix: prevent migration from being published multiple times
1.6.1
  • Small bugfixes
1.6.0
  • Added: Spatie\MediaLibrary\Models\Media::getHumanReadableFileSize()
1.5.6
  • Bugfix: make compatible with Laravel 5.1
1.5.5
  • Bugfix: Renamed the boot method of MediaLibraryModeltrait so it plays nice with the boot method of
  • other traits and the base model.
1.5.4
  • Feature: The profile parameter in Media::getUrl() and MediaLibraryModelTrait::getUrl() is now optional. On null, it retrieves the original file's url.
  • Bugfix: Media::getOriginalUrl() now returns the correct url.
1.5.3
  • Bugfix: Removed unnecessary static methods from MediaLibraryModelInterface
1.5.0
  • Added a method to remove all media in a collection.
1.1.4
  • Fixed a bug where not all image profiles would be processed
  • Added getImageProfileProperties()to interface
1.1.3
  • Create the media library directory if it does not exist
1.1.2
  • Files without extensions are now allowed
1.1.1
  • Added check to make sure the file that must be added to the media library exists
1.1.0
  • Added option to specify the name of the queue that should be used to create image manipulations
1.0.0
  • initial release
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
milesj/emojibase
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport