Skip to content

ampache7 for admins

lachlan edited this page May 3, 2024 · 16 revisions

Ampache7 for Admins

WORK IN PROGRESS

This page will cover the backend and Admin specific changes to Ampache.

For information about what you'll see and changed behavior's check out Ampache7 for Users (if it needs to exist later)

There are a few changes in Ampache7 that might block you upgrading. Consider all the changes before upgrading.

Try it out

You can check out the latest builds of Ampache7 using docker.

Just check out the ampache/ampache:preview tag to get these builds.

You can also check out the latest builds of Ampache7 using git.

Check out the patch7 branch to try it out on your own server.

(Don't replace your existing Ampache database if you want to go back!)

Check out the wiki - Installation page for more information

git clone -b patch7 https://github.com/ampache/ampache.git ampache

PHP Version support

The first major change is that Ampache7 supports PHP8.2+ only!

Builds will no longer support other versions. Stay on Ampache6 until you can move your server.

PHP zip extension is required

To make sure zip downloads are still available cross platform, the core php zip module is being used.

On Linux the module is usually called php-zip and is now required whether you enable zip downloads or not in the config.

NPM is required for JS package installation

When you update Ampache you need to add another step to the update processes.

In addition to composer install you need to update the NPM packages.

So now when you're updating from git just add it at the end of your scripts.

cd /var/www/ampache
git pull
composer install --prefer-source --no-interaction
npm install
npm run build

Check out update_from_git.sh for an updated example.

There is no API7 only API6! (...and 5, 4 and 3 too)

The Ampache API is not breaking anything with this release.

This will be the first time that the API and Ampache do not have the same version number.

Ampache versions will be 7.x.x and API6 will remain the default API version. (Currently 6.4.0)

If you send a version 7 API call you will be downgraded to API6 instead of getting an error.

image

If Ampache8 requires major changes the version will bump from 6 to 8 to match the next major release and skipping API7 entirely.

Image links for user's have changed

Do you use your user profile picture in other areas? (I like to use may avatar as a custom logo up there in the corner.)

image

The old links used the show action like all other objects

https://music.com.au/image.php?action=show&object_id=1&thumb=4

Ampache7 user avatar links now use their own action

https://music.com.au/image.php?action=show_user_avatar&object_id=1&thumb=4

Material Icons have replaced a lot of the old PNG files

We're now using Google Material Symbols & Icons to refresh some of the older icons on the site.

If you see the question mark, it means the requested SVG was not found.

image

Instead of loading from URL's the icons are loaded from the XML and they look pretty good!

image

API errorMessage fields are not translated

API6 Errors return an error object with the following parts:

  • errorCode: numeric code
  • errorAction: method that caused the error
  • errorType: further information such as the type of data missing or access level required
  • errorMessage: translated error message

It's been decided to keep the errorMessage in US English and NOT translate the messages.

This is a change in behaviour but is not considered breaking as the errorMessage could not be considered consistent.

Now it can be used for more complicated error handling.

New Options

You can now hide areas from the main sidebar including the arrows to switch between light and full sidebars.

image

When enabled the menu groups will be skipped from the HTML entirely. (Not just hidden with CSS)

image

You can also hide everything if you want without affecting the other layouts

image

Clone this wiki locally