Release 2.12.0 ⚠️ Breaking change to install development dependencies ⚠️ To install development dependencies, you need to run `pip install -e . --group dev` instead of `pip install -e .[dev]`. ### Added - Add HATEOAS links to show permissions on collections/items/upload_sets. See https://docs.panoramax.fr/backend/api/api/#permissions for more details. - Add a `panoramax_backend` command to the Python package, as an alias to the `flask --app geovisio` command. ### Fixed - Fix bug on python3.13 where running a command could hang with logs like "couldn't stop thread 'pool-1-worker-0' within 5.0 seconds" - Nearby picture (`related` link type) was not returned if picture heading was greater than current picture one. ### Changed - The `migrations` folder has now been moved to the root of the package, so it is available when installing the package using pypi. - The default web pages are more up-to-date (viewer v4, Panoramax logos, links to docs.panoramax.fr) - The python dependencies are now managed using [dependency groups](https://flit.pypa.io/en/latest/pyproject_toml.html#dependency-groups) instead of the `[project.optional-dependencies]` section. So you need to install the dependencies using `pip install -e . --group dev` instead of `pip install -e .[dev]`, and the `dev`/`format`/`docs`/`build` groups are available, but not part of the released package. This also means that `pip` minimal version is now `25.1` (only for development). Run `pip install --upgrade pip` to upgrade your pip version. - Update dependencies to support Python 3.14 🥧