1655 Commits
Author SHA1 Message Date
github-actions[bot] fcd8af4283 New Crowdin translations by GitHub Action (#12942)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-10-10 05:57:44 +12:00
ceccf768c3 Fix data import with S3 storage backend (#12973)
* Fix data import with S3 storage backend

Fixes #11117

* Fix formatting

* fix formatting

---------

Co-authored-by: mg <mg@layerx-defence.com>
Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
2026-10-09 19:52:18 +12:00
Matthias Mair 5a2d223cd0 use mixin instead of repeating patterns (#12977) 2026-10-08 20:26:25 +12:00
dependabot[bot]andMatthias Mair df579c094b chore(deps): bump the dependencies group across 2 directories with 28 updates (#12968)
* chore(deps): bump the dependencies group across 2 directories with 28 updates

Bumps the dependencies group with 3 updates in the /contrib/dev_reqs directory: [uv](https://github.com/astral-sh/uv), [jc](https://github.com/kellyjonbrazil/jc) and [pip](https://github.com/pypa/pip).
Bumps the dependencies group with 25 updates in the /src/backend directory:

| Package | From | To |
| --- | --- | --- |
| [boto3](https://github.com/boto/boto3) | `1.43.97` | `1.43.102` |
| [botocore](https://github.com/boto/botocore) | `1.43.97` | `1.43.102` |
| [django-ipware](https://github.com/un33k/django-ipware) | `7.0.1` | `8.0.0` |
| [django-js-asset](https://github.com/feincms/django-js-asset) | `4.1.0` | `4.2.0` |
| [fonttools](https://github.com/fonttools/fonttools) | `4.65.0` | `4.66.0` |
| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.75.3` | `1.75.4` |
| [markdown](https://github.com/Python-Markdown/markdown) | `3.10.3` | `3.11` |
| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.44.0` | `1.45.0` |
| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.44.0` | `1.45.0` |
| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.44.0` | `1.45.0` |
| [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.65b0` | `0.66b0` |
| [opentelemetry-instrumentation-dbapi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.65b0` | `0.66b0` |
| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.44.0` | `1.45.0` |
| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.65b0` | `0.66b0` |
| [opentelemetry-util-http](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.65b0` | `0.66b0` |
| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.11.10` | `4.11.14` |
| [pydantic-core](https://github.com/pydantic/pydantic) | `2.46.5` | `2.49.0` |
| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.14.0` | `2.15.0` |
| [python-ipware](https://github.com/un33k/python-ipware) | `3.0.0` | `4.1.0` |
| [scim2-models](https://github.com/python-scim/scim2-models) | `0.6.12` | `0.8.1` |
| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.69.2` | `2.70.0` |
| [wcwidth](https://github.com/jquast/wcwidth) | `0.8.4` | `0.9.1` |
| [django-test-migrations](https://github.com/wemake-services/django-test-migrations) | `1.6.0` | `1.7.0` |
| [scim2-client](https://github.com/python-scim/scim2-client) | `0.7.5` | `0.9.0` |
| [scim2-tester](https://github.com/python-scim/scim2-tester) | `0.2.8` | `0.4.0` |



Updates `uv` from 0.12.16 to 0.12.19
- [Release notes](https://github.com/astral-sh/uv/releases)
- [Changelog](https://github.com/astral-sh/uv/blob/main/CHANGELOG.md)
- [Commits](https://github.com/astral-sh/uv/compare/0.12.16...0.12.19)

Updates `jc` from 1.25.7 to 1.26.0
- [Release notes](https://github.com/kellyjonbrazil/jc/releases)
- [Changelog](https://github.com/kellyjonbrazil/jc/blob/master/CHANGELOG)
- [Commits](https://github.com/kellyjonbrazil/jc/compare/v1.25.7...v1.26.0)

Updates `pip` from 26.2.1 to 
- [Changelog](https://github.com/pypa/pip/blob/main/NEWS.rst)
- [Commits](https://github.com/pypa/pip/commits)

Updates `boto3` from 1.43.97 to 1.43.102
- [Release notes](https://github.com/boto/boto3/releases)
- [Commits](https://github.com/boto/boto3/compare/1.43.97...1.43.102)

Updates `botocore` from 1.43.97 to 1.43.102
- [Commits](https://github.com/boto/botocore/compare/1.43.97...1.43.102)

Updates `django-ipware` from 7.0.1 to 8.0.0
- [Release notes](https://github.com/un33k/django-ipware/releases)
- [Changelog](https://github.com/un33k/django-ipware/blob/master/CHANGELOG.md)
- [Commits](https://github.com/un33k/django-ipware/compare/v7.0.1...v8.0.0)

Updates `django-js-asset` from 4.1.0 to 4.2.0
- [Changelog](https://github.com/feincms/django-js-asset/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/feincms/django-js-asset/compare/4.1...4.2)

Updates `fonttools` from 4.65.0 to 4.66.0
- [Release notes](https://github.com/fonttools/fonttools/releases)
- [Changelog](https://github.com/fonttools/fonttools/blob/main/NEWS.rst)
- [Commits](https://github.com/fonttools/fonttools/compare/4.65.0...4.66.0)

Updates `googleapis-common-protos` from 1.75.3 to 1.75.4
- [Release notes](https://github.com/googleapis/google-cloud-python/releases)
- [Changelog](https://github.com/googleapis/google-cloud-python/blob/main/packages/google-cloud-documentai/CHANGELOG.md)
- [Commits](https://github.com/googleapis/google-cloud-python/compare/googleapis-common-protos-v1.75.3...googleapis-common-protos-v1.75.4)

Updates `markdown` from 3.10.3 to 3.11
- [Release notes](https://github.com/Python-Markdown/markdown/releases)
- [Changelog](https://github.com/Python-Markdown/markdown/blob/master/docs/changelog.md)
- [Commits](https://github.com/Python-Markdown/markdown/compare/3.10.3...3.11.0)

Updates `opentelemetry-exporter-otlp-proto-common` from 1.44.0 to 1.45.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-python/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python/compare/v1.44.0...v1.45.0)

Updates `opentelemetry-exporter-otlp-proto-grpc` from 1.44.0 to 1.45.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-python/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python/compare/v1.44.0...v1.45.0)

Updates `opentelemetry-exporter-otlp-proto-http` from 1.44.0 to 1.45.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-python/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python/compare/v1.44.0...v1.45.0)

Updates `opentelemetry-instrumentation` from 0.65b0 to 0.66b0
- [Release notes](https://github.com/open-telemetry/opentelemetry-python-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python-contrib/commits)

Updates `opentelemetry-instrumentation-dbapi` from 0.65b0 to 0.66b0
- [Release notes](https://github.com/open-telemetry/opentelemetry-python-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python-contrib/commits)

Updates `opentelemetry-proto` from 1.44.0 to 1.45.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-python/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python/compare/v1.44.0...v1.45.0)

Updates `opentelemetry-semantic-conventions` from 0.65b0 to 0.66b0
- [Release notes](https://github.com/open-telemetry/opentelemetry-python/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python/commits)

Updates `opentelemetry-util-http` from 0.65b0 to 0.66b0
- [Release notes](https://github.com/open-telemetry/opentelemetry-python-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-python-contrib/commits)

Updates `platformdirs` from 4.11.10 to 4.11.14
- [Release notes](https://github.com/tox-dev/platformdirs/releases)
- [Changelog](https://github.com/tox-dev/platformdirs/blob/main/docs/changelog.rst)
- [Commits](https://github.com/tox-dev/platformdirs/compare/4.11.10...4.11.14)

Updates `pydantic-core` from 2.46.5 to 2.49.0
- [Release notes](https://github.com/pydantic/pydantic/releases)
- [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md)
- [Commits](https://github.com/pydantic/pydantic/commits)

Updates `pyjwt` from 2.14.0 to 2.15.0
- [Release notes](https://github.com/jpadilla/pyjwt/releases)
- [Changelog](https://github.com/jpadilla/pyjwt/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/jpadilla/pyjwt/compare/2.14.0...2.15.0)

Updates `python-ipware` from 3.0.0 to 4.1.0
- [Release notes](https://github.com/un33k/python-ipware/releases)
- [Changelog](https://github.com/un33k/python-ipware/blob/main/CHANGELOG.md)
- [Commits](https://github.com/un33k/python-ipware/compare/v3.0.0...v4.1.0)

Updates `scim2-models` from 0.6.12 to 0.8.1
- [Release notes](https://github.com/python-scim/scim2-models/releases)
- [Changelog](https://github.com/python-scim/scim2-models/blob/main/doc/changelog.rst)
- [Commits](https://github.com/python-scim/scim2-models/compare/0.6.12...0.8.1)

Updates `sentry-sdk` from 2.69.2 to 2.70.0
- [Release notes](https://github.com/getsentry/sentry-python/releases)
- [Changelog](https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-python/compare/2.69.2...2.70.0)

Updates `wcwidth` from 0.8.4 to 0.9.1
- [Release notes](https://github.com/jquast/wcwidth/releases)
- [Changelog](https://github.com/jquast/wcwidth/blob/master/docs/history.rst)
- [Commits](https://github.com/jquast/wcwidth/compare/0.8.4...0.9.1)

Updates `django-test-migrations` from 1.6.0 to 1.7.0
- [Release notes](https://github.com/wemake-services/django-test-migrations/releases)
- [Changelog](https://github.com/wemake-services/django-test-migrations/blob/master/CHANGELOG.md)
- [Commits](https://github.com/wemake-services/django-test-migrations/compare/1.6.0...1.7.0)

Updates `scim2-client` from 0.7.5 to 0.9.0
- [Release notes](https://github.com/python-scim/scim2-client/releases)
- [Changelog](https://github.com/python-scim/scim2-client/blob/main/doc/changelog.rst)
- [Commits](https://github.com/python-scim/scim2-client/compare/0.7.5...0.9.0)

Updates `scim2-tester` from 0.2.8 to 0.4.0
- [Release notes](https://github.com/python-scim/scim2-tester/releases)
- [Changelog](https://github.com/python-scim/scim2-tester/blob/main/doc/changelog.rst)
- [Commits](https://github.com/python-scim/scim2-tester/compare/0.2.8...0.4.0)

---
updated-dependencies:
- dependency-name: uv
  dependency-version: 0.12.19
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: jc
  dependency-version: 1.26.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: pip
  dependency-version:
  dependency-type: direct:production
  dependency-group: dependencies
- dependency-name: boto3
  dependency-version: 1.43.102
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: botocore
  dependency-version: 1.43.102
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: django-ipware
  dependency-version: 8.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: dependencies
- dependency-name: django-js-asset
  dependency-version: 4.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: fonttools
  dependency-version: 4.66.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: googleapis-common-protos
  dependency-version: 1.75.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: markdown
  dependency-version: '3.11'
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: opentelemetry-exporter-otlp-proto-common
  dependency-version: 1.45.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: opentelemetry-exporter-otlp-proto-grpc
  dependency-version: 1.45.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: opentelemetry-exporter-otlp-proto-http
  dependency-version: 1.45.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: opentelemetry-instrumentation
  dependency-version: 0.66b0
  dependency-type: direct:production
  dependency-group: dependencies
- dependency-name: opentelemetry-instrumentation-dbapi
  dependency-version: 0.66b0
  dependency-type: direct:production
  dependency-group: dependencies
- dependency-name: opentelemetry-proto
  dependency-version: 1.45.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: opentelemetry-semantic-conventions
  dependency-version: 0.66b0
  dependency-type: direct:production
  dependency-group: dependencies
- dependency-name: opentelemetry-util-http
  dependency-version: 0.66b0
  dependency-type: direct:production
  dependency-group: dependencies
- dependency-name: platformdirs
  dependency-version: 4.11.14
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: pydantic-core
  dependency-version: 2.49.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: pyjwt
  dependency-version: 2.15.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: python-ipware
  dependency-version: 4.1.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: dependencies
- dependency-name: scim2-models
  dependency-version: 0.8.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: sentry-sdk
  dependency-version: 2.70.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: wcwidth
  dependency-version: 0.9.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: django-test-migrations
  dependency-version: 1.7.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: scim2-client
  dependency-version: 0.9.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: scim2-tester
  dependency-version: 0.4.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix style

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Matthias Mair <code@mjmair.com>
2026-10-08 20:24:07 +12:00
Matthias Mair 800cbe0d30 fix fronten tests failing (#12976) 2026-10-07 23:04:38 +02:00
Fran Quinto 575fbdc907 Fix user creation with group_ids via API (#12965)
* Fix user creation with group_ids via API

Creating a user via POST /api/user/ with the 'group_ids' field raised
TypeError: User() got unexpected keyword arguments: 'group_ids'.
The write-only 'group_ids' field was only handled on update.

- Declare 'group_ids' in SKIP_CREATE_FIELDS so it is not passed to the model
- Assign the groups after the user instance is created
- Add API test covering user creation with and without groups

* Bump API version
2026-10-05 11:33:07 +12:00
dependabot[bot]andMatthias Mair c1270fd842 chore(deps): bump pyjwt from 2.14.0 to 2.15.0 in /src/backend (#12959)
* chore(deps): bump pyjwt from 2.14.0 to 2.15.0 in /src/backend

Bumps [pyjwt](https://github.com/jpadilla/pyjwt) from 2.14.0 to 2.15.0.
- [Release notes](https://github.com/jpadilla/pyjwt/releases)
- [Changelog](https://github.com/jpadilla/pyjwt/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/jpadilla/pyjwt/compare/2.14.0...2.15.0)

---
updated-dependencies:
- dependency-name: pyjwt
  dependency-version: 2.15.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix style

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Matthias Mair <code@mjmair.com>
2026-10-03 07:53:02 +12:00
dependabot[bot]andMatthias Mair 058fa167b1 chore(deps): bump oauthlib from 3.3.1 to 4.0.0 in /src/backend (#12957)
* chore(deps): bump oauthlib from 3.3.1 to 4.0.0 in /src/backend

Bumps [oauthlib](https://github.com/oauthlib/oauthlib) from 3.3.1 to 4.0.0.
- [Release notes](https://github.com/oauthlib/oauthlib/releases)
- [Changelog](https://github.com/oauthlib/oauthlib/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/oauthlib/oauthlib/compare/v3.3.1...v4.0.0)

---
updated-dependencies:
- dependency-name: oauthlib
  dependency-version: 4.0.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* bump allauth tool

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Matthias Mair <code@mjmair.com>
2026-10-03 07:52:15 +12:00
Joe RogersandMatthias Mair 9188800dc7 Fix transitions query schema to indicate it returns a list (#12967)
* Fix transitions query schema to indicate it returns a list

* Update api version

* Update api_version.py

---------

Co-authored-by: Matthias Mair <code@mjmair.com>
2026-10-03 07:35:50 +12:00
Matthias Mair 9478c25a70 feat(backend): Add generic API helper for transitions (#12693)
* add generic api helper

* align name better

* fix name change

* allign returncodes and internal names

* fix serializer class assumptions

* remove now unneeded serializers

* fix parameter mixin handeling

* fix context parsing

* bump API version

* add transition overview

* fix serializer augumentation

* remove dead code

* change path prefix back

* extend test for introspection

* add legacy warning again

* check permissions for introspection endpoint (allowed indirect discovery of state)

* add sample

* helpers for complex and well described endpoints

* add more testing for state features shipped with common

* fix tests

* remove problematic many2many that does not work without database model

* remove samples; will be submitted as a larger sample app

* Update api_helpers.py
2026-09-29 21:26:53 +10:00
xyz-is-bestandMatthias Mair 65349eeefb fix(notifications): translate notification emails and messages into recipient user locale (#11408) (#12944)
* fix(notifications): translate notification emails and messages into recipient user locale (#11408)

* add a codespell ignore for the translated assertation

---------

Co-authored-by: Matthias Mair <code@mjmair.com>
2026-09-29 10:57:41 +10:00
dependabot[bot]andMatthias Mair 7642d409b6 chore(deps): bump the dependencies group across 3 directories with 25 updates (#12933)
* chore(deps): bump the dependencies group across 3 directories with 25 updates

Bumps the dependencies group with 2 updates in the /contrib/dev_reqs directory: [uv](https://github.com/astral-sh/uv) and [pip](https://github.com/pypa/pip).
Bumps the dependencies group with 1 update in the /docs directory: [mkdocs-git-revision-date-localized-plugin](https://github.com/timvink/mkdocs-git-revision-date-localized-plugin).
Bumps the dependencies group with 22 updates in the /src/backend directory:

| Package | From | To |
| --- | --- | --- |
| [blessed](https://github.com/jquast/blessed) | `1.49.0` | `1.50.0` |
| [boto3](https://github.com/boto/boto3) | `1.43.92` | `1.43.97` |
| [botocore](https://github.com/boto/botocore) | `1.43.92` | `1.43.97` |
| [django-stubs-ext](https://github.com/typeddjango/django-stubs) | `6.1.0` | `6.1.1` |
| [dulwich](https://github.com/dulwich/dulwich) | `1.2.14` | `1.2.15` |
| [grpcio](https://github.com/grpc/grpc) | `1.83.1` | `1.84.0` |
| [idna](https://github.com/kjd/idna) | `3.19` | `3.20` |
| [jwcrypto](https://github.com/latchset/jwcrypto) | `1.6.0` | `1.6.1` |
| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.11.8` | `4.11.10` |
| [protobuf](https://github.com/protocolbuffers/protobuf) | `7.36.1` | `7.36.2` |
| [pydantic-core](https://github.com/pydantic/pydantic) | `2.46.5` | `2.49.0` |
| [pypdf](https://github.com/py-pdf/pypdf) | `6.18.1` | `6.19.0` |
| [scim2-models](https://github.com/python-scim/scim2-models) | `0.6.12` | `0.7.0` |
| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.69.1` | `2.69.2` |
| [tzdata](https://github.com/python/tzdata) | `2026.3` | `2026.4` |
| [urllib3](https://github.com/urllib3/urllib3) | `2.7.0` | `2.8.0` |
| [wcwidth](https://github.com/jquast/wcwidth) | `0.8.3` | `0.8.4` |
| [coverage](https://github.com/coveragepy/coveragepy) | `7.16.0` | `7.16.1` |
| [django-silk](https://github.com/jazzband/django-silk) | `5.5.2` | `5.6.0` |
| [django-stubs](https://github.com/typeddjango/django-stubs) | `6.1.0` | `6.1.1` |
| [prek](https://github.com/j178/prek) | `0.5.2` | `0.5.3` |
| [pyproject-hooks](https://github.com/pypa/pyproject-hooks) | `1.2.0` | `1.3.3` |



Updates `uv` from 0.12.13 to 0.12.16
- [Release notes](https://github.com/astral-sh/uv/releases)
- [Changelog](https://github.com/astral-sh/uv/blob/main/CHANGELOG.md)
- [Commits](https://github.com/astral-sh/uv/compare/0.12.13...0.12.16)

Updates `pip` from 26.2.1 to 
- [Changelog](https://github.com/pypa/pip/blob/main/NEWS.rst)
- [Commits](https://github.com/pypa/pip/commits)

Updates `mkdocs-git-revision-date-localized-plugin` from 1.5.4 to 1.6.0
- [Release notes](https://github.com/timvink/mkdocs-git-revision-date-localized-plugin/releases)
- [Commits](https://github.com/timvink/mkdocs-git-revision-date-localized-plugin/compare/v1.5.4...v1.6.0)

Updates `blessed` from 1.49.0 to 1.50.0
- [Release notes](https://github.com/jquast/blessed/releases)
- [Changelog](https://github.com/jquast/blessed/blob/master/docs/history.rst)
- [Commits](https://github.com/jquast/blessed/compare/1.49...1.50)

Updates `boto3` from 1.43.92 to 1.43.97
- [Release notes](https://github.com/boto/boto3/releases)
- [Commits](https://github.com/boto/boto3/compare/1.43.92...1.43.97)

Updates `botocore` from 1.43.92 to 1.43.97
- [Commits](https://github.com/boto/botocore/compare/1.43.92...1.43.97)

Updates `django-stubs-ext` from 6.1.0 to 6.1.1
- [Release notes](https://github.com/typeddjango/django-stubs/releases)
- [Commits](https://github.com/typeddjango/django-stubs/compare/6.1.0...6.1.1)

Updates `dulwich` from 1.2.14 to 1.2.15
- [Release notes](https://github.com/dulwich/dulwich/releases)
- [Changelog](https://github.com/jelmer/dulwich/blob/main/NEWS)
- [Commits](https://github.com/dulwich/dulwich/compare/dulwich-1.2.14...dulwich-1.2.15)

Updates `grpcio` from 1.83.1 to 1.84.0
- [Release notes](https://github.com/grpc/grpc/releases)
- [Commits](https://github.com/grpc/grpc/compare/v1.83.1...v1.84.0)

Updates `idna` from 3.19 to 3.20
- [Release notes](https://github.com/kjd/idna/releases)
- [Changelog](https://github.com/kjd/idna/blob/master/HISTORY.md)
- [Commits](https://github.com/kjd/idna/compare/v3.19...v3.20)

Updates `jwcrypto` from 1.6.0 to 1.6.1
- [Release notes](https://github.com/latchset/jwcrypto/releases)
- [Commits](https://github.com/latchset/jwcrypto/compare/v1.6.0...v1.6.1)

Updates `platformdirs` from 4.11.8 to 4.11.10
- [Release notes](https://github.com/tox-dev/platformdirs/releases)
- [Changelog](https://github.com/tox-dev/platformdirs/blob/main/docs/changelog.rst)
- [Commits](https://github.com/tox-dev/platformdirs/compare/4.11.8...4.11.10)

Updates `protobuf` from 7.36.1 to 7.36.2
- [Release notes](https://github.com/protocolbuffers/protobuf/releases)
- [Commits](https://github.com/protocolbuffers/protobuf/commits)

Updates `pydantic-core` from 2.46.5 to 2.49.0
- [Release notes](https://github.com/pydantic/pydantic/releases)
- [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md)
- [Commits](https://github.com/pydantic/pydantic/commits)

Updates `pypdf` from 6.18.1 to 6.19.0
- [Release notes](https://github.com/py-pdf/pypdf/releases)
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md)
- [Commits](https://github.com/py-pdf/pypdf/compare/6.18.1...6.19.0)

Updates `scim2-models` from 0.6.12 to 0.7.0
- [Release notes](https://github.com/python-scim/scim2-models/releases)
- [Changelog](https://github.com/python-scim/scim2-models/blob/main/doc/changelog.rst)
- [Commits](https://github.com/python-scim/scim2-models/compare/0.6.12...0.7.0)

Updates `sentry-sdk` from 2.69.1 to 2.69.2
- [Release notes](https://github.com/getsentry/sentry-python/releases)
- [Changelog](https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-python/compare/2.69.1...2.69.2)

Updates `tzdata` from 2026.3 to 2026.4
- [Release notes](https://github.com/python/tzdata/releases)
- [Changelog](https://github.com/python/tzdata/blob/master/NEWS.md)
- [Commits](https://github.com/python/tzdata/compare/2026.3...2026.4)

Updates `urllib3` from 2.7.0 to 2.8.0
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/2.7.0...2.8.0)

Updates `wcwidth` from 0.8.3 to 0.8.4
- [Release notes](https://github.com/jquast/wcwidth/releases)
- [Changelog](https://github.com/jquast/wcwidth/blob/master/docs/history.rst)
- [Commits](https://github.com/jquast/wcwidth/compare/0.8.3...0.8.4)

Updates `coverage` from 7.16.0 to 7.16.1
- [Release notes](https://github.com/coveragepy/coveragepy/releases)
- [Changelog](https://github.com/coveragepy/coveragepy/blob/main/CHANGES.rst)
- [Commits](https://github.com/coveragepy/coveragepy/compare/7.16.0...7.16.1)

Updates `django-silk` from 5.5.2 to 5.6.0
- [Release notes](https://github.com/jazzband/django-silk/releases)
- [Changelog](https://github.com/jazzband/django-silk/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jazzband/django-silk/compare/5.5.2...5.6.0)

Updates `django-stubs` from 6.1.0 to 6.1.1
- [Release notes](https://github.com/typeddjango/django-stubs/releases)
- [Commits](https://github.com/typeddjango/django-stubs/compare/6.1.0...6.1.1)

Updates `prek` from 0.5.2 to 0.5.3
- [Release notes](https://github.com/j178/prek/releases)
- [Changelog](https://github.com/j178/prek/blob/master/CHANGELOG.md)
- [Commits](https://github.com/j178/prek/compare/v0.5.2...v0.5.3)

Updates `pyproject-hooks` from 1.2.0 to 1.3.3
- [Changelog](https://github.com/pypa/pyproject-hooks/blob/main/docs/changelog.rst)
- [Commits](https://github.com/pypa/pyproject-hooks/compare/v1.2.0...v1.3.3)

---
updated-dependencies:
- dependency-name: uv
  dependency-version: 0.12.16
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: pip
  dependency-version:
  dependency-type: direct:production
  dependency-group: dependencies
- dependency-name: mkdocs-git-revision-date-localized-plugin
  dependency-version: 1.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: blessed
  dependency-version: 1.50.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: boto3
  dependency-version: 1.43.97
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: botocore
  dependency-version: 1.43.97
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: django-stubs-ext
  dependency-version: 6.1.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: dulwich
  dependency-version: 1.2.15
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: grpcio
  dependency-version: 1.84.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: idna
  dependency-version: '3.20'
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: jwcrypto
  dependency-version: 1.6.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: platformdirs
  dependency-version: 4.11.10
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: protobuf
  dependency-version: 7.36.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: pydantic-core
  dependency-version: 2.49.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: pypdf
  dependency-version: 6.19.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: scim2-models
  dependency-version: 0.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: sentry-sdk
  dependency-version: 2.69.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: tzdata
  dependency-version: '2026.4'
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: urllib3
  dependency-version: 2.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: wcwidth
  dependency-version: 0.8.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: coverage
  dependency-version: 7.16.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: django-silk
  dependency-version: 5.6.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: django-stubs
  dependency-version: 6.1.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: prek
  dependency-version: 0.5.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: pyproject-hooks
  dependency-version: 1.3.3
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix style

* lower stub

* bump stub

* fix type interpolation issues

* use ty ignore

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Matthias Mair <code@mjmair.com>
2026-09-29 10:52:39 +10:00
github-actions[bot] c2b7f71f2f New Crowdin translations by GitHub Action (#12941)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-09-28 13:04:17 +10:00
Petr Ledvina 967f7a55d1 Add raise_error template tag (#12940) 2026-09-28 07:04:49 +10:00
Petr Ledvina 5d0c4d9646 Use one-shot tasks for label print batches (#12939)
* Disable retries for label print batch tasks

* Remove label failure retry guard for one-shot jobs
2026-09-28 07:02:24 +10:00
github-actions[bot] d3c23f37ca New Crowdin translations by GitHub Action (#12909)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-09-27 14:14:58 +10:00
d33d77d679 feat: add plugin support for custom page integration (#12900)
* Added plugin UI route functionality.

* Updated Sample UI plugin with route example.

* Added UI route tests.

* Plugin name added to UI Route URL.

* Updated docs.

* Docs fix.

* Updated sample_route text.

* Update src/backend/InvenTree/plugin/base/ui/mixins.py

Co-authored-by: Matthias Mair <code@mjmair.com>

* Fixed nav dynamic link highlighting.

* Added changelog entry.

---------

Co-authored-by: Matthias Mair <code@mjmair.com>
Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
2026-09-27 08:13:54 +10:00
Oliver ba848a83aa Disable retry for label printing (#12937)
prevents multiple label copies sent to machine - e.g. if timeout occurs on first attempt
2026-09-26 17:18:07 +10:00
Fran QuintoandOliver 600c2cc053 Add Catalan language support (#12926)
Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
2026-09-26 14:29:44 +10:00
Oliver 979ddb3f06 Default receive location (#12911)
* Add global setting

* docs

* Dynamically set API field default

* UI elements

* regression testing

* Add CHANGELOG entry

* Fix unit test
2026-09-26 11:39:44 +10:00
Oliver 862c934e0d Background Task Features (#12913)
* Add option to disable retry for background tasks

* Add specific regression testing to ensure the task is only pushed once

* Allow specification of "timeout" attribute

* Add regression tests

* Report failure of single-shot tasks

* Address remaining issues

* Additional regression tests

* Adjust headroom

* additional regression testing
2026-09-26 10:24:10 +10:00
Oliver 94f1f1e17e Fix floating point comparisons for parameter values (#12927)
- Closes https://github.com/inventree/InvenTree/issues/12923
- Allow tolerant comparisons for floating point values
- Additional unit tests
2026-09-25 10:03:21 +10:00
Oliver a92f97347a [API] Use InvenTreeDecimalField for minimum_stock and maximum_stock (#12928)
- Fixes https://github.com/inventree/InvenTree/issues/12925
2026-09-25 09:41:57 +10:00
Oliver c4c493d3fd Global batch code (#12912)
* Add top-level batch code when receiving items

* Add API test

* Bump API version
2026-09-24 07:32:12 +10:00
Oliver a4518fb52b Allocate mixin (#12914)
* Create AllocateMixin plugin mixin class

* Add documentation

* Add hook-in points for the new code

* Add unit tests

* Add CHANGELOG entry

* Add loose typing
2026-09-23 06:39:26 +10:00
Petr Ledvina 5edf72e084 Preserve validation details when rendering labels (#12874)
* Preserve label rendering validation errors

* Preserve label validation diagnostics before output deletion

Keep logging validation errors in both rendering wrappers before re-raising the original exception. LabelTemplate.print deletes failed DataOutput records, so the error log preserves the diagnostic after the result is removed.

Update the mocked tests to require logging while retaining the original validation details.

* Apply Ruff preview formatting to label rendering tests
2026-09-22 22:12:47 +10:00
Petr Ledvina 9daf4f8efe Preserve label printing failures and skip failed job redelivery (#12872)
Retain DataOutput records with the original printing error and mark jobs
failed when their plugin is unavailable. Keep exception propagation and
skip failed outputs on redelivery to avoid printing partial batches again.

Cover direct and worker exceptions, unavailable plugins, failed-job
redelivery, and missing or completed outputs.
2026-09-22 21:57:45 +10:00
Oliver 499c4d5b56 Additional regression tests for note support in reports (#12910) 2026-09-22 12:55:06 +10:00
Oliver c392b9cf03 Selection list fix (#12908)
* Enable filtering / searching / sorting on the SelectionListList API endpoint

* Add regression tests

* Bump API version
2026-09-22 11:19:21 +10:00
github-actions[bot] 0a09fd582c New Crowdin translations by GitHub Action (#12895)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-09-22 09:51:26 +10:00
Oliver 2f91f9a068 [report] Add set_var and get_var helpers (#12901)
* [report] Add set_var and get_var helpers

* Add type hints

* Adjust helpers
2026-09-21 16:38:03 +10:00
Oliver a675d1b24c [bug] Fix for Attachment thumbnail generation (#12902) 2026-09-21 13:16:24 +10:00
Oliver 94692563fe [bug] Bulk import fix (#12898)
* Handle auto_now and auto_now_add fields for bulk import

- Prevent them from being set to the current date

* Add regression testing
2026-09-21 13:05:21 +10:00
Oliver ce52e57fba [bug] Build line fix (#12892)
* Fix BuildLineSerializer

- use SubquerySum not Sum

* Add regression test

* Adjust existing API test thresholds

* Refactor assertion message in test_api.py

Simplified assertion message for GROUP BY check in count queries.

* Fix assertion message in count query test
2026-09-20 23:41:09 +10:00
Oliver 10422dc37b [db] Disable JIT for postgres (#12893)
* disable postgres JIT by default

* Update docs
2026-09-20 19:09:55 +10:00
dependabot[bot]andMatthias Mair 6176135821 chore(deps): bump the dependencies group across 1 directory with 18 updates (#12882)
* chore(deps): bump the dependencies group across 1 directory with 18 updates

Bumps the dependencies group with 18 updates in the /src/backend directory:

| Package | From | To |
| --- | --- | --- |
| [boto3](https://github.com/boto/boto3) | `1.43.88` | `1.43.92` |
| [botocore](https://github.com/boto/botocore) | `1.43.88` | `1.43.92` |
| [django-dbbackup](https://github.com/Archmonger/django-dbbackup) | `5.3.0` | `5.3.1` |
| [djangorestframework](https://github.com/encode/django-rest-framework) | `3.18.0` | `3.18.1` |
| [fonttools](https://github.com/fonttools/fonttools) | `4.64.0` | `4.65.0` |
| [pint](https://github.com/hgrecco/pint) | `0.25.3` | `0.26.1` |
| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.11.7` | `4.11.8` |
| [pydantic-core](https://github.com/pydantic/pydantic) | `2.46.5` | `2.49.0` |
| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.13.0` | `2.14.0` |
| [pypdf](https://github.com/py-pdf/pypdf) | `6.17.0` | `6.18.1` |
| [scim2-models](https://github.com/python-scim/scim2-models) | `0.6.12` | `0.7.0` |
| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.68.1` | `2.69.1` |
| [tqdm](https://github.com/tqdm/tqdm) | `4.70.0` | `4.70.1` |
| [wrapt](https://github.com/GrahamDumpleton/wrapt) | `2.4.0` | `2.4.1` |
| [anyio](https://github.com/agronholm/anyio) | `4.15.0` | `4.15.1` |
| [build](https://github.com/pypa/build) | `1.6.0` | `1.6.1` |
| [types-psycopg2](https://github.com/python/typeshed) | `2.9.21.20260724` | `2.9.21.20260911` |
| [types-pyyaml](https://github.com/python/typeshed) | `6.0.12.20260815` | `6.0.12.20260906` |



Updates `boto3` from 1.43.88 to 1.43.92
- [Release notes](https://github.com/boto/boto3/releases)
- [Commits](https://github.com/boto/boto3/compare/1.43.88...1.43.92)

Updates `botocore` from 1.43.88 to 1.43.92
- [Commits](https://github.com/boto/botocore/compare/1.43.88...1.43.92)

Updates `django-dbbackup` from 5.3.0 to 5.3.1
- [Release notes](https://github.com/Archmonger/django-dbbackup/releases)
- [Changelog](https://github.com/Archmonger/django-dbbackup/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Archmonger/django-dbbackup/compare/5.3.0...5.3.1)

Updates `djangorestframework` from 3.18.0 to 3.18.1
- [Release notes](https://github.com/encode/django-rest-framework/releases)
- [Commits](https://github.com/encode/django-rest-framework/compare/3.18.0...3.18.1)

Updates `fonttools` from 4.64.0 to 4.65.0
- [Release notes](https://github.com/fonttools/fonttools/releases)
- [Changelog](https://github.com/fonttools/fonttools/blob/main/NEWS.rst)
- [Commits](https://github.com/fonttools/fonttools/compare/4.64.0...4.65.0)

Updates `pint` from 0.25.3 to 0.26.1
- [Changelog](https://github.com/hgrecco/pint/blob/master/CHANGES)
- [Commits](https://github.com/hgrecco/pint/compare/0.25.3...0.26.1)

Updates `platformdirs` from 4.11.7 to 4.11.8
- [Release notes](https://github.com/tox-dev/platformdirs/releases)
- [Changelog](https://github.com/tox-dev/platformdirs/blob/main/docs/changelog.rst)
- [Commits](https://github.com/tox-dev/platformdirs/compare/4.11.7...4.11.8)

Updates `pydantic-core` from 2.46.5 to 2.49.0
- [Release notes](https://github.com/pydantic/pydantic/releases)
- [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md)
- [Commits](https://github.com/pydantic/pydantic/commits)

Updates `pyjwt` from 2.13.0 to 2.14.0
- [Release notes](https://github.com/jpadilla/pyjwt/releases)
- [Changelog](https://github.com/jpadilla/pyjwt/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/jpadilla/pyjwt/compare/2.13.0...2.14.0)

Updates `pypdf` from 6.17.0 to 6.18.1
- [Release notes](https://github.com/py-pdf/pypdf/releases)
- [Changelog](https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md)
- [Commits](https://github.com/py-pdf/pypdf/compare/6.17.0...6.18.1)

Updates `scim2-models` from 0.6.12 to 0.7.0
- [Release notes](https://github.com/python-scim/scim2-models/releases)
- [Changelog](https://github.com/python-scim/scim2-models/blob/main/doc/changelog.rst)
- [Commits](https://github.com/python-scim/scim2-models/compare/0.6.12...0.7.0)

Updates `sentry-sdk` from 2.68.1 to 2.69.1
- [Release notes](https://github.com/getsentry/sentry-python/releases)
- [Changelog](https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-python/compare/2.68.1...2.69.1)

Updates `tqdm` from 4.70.0 to 4.70.1
- [Release notes](https://github.com/tqdm/tqdm/releases)
- [Commits](https://github.com/tqdm/tqdm/compare/v4.70.0...v4.70.1)

Updates `wrapt` from 2.4.0 to 2.4.1
- [Release notes](https://github.com/GrahamDumpleton/wrapt/releases)
- [Changelog](https://github.com/GrahamDumpleton/wrapt/blob/develop/docs/changes.rst)
- [Commits](https://github.com/GrahamDumpleton/wrapt/compare/2.4.0...2.4.1)

Updates `anyio` from 4.15.0 to 4.15.1
- [Release notes](https://github.com/agronholm/anyio/releases)
- [Commits](https://github.com/agronholm/anyio/compare/4.15.0...4.15.1)

Updates `build` from 1.6.0 to 1.6.1
- [Release notes](https://github.com/pypa/build/releases)
- [Changelog](https://github.com/pypa/build/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pypa/build/compare/1.6.0...1.6.1)

Updates `types-psycopg2` from 2.9.21.20260724 to 2.9.21.20260911
- [Commits](https://github.com/python/typeshed/commits)

Updates `types-pyyaml` from 6.0.12.20260815 to 6.0.12.20260906
- [Commits](https://github.com/python/typeshed/commits)

---
updated-dependencies:
- dependency-name: boto3
  dependency-version: 1.43.92
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: botocore
  dependency-version: 1.43.92
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: django-dbbackup
  dependency-version: 5.3.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: djangorestframework
  dependency-version: 3.18.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: fonttools
  dependency-version: 4.65.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: pint
  dependency-version: 0.26.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: platformdirs
  dependency-version: 4.11.8
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: pydantic-core
  dependency-version: 2.49.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: pyjwt
  dependency-version: 2.14.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: pypdf
  dependency-version: 6.18.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: scim2-models
  dependency-version: 0.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: sentry-sdk
  dependency-version: 2.69.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: tqdm
  dependency-version: 4.70.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: wrapt
  dependency-version: 2.4.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: anyio
  dependency-version: 4.15.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: build
  dependency-version: 1.6.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: types-psycopg2
  dependency-version: 2.9.21.20260911
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: types-pyyaml
  dependency-version: 6.0.12.20260906
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix style

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Matthias Mair <code@mjmair.com>
2026-09-20 11:28:23 +10:00
github-actions[bot] bc005959f5 New Crowdin translations by GitHub Action (#12865)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-09-20 10:40:45 +10:00
Matthias Mair 63055865db evaluate enviroment once (#12890) 2026-09-20 09:05:47 +10:00
Oliver ea553ea232 Export records (#12887)
* Add 'bulkdumpdata' command

* Test --bulk option in CI
2026-09-19 19:43:09 +10:00
Oliver 2845a59207 API permission tweaks (#12886)
* API permission tweaks

- Explicitly require admin role for MachineSettingList
- Permission check for barcode generation

* Adjust existing unit test

* Update API version
2026-09-19 17:58:00 +10:00
Oliver fcb1e4f23e PO status fix (#12885)
* Fix for PurchaseOrder status code view

- Order dependent, due to new viewset

* Add regression tests for status code API endpoints
2026-09-19 11:54:07 +10:00
Matthias Mair ad69a35dfb feat: support password change well-known (#12878)
as per https://adamj.eu/tech/2026/09/16/django-change-password-url/
2026-09-19 08:26:07 +10:00
Petr LedvinaandOliver f76d79baf1 Add SVG support to datamatrix (#12875)
* Extract Data Matrix rendering helpers

* Add SVG Data Matrix output

* Verify vector Data Matrix output in PDFs

---------

Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
2026-09-18 18:14:50 +10:00
Petr Ledvina 98f4a8203b Ensure generated label PDFs have correct extension (#12870)
* Ensure generated label PDFs retain their extension

* Test generated label PDF filename handling
2026-09-18 17:09:49 +10:00
Petr Ledvina b9c7c24f8a Fix validation of dependent serializer fields (#12871) 2026-09-18 07:59:44 +10:00
Petr Ledvina 960c5f18e4 Preserve note image files when transactions roll back (#12867) 2026-09-18 00:13:03 +10:00
github-actions[bot] 3a0ade3265 New Crowdin translations by GitHub Action (#12782)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-09-16 22:32:45 +10:00
Matthias Mair dca516b318 feat(backend): switch API token storage to hmac digest (#12850)
* [FR] switch API token storage to hmac digest
Fixes #12027

* add pr number

* fix implementation details
allign token prefix and token end (add date issuance)

* fix missing re-issuance

* ensure we raise if not exsistant

* fix test

* add ignore

* extend test

* add information regarding v2 tokens

* add fields for:
- revocation details (reason, revoker)
- issueance
- version
- pepper

* bump apiversion

* make revocation mesagge clearer

* add missing update fields

* ensure this only triggers for v2

* move comment

* re-add v1 coverage

* add missing annotation to api schema
2026-09-16 10:35:12 +10:00
Oliver 225157153e Bug fixes for plugin file check (#12861)
- regex escape package name
- allow package without version indicator
- prevent duplication of entries within the plugins file
- add regression tests
2026-09-15 23:23:12 +10:00
Oliver d0a98f6491 Add more robust plugin installation check (#12858) 2026-09-15 21:24:40 +10:00