Skip to content

Releases: ampache/ampache

6.3.1

23 Mar 02:33
eae313e
Compare
Choose a tag to compare

6.3.1

php8.3
d1c85d24d35895d424bd665f259f3f11 ./ampache-6.3.1_all_php8.3.zip
37691fdbbebb41da3e7708fd6521ba5f ./ampache-6.3.1_all_squashed_php8.3.zip

php8.2
d89c72eddc40db5d1be7518b0d954e08 ./ampache-6.3.1_all_php8.2.zip
6571b87bce25b693b87568e3b2c2c764 ./ampache-6.3.1_all_squashed_php8.2.zip

php8.1
f3f42afc075adee997e69c375645b5c6 ./ampache-6.3.1_all_php8.1.zip
5b4c5116690dbe7bfee1af6758dc9817 ./ampache-6.3.1_all_squashed_php8.1.zip

php8.0
35e73942b2587a7f502ac88e2371ee42 ./ampache-6.3.1_all_php8.0.zip
80739e95b6e32a873b859aba22a96b2d ./ampache-6.3.1_all_squashed_php8.0.zip

UNSUPPORTED php7.4 (will be built until it can't be done any more)
6bdd18a25c46c32689228ba9ab0c0c4d ./ampache-6.3.1_all_php7.4.zip
a5085cb92a8d5f6ef03c215acd9896d9 ./ampache-6.3.1_all_squashed_php7.4.zip

UNSUPPORTED Code only release. (Requires composer install)
0fc23902770a4a45b432ab25816e0d69 ./ampache-6.3.1_public.zip
a23e481b9c72853b7c86605d9d77e50c ./ampache-6.3.1_squashed.zip

Ampache 6.3.1

Added

  • Added an option to clean a folder path on the Show Catalogs page

Changed

  • Show full playlist names on the personal favorite plugins (missing username)
  • Block direct stream for shared file when share is disabled

Removed

  • Config options write_id3 and write_id3_art don't do anything so remove them

Fixed

  • Add missing album name through browser Media Session API
  • Fixed PHP caching false values when expecint an int
  • Typo for disabled song display
  • Show the count of returned art in the log
  • Don't show private playlists on browse or direct link if you don't have access
  • Refresh Democratic playlist on vote removal, and clear the votes on clear all
  • Preference text box possible XSS
  • Search
    • Added some documented aliases for rules that were missed
    • Fixed NOT SOUNDS LIKE responses
    • Don't scrub search input in the SQL (parameters are sanitized)
    • Rule input XSS in JS
  • Subsonic
    • Array not set on some items in JSON responses

API 6.3.1

Added

  • API6
    • New Method: now_playing (Get what is currently being played by all users.)

6.3.0

13 Mar 10:22
3f234cc
Compare
Choose a tag to compare

6.3.0

php8.3
67f08005ae8a9c7c5ca348b08406aea7 ./ampache-6.3.0_all_php8.3.zip
6bde4c056dcfa16365d86411652bf6c4 ./ampache-6.3.0_all_squashed_php8.3.zip

php8.2
8df29a79df881941807793c429f4d228 ./ampache-6.3.0_all_php8.2.zip
f94e3c1ecb26965cdc694b826b29384d ./ampache-6.3.0_all_squashed_php8.2.zip

php8.1
0cc9f13f0a823a5ae3676bffc7a8e50e ./ampache-6.3.0_all_php8.1.zip
12d48ab0e9bfa47f203ac6f9fb9c1a97 ./ampache-6.3.0_all_squashed_php8.1.zip

php8.0
304064e97ae8ff193bf030e46e5b5277 ./ampache-6.3.0_all_php8.0.zip
addb0106dc063461937da50cfa86c5f5 ./ampache-6.3.0_all_squashed_php8.0.zip

UNSUPPORTED php7.4 (will be built until it can't be done any more)
b669384fb7662d689851a0041804061d ./ampache-6.3.0_all_php7.4.zip
4a5ef141b9bcca06768e1d4882a5f713 ./ampache-6.3.0_all_squashed_php7.4.zip

UNSUPPORTED Code only release. (Requires composer install)
145dd9634ff2b6372a0c334fab0ad4f7 ./ampache-6.3.0_public.zip
9377cac7cd2ded2f03e056d921c617e4 ./ampache-6.3.0_squashed.zip

Ampache 6.3.0

There have been 61 pull requests during this release process! A definite record for the project in the last 5 years.

The API has had a lot of new methods added as we look to keep it stable while work starts on Ampache 7.

Database updates had a major overhaul again and upgrades from Ampache 3.9.4 => 6.3.0 have been tested successfully.

Added

  • Translations 2024-03
  • Lots more static typing on missing function returns
  • Dynamic properties on the Captcha classes
  • Add opml import (and export) for podcasts
  • Database 600060
    • Update Last.FM plugin preferences that could be incorrect
    • Spell category and subcategory correctly
    • Add unique constraint playlist_track_UN on playlist_data table
    • Remove Flattr plugin (Service has been discontinued)
    • Convert object_type to an enum on image, rating, user_flag, user_activity, object_count, share, cache_object_count tables

Changed

  • Split database updates into small migration classes
  • Change usage of State in podcast_episode pages for Status
  • Song additional metadata classes have been updated
  • When searching art limit results per-plugin instead of total results
  • Extend valid Share objects
  • Update composer scripts and checks
  • Don't send a cached file that does not match a requested target format

Removed

  • Flattr service has shut down, so remove the plugin
  • php cs-sniffer from the project root and scrutinizer

Fixed

  • Catalog Filters could not be edited after creating
  • Catalogs were not cleaned up from the catalog_filter_group_map table
  • Wanted errors on an empty global user
  • Public users can not cache playlist browses
  • Last.FM plugin errors with preferences and linking accounts
  • Fix up localplay commands for Kodi/XBMC clients
  • Playlists were sorting by object type
  • User::get_user_data was not putting the default return in correctly
  • Unable to use bin/cli export:playlist undefined method
  • Playlist had some issues adding songs
  • Localplay and jukebox mode improvements (VLC and XBMC)
  • Don't search for wanted albums on an invalid artist
  • Browse filtering for album artist and song artist in certain situations
  • Don't send an empty query to the database
  • Remove stray span and use valid lang value on installer pages
  • Updating array preferences
  • Showing favicon
  • Publication date of RSS feeds
  • Search
    • Rule inputs were being json encoded twice
    • Genre search joining catalogs when they're not needed
  • Static typing errors
    • Updating album data when original_year is missing
    • Template show_recently_played with a non-database song
    • Use isNew() to check for valid objects to avoid type errors
    • Check for valid media before zip operations
  • Subsonic
    • Data for starred results was not always an array
    • Send correct art respecting show_song_art again

API 6.3.0

Added

  • API6
    • New Method: search_group (return multiple object types from a single set of search rules)
    • New Method: search (alias for advanced_search)
    • New Method: user_playlists (return user playlists and does not include smartlists)
    • New Method: user_smartlists (return user smartlists (searches) and does not include playlists)
    • New Method: playlist_add (add songs to a playlist, allowing different song parent types)
    • New Method: index (replaces get_indexes with a simpler list of id's. children can be included)
    • Add has_art parameter to any object with an art url
    • Add avatar url to user objects

Changed

  • API6
    • playlist_add_song: depreciated and will be removed in API7 (Use playlist_add)
    • share_create: add more valid types ('playlist', 'podcast', 'podcast_episode', 'video')
    • user: make username optional

Fixed

  • ALL
    • Userflag wasn't sending bool when cached in the database
    • Admin would always get everyones playlists when filtering
    • Stream methods would not send the bitrate correctly
  • API4
    • playlists method not respecting like for smartlists
  • API5
    • playlists method not respecting like for smartlists
  • API6
    • playlists method not respecting like for smartlists
    • playlist_edit method will decode html , separators

Pull requests this release

  • Split the Update.php class into small migration classes (#3767)
  • Correct some type issues (#3770)
  • subsonic: do not send a different cover id for each song of the same album (#3768)
  • Use "Status" string rather than "State" which can be confused by Country (#3769)
  • Add opml import for podcasts #3737 (#3772)
  • Correct/Update some type hints related to recent stan errors (#3773)
  • Remove some unused code (#3774)
  • Fix #3778 (#3780)
  • Remove Flattr support (#3782)
  • Correct song metadata creation (#3777)
  • XBMC localplay improvements (#3783)
  • Correct doubled array index (#3784)
  • Solve an annoying api related type issue (#3785)
  • Remove unused imports (#3786)
  • Remove MetadataFieldRepository::findAll (#3787)
  • Correct some type issues due to the recent phpstan update (#3788)
  • Remove usages of Podcast::update() (#3789)
  • Try to bring back the scrutinizer code coverage (#3790)
  • Set scrutinizer memory-limit to indefinite (#3791)
  • Localplay and jukebox mode improvements ( Vlc and Xbmc ) (#3794)
  • Extract playlist import from Catalog_local (#3795)
  • Re-arrange the tag-count retrieval query (#3797)
  • Add ShareRepository and begin migrating some static methods (#3796)
  • Move podcast episode download limit retrieval into PodcastSyncer (#3799)
  • Perform some changes related to qa (#3798)
  • Remove php cs-sniffer from scrutinizer, too (#3800)
  • Vlc localplay improvements (#3802)
  • Rework the LicenseRepository (#3801)
  • Dont try to search for recommendations for invalid artists (#3805)
  • Update rector to 0.19 (#3803)
  • Replace License loading by repo-method (#3806)
  • Allow the user api method to return the current user info (#3807)
  • Replace the metadata-repositories (#3804)
  • Split up podcast-related repositories (#3808)
  • Replace all remaining usages of Core::verify_form by RequestParser (#3810)
  • Start reworking the PrivateMessageRepository (#3811)
  • Refactor Wanted- and LiveStreamRepository (#3809)
  • scrub_in all the search inputs (#3825)
  • Upgrade rector to its first major version (#3818)
  • Cleanup/Optimize some qa-related settings (#3821)
  • Correct a bunch of type issues (#3822)
  • Start replacing podcast-episode properties with getters (#3823)
  • Define defaults for democratic playlist properties (#3826)
  • Start the implementation of a BaseRepository and a generic ModelInterface (#3819)
  • Add tests for BookmarkRepository (#3820)
  • Add ImageRepository (#3824)
  • Prepare the WantedRepository to extend BaseRepository (#3828)
  • Extract missing-artist retrieval from Wanted (#3829)
  • Align Catalog properties types to the database columns (#3832)
  • don't query an empty query (#3835)
  • Extract cleanup methods from Art-class (#3827)
  • Add tests for LabelRepository (#3831)
  • Really show default favicon by default (#3842)
  • Replace the f_file and f_full_title properties by a method (#3836)
  • Extract more wanted-logic into separate classes (#3837)
  • Move database-related methods from Share into ShareRepo (#3838)
  • Extract the creation of new share-items (#3840)
  • Move some more methods from Artist/Album into their repos (#3843)
  • Remove stray span and use valid lang value on installer pages (#3849)
  • Fix the publication date of RSS feeds. (#3861)
  • Remove genre and stream from useractivity deletion (#3866)

Co-authored-by: Daniel Jakob github@usox.org
Co-authored-by: cquike 17937361+cquike@users.noreply.github.com
Co-authored-by: fufroma fufroma@users.noreply.github.com
Co-authored-by: Carlo Sardi lusum@users.noreply.github.com
Co-authored-by: Mitch Ray 5735900+mitchray@users.noreply.github.com
Co-authored-by: François Charlier fcharlier@users.noreply.github.com

6.2.1

09 Jan 01:28
08ea355
Compare
Choose a tag to compare

6.2.1

php8.3
f1c2201b411c52bf6a4600cf2631f050 ./ampache-6.2.1_all_php8.3.zip
8470c9aacfa76c3f03582f6881461247 ./ampache-6.2.1_all_squashed_php8.3.zip

php8.2
4b1d0e540eec5d8301f61d5785fb25c0 ./ampache-6.2.1_all_php8.2.zip
30b9d6ef962cc0108b47235e70cc54b1 ./ampache-6.2.1_all_squashed_php8.2.zip

php8.1
8fb3905cb654c8db116853abdde25a3a ./ampache-6.2.1_all_php8.1.zip
c38001397524baf993e84a063352db24 ./ampache-6.2.1_all_squashed_php8.1.zip

php8.0
50a6206fc28a7885672d6d1b13c5089b ./ampache-6.2.1_all_php8.0.zip
acbf247a2f93ad455dab16544d9bee37 ./ampache-6.2.1_all_squashed_php8.0.zip

UNSUPPORTED php7.4 (will be built until it can't be done any more)
ea5f39383290c67a909824e1fa21e419 ./ampache-6.2.1_all_php7.4.zip
a0cfa90020efb6dc0b94cbadf6bb16fe ./ampache-6.2.1_all_squashed_php7.4.zip

UNSUPPORTED Code only release. (Requires composer install)
343b79bef491583a702137f22a82a973 ./ampache-6.2.1_public.zip
bc79dfb7f85c11927df82ef39fdbefde ./ampache-6.2.1_squashed.zip

Ampache 6.2.1

The catalog verify process has been reworked a little. There were some bugs that would prevent you being able to 'finish' a catalog.

Definitely set catalog_verify_by_time if you have a large catalog. This will allow you to do a verify in small batches over time and not repeat the same songs.

Added

  • Translations 2024-01
  • Add podcast opml export to the podcasts page
  • Advertise WebPlayer song info via MediaSession API / MPRIS

Changed

  • Replace all remaining occurrences of FILTER_SANITIZE_STRING
  • Enable user_no_email_confirm to disable email requirements for user registration. (When mail_enable is false registration was blocked)
  • Verify catalog by song instead of album
  • Catalog verify will now use the config option catalog_verify_by_time and only check songs not updated since the last full verify
  • Don't update counts and collect garbage after updating individual songs
  • PlayAction stream_select will now block until there is data

Fixed

  • Skipping non-songs would create a runtime error
  • db update_600005 shouldn't use $album->get_fullname which changed in update_600027
  • Upload page showing non-uploads
  • Showing extra title for podcasts
  • Captcha image generation
  • Registration check logic
  • Search error loading empty rules
  • Add from path on the catalog admin page
  • Reading tags on bad files would load the bad tags
  • Stop trying to read bad files before loading tags
  • Catalog update dates were set when the process was finished which negates update_time checks
  • Song update_time wasn't allowed to update
  • Check update_time in Catalog::count_table sql so you only verify what you need to
  • Transcode can't use range in headers
  • Empty result error on Stats::get_object_count
  • Subsonic
    • Search2 and Search3 ignored musicFolderId

API 6.2.1

NO CHANGE

6.2.0

22 Dec 05:39
7003ead
Compare
Choose a tag to compare

6.2.0

php8.3
79e91747d9ce8bd732f8e716265786e9 ./ampache-6.2.0_all_php8.3.zip
38d1b9d86175480227c50735b90e12c6 ./ampache-6.2.0_all_squashed_php8.3.zip

php8.2
31a5d1953ffc8da5b4e3aa38b5acb5a4 ./ampache-6.2.0_all_php8.2.zip
fa12e4d3c05e6064eb49640ed248abd9 ./ampache-6.2.0_all_squashed_php8.2.zip

php8.1
64c513bb9d2a4606e24436a47ed8fdc3 ./ampache-6.2.0_all_php8.1.zip
ce858c42104ac3e049070588d4815e2d ./ampache-6.2.0_all_squashed_php8.1.zip

php8.0
9f67d720a71d66c161c6323603ffeca1 ./ampache-6.2.0_all_php8.0.zip
12a82feb31a104ee4040a827107f5379 ./ampache-6.2.0_all_squashed_php8.0.zip

UNSUPPORTED php7.4 (will be built until it can't be done any more)
991f08921557260b78389ecc2d52fda8 ./ampache-6.2.0_all_php7.4.zip
77db99e2712bee1f2db82e0ea9232a77 ./ampache-6.2.0_all_squashed_php7.4.zip

UNSUPPORTED Code only release. (Requires composer install)
f63238032ede6d5503991175d0508a10 ./ampache-6.2.0_public.zip
25926a3a37c25c3757659a0f4e793640 ./ampache-6.2.0_squashed.zip

Ampache 6.2.0

Builds for PHP 8.3 are now available!

This release has been all about static typing and crushing bugs related to that.

Hundreds of static analysis bugs have been fixed. (A drop of about 50%)

There has been a big focus on making sure everything does what it says it does.

For older servers we've tested updates from an Ampache 3.9.0 database to 6.2.0 successfully!

As an end of year bonus you can access your own Ampache Wrapped from the user page when enabled

Enable the privacy setting in your Interface settings to enable.
image

And then get your link from the i icon on your user page.
image

Added

  • Translations 2023-12
  • Allow translations for plugin names
  • GitHub action to lint master and develop branches for php7.4
  • Lots of code test coverage
  • Allow sharing podcast_episode objects
  • Add refresh button to the rightbar and some of the ajax index modules
  • Hide the filterbox when your browse can't use it
  • Database 600049
    • Set correct preference type for use_play2
    • Add user preference jp_volume, Default webplayer volume
    • Add system preference perpetual_api_session, endless api sessions. (AT YOUR OWN RISK)
    • Add column last_update and date to search table
    • Add user preference home_recently_played_all, Show everything in the now playing box
    • Add user preference show_wrapped, Access your personal "Spotify Wrapped" from your user page
    • Add date column to rating table
    • Update link for FMPL license

Changed

  • Upgrade phpunit to version 10
  • Updated codestyle rules to PSR12
  • Update php_codesniffer to 3.8
  • Static typing to all database fields
  • Update composer for ampache/ampacheapi-php dev-master
  • Allow range header on transcode streams
  • 404 error on invalid media streams
  • Use curl instead of fopen for podcast episode downloads
  • Track the date of ratings in user_activity table
  • Add a confirmation to the Clear Stats button on the catalog page

Removed

  • Duplicate show_playlist UI actions

Fixed

  • Empty global error on index page
  • Check the file/url before importing with import_playlist
  • Large docstring cleanup: remove unneeded tags and trim names
  • Correct ip history rendering in case of a invalid user
  • Make sure something is also unplayed when total_count is 0
  • Thousands of phpstan code issues
  • Can't uninstall catalog modules
  • Database updates tested from ampache-3.9.0 -> develop
  • Missing AND in play_count update SQL
  • Undefined variable and query spacing in SQL for get_uploads
  • Share options not checked correctly when creating a share
  • Dynamic properties on Tmp_Playlist and Captcha
  • Lots of checks for valid and invalid objects
  • Do not fail on plugin reinstall (just install missing preferences)
  • Failures on nullable valuse with static typing
  • Errors on user_data checks that didn't exist yet
  • Use your default album sort on browses and set it correctly
  • Filterbox bugs with playlists and labels
  • Update from tags didn't respect your tag order
  • Remote catalogs couldn't import song data correctly
  • Podcast episode downloads would be blocked from some redirects
  • get_recently_played SQL was really slow
  • Bitly plugin updated to v4 API
    • Requires a Bitly account
    • Generate a token at [(https://app.bitly.com/settings/api)]
    • Get your group_guid from https://app.bitly.com/{GROUP_GUID} or Account Settings > Groups (the GUID is in the URL)
  • Add missing properties on public users. (-1)
  • Subsonic
    • Url protocol checks not compared correctly for setServer

API 6.2.0

Added

  • API: Allow non-expiring user sessions when using a header token
  • Allow endless api sessions. (You should start using http header auth to hide these)

Changed

  • Set default API version to 6 (was 5)
  • Allow raising and lowering response version on ping to any version
  • API6
    • Return error on handshake version failure

Fixed

  • ALL
    • UrlToSong couldn't handle encoded urls
  • API3
    • Video data would get an incorrect stream url
  • API5
    • bookmark_create: type is mandatory
  • API6
    • bookmark_create: type is mandatory

5.6.4

28 Nov 02:50
5a37acd
Compare
Choose a tag to compare

5.6.4

php7.4
44c768e00c11fbe8738a8f761d611ffc ./ampache-5.6.4_all.zip
44c768e00c11fbe8738a8f761d611ffc ./ampache-5.6.4_all_php7.4.zip
c0c66f206c2f1402764470dc8819666b ./ampache-5.6.4_all_squashed.zip
c0c66f206c2f1402764470dc8819666b ./ampache-5.6.4_all_squashed_php7.4.zip

php8.0
d3785dfd821866a2ea80f33050dfac56 ./ampache-5.6.4_all_php8.0.zip
494c4be4471495fe089266c05c164721 ./ampache-5.6.4_all_squashed_php8.0.zip

php8.1
c143c81b74e62a01cb31aa67e4df284e ./ampache-5.6.4_all_php8.1.zip
c84d5f70361bc0c044583479a8c90b83 ./ampache-5.6.4_all_squashed_php8.1.zip

php8.2
a34be24319f8f5d65755fc9fc9d6f3dd ./ampache-5.6.4_all_php8.2.zip
f5a17b32c106bc60c4b9917e2a8248c9 ./ampache-5.6.4_all_squashed_php8.2.zip

Ampache 5.6.4-release

As we keep fixing up things in 6 there have been a few things backported to allow you to stay on 5 a bit longer.

Fixed

  • SQL generation for browse sorting with comma and space in the text
  • Updating null artist times
  • Genre browse page HTML div name using bad names
  • Fix a lot of code Runtime Errors
  • Null artist time's not updating
  • Unable to disable a catalog module
  • Refreshing playlist after deleting an item
  • Refreshing the localplay playlist after deleting an item
  • Extra HTML tag in the user details page
  • Updating a playlist from the "Save Changes" button

API 5.6.4

Fixed

  • ALL
    • Fixed Bearer token auth on all methods
  • API4
    • Fix lots of Runtime Error's on missing optional data
  • API5
    • Fix lots of Runtime Error's on missing optional data
    • genre_artists, genre_albums, genre_songs: Parameter filter runtime errors
    • bookmark_edit, bookmark_create: Missing user in the object data

6.1.0

03 Nov 05:55
0f7370b
Compare
Choose a tag to compare

6.1.0

php8.2
6840eaf8d2571f1af7b626a93ef16934 ./ampache-6.1.0_all_php8.2.zip
05fdba1aec482d278313fe209ae8e504 ./ampache-6.1.0_all_squashed_php8.2.zip

php8.1
3d5a408b3117160bbc086d72f0f7b3d5 ./ampache-6.1.0_all_php8.1.zip
bd0ba5948dfde53add1715d8782578f7 ./ampache-6.1.0_all_squashed_php8.1.zip

php8.0
52cb555b2d4d3f04ceba1fa3738a1a49 ./ampache-6.1.0_all_php8.0.zip
50500a3c5debeab6b4defccb0496303d ./ampache-6.1.0_all_squashed_php8.0.zip

UNSUPPORTED php7.4 (will be built until it can't be done any more)
d40fff7f6e45b15a7b704eb8a8279e99 ./ampache-6.1.0_all_php7.4.zip
919501920dd2c07a75c6c1108fcab7f0 ./ampache-6.1.0_all_squashed_php7.4.zip

UNSUPPORTED Code only release. (Requires composer install)
4d4afbb92fb1bbbcaedc62ddbb272c04 ./ampache-6.1.0_public.zip
cef66aeed88010d762d9fcdd5b9ed85a ./ampache-6.1.0_squashed.zip

Ampache 6.1.0

First up, AutoUpdate notifications are fixed

This update has a big focus on browsing and sorting classes

Code improvements have made it a lot easier to identify (and solve) some long running issues

Album sorting has finally been restored to all pages!

If you use Subsonic we noticed some clients don't use *.view. The /rest htaccess file has been updated to support this.

Use php bin/installer htaccess -e to update your htaccess files

Added

  • Translations 2023-10
  • Read more tag frames for disksubtitle
  • Database 600042
    • Index label column on the label_asso table
    • Add user preference bookmark_latest, Only keep the latest media bookmark
  • Config version 69
    • Add user_create_streamtoken (Add a streamtoken to the account when a new user is created)
  • Browse
    • Sort artist by time
    • Sort album by disk, time, version
    • Sort podcast, podcast_episode, playlist and search by rating
    • Sort song by album_disk
    • Added album_disk sorting

Changed

  • Restore album sort links again when split by group
  • Default visibility for new playlists is public
  • Garbage collect empty labels. (Keep user-generated labels)
  • CLI
    • -t|--garbage don't collect garbage for each catalog, just do it at the end
  • Subsonic
    • Updated Apache .htaccess.dist to support Subsonic clients that don't use *.view for calls
    • createplaylist: Default visibility for new lists is public

Fixed

  • Header auth with a Bearer token would always fail
  • Song rows were showing album links instead of album_disk
  • Null artist time's not updating
  • Rating album_disk objects would not refresh the value
  • Creating a newalbum_disk inserting the song id instead of the album id
  • SQL generation for browse sorting with comma and space in the text
  • album_disk disk_count wasn't updated
  • AutoUpdate notifications
  • Fix a lot of code Runtime Errors
  • Handle GatherSpotify exceptions and empty results
  • Catalog was not garbage collecting the bookmarks table
  • Browse
    • Massive code quality updates to the browse/query class
    • Don't overwrite a browse box title if set
    • Sorting and filtering on works correctly
    • Genre browse page HTML div name using bad names
    • album_disk was sorting album
  • Search
    • Respect limits for subsearches again
    • search_user_id fallback for searches without a user
  • Subsonic
    • Runtime Errors when you have not done things before

API 6.1.0

Two new methods have been added

The bookmark methods have had a bit of a rework as they were not very useful

Finally the issues with setting your auth token in the http header have been fixed

Added

  • API6
    • New Method: bookmark (Get single bookmark by bookmark_id)
    • New Method: lost_password (Allows a non-admin user to reset their password)
    • bookmark_create: Add include parameter (if true include the object in the bookmark)
    • bookmark_edit: Add include parameter (if true include the object in the bookmark)
    • get_bookmark
      • Add include parameter (if true include the object in the bookmark)
      • Add all parameter (if true include every bookmark for the object)
    • bookmarks
      • Add parameter client to filter by specific groups of bookmarks
      • Add include parameter (if true include the object in the bookmark)

Changed

  • API5
    • bookmark_edit: show error on missing bookmark instead of empty object
    • bookmark_delete: show error on missing bookmark instead of empty object
  • API6
    • get_bookmark
      • add bookmark as a valid object_type
      • Don't return single JSON bookmarks as an object
    • bookmark_create: Remove client parameter default value ('AmpacheAPI')
    • bookmark_edit
      • Remove client parameter default value ('AmpacheAPI')
      • show error on missing bookmark instead of empty object
      • add bookmark as a valid object_type
      • Don't return single JSON bookmarks as an object
    • bookmark_delete
      • Remove client parameter default value ('AmpacheAPI')
      • show error on missing bookmark instead of empty object
      • add bookmark as a valid object_type

Fixed

  • ALL
    • Some JSON methods with empty results would not show total_count in results
    • handshake: auth failure with header token
    • playlist_generate: Don't error when optional mode and format are not set
    • advanced_search: runtime error on empty data type
  • API4
    • Fix lots of Runtime Error's on missing optional data
  • API5
    • Fix lots of Runtime Error's on missing optional data
    • video: error type was song instead of filter
    • genre_artists, genre_albums, genre_songs: Parameter filter runtime errors
    • download: random search/playlist didn't use the id parameter
    • stream: random search/playlist didn't use the id parameter
    • bookmark_edit
      • Missing user id in data array
      • Not able to edit all bookmarks
  • API6
    • Fix lots of Runtime Error's on missing optional data
    • video: error type was song instead of filter
    • catalog_folder didn't get the group of items correctly
    • genre_artists, genre_albums, genre_songs: Parameter filter runtime errors
    • download: random search/playlist didn't use the id parameter
    • stream: random search/playlist didn't use the id parameter
    • bookmark_edit
      • Missing user id in data array
      • Not able to edit all bookmarks

6.0.3

29 Sep 06:23
a0a9da1
Compare
Choose a tag to compare

6.0.3

php8.2
2c51e556a6b3594e2dc539f489ad6987 ./ampache-6.0.3_all_php8.2.zip
bd0dec355d5950e78f054644e7c0530f ./ampache-6.0.3_all_squashed_php8.2.zip

php8.1
2112f0ff77115fe19b4b868f4f043611 ./ampache-6.0.3_all_php8.1.zip
3f6f42ea023f8288f9381cd3f061f659 ./ampache-6.0.3_all_squashed_php8.1.zip

php8.0
eff1e62750dbd05bfc29225b677e8ab0 ./ampache-6.0.3_all_php8.0.zip
36db8a2405c8f831c6fed27ba8b7a103 ./ampache-6.0.3_all_squashed_php8.0.zip

UNSUPPORTED php7.4 (will be built until it can't be done any more)
e68018ed57ea446862abb0f86ab55fe2 ./ampache-6.0.3_all_php7.4.zip
83c6870c43b77b226d6e8a040a2e5453 ./ampache-6.0.3_all_squashed_php7.4.zip

UNSUPPORTED Code only release. (Requires composer install)
24ba179611f1be348bfa77803af92b41 ./ampache-6.0.3_public.zip
a758e2e11c0fb0df5b40e213084aa77f ./ampache-6.0.3_squashed.zip

Ampache 6.0.3

Added

  • Translations 2023-09
  • Added refresh button on smartlists so you don't have to overwrite the rules each time
  • CLI
    • New cli command bin/cli run:addCatalog (Create a local catalog)
  • Database 600040
    • Add custom_timezone as a user preference
    • Add disksubtitle to song_data and album_disk table
  • Config version 68
    • Add date_timezone (Allow custom timezone for date formatting)

Changed

  • Lyrist plugin regex be a bit looser with user input and regex /api/ on the end of api_host
  • Don't try and load preferences page without a user to load
  • Check for downsample_remote conditions on song play_url generation
  • Don't downsample songs during a stream (play_url should catch this before you stream)
  • Sort album browse pages based on your album_sort preference

Fixed

  • Error checking user temp playlist could give you a blank index page
  • Runtime errors with missing data
  • Missing translations for language list
  • Select uploaded artists using the artist instead of song
  • Missing column in Search::get_searches SQL
  • Updating artist_map too much
  • Last.fm lookup url was missing an & for albums
  • Don't try to load an album_disk that doesn't have an album
  • Restore sorting on album lists and browses that aren't grouped by release_type
  • Catch Spotify runtime error on retry as well as initial attempt

API 6.0.3

Added

  • API5::playlist_songs: Add random to get random objects filtered by limit

Fixed

  • ALL
    • handshake: runtime errors with bad username
    • handshake: Don't error on empty data counts
    • ping: Don't error on empty data counts
  • Api6
    • list: searches were missing from playlists
    • browse: XML returned a list instead of a browse object

5.6.3

29 Sep 05:40
7461582
Compare
Choose a tag to compare

5.6.3

php7.4
6e8a4a3b34f546ce8dc0afcc85ee38e5 ./ampache-5.6.3_all.zip
6e8a4a3b34f546ce8dc0afcc85ee38e5 ./ampache-5.6.3_all_php7.4.zip
386a05fe70c005400e48759fc0b130c6 ./ampache-5.6.3_all_squashed.zip
386a05fe70c005400e48759fc0b130c6 ./ampache-5.6.3_all_squashed_php7.4.zip

php8.0
ca7ec5e6ab6e0989716f84adb9c9bed5 ./ampache-5.6.3_all_php8.0.zip
c84a6f3d8286faaa8e3f6459b20a6f0c ./ampache-5.6.3_all_squashed_php8.0.zip

php8.1
a4638c20d232ede2e12a51f104a84906 ./ampache-5.6.3_all_php8.1.zip
6fdc51a0c17f341793953f198cf34326 ./ampache-5.6.3_all_squashed_php8.1.zip

php8.2
823a123ca9fac4cd8fec247b128e30ad ./ampache-5.6.3_all_php8.2.zip
298c3bc1a46d78a9db19bd4e05ee3523 ./ampache-5.6.3_all_squashed_php8.2.zip

Ampache 5.6.3-release

Added

  • Check for release branches before showing the Git hash
  • CLI
    • New installer command bin/installer htaccess (recreate .htaccess files from .dist)
    • New cli command bin/cli run:updateCatalogFolder (run catalog actions on a catalog subfolder)
    • New cli command bin/cli run:addCatalog (Create a local catalog)
  • Database 560001
    • Update access_list in case you have a bad user column

Changed

  • Don't fail cli install when the user exists and you are overwriting the database
  • Check for downsample_remote conditions on song play_url generation
  • Don't downsample songs during a stream (play_url should catch this before you stream)

Removed

  • Remove auth parameter from image url's

Fixed

  • ACL creation may lock you out without a system user
  • Catch some runtime errors
  • Catch unconfigured localplay before trying to connect
  • Sidebar HTML needed some cleaning up
  • Missing column in Search::get_searches SQL
  • Fix up genre, label and lyric search SQL to return better results
  • Subsonic
    • Get correct client IP for curl requests
    • getTopSongs default fallback to 50

API 5.6.3

Added

  • API5::playlist_songs: Add random to get random objects filtered by limit

Fixed

  • ALL
    • handshake: runtime errors with bad username
    • handshake: Don't error on empty data counts
    • ping: Don't error on empty data counts
  • API4
    • share_create: null expires fall back to share_expire or 7 days
  • API5
    • share_create: null expires fall back to share_expire or 7 days
    • preference_edit: Could apply to the wrong user

6.0.2

31 Aug 07:49
2e941ee
Compare
Choose a tag to compare

6.0.2

Thanks to everyone who has started using Ampache 6! Now that it's out in the wild we've found some issues with things that don't quite work as expected.

  • Upload permissions now don't rely on the user having catalog access as well (if you use the catalog filter)
  • The web database updater wasn't happy with update 37 so that's a big one to fix.
  • We also tracked down why some people had stream issues and that's been squashed!
  • The user pages now show the correct playlists for that user as well as respect privacy if you're not an admin.
  • Finally a new plugin has been added to fetch lyrics

Thanks again to all the new users and contributors for getting on the train early

Ampache 6.0.2

php8.2
95ca765492a46102725bcb8ff5384ece ./ampache-6.0.2_all_php8.2.zip
8ee78b886d8a137120ce7023bdfc2c14 ./ampache-6.0.2_all_squashed_php8.2.zip

php8.1
89b74c08d30c66c11694b3a2694f38b0 ./ampache-6.0.2_all_php8.1.zip
81369ecede403d51b960996d97927669 ./ampache-6.0.2_all_squashed_php8.1.zip

php8.0
ddc3dd7c7d821af407fb794e446d21f9 ./ampache-6.0.2_all_php8.0.zip
5da7d8e3e6ed63840bd430bf3946a4d9 ./ampache-6.0.2_all_squashed_php8.0.zip

UNSUPPORTED php7.4 (will be built until it can't be done any more)
954979790c159f9589ec00700b733f6a ./ampache-6.0.2_all_php7.4.zip
463541798df771d046019184fef0f2d9 ./ampache-6.0.2_all_squashed_php7.4.zip

UNSUPPORTED Code only release. (Requires composer install)
872078164b9d980325996838b8d7c1b1 ./ampache-6.0.2_public.zip
6524508659d30215122e2949f3226bb2 ./ampache-6.0.2_squashed.zip

Added

Changed

  • Don't require catalog access to upload songs. (Ignore catalog_filter for upload actions)

Fixed

  • Correct stream get_base_url
  • Database 600037 missing interactor check for the web updater
  • Avoid Orphan album artist when song has empty albumartist tag
  • Various runtime errors with missing data during session timeouts
  • Admin page 'browse uploads' didn't need to be so strict
  • Show album edit button on uploads correctly
  • get_uploads_sql for artists could miss mapped artists
  • Only show user playlists on user page (public only if you aren't an admin)
  • Don't show admin user page (-1)
  • Search
    • ArtistSearch: Joins for songrating and albumrating were missing

API 6.0.2

NO CHANGE

6.0.1

29 Aug 05:09
3a4db55
Compare
Choose a tag to compare

6.0.1

php8.2
dd098bc9015fa38c36cd39d865c559ae ./ampache-6.0.1_all_php8.2.zip
afd48d36f431e9e569ccf230e3d64617 ./ampache-6.0.1_all_squashed_php8.2.zip

php8.1
2405df886b8f104eb38f7f58906afdd8 ./ampache-6.0.1_all_php8.1.zip
2543333b0b9b11e1dcd9387992bb49ad ./ampache-6.0.1_all_squashed_php8.1.zip

php8.0
71c6b71f78d2ebaba395f332dfbbdad9 ./ampache-6.0.1_all_php8.0.zip
5d1ed34ba0c93deb79d23ed24977e21b ./ampache-6.0.1_all_squashed_php8.0.zip

UNSUPPORTED php7.4 (will be built until it can't be done any more)
4b8aa50246c446a7598f5c4732ab5352 ./ampache-6.0.1_all_php7.4.zip
c79daa20c3b2d89a19599293c74179f6 ./ampache-6.0.1_all_squashed_php7.4.zip

UNSUPPORTED Code only release. (Requires composer install)
7d2cd6539caf312b41482b1eb3ae7806 ./ampache-6.0.1_public.zip
16ce8bac554afd7a18241445cd72a2a1 ./ampache-6.0.1_squashed.zip

Ampache 6.0.1

Quickly releasing this one due to issues with the API making sure data follows the correct standards

API6 needs to be here for a long time and I want to make sure that what you expect is what you get.

DOCKER USERS Debian upgraded from Debian Bullseye to Bookworm and MariaDB has been upgraded.

This caused issues as the mariadb service was not being shut down correctly.

Have a look at ampache/ampache-docker#102 (comment) in issue #102 for information about how it was solved when there was an error during the upgrade.

Fixed

  • Check for duplicate ports in stream URL's
  • Songs and podcast_episodes with ABR being overwritten with VBR

API 6.0.1

Changed

  • API6 XML
    • get_similar: return song objects to match json

Fixed

  • API6
    • user_preference: returned array instead of object
    • system_preference: returned array instead of object
    • preference_create: returned array instead of object
    • preference_edit: returned array instead of object