Commit Graph
1714 Commits
Author SHA1 Message Date
Oliver c4280c2a03 [Refactor] Stock tracking audit (#13101)
* Add "event_type" and "notes" support to AuditLog model

* Register history entries for stock items

* record stock edited events as normal updates

* Remove legacy tracking entry generation code

* Updated unit tests for all stock event types

* remove legacy endpoints

* remove legacy tables from UI

* Updated docs

* Data migration

* Remove old models

* Update docs

* Updated playwright tests

* Fix broken links

* Update CHANGELOG.md

* Cache CID value

* Fix migration tests

* Increase query threshold for unit test

* Fix bug and add regression test

* mark migration as one-way

* flush events in the correct order

* improve prefetch

* Adjust row rendering
2026-10-27 15:14:15 +11:00
Matthias Mair 2ee5764b3b fix various sec warnings (#13108) 2026-10-27 14:41:28 +11:00
Oliver 6c65d96ece Export escape fix (#13110)
* Allow numeric values to be exported unescapted

* Updated docs

* Explicit regression tests
2026-10-27 11:55:24 +11:00
dependabot[bot]andMatthias Mair 8075ef58d9 chore(deps): bump the dependencies group across 1 directory with 10 updates (#13105)
* chore(deps): bump the dependencies group across 1 directory with 10 updates

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

| Package | From | To |
| --- | --- | --- |
| [blessed](https://github.com/jquast/blessed) | `1.50.0` | `1.51.0` |
| [boto3](https://github.com/boto/boto3) | `1.43.113` | `1.43.114` |
| [botocore](https://github.com/boto/botocore) | `1.43.113` | `1.43.114` |
| [django-money](https://github.com/django-money/django-money) | `3.6.1` | `3.6.2` |
| [django-mptt](https://github.com/django-mptt/django-mptt) | `0.18.0` | `0.19.1` |
| [fonttools](https://github.com/fonttools/fonttools) | `4.66.1` | `4.67.0` |
| [paramiko](https://github.com/paramiko/paramiko) | `5.0.0` | `5.1.0` |
| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.13.0` | `4.13.5` |
| [pluggy](https://github.com/pytest-dev/pluggy) | `1.6.0` | `1.7.0` |
| [prek](https://github.com/j178/prek) | `0.5.5` | `0.5.6` |



Updates `blessed` from 1.50.0 to 1.51.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.50...1.51)

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

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

Updates `django-money` from 3.6.1 to 3.6.2
- [Release notes](https://github.com/django-money/django-money/releases)
- [Changelog](https://github.com/django-money/django-money/blob/main/docs/changes.rst)
- [Commits](https://github.com/django-money/django-money/commits)

Updates `django-mptt` from 0.18.0 to 0.19.1
- [Changelog](https://github.com/django-mptt/django-mptt/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/django-mptt/django-mptt/compare/0.18...0.19.1)

Updates `fonttools` from 4.66.1 to 4.67.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.66.1...4.67.0)

Updates `paramiko` from 5.0.0 to 5.1.0
- [Commits](https://github.com/paramiko/paramiko/compare/5.0.0...5.1.0)

Updates `platformdirs` from 4.13.0 to 4.13.5
- [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.13.0...4.13.5)

Updates `pluggy` from 1.6.0 to 1.7.0
- [Changelog](https://github.com/pytest-dev/pluggy/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pluggy/compare/1.6.0...1.7.0)

Updates `prek` from 0.5.5 to 0.5.6
- [Release notes](https://github.com/j178/prek/releases)
- [Changelog](https://github.com/j178/prek/blob/main/CHANGELOG.md)
- [Commits](https://github.com/j178/prek/compare/v0.5.5...v0.5.6)

---
updated-dependencies:
- dependency-name: blessed
  dependency-version: 1.51.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: boto3
  dependency-version: 1.43.114
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: botocore
  dependency-version: 1.43.114
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: django-money
  dependency-version: 3.6.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: django-mptt
  dependency-version: 0.19.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: fonttools
  dependency-version: 4.67.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: paramiko
  dependency-version: 5.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: platformdirs
  dependency-version: 4.13.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: pluggy
  dependency-version: 1.7.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: prek
  dependency-version: 0.5.6
  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-10-27 11:34:06 +11:00
dependabot[bot]andOliver Walters f05b8b44e4 chore(deps): bump brotli from 1.2.0 to 1.2.1 in /src/backend (#13092)
* chore(deps): bump brotli from 1.2.0 to 1.2.1 in /src/backend

Bumps [brotli](https://github.com/google/brotli) from 1.2.0 to 1.2.1.
- [Release notes](https://github.com/google/brotli/releases)
- [Changelog](https://github.com/google/brotli/blob/go/brotli/v1.2.1/CHANGELOG.md)
- [Commits](https://github.com/google/brotli/compare/v1.2.0...go/brotli/v1.2.1)

---
updated-dependencies:
- dependency-name: brotli
  dependency-version: 1.2.1
  dependency-type: direct:production
...

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

* Update requirements.txt

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Oliver Walters <oliver.henry.walters@gmail.com>
2026-10-26 22:48:19 +11:00
github-actions[bot] f61e6d79b3 New Crowdin translations by GitHub Action (#13095)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-10-26 17:59:43 +11:00
Oren bab82bf808 fix(backend): reject duplicate email when creating a user via the API (#13100)
UserCreateSerializer did not check whether the email address was
already in use (signup does, via allauth). Email based flows such as
the login link look users up by email and silently send nothing when
more than one user matches, while the API still reports success.

Two existing tests reused one email for several users; give them
distinct addresses.
2026-10-26 11:28:40 +11:00
Oliver c475e9bfcf [Feature] Changelog / Edit History (#13069)
* Initial app scaffolding

* Skeleton for AuditLogTable

* Add UI table

* Add audit history panel to admin center

* Add auditing for models in the 'company' app

* Gate API access of user staff status

* Display item history in UI

* Track 'attachment' history

* Track 'parameter' changes

* Audit support for "common" models

* Track changed for "build" models

* Track history for "order" models:

- PurchaseOrder
- SalesOrder
- SalesOrderShipment
- ReturnOrder

Also track changes against LineItem and ExtraLineItem objects

* Register custom admin class

* Support Part history

* BomItem changes

* Fix for BulkCreateMixin

* Tweak unit tests

* Use Viewset

* Adjust error code behavior

* Setting to keep summary entries

* Refactor helper for middlewares

* Tweak unit tests

* Fixes for ModelInformationDict

* Track pricing changes

* Add model type filter for auditlog table

* Specify filter field type

* Hide HistoryPanel if auding is disabled

* add docs

* Add "--summary" option to export_records task

* Playwright tests

* Track task responsible for data changes

* Updated unit tests

* record changes to global settings

* Update docs

* Ensure values are stringified

* Fix for globalsetting

* Patch unit test

* Tweak playwright tests

* playwright test fix

* use main branch for demo data

* Update CHANGELOG
2026-10-25 12:36:13 +11:00
Oliver cdb3b1ecf7 [bug] Fix for merging stock items (#13091)
- Use *target* stock status if supplied
- Closes https://github.com/inventree/InvenTree/issues/13086
2026-10-24 19:00:18 +11:00
github-actions[bot] ff697674d7 New Crowdin translations by GitHub Action (#13066)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-10-24 17:32:25 +11:00
Oliver 43956b9324 [bug] Can build fix (#13090)
* Fix 'can_build' calculation

- Take 'piece_count' into consideration
- Update queryset annotations
- Update quantity calculation call sites

* Updated docs
2026-10-24 17:28:07 +11:00
Oliver 66e3278ea7 Sanitize exported data (#13084) 2026-10-24 15:51:55 +11:00
Oliver ae1f822f26 [bug] fix auth split for calendar views (#13081) 2026-10-24 12:20:09 +11:00
Oliver e57ee86c35 Cache config fix (#13080)
* Fix docs

* Adjust config template

* Tweak cache config code
2026-10-24 12:19:47 +11:00
Matthias Mair 5bd0036ee1 feat(backend): add a way to proof instance id without sharing id / making id available (#13030)
* add a way to proof instance identification without publicly sharing id

* fix test
2026-10-24 08:25:46 +11:00
Oliver 3c644ddb18 Update "bulk_create_and_fetch" helper (#13068)
* Update "bulk_create_and_fetch" helper

Use bulk_create if DB backend supports returning

* Bug fix
2026-10-23 10:09:03 +11:00
dependabot[bot]andMatthias Mair b9793b0a1f chore(deps): bump pypdf from 6.20.1 to 6.21.1 in /src/backend (#13065)
* chore(deps): bump pypdf from 6.20.1 to 6.21.1 in /src/backend

Bumps [pypdf](https://github.com/py-pdf/pypdf) from 6.20.1 to 6.21.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.20.1...6.21.1)

---
updated-dependencies:
- dependency-name: pypdf
  dependency-version: 6.21.1
  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-22 10:35:52 +11:00
dependabot[bot]andMatthias Mair daeec1f775 chore(deps): bump the dependencies group across 2 directories with 11 updates (#13062)
* chore(deps): bump the dependencies group across 2 directories with 11 updates

Bumps the dependencies group with 1 update in the /docs directory: [mkdocstrings](https://github.com/mkdocstrings/mkdocstrings).
Bumps the dependencies group with 10 updates in the /src/backend directory:

| Package | From | To |
| --- | --- | --- |
| [boto3](https://github.com/boto/boto3) | `1.43.110` | `1.43.113` |
| [botocore](https://github.com/boto/botocore) | `1.43.110` | `1.43.113` |
| [markdown](https://github.com/Python-Markdown/markdown) | `3.11` | `3.11.1` |
| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.12.4` | `4.13.0` |
| [pydantic](https://github.com/pydantic/pydantic) | `2.14.0` | `2.14.1` |
| [pydantic-core](https://github.com/pydantic/pydantic) | `2.50.0` | `2.50.1` |
| [pydyf](https://github.com/CourtBouillon/pydyf) | `0.12.1` | `0.13.0` |
| [pypdf](https://github.com/py-pdf/pypdf) | `6.20.0` | `6.20.1` |
| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.71.0` | `2.72.0` |
| [wrapt](https://github.com/GrahamDumpleton/wrapt) | `2.5.0` | `2.5.1` |



Updates `mkdocstrings` from 1.0.6 to 1.0.7
- [Release notes](https://github.com/mkdocstrings/mkdocstrings/releases)
- [Changelog](https://github.com/mkdocstrings/mkdocstrings/blob/main/CHANGELOG.md)
- [Commits](https://github.com/mkdocstrings/mkdocstrings/compare/1.0.6...1.0.7)

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

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

Updates `markdown` from 3.11 to 3.11.1
- [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.11.0...3.11.1)

Updates `platformdirs` from 4.12.4 to 4.13.0
- [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.12.4...4.13.0)

Updates `pydantic` from 2.14.0 to 2.14.1
- [Release notes](https://github.com/pydantic/pydantic/releases)
- [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md)
- [Commits](https://github.com/pydantic/pydantic/compare/v2.14.0...v2.14.1)

Updates `pydantic-core` from 2.50.0 to 2.50.1
- [Release notes](https://github.com/pydantic/pydantic/releases)
- [Changelog](https://github.com/pydantic/pydantic/blob/main/HISTORY.md)
- [Commits](https://github.com/pydantic/pydantic/compare/core-v2.50.0...core-v2.50.1)

Updates `pydyf` from 0.12.1 to 0.13.0
- [Release notes](https://github.com/CourtBouillon/pydyf/releases)
- [Changelog](https://github.com/CourtBouillon/pydyf/blob/main/docs/changelog.rst)
- [Commits](https://github.com/CourtBouillon/pydyf/compare/v0.12.1...v0.13.0)

Updates `pypdf` from 6.20.0 to 6.20.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.20.0...6.20.1)

Updates `sentry-sdk` from 2.71.0 to 2.72.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.71.0...2.72.0)

Updates `wrapt` from 2.5.0 to 2.5.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.5.0...2.5.1)

---
updated-dependencies:
- dependency-name: mkdocstrings
  dependency-version: 1.0.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: boto3
  dependency-version: 1.43.113
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: botocore
  dependency-version: 1.43.113
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: markdown
  dependency-version: 3.11.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: platformdirs
  dependency-version: 4.13.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: pydantic
  dependency-version: 2.14.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: pydantic-core
  dependency-version: 2.50.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: pydyf
  dependency-version: 0.13.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: pypdf
  dependency-version: 6.20.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: sentry-sdk
  dependency-version: 2.72.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: wrapt
  dependency-version: 2.5.1
  dependency-type: direct:production
  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-10-22 07:47:11 +11:00
Matthias Mair 897c908b71 fix(backend): CA updates (#13057) 2026-10-21 22:10:42 +11:00
github-actions[bot] 7875dd5b2f New Crowdin translations by GitHub Action (#13043)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-10-21 16:46:17 +11:00
OliverandMatthias Mair 4c948cda1b Pricing role (#13034)
* add 'pricing' role

* Create new 'pricing' app

- migrate existing pricing models

* bug fixes

* Move API endpoints to /api/pricing/

* Adjust target branch for playwright tests

* Fix permission checks for nested OptionalField entries

* Migrate existing background tasks

* Point to master branch demo data

---------

Co-authored-by: Matthias Mair <code@mjmair.com>
2026-10-21 15:00:50 +11:00
OliverandPhilipp Fruck a91f079530 Deduplicate social backends (#13046)
* Deduplicate social backends

- Closes https://github.com/inventree/InvenTree/issues/13044
- Fixes bug which can cause duplication of social backends
- Added regression tests

* Update src/backend/InvenTree/InvenTree/config.py

Simplify implementation

Co-authored-by: Philipp Fruck <dev@p-fruck.de>

* Ensure consistent ordering

* Bump API version

---------

Co-authored-by: Philipp Fruck <dev@p-fruck.de>
2026-10-21 10:00:53 +11:00
github-actions[bot] 8d496ae389 New Crowdin translations by GitHub Action (#13026)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-10-18 12:13:25 +11:00
Oliver 1aca33e7a1 1.7.x dev (#13035)
* Bump version number

* Update CHANGELOG
2026-10-18 10:43:33 +11:00
Bhumin PaladiyaandMatthias Mair 6d4e0f51c4 Enhance search and ordering fields across remaining REST API endpoints (#12737)
* Enhance search and ordering fields across remaining API endpoints

* Fix StockTrackingList search fields and bump API version to 537

* Format stock/api.py with ruff preview style

* Restore StockList.create serial validation handling to match upstream master

* Format files with ruff preview style and fix StockList try-except

* Restore StockList to match upstream master and keep stock/api.py diff minimal

---------

Co-authored-by: Matthias Mair <code@mjmair.com>
2026-10-18 09:23:59 +11:00
Oliver ddd460391e Permission bug fixes: (#13033)
Bug 1: Inherited BOM permissions flip on every save

Bug 2: Unused `permission_required` in PartInternalPriceList
2026-10-17 14:44:46 +11:00
dependabot[bot]andMatthias Mair 9eb28d1138 chore(deps): bump the dependencies group across 2 directories with 33 updates (#13031)
* chore(deps): bump the dependencies group across 2 directories with 33 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 31 updates in the /src/backend directory:

| Package | From | To |
| --- | --- | --- |
| [boto3](https://github.com/boto/boto3) | `1.43.107` | `1.43.110` |
| [botocore](https://github.com/boto/botocore) | `1.43.107` | `1.43.110` |
| [django-filter](https://github.com/carltongibson/django-filter) | `26.1` | `26.2` |
| [django-sesame](https://github.com/aaugustin/django-sesame) | `3.2.3` | `3.2.5` |
| [django-stubs-ext](https://github.com/typeddjango/django-stubs) | `6.1.1` | `6.1.2` |
| [djangorestframework](https://github.com/encode/django-rest-framework) | `3.18.1` | `3.18.3` |
| [dnspython](https://github.com/rthalley/dnspython) | `2.8.0` | `2.9.0` |
| [dulwich](https://github.com/dulwich/dulwich) | `1.2.15` | `1.2.17` |
| [markupsafe](https://github.com/pallets/markupsafe) | `3.0.3` | `3.0.4` |
| [opentelemetry-exporter-http-transport](https://github.com/open-telemetry/opentelemetry-python) | `0.66b0` | `0.66b1` |
| [opentelemetry-exporter-otlp-common](https://github.com/open-telemetry/opentelemetry-python) | `0.66b0` | `0.66b1` |
| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.45.0` | `1.45.1` |
| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.45.0` | `1.45.1` |
| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.45.0` | `1.45.1` |
| [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.66b0` | `0.66b1` |
| [opentelemetry-instrumentation-dbapi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.66b0` | `0.66b1` |
| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.45.0` | `1.45.1` |
| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.66b0` | `0.66b1` |
| [opentelemetry-util-http](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.66b0` | `0.66b1` |
| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.12.2` | `4.12.4` |
| [pycparser](https://github.com/eliben/pycparser) | `3.0` | `3.11` |
| [pypdf](https://github.com/py-pdf/pypdf) | `6.19.0` | `6.20.0` |
| [python-fsutil](https://github.com/fabiocaccamo/python-fsutil) | `0.17.0` | `0.18.0` |
| [rpds-py](https://github.com/crate-py/rpds) | `2026.6.3` | `2026.9.1` |
| [tzdata](https://github.com/python/tzdata) | `2026.4` | `2026.5` |
| [wcwidth](https://github.com/jquast/wcwidth) | `0.9.1` | `0.9.2` |
| [django-stubs](https://github.com/typeddjango/django-stubs) | `6.1.1` | `6.1.2` |
| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.3.0` | `2.3.1` |
| [pip-tools](https://github.com/jazzband/pip-tools) | `7.6.1` | `7.6.2` |
| [prek](https://github.com/j178/prek) | `0.5.4` | `0.5.5` |
| [types-psycopg2](https://github.com/python/typeshed) | `2.9.21.20260911` | `2.9.21.20261008` |



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

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.107 to 1.43.110
- [Release notes](https://github.com/boto/boto3/releases)
- [Commits](https://github.com/boto/boto3/compare/1.43.107...1.43.110)

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

Updates `django-filter` from 26.1 to 26.2
- [Release notes](https://github.com/carltongibson/django-filter/releases)
- [Changelog](https://github.com/carltongibson/django-filter/blob/main/CHANGES.rst)
- [Commits](https://github.com/carltongibson/django-filter/compare/26.1...26.2)

Updates `django-sesame` from 3.2.3 to 3.2.5
- [Changelog](https://github.com/aaugustin/django-sesame/blob/main/docs/changelog.rst)
- [Commits](https://github.com/aaugustin/django-sesame/compare/3.2.3...3.2.5)

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

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

Updates `dnspython` from 2.8.0 to 2.9.0
- [Release notes](https://github.com/rthalley/dnspython/releases)
- [Changelog](https://github.com/rthalley/dnspython/blob/main/doc/whatsnew.rst)
- [Commits](https://github.com/rthalley/dnspython/compare/v2.8.0...v2.9.0)

Updates `dulwich` from 1.2.15 to 1.2.17
- [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.15...dulwich-1.2.17)

Updates `markupsafe` from 3.0.3 to 3.0.4
- [Release notes](https://github.com/pallets/markupsafe/releases)
- [Changelog](https://github.com/pallets/markupsafe/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/markupsafe/compare/3.0.3...3.0.4)

Updates `opentelemetry-exporter-http-transport` from 0.66b0 to 0.66b1
- [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-exporter-otlp-common` from 0.66b0 to 0.66b1
- [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-exporter-otlp-proto-common` from 1.45.0 to 1.45.1
- [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.45.0...v1.45.1)

Updates `opentelemetry-exporter-otlp-proto-grpc` from 1.45.0 to 1.45.1
- [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.45.0...v1.45.1)

Updates `opentelemetry-exporter-otlp-proto-http` from 1.45.0 to 1.45.1
- [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.45.0...v1.45.1)

Updates `opentelemetry-instrumentation` from 0.66b0 to 0.66b1
- [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.66b0 to 0.66b1
- [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.45.0 to 1.45.1
- [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.45.0...v1.45.1)

Updates `opentelemetry-semantic-conventions` from 0.66b0 to 0.66b1
- [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.66b0 to 0.66b1
- [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.12.2 to 4.12.4
- [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.12.2...4.12.4)

Updates `pycparser` from 3.0 to 3.11
- [Release notes](https://github.com/eliben/pycparser/releases)
- [Commits](https://github.com/eliben/pycparser/compare/release_v3.00...release_v3.11)

Updates `pypdf` from 6.19.0 to 6.20.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.19.0...6.20.0)

Updates `python-fsutil` from 0.17.0 to 0.18.0
- [Release notes](https://github.com/fabiocaccamo/python-fsutil/releases)
- [Changelog](https://github.com/fabiocaccamo/python-fsutil/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fabiocaccamo/python-fsutil/compare/0.17.0...0.18.0)

Updates `rpds-py` from 2026.6.3 to 2026.9.1
- [Release notes](https://github.com/crate-py/rpds/releases)
- [Changelog](https://github.com/crate-py/rpds/blob/main/release.toml)
- [Commits](https://github.com/crate-py/rpds/compare/v2026.6.3...v2026.9.1)

Updates `tzdata` from 2026.4 to 2026.5
- [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.4...2026.5)

Updates `wcwidth` from 0.9.1 to 0.9.2
- [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.9.1...0.9.2)

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

Updates `iniconfig` from 2.3.0 to 2.3.1
- [Release notes](https://github.com/pytest-dev/iniconfig/releases)
- [Changelog](https://github.com/pytest-dev/iniconfig/blob/main/CHANGELOG)
- [Commits](https://github.com/pytest-dev/iniconfig/compare/v2.3.0...v2.3.1)

Updates `pip-tools` from 7.6.1 to 7.6.2
- [Release notes](https://github.com/jazzband/pip-tools/releases)
- [Changelog](https://github.com/pypa/pip-tools/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jazzband/pip-tools/compare/v7.6.1...v7.6.2)

Updates `prek` from 0.5.4 to 0.5.5
- [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.4...v0.5.5)

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

---
updated-dependencies:
- dependency-name: uv
  dependency-version: 0.12.24
  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: boto3
  dependency-version: 1.43.110
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: botocore
  dependency-version: 1.43.110
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: django-filter
  dependency-version: '26.2'
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: django-sesame
  dependency-version: 3.2.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: django-stubs-ext
  dependency-version: 6.1.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: djangorestframework
  dependency-version: 3.18.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: dnspython
  dependency-version: 2.9.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: dulwich
  dependency-version: 1.2.17
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: markupsafe
  dependency-version: 3.0.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: opentelemetry-exporter-http-transport
  dependency-version: 0.66b1
  dependency-type: direct:production
  dependency-group: dependencies
- dependency-name: opentelemetry-exporter-otlp-common
  dependency-version: 0.66b1
  dependency-type: direct:production
  dependency-group: dependencies
- dependency-name: opentelemetry-exporter-otlp-proto-common
  dependency-version: 1.45.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: opentelemetry-exporter-otlp-proto-grpc
  dependency-version: 1.45.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: opentelemetry-exporter-otlp-proto-http
  dependency-version: 1.45.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: opentelemetry-instrumentation
  dependency-version: 0.66b1
  dependency-type: direct:production
  dependency-group: dependencies
- dependency-name: opentelemetry-instrumentation-dbapi
  dependency-version: 0.66b1
  dependency-type: direct:production
  dependency-group: dependencies
- dependency-name: opentelemetry-proto
  dependency-version: 1.45.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: opentelemetry-semantic-conventions
  dependency-version: 0.66b1
  dependency-type: direct:production
  dependency-group: dependencies
- dependency-name: opentelemetry-util-http
  dependency-version: 0.66b1
  dependency-type: direct:production
  dependency-group: dependencies
- dependency-name: platformdirs
  dependency-version: 4.12.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: pycparser
  dependency-version: '3.11'
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: pypdf
  dependency-version: 6.20.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: python-fsutil
  dependency-version: 0.18.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: rpds-py
  dependency-version: 2026.9.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: tzdata
  dependency-version: '2026.5'
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: wcwidth
  dependency-version: 0.9.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: django-stubs
  dependency-version: 6.1.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: iniconfig
  dependency-version: 2.3.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: pip-tools
  dependency-version: 7.6.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: prek
  dependency-version: 0.5.5
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: types-psycopg2
  dependency-version: 2.9.21.20261008
  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-10-17 13:19:33 +11:00
Oliver a5895adcac [bug] Handle length limitation for "notes" fields (#13023)
* [bug] Handle length limitation for "notes" fields

* Bump API version

* Fix typing

* Further typing fixes
2026-10-17 11:26:57 +11:00
Matthias Mair 8d96db0040 fix(backend): make test stable (#13032) 2026-10-17 11:26:45 +11:00
96d1d20b73 feat: Add Delivery Address field to Purchase Orders (#9768)
* Add delivery address to purchase order; migrate address field to Supplier Address (#9303)

* update model related_name and remove migrate file

* regenerate migration

* Fix migration ordering

* Bump API version

* add 'receiving_company' field

* UI updates

* Add regression tests

---------

Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
Co-authored-by: Matthias Mair <code@mjmair.com>
2026-10-17 08:13:26 +11:00
Oliver c74523dcff Control backup count (#13025)
Enable control of how many historical backup entries to keep when running invoke backup --clean
2026-10-16 19:22:33 +11:00
github-actions[bot] a151d22a9c New Crowdin translations by GitHub Action (#13018)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-10-16 19:21:59 +11:00
Oliver a9fb999b11 Add "on_order" quantity to low-stock email notification (#13022) 2026-10-16 15:47:24 +11:00
Matthias Mair 2f139f94b4 feat: Add First Time User Guide and tipp backend data structure (#12978)
* add backend stuff

* update str method

* add to admin

* [FR] Add FTUE
Fixes #2907

* bump deps

* bump api

* add missing ruleset entry

* fix init

* add jumpoff to nav

* try disableing specific test

* fix lookup

* fix mounting

* disable more

* make tour conditional

* only show ftue once

* remove temp disable

* add actual content

* enable using the menu as well

* reorder steps

* finish propagation

* only allow delete

* lower testing runtime for now

* fix nitpicks

* revert frontend debug changes

* fix migration

* patch out ftu behaviour on the backend

* rename to first time use guide

* change tipp (DE) to tip (EN)

* deduplicate notification
2026-10-15 19:46:06 +11:00
OliverandMatthias Mair 9b8fdeb06d Internal company support (#13017)
* Add internal company flag

* Unit tests

* Add changelog entry and update API version

* add global company table

* Expose model_filters for internal settings

* Update API version

* Update CHANGELOG

* update assert

---------

Co-authored-by: Matthias Mair <code@mjmair.com>
2026-10-15 11:20:59 +11:00
Oliver 720ba157bb Shipment contact info (#13016)
* Add 'contact' field to SalesOrderShipment model

* add unit test

* Update shipment table

* improve UI form

* Add 'phone' and 'email' fields to Address model

* Bump API version

* Update CHANGELOG

* Updated docs
2026-10-14 19:33:33 +11:00
github-actions[bot] dec51eab52 New Crowdin translations by GitHub Action (#13011)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-10-14 18:02:57 +11:00
OliverandMatthias Mair 31bc5a043c Notify context (#11481)
* Pass extra HTML context through to "notify_responsible"

* Supply additional context

* Update template

* Add unit test for email template

---------

Co-authored-by: Matthias Mair <code@mjmair.com>
2026-10-14 12:43:28 +11:00
github-actions[bot] 6739bfea89 New Crowdin translations by GitHub Action (#12983)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-10-14 10:02:36 +11:00
a5ea65aa45 fix(report): support S3 cloud media storage for report and label template loading (#12426) (#12943)
* fix(report): support S3 cloud media storage for report and label template loading (#12426)

- Prevent TemplateDoesNotExist when using cloud storage backends (e.g. S3 via django-storages)
- Update TemplateUploadMixin.template_name to return relative storage path when local file does not exist on disk
- Implement ReportTemplateBase.get_template_content() to load content from storage backend and resolve bucket/location prefix mismatches
- Add fallback in ReportTemplateBase.render_as_string() to render from storage content when template loader lookup fails
- Register InvenTreeStorageTemplateLoader to allow template snippets to resolve directly from default_storage
- Add unit tests in S3ReportTemplateTest covering prefix resolution, remote rendering, and storage template loading

* fix style

* remove weasyprint unavailable hacks

this is unrealstic in a full enviroment; the only reason for this is some very constraint sandbox - which is not our run enviroment

* fix import

---------

Co-authored-by: Matthias Mair <code@mjmair.com>
Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
2026-10-14 10:02:04 +11:00
Oliver 29eb9632ac Prevent deletion of line items which have received stock (#13004)
* Prevent deletion of line items which have received stock

* Revert docstring changes
2026-10-14 10:00:51 +11:00
Oliver 445fa3e125 Check user permissions before locating stock (#13000)
* Check user permissions before locating stock

* Update unit test
2026-10-13 22:59:17 +11:00
Oliver c3917c343b Fix 'get_required_quantity' method (#13002)
- Ensure a Decimal is returned in all cases
- Fix type hinting
- Updated unit tests
2026-10-13 22:37:09 +11:00
Oliver 788b291a21 Plugin reload limitations (#13007)
* Improve auto-reload of plugin

Ensure entire module is reloaded

* Add regression tests

* Updated docs

* Detect plugin reload loop - and report error
2026-10-13 20:46:02 +11:00
Oliver 34ea373d88 Improve status code comparison (#13006)
Fixes bug caused by override of BaseEnum.__new__ which broke comparison of status code values
2026-10-13 20:45:44 +11:00
Matthias Mair 7e89e93252 feat(backend): mark setting when changed via API (#12982)
* mark setting when changed via API

might be helpful for https://github.com/inventree/InvenTree/issues/12767

* add migration

* fix migration

* use atomic instead

* move atomic

* move the transaction safety to be migration specific

* reduce diff

* make write safe

* remove migration_safe_query again

* use a simpler approach in the squashed migration

* try using a manager

* add update / updated_by to api

* update generic settings api to handle updated_by field
2026-10-13 20:44:58 +11:00
Oliver 76a21b7899 Fix MPTT check for BOM validity (#13008)
Use refreshed DB values rather than validating against in-memory values
2026-10-13 20:44:27 +11:00
Oliver fa04bcc455 Fix consume_build_stock (#13003)
Fixes concurrent or repeated calls to consume_build_stock, making this method idempotent

Also adds regression testing
2026-10-13 16:58:25 +11:00
e0f3d293d3 chore(deps): bump the dependencies group across 2 directories with 21 updates (#12984)
* chore(deps): bump the dependencies group across 2 directories with 21 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 19 updates in the /src/backend directory:

| Package | From | To |
| --- | --- | --- |
| [boto3](https://github.com/boto/boto3) | `1.43.102` | `1.43.107` |
| [botocore](https://github.com/boto/botocore) | `1.43.102` | `1.43.107` |
| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.5.1` | `3.5.2` |
| [cryptography](https://github.com/pyca/cryptography) | `50.0.1` | `50.0.2` |
| [fonttools](https://github.com/fonttools/fonttools) | `4.66.0` | `4.66.1` |
| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.75.4` | `1.75.5` |
| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.11.14` | `4.12.2` |
| [pydantic-core](https://github.com/pydantic/pydantic) | `2.46.5` | `2.49.0` |
| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.15.0` | `2.15.1` |
| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.2.3` | `1.2.4` |
| [python-ipware](https://github.com/un33k/python-ipware) | `4.1.0` | `4.1.1` |
| [scim2-models](https://github.com/python-scim/scim2-models) | `0.6.12` | `0.10.2` |
| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.70.0` | `2.71.0` |
| [wrapt](https://github.com/GrahamDumpleton/wrapt) | `2.4.1` | `2.5.0` |
| [coverage](https://github.com/coveragepy/coveragepy) | `7.16.1` | `7.16.2` |
| [isort](https://github.com/PyCQA/isort) | `9.0.1` | `9.0.2` |
| [prek](https://github.com/j178/prek) | `0.5.3` | `0.5.4` |
| [scim2-client](https://github.com/python-scim/scim2-client) | `0.7.5` | `0.11.2` |
| [scim2-tester](https://github.com/python-scim/scim2-tester) | `0.2.8` | `0.5.0` |



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

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.102 to 1.43.107
- [Release notes](https://github.com/boto/boto3/releases)
- [Commits](https://github.com/boto/boto3/compare/1.43.102...1.43.107)

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

Updates `charset-normalizer` from 3.5.1 to 3.5.2
- [Release notes](https://github.com/jawah/charset_normalizer/releases)
- [Changelog](https://github.com/jawah/charset_normalizer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jawah/charset_normalizer/compare/3.5.1...3.5.2)

Updates `cryptography` from 50.0.1 to 50.0.2
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/50.0.1...50.0.2)

Updates `fonttools` from 4.66.0 to 4.66.1
- [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.66.0...4.66.1)

Updates `googleapis-common-protos` from 1.75.4 to 1.75.5
- [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.4...googleapis-common-protos-v1.75.5)

Updates `platformdirs` from 4.11.14 to 4.12.2
- [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.14...4.12.2)

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/compare/core-v2.46.5...core-v2.49.0)

Updates `pyjwt` from 2.15.0 to 2.15.1
- [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.15.0...2.15.1)

Updates `python-dotenv` from 1.2.3 to 1.2.4
- [Release notes](https://github.com/theskumar/python-dotenv/releases)
- [Changelog](https://github.com/theskumar/python-dotenv/blob/main/CHANGELOG.md)
- [Commits](https://github.com/theskumar/python-dotenv/compare/v1.2.3...v1.2.4)

Updates `python-ipware` from 4.1.0 to 4.1.1
- [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/v4.1.0...v4.1.1)

Updates `scim2-models` from 0.6.12 to 0.10.2
- [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.10.2)

Updates `sentry-sdk` from 2.70.0 to 2.71.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.70.0...2.71.0)

Updates `wrapt` from 2.4.1 to 2.5.0
- [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.1...2.5.0)

Updates `coverage` from 7.16.1 to 7.16.2
- [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.1...7.16.2)

Updates `isort` from 9.0.1 to 9.0.2
- [Release notes](https://github.com/PyCQA/isort/releases)
- [Changelog](https://github.com/PyCQA/isort/blob/main/CHANGELOG.md)
- [Commits](https://github.com/PyCQA/isort/compare/9.0.1...9.0.2)

Updates `prek` from 0.5.3 to 0.5.4
- [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.3...v0.5.4)

Updates `scim2-client` from 0.7.5 to 0.11.2
- [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.11.2)

Updates `scim2-tester` from 0.2.8 to 0.5.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.5.0)

---
updated-dependencies:
- dependency-name: uv
  dependency-version: 0.12.22
  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: boto3
  dependency-version: 1.43.107
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: botocore
  dependency-version: 1.43.107
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: charset-normalizer
  dependency-version: 3.5.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: cryptography
  dependency-version: 50.0.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: fonttools
  dependency-version: 4.66.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: googleapis-common-protos
  dependency-version: 1.75.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: platformdirs
  dependency-version: 4.12.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  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.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: python-dotenv
  dependency-version: 1.2.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: python-ipware
  dependency-version: 4.1.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: scim2-models
  dependency-version: 0.10.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: sentry-sdk
  dependency-version: 2.71.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: wrapt
  dependency-version: 2.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: coverage
  dependency-version: 7.16.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: isort
  dependency-version: 9.0.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: prek
  dependency-version: 0.5.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: scim2-client
  dependency-version: 0.11.2
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: scim2-tester
  dependency-version: 0.5.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>
Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
2026-10-13 14:01:53 +11:00
ea043f50b0 Fix missing call to str.strip() in get_next_reference (#12966)
The missing call would throw a TypeError, but that was later on swallowed, so the code would fall back to `reference_int` and never used the configured reference pattern

Co-authored-by: Matthias Mair <code@mjmair.com>
Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
2026-10-13 13:40:53 +11:00