Commit Graph
2991 Commits
Author SHA1 Message Date
Oliver 48ec9d1dd2 [UI] playwright updates (#13231)
* [UI] playwright updates

- Increased coverage
- various tweaks / fixes

* Additional updates

* Robustify further
2026-11-09 22:57:13 +11:00
Oliver 2497dd5425 [bug] date import (#13225)
- Handle date values during data import
- reported via sentry.io
2026-11-09 14:55:48 +11:00
Matthias Mair 8f668657b3 provide context in docker startup logs (#13227)
* provide context in docker startup logs

* reduce unnecessary docker logging

* this is set in one place; can be less complicated
2026-11-09 14:53:48 +11:00
Oliver df2a5d853e Add CI checks for /api-doc/ endpoint (#13210)
* Add CI checks for /api-doc/ endpoint

Ref: https://github.com/inventree/InvenTree/issues/13200

* fix playwright test

* Reduce flakiness
2026-11-08 17:55:12 +11:00
Oliver 3866f7dbf5 [bug] Handle concurrent plugin registry reloads (#13223)
Identified as potential cause of flaky playwright tests
2026-11-08 16:08:14 +11:00
Matthias Mair 35428bcb9f feat(backend): add signal for currency change (#13207)
* feat(backend): add signal for currency change

* fix receiver
2026-11-08 10:59:54 +11:00
Joe Rogers 4ba5cfbb67 Token and Audit Log missing API annotations (#13221)
* Document existing token warning field in schema

* Unrequire audit log entry changes_detail

* Update api version
2026-11-08 10:59:24 +11:00
dependabot[bot]andMatthias Mair f46aaed511 chore(deps): bump the dependencies group across 2 directories with 31 updates (#13209)
* chore(deps): bump the dependencies group across 2 directories with 31 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 28 updates in the /src/backend directory:

| Package | From | To |
| --- | --- | --- |
| [boto3](https://github.com/boto/boto3) | `1.43.118` | `1.43.122` |
| [botocore](https://github.com/boto/botocore) | `1.43.118` | `1.43.122` |
| [django-js-asset](https://github.com/feincms/django-js-asset) | `4.2.0` | `5.0.0` |
| [dnspython](https://github.com/rthalley/dnspython) | `2.9.0` | `2.9.1` |
| [fonttools](https://github.com/fonttools/fonttools) | `4.67.0` | `4.68.0` |
| [opentelemetry-exporter-http-transport](https://github.com/open-telemetry/opentelemetry-python) | `0.66b1` | `0.66b2` |
| [opentelemetry-exporter-otlp-common](https://github.com/open-telemetry/opentelemetry-python) | `0.66b1` | `0.66b2` |
| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.45.1` | `1.45.2` |
| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.45.1` | `1.45.2` |
| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.45.1` | `1.45.2` |
| [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.66b1` | `0.66b2` |
| [opentelemetry-instrumentation-dbapi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.66b1` | `0.66b2` |
| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.45.1` | `1.45.2` |
| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.66b1` | `0.66b2` |
| [opentelemetry-util-http](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.66b1` | `0.66b2` |
| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.13.5` | `4.14.0` |
| [pydantic](https://github.com/pydantic/pydantic) | `2.14.1` | `2.14.2` |
| [pydantic-core](https://github.com/pydantic/pydantic) | `2.50.1` | `2.50.2` |
| [python-dateutil](https://github.com/dateutil/dateutil) | `2.9.0.post0` | `3.0.0` |
| [tzdata](https://github.com/python/tzdata) | `2026.5` | `2026.6` |
| [wrapt](https://github.com/GrahamDumpleton/wrapt) | `2.5.1` | `2.5.2` |
| [xmlsec](https://github.com/xmlsec/python-xmlsec) | `1.3.17` | `1.3.18` |
| [prek](https://github.com/j178/prek) | `0.5.7` | `0.5.9` |
| [pytest](https://github.com/pytest-dev/pytest) | `9.1.1` | `9.2.0` |
| [scim2-client](https://github.com/python-scim/scim2-client) | `0.13.2` | `0.14.1` |
| [scim2-tester](https://github.com/python-scim/scim2-tester) | `0.5.2` | `0.6.4` |
| [types-psycopg2](https://github.com/python/typeshed) | `2.9.21.20261008` | `2.9.21.20261030` |
| [types-pyyaml](https://github.com/python/typeshed) | `6.0.12.20260906` | `6.0.12.20261030` |



Updates `uv` from 0.13.5 to 0.13.6
- [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.13.5...0.13.6)

Updates `jc` from 1.26.1 to 1.26.2
- [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.26.1...v1.26.2)

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

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

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

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

Updates `dnspython` from 2.9.0 to 2.9.1
- [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.9.0...v2.9.1)

Updates `fonttools` from 4.67.0 to 4.68.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.67.0...4.68.0)

Updates `opentelemetry-exporter-http-transport` from 0.66b1 to 0.66b2
- [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.66b1 to 0.66b2
- [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.1 to 1.45.2
- [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.1...v1.45.2)

Updates `opentelemetry-exporter-otlp-proto-grpc` from 1.45.1 to 1.45.2
- [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.1...v1.45.2)

Updates `opentelemetry-exporter-otlp-proto-http` from 1.45.1 to 1.45.2
- [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.1...v1.45.2)

Updates `opentelemetry-instrumentation` from 0.66b1 to 0.66b2
- [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.66b1 to 0.66b2
- [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.1 to 1.45.2
- [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.1...v1.45.2)

Updates `opentelemetry-semantic-conventions` from 0.66b1 to 0.66b2
- [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.66b1 to 0.66b2
- [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.13.5 to 4.14.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.13.5...4.14.0)

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

Updates `pydantic-core` from 2.50.1 to 2.50.2
- [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.1...core-v2.50.2)

Updates `python-dateutil` from 2.9.0.post0 to 3.0.0
- [Release notes](https://github.com/dateutil/dateutil/releases)
- [Changelog](https://github.com/dateutil/dateutil/blob/master/NEWS)
- [Commits](https://github.com/dateutil/dateutil/compare/2.9.0.post0...3.0.0)

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

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

Updates `xmlsec` from 1.3.17 to 1.3.18
- [Release notes](https://github.com/xmlsec/python-xmlsec/releases)
- [Commits](https://github.com/xmlsec/python-xmlsec/compare/1.3.17...1.3.18)

Updates `prek` from 0.5.7 to 0.5.9
- [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.7...v0.5.9)

Updates `pytest` from 9.1.1 to 9.2.0
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/9.1.1...9.2.0)

Updates `scim2-client` from 0.13.2 to 0.14.1
- [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.13.2...0.14.1)

Updates `scim2-tester` from 0.5.2 to 0.6.4
- [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.5.2...0.6.4)

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

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

---
updated-dependencies:
- dependency-name: uv
  dependency-version: 0.13.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: jc
  dependency-version: 1.26.2
  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.122
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: botocore
  dependency-version: 1.43.122
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: django-js-asset
  dependency-version: 5.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: dependencies
- dependency-name: dnspython
  dependency-version: 2.9.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: fonttools
  dependency-version: 4.68.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: opentelemetry-exporter-http-transport
  dependency-version: 0.66b2
  dependency-type: direct:production
  dependency-group: dependencies
- dependency-name: opentelemetry-exporter-otlp-common
  dependency-version: 0.66b2
  dependency-type: direct:production
  dependency-group: dependencies
- dependency-name: opentelemetry-exporter-otlp-proto-common
  dependency-version: 1.45.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: opentelemetry-exporter-otlp-proto-grpc
  dependency-version: 1.45.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: opentelemetry-exporter-otlp-proto-http
  dependency-version: 1.45.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: opentelemetry-instrumentation
  dependency-version: 0.66b2
  dependency-type: direct:production
  dependency-group: dependencies
- dependency-name: opentelemetry-instrumentation-dbapi
  dependency-version: 0.66b2
  dependency-type: direct:production
  dependency-group: dependencies
- dependency-name: opentelemetry-proto
  dependency-version: 1.45.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: opentelemetry-semantic-conventions
  dependency-version: 0.66b2
  dependency-type: direct:production
  dependency-group: dependencies
- dependency-name: opentelemetry-util-http
  dependency-version: 0.66b2
  dependency-type: direct:production
  dependency-group: dependencies
- dependency-name: platformdirs
  dependency-version: 4.14.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: pydantic
  dependency-version: 2.14.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: pydantic-core
  dependency-version: 2.50.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: python-dateutil
  dependency-version: 3.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: dependencies
- dependency-name: tzdata
  dependency-version: '2026.6'
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: wrapt
  dependency-version: 2.5.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: xmlsec
  dependency-version: 1.3.18
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: prek
  dependency-version: 0.5.9
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: pytest
  dependency-version: 9.2.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: scim2-client
  dependency-version: 0.14.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: scim2-tester
  dependency-version: 0.6.4
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: types-psycopg2
  dependency-version: 2.9.21.20261030
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: types-pyyaml
  dependency-version: 6.0.12.20261030
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dependencies
...

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

* fix bumps

* remove fsm bump

---------

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-11-08 07:34:02 +11:00
Matthias Mair b4e74791e6 fix otel middleware instrumentation (#13219)
* fix otel instrumentation

* fix name conflict
2026-11-08 07:33:17 +11:00
Oliver da655f2312 Prevent creation of duplicate emails (#13212)
* Prevent creation of duplicate emails

* Bump API version
2026-11-07 16:03:33 +11:00
Matthias Mair c54c69c1bc update logging setup to respect json setting (#13216)
* fix json_log to ensure we really only log json

* also control gunicorn

* reduce noise in action
2026-11-07 16:02:41 +11:00
Carmelo Mordini 92f93a9b83 [UI] Fix row click in parametric table when preview panel is disabled (#13206) 2026-11-07 13:31:28 +11:00
Oliver 02d6a038bf Token issuance updates (#13214)
- Ensure all token issuance endpoints are explicitly checked for MFA auth
- Additional backend unit tests
- Additional frontend unit tests
2026-11-07 13:18:30 +11:00
Oliver 0cb1852e0d Permissions fix for metadata endpoints (#13213)
Metadata API endpoints now observe the user permissions associated with the underlying models
2026-11-07 12:21:35 +11:00
sufyanaslam198 08dad19122 Temporary fix fpr Redoc (#13201)
Added temporary fix for Redoc distribution URL as Redoc 3 is an ES-module-only and drf-spectacular's template can't load (tfranzel/drf-spectacular#1543)
2026-11-07 10:08:17 +11:00
github-actions[bot] a9c21da6a7 New Crowdin translations by GitHub Action (#13192)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-11-06 11:52:55 +11:00
Oliver c5c878d6af [bug] API form fixes (#13196)
* Improve API error feedback

* Add 'message' field opt

* Update error handling logic
2026-11-05 18:41:11 +11:00
Oliver 5fe105b948 [UI] Add link rendering helper for plugin (#13193)
- Adds reusable helpers for rendering sanitized links
- Can be used by plugins
2026-11-05 17:35:25 +11:00
Oliver 9416b81799 [UI] playwright test fixes (#13197) 2026-11-05 17:07:05 +11:00
Oliver a6b7a5bf3a [bug] support custom stock status on tranfer (#13194)
- Closes https://github.com/inventree/InvenTree/issues/13191
2026-11-05 14:16:51 +11:00
d01645c5fb feat(stock): add exclude_from_stock option to StockLocation (#7064) (#13166)
* feat(stock): add exclude_from_stock option to StockLocation (#7064)

* feat(stock): add UI detail, table filters, API version bump, and prek formatting (#7064)

---------

Co-authored-by: UGREEN USER <jaharoni@debian.dedomain>
Co-authored-by: WholeTroutMedia <cortex@inceptionengine.systems>
Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
2026-11-05 12:06:26 +11:00
Matthias Mair d5d0bfabc4 Small fixes (#13190)
* remove iregular import pattern

* remove dead code

* remove unneeded import
2026-11-05 09:35:27 +11:00
github-actions[bot] df098c46b0 New Crowdin translations by GitHub Action (#13160)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-11-05 08:32:56 +11:00
Oliver ec5d6324f8 [bug] Fix 'get_user_language' (#13180)
- The 'LANGUAGE" user setting does not exist
- Introduced in https://github.com/inventree/InvenTree/pull/12944
2026-11-04 14:13:41 +11:00
Oliver 6d1a26d540 1.8.0 (#13176)
* Set release version in CHANGELOG

* Add section for next release

* Bump version to 1.8.0-dev
2026-11-04 01:44:35 +11:00
Oliver d8f09fa078 Token fixes (#13175)
* Prevent junk token from bypassing MFA

* updated docs

* Fix read-only token fields

* Fix API version ref
2026-11-03 23:05:23 +11:00
Matthias Mair 315b5bd134 Merge commit from fork
* remove mfa disableing on the token flow

* also check for mfa in token issuance
2026-11-03 20:26:16 +11:00
Matthias Mair 4121d9a8a5 Merge commit from fork
* fix basic auth without mfa

* refactor order to use new basic auth class

* remove session auth taht would bybpass mfa (mfa thing fixed in another session)

* allign with other PRs

prep for merge with https://github.com/inventree/InvenTree/pull/13169/

* fix schema generation
2026-11-03 20:23:32 +11:00
Matthias Mair 16fa2ee5cd Merge commit from fork
* fix oauth scopes

* fix typing
2026-11-03 20:20:10 +11:00
Oliver 62d363a99d [UI] Context details for plugin actions (#13172)
* [UI] Context details for plugin actions

Adds additional target instance context when registering custom UI actions

* Add CHANGELOG entry

* Improve test
2026-11-03 17:22:26 +11:00
Oliver 461186bee9 [UI] Launch forms directly from plugin (#13174)
* [UI] Launch forms directly from plugin

Provide ability for plugins to dynamically launch modal forms, without specifying the underlying react components.

This allows (for example) a primary action on a detail page to launch a new native API form

* Add CHANGELOG entry
2026-11-03 16:41:33 +11:00
Oliver ad723c15e4 Update frontend plugin lib (#13173)
* Update frontend plugin lib

* Bump package.json version
2026-11-03 15:37:53 +11:00
Oliver c3948f56ed Implement stock adjust barcode actions (#13170) 2026-11-03 12:03:33 +11:00
Oliver c9ba1169f4 [UI] Copy error button (#13168)
Adds button to copy UI error information
2026-11-03 10:36:54 +11:00
Oliver 2310b54e26 [UI] Handle duplicate cameras (#13167)
Fixes https://github.com/inventree/InvenTree/issues/13164
2026-11-03 10:33:48 +11:00
Oliver bc8c1aefa2 CustomUnit fixes (#13161)
* CustomUnit fixes

- Require staff access for data import
- Prevent overload of built-in units

* fix unit tests
2026-11-03 09:16:08 +11:00
Oliver 2629cde722 Data Import Fixes (#13162)
- Improved validation of data import session
- Handle FieldError if incorrect filter field is provided
- Prevent model traversal via import session filtering
- Added regression tests
2026-11-02 20:41:47 +11:00
Oliver b4cdbf3d07 [UI] Improved notification links (#13159)
Handle internal notification links which are stored as a fully qualified URL. These can now be routed internally rather than reloading the whole page
2026-11-02 14:47:24 +11:00
github-actions[bot] dcec25f777 New Crowdin translations by GitHub Action (#13127)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-11-02 14:00:49 +11:00
Oliver 4fb0226ecc [bug] Settings fix (#13156)
* Fix error when generating default settings

- Prevent database error on conflicting rows
- Can be caused by concurrent user requests

* ignore conflicts for TipResult
2026-11-02 12:09:09 +11:00
Oliver 1b8bdad061 Token improvements (#13155)
- More secure masking of tokens
- Fix lowercase bug
- Use consistent date checking
2026-11-02 10:33:19 +11:00
dependabot[bot]andMatthias Mair 61a2c2af5f chore(deps): bump pypdf from 6.21.2 to 6.21.4 in /src/backend (#13144)
* chore(deps): bump pypdf from 6.21.2 to 6.21.4 in /src/backend

Bumps [pypdf](https://github.com/py-pdf/pypdf) from 6.21.2 to 6.21.4.
- [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.21.2...6.21.4)

---
updated-dependencies:
- dependency-name: pypdf
  dependency-version: 6.21.4
  dependency-type: direct:production
...

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

* fix style

* also bump pyasn1

---------

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-11-02 07:08:21 +11:00
Oliver 9bb7d23f80 Logout user when deleting UserSession (#13145) 2026-11-02 07:07:54 +11:00
Oliver b5cfd9528e Fix for revoking token (#13149)
- Do not revoke if already revoked
- Prevents overwrite of previous revoking information
2026-11-02 07:07:24 +11:00
Oliver f12d7f88a7 Fix for token issue message (#13150)
Fix for translated strings
2026-11-02 07:06:52 +11:00
Oliver 04c1a73697 Check if user is active when checking token (#13148)
* Check if user is active when checking token

* Ensure token rejection logs a warning
2026-11-02 07:06:27 +11:00
Oliver 581fef33bc Add playwright test for MFA login flow (#13146) 2026-11-01 22:26:26 +11:00
Matthias Mair f36321a918 add state transtion graph export (#13136) 2026-11-01 20:43:27 +11:00
dependabot[bot] c1cd45fd83 chore(deps): bump follow-redirects in /src/frontend (#13143)
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.16.1 to 1.16.2.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.16.1...v1.16.2)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-version: 1.16.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-11-01 17:48:30 +11:00
Matthias Mair df7f9521d7 feat: add notification on token issuance (#13141)
* add notification on token issuance

* add entries

* fix link url

* increate test timing

* ignore fallback line

* add test for notification
2026-11-01 14:08:58 +11:00