dependabot[bot]
c4d67b65d7
chore(deps): bump undici from 8.4.1 to 8.5.0 in /src/frontend ( #12200 )
...
Bumps [undici](https://github.com/nodejs/undici ) from 8.4.1 to 8.5.0.
- [Release notes](https://github.com/nodejs/undici/releases )
- [Commits](https://github.com/nodejs/undici/compare/v8.4.1...v8.5.0 )
---
updated-dependencies:
- dependency-name: undici
dependency-version: 8.5.0
dependency-type: direct:production
...
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-06-20 12:02:19 +02:00
Oliver
ca16e6ec0a
Report locale updates ( #12208 )
...
* Optional 'locale' arg to format_money
- Allows override of system locale when generating reports
* Updated documentation
* Add unit tests
* Handle invalid locale
* Handle invalid locale
* Add new global setting to control currency locale in reports
* Use setting in reports
* Add CHANGELOG entry
* Further unit tests
* Add unit tests for new setting
* Update docs
* More docs
* Refactoring:
- Change REPORT_CURRENCY_LOCALE to REPORT_LOCALE
* Extend unit testing
* Refactor format_number
* Add unit tests for explicit format strings
* Update examples for format_date
* Updated unit tests
* Cleanup unit tests
* Fix more tests
* Adjust wording
* Remove global setting - simplify code
* Simplify unit tests
* Revert 'min_digits' to 'leading'
* Fix docs
* Refactor the render_currency function
- Move all functionality into report.py
* Cleanup duplicate code
* Updated docs
* Allow user to specify date_format
* Add support for 'leading' digits in render_currency
* Bug fix
* Fix unit test
* Add tests for "include_symbol"
2026-06-20 11:00:12 +10:00
dependabot[bot]
8a092b4d1d
chore(deps): bump the dependencies group across 1 directory with 12 updates ( #12210 )
...
* chore(deps): bump the dependencies group across 1 directory with 12 updates
Bumps the dependencies group with 12 updates in the /src/backend directory:
| Package | From | To |
| --- | --- | --- |
| [boto3](https://github.com/boto/boto3 ) | `1.43.23` | `1.43.28` |
| [botocore](https://github.com/boto/botocore ) | `1.43.23` | `1.43.28` |
| [django-js-asset](https://github.com/feincms/django-js-asset ) | `3.1.2` | `4.0.1` |
| [django-money](https://github.com/django-money/django-money ) | `3.6.0` | `3.6.1` |
| [grpcio](https://github.com/grpc/grpc ) | `1.81.0` | `1.81.1` |
| [protobuf](https://github.com/protocolbuffers/protobuf ) | `6.33.6` | `7.35.1` |
| [sentry-sdk](https://github.com/getsentry/sentry-python ) | `2.61.1` | `2.62.0` |
| [structlog](https://github.com/hynek/structlog ) | `25.5.0` | `26.1.0` |
| [tqdm](https://github.com/tqdm/tqdm ) | `4.68.1` | `4.68.2` |
| [wcwidth](https://github.com/jquast/wcwidth ) | `0.7.0` | `0.8.1` |
| [wrapt](https://github.com/GrahamDumpleton/wrapt ) | `1.17.3` | `2.2.1` |
| [zopfli](https://github.com/fonttools/py-zopfli ) | `0.4.2` | `0.4.3` |
Updates `boto3` from 1.43.23 to 1.43.28
- [Release notes](https://github.com/boto/boto3/releases )
- [Commits](https://github.com/boto/boto3/compare/1.43.23...1.43.28 )
Updates `botocore` from 1.43.23 to 1.43.28
- [Commits](https://github.com/boto/botocore/compare/1.43.23...1.43.28 )
Updates `django-js-asset` from 3.1.2 to 4.0.1
- [Changelog](https://github.com/feincms/django-js-asset/blob/main/CHANGELOG.rst )
- [Commits](https://github.com/feincms/django-js-asset/compare/3.1.2...4.0.1 )
Updates `django-money` from 3.6.0 to 3.6.1
- [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/compare/3.6.0...3.6.1 )
Updates `grpcio` from 1.81.0 to 1.81.1
- [Release notes](https://github.com/grpc/grpc/releases )
- [Commits](https://github.com/grpc/grpc/compare/v1.81.0...v1.81.1 )
Updates `protobuf` from 6.33.6 to 7.35.1
- [Release notes](https://github.com/protocolbuffers/protobuf/releases )
- [Commits](https://github.com/protocolbuffers/protobuf/commits )
Updates `sentry-sdk` from 2.61.1 to 2.62.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.61.1...2.62.0 )
Updates `structlog` from 25.5.0 to 26.1.0
- [Release notes](https://github.com/hynek/structlog/releases )
- [Changelog](https://github.com/hynek/structlog/blob/main/CHANGELOG.md )
- [Commits](https://github.com/hynek/structlog/compare/25.5.0...26.1.0 )
Updates `tqdm` from 4.68.1 to 4.68.2
- [Release notes](https://github.com/tqdm/tqdm/releases )
- [Commits](https://github.com/tqdm/tqdm/compare/v4.68.1...v4.68.2 )
Updates `wcwidth` from 0.7.0 to 0.8.1
- [Release notes](https://github.com/jquast/wcwidth/releases )
- [Commits](https://github.com/jquast/wcwidth/compare/0.7.0...0.8.1 )
Updates `wrapt` from 1.17.3 to 2.2.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/1.17.3...2.2.1 )
Updates `zopfli` from 0.4.2 to 0.4.3
- [Release notes](https://github.com/fonttools/py-zopfli/releases )
- [Commits](https://github.com/fonttools/py-zopfli/compare/v0.4.2...v0.4.3 )
---
updated-dependencies:
- dependency-name: boto3
dependency-version: 1.43.28
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: botocore
dependency-version: 1.43.28
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: django-js-asset
dependency-version: 4.0.1
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: dependencies
- dependency-name: django-money
dependency-version: 3.6.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: grpcio
dependency-version: 1.81.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: protobuf
dependency-version: 7.35.1
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: dependencies
- dependency-name: sentry-sdk
dependency-version: 2.62.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: structlog
dependency-version: 26.1.0
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: dependencies
- dependency-name: tqdm
dependency-version: 4.68.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: wcwidth
dependency-version: 0.8.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: wrapt
dependency-version: 2.2.1
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: dependencies
- dependency-name: zopfli
dependency-version: 0.4.3
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
* fix style
* general bump
* bump dev tools
---------
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-06-20 09:50:45 +10:00
Oliver
6657000d89
[UI] Fix NewsWidget ( #12205 )
2026-06-19 17:18:59 +10:00
Oliver
01fb74af25
[UI] Tree improvements ( #12204 )
...
* Hide expand icon for items without children
* Add searching to CategoryTree API
* Add "level" filter
* Automatically include parent tree when searching
* Include tree_id field
* Add search input to NavigationTree
* Add more API filters
* Load child nodes iteratively
* Fix dynamic loading of nodes
* Highlight selected item
* Include pathstring
* Fix insertion order
* Auto-expand to the selected ID
* Add "no results" message
* Refactor into generic components
* Expand to multi level
* Use async node loading functionality
* Add hovercard
* Implement same functionality for StockLocationTree API endpoint
* Adjust spacing
* Add connecting lines
* Add playwright test
* Bump API version
* Add CHANGELOG entry
* Update docs
* Update screenshot
2026-06-19 15:33:12 +10:00
dependabot[bot]
6285a11a65
chore(deps): bump pypdf from 6.13.0 to 6.13.3 in /src/backend ( #12201 )
...
* chore(deps): bump pypdf from 6.13.0 to 6.13.3 in /src/backend
Bumps [pypdf](https://github.com/py-pdf/pypdf ) from 6.13.0 to 6.13.3.
- [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.13.0...6.13.3 )
---
updated-dependencies:
- dependency-name: pypdf
dependency-version: 6.13.3
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-06-19 13:47:50 +10:00
Oliver
f70d3e68d8
[UI] Fix status renderer functions ( #12202 )
...
Broken in recent refactor
2026-06-19 10:45:11 +10:00
dependabot[bot]
5ddccf8913
chore(deps): bump dompurify from 3.4.9 to 3.4.11 in /src/frontend ( #12199 )
...
Bumps [dompurify](https://github.com/cure53/DOMPurify ) from 3.4.9 to 3.4.11.
- [Release notes](https://github.com/cure53/DOMPurify/releases )
- [Commits](https://github.com/cure53/DOMPurify/compare/3.4.9...3.4.11 )
---
updated-dependencies:
- dependency-name: dompurify
dependency-version: 3.4.11
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-19 09:29:50 +10:00
Oliver
29b8ed91d2
[API] Adjust permissions for machine restart ( #12197 )
...
* [API] Adjust permissions for machine restart
Can only be actioned by a staff user
* Fix import
* Wrong class
* Extend unit test
* Bump API version
* Update CHANGELOG
2026-06-18 22:18:14 +10:00
Oliver
5b97acb79f
[bug] Fix double save ( #12194 )
...
* Prevent double-save when creating an order
* Prevent double-save for BuildOrder
* More fixes
* Additional unit tests
* Revert code, remove create method against StockTrackingList
* Fix mixins
2026-06-18 20:18:46 +10:00
Oliver
2ca86808bb
Fix order event name ( #12196 )
2026-06-18 20:00:18 +10:00
dependabot[bot]
c2f213a6c0
chore(deps): bump form-data from 4.0.5 to 4.0.6 in /src/frontend ( #12175 )
...
Bumps [form-data](https://github.com/form-data/form-data ) from 4.0.5 to 4.0.6.
- [Release notes](https://github.com/form-data/form-data/releases )
- [Changelog](https://github.com/form-data/form-data/blob/master/CHANGELOG.md )
- [Commits](https://github.com/form-data/form-data/compare/v4.0.5...v4.0.6 )
---
updated-dependencies:
- dependency-name: form-data
dependency-version: 4.0.6
dependency-type: indirect
...
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-06-18 18:36:16 +10:00
Oliver
fc15f30f8f
Report Generation Updates ( #12187 )
...
* Fix for TemplateEditor
- Allow dragging of split section
* Cleaner report template code
* Pass correct error message through
* Prevent multiple retries if running in worker thread
* Handle report merge error
* Add playwright tests for broken report printing
* Reduce scope for exception messages
* Reduce comment deltas
* Adjust unit test
* Raise ValidaitonError
* Handle message parsing
* Additional comment
* Fix unit tests
2026-06-18 13:41:44 +10:00
Oliver
4b29032c6e
System Health Checks ( #12193 )
...
* Add worker health check invoke task
* Increase frequency of heartbeat task
* Adjust default threshold for worker health check
* Add server_health invoke func
2026-06-18 12:46:46 +10:00
github-actions[bot]
c126e2b0af
New Crowdin translations by GitHub Action ( #12167 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-06-18 11:47:28 +10:00
dependabot[bot]
dbda5a783a
chore(deps): bump dompurify from 3.4.8 to 3.4.9 in /src/frontend ( #12174 )
...
Bumps [dompurify](https://github.com/cure53/DOMPurify ) from 3.4.8 to 3.4.9.
- [Release notes](https://github.com/cure53/DOMPurify/releases )
- [Commits](https://github.com/cure53/DOMPurify/compare/3.4.8...3.4.9 )
---
updated-dependencies:
- dependency-name: dompurify
dependency-version: 3.4.9
dependency-type: direct:production
...
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-06-18 09:57:52 +10:00
Matthias Mair
9e125be07e
fix(ci): improve release pipe stability ( #12191 )
...
* update attestations step
* build stable channel release seperatly
2026-06-18 09:40:51 +10:00
Matthias Mair
f602714dc9
fix(backend): import session metadata ( #12184 )
...
* add storage for historic import metadata for reporting and display purposes
fixes breakage fromhttps://github.com/inventree/InvenTree/pull/12169
* add api bump
* re-enable test
* fix migration
* ensure session is not overwritten
* fix statusrender without custom key
2026-06-18 08:10:32 +10:00
Matthias Mair
c262efb25f
fix(ci): disable running on dependabot and backport branches ( #12189 )
2026-06-18 08:07:37 +10:00
John Luetke
83a6729755
Change order custom status via api ( #11982 )
...
* Set custom_status_key via API
Refactor `custom_status_key` to be writable via the API and validate that the proposed value is valid for the current order status
* Refactor status_text serializer to consider custom status label
* Update api_version.py
* Additional unit testagainst N + 1
---------
Co-authored-by: Matthias Mair <code@mjmair.com >
Co-authored-by: Oliver Walters <oliver.henry.walters@gmail.com >
2026-06-17 17:59:37 +10:00
Oliver
546958a1cb
[UI] Additional table filters ( #12186 )
2026-06-17 15:02:07 +10:00
Oliver
38008d8204
Mysql filter fix ( #12185 )
...
* Improve "available" filter for BuildLine API endpoint
* Fix typo
* Additional unit tests
* Additional playwright tests
2026-06-17 14:50:17 +10:00
Oliver
a670eabd10
[import] specify fk lookup field ( #12180 )
...
* Raise error on multiple matches
* add new field to handle lookup_field selection
* Add unit tests
* Update frontend
* Bump API version
* Ensure string-iness of lookup field
2026-06-17 11:03:26 +10:00
Matthias Mair
91a4b2a1a5
fix(frontend): adress broken UI tests ( #12183 )
...
* try different matching mechanism
* fix for changes in #12168
* disable broken test from https://github.com/inventree/InvenTree/pull/12169
* revert observability perm change
2026-06-17 09:39:00 +10:00
dependabot[bot]
7da65c8e50
chore(deps): bump cryptography from 48.0.0 to 48.0.1 in /src/backend ( #12176 )
...
* chore(deps): bump cryptography from 48.0.0 to 48.0.1 in /src/backend
Bumps [cryptography](https://github.com/pyca/cryptography ) from 48.0.0 to 48.0.1.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst )
- [Commits](https://github.com/pyca/cryptography/compare/48.0.0...48.0.1 )
---
updated-dependencies:
- dependency-name: cryptography
dependency-version: 48.0.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-06-16 20:47:42 +02:00
Oliver
a8e5c83a94
Stocktake exporter updates ( #12179 )
...
* Optionally exclude zero-stock entries
* Add more columns to exported dataset
* Adjust unit test
* More test fixes
2026-06-16 14:14:51 +10:00
Matthias Mair
05b7e12abf
bump docker base ( #12178 )
2026-06-16 10:21:31 +10:00
dependabot[bot]
5c95dfe484
chore(deps): bump the dependencies group with 4 updates ( #12172 )
...
Bumps the dependencies group with 4 updates: [actions/checkout](https://github.com/actions/checkout ), [codecov/codecov-action](https://github.com/codecov/codecov-action ), [oasdiff/oasdiff-action](https://github.com/oasdiff/oasdiff-action ) and [github/codeql-action](https://github.com/github/codeql-action ).
Updates `actions/checkout` from 6.0.2 to 6.0.3
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/de0fac2e4500dabe0009e67214ff5f5447ce83dd...df4cb1c069e1874edd31b4311f1884172cec0e10 )
Updates `codecov/codecov-action` from 6.0.1 to 7.0.0
- [Release notes](https://github.com/codecov/codecov-action/releases )
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md )
- [Commits](https://github.com/codecov/codecov-action/compare/e79a6962e0d4c0c17b229090214935d2e33f8354...fb8b3582c8e4def4969c97caa2f19720cb33a72f )
Updates `oasdiff/oasdiff-action` from 0.0.51 to 0.0.57
- [Release notes](https://github.com/oasdiff/oasdiff-action/releases )
- [Commits](https://github.com/oasdiff/oasdiff-action/compare/f30668f65075c93440bd59ce2de73ce9e78751f4...3530478ec30f84adedbfeb28f0d9527a290f50a9 )
Updates `github/codeql-action` from 4.36.0 to 4.36.2
- [Release notes](https://github.com/github/codeql-action/releases )
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md )
- [Commits](https://github.com/github/codeql-action/compare/7211b7c8077ea37d8641b6271f6a365a22a5fbfa...8aad20d150bbac5944a9f9d289da16a4b0d87c1e )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: 6.0.3
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: codecov/codecov-action
dependency-version: 7.0.0
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: dependencies
- dependency-name: oasdiff/oasdiff-action
dependency-version: 0.0.57
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: github/codeql-action
dependency-version: 4.36.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-16 08:35:58 +10:00
Matthias Mair
92419b3bdf
bump frontend ( #12137 )
...
* bump react-router
* upgrade to remove uuid
* upgrade
* bump a bit more
* lower mantine
2026-06-16 08:35:17 +10:00
Oliver
6c18e64020
Permissions fix ( #12168 )
...
* Tighten API permissions
- Require authenticated user for NotFoundView
- Hide 'active_plugins' behind is_authenticated
* Patch permissions hole in GlobalSettingsPermissions
* Additional API unit tests
* Require auth for observability endpoint
* Add explicit permission for PluginAdminDetail
* Bump API version
* Update unit tests
* Revert changes
2026-06-15 22:06:49 +10:00
Oliver
3c17367e3c
Data import permissions ( #12169 )
...
* Update data importer child permissions
- Row data
- Column data
* Add unit tests
* Cleanup session data after import is completed
* Further scope narrowing
2026-06-15 21:03:44 +10:00
Oliver
aece90512c
[UI] Edit cat param ( #12166 )
...
* Refactor form hook components
* Reset values when opening form
* Rebuild form field
2026-06-15 20:07:40 +10:00
Oliver
d951638e75
Part category parameters ( #12165 )
...
* Add parameter support for PartCategory
* Update frontend
* Bump API version
* Update CHANGELOG
2026-06-15 18:49:01 +10:00
Oliver
0b5db2f16a
Suppress dulwich warnings ( #12163 )
...
- Prevent erroneous dulwich warning messages
2026-06-14 18:20:57 +10:00
Khairil
9706bc672a
fix: support non-integer PKs in NotificationMessage (fixes UUID overflow) ( #12162 )
...
NotificationMessage.target_object_id and source_object_id were typed as
PositiveIntegerField, which overflows when the referenced model uses a
UUID primary key (e.g. MachineConfig). Django's GenericForeignKey stores
the PK as a string in the database, so the field type should be
CharField to accommodate any PK type (int, UUID, slug, etc.).
Changes:
- common/models.py: change target_object_id and source_object_id from
PositiveIntegerField to CharField(max_length=255) on NotificationMessage
- common/migrations/0044: AlterField migration for both columns
- order/tests.py: update assertion from integer 1 to str(1) since
CharField will now store the PK as a string
Fixes #12131
Signed-off-by: kaizeenn <khairil0153@gmail.com >
2026-06-14 18:20:16 +10:00
github-actions[bot]
43396284fa
New Crowdin translations by GitHub Action ( #12156 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-06-14 17:29:15 +10:00
Oliver
6638dba0b9
SelectionList Updates ( #12139 )
...
* Adjust panel layout
* edit list on click
* Optionally fetch selection list items
* Display in DetailDrawer
* Fix component locations
* Refactor entry table
* Add new entry
* Disable if locked
* Only validate choices if provided via API
* Mark "choices" as read-only
* Prevent delete of locked items
* Add more API unit tests
* Bump API version
* Adjust unit tests
* Default include choices
* Updated playwright test
* Improve test robustness
2026-06-14 12:12:15 +10:00
Oliver
2b4f303770
Improve security posture of PDF reporting ( #12160 )
...
* Add custom URL fetcher for PDF rendering
* Fix for report helper functions
* Use new fetcher
* Additional unit tests
* Add new setting to control remote URL fetching
* validate URLs against SSRF
* Add global setting to disable URL fetching entirely
* Update docs
* Fix capitalization
* Fix logging backend
* Update CHANGELOG
2026-06-14 10:55:51 +10:00
Oliver
b294bba66b
[UI] Calendar Updates ( #12161 )
...
* Adjust delay values
* Add extra info to tooltip
* Additional padding
* Adjust padding for scrollbar
* Adjust month title as calendar scrolls
2026-06-14 10:52:22 +10:00
Matthias Mair
457fe16f9c
feat(frontend): add more general hotkeys ( #12138 )
...
* add admin button hotkey
* add duplicate hotkey
* generalised hotkeys for actions
* move to fnc
* fix type checking
* more hotkeys!
* add the first primary action to the hotkeys
* small fixes
* use capital hotkeys
* add keys for navigation
* add panel navigation hotkeys
* remove admin hotkey - navigating to attachments is imo more helpful
* address conflict on macos
2026-06-13 19:57:57 +10:00
Oliver
e4178b1fb8
[UI] Calendar month colors ( #12157 )
...
Discriminate months which slightly different colors
2026-06-13 19:56:40 +10:00
Matthias Mair
10479e82b8
switch from n to nvm as that is an offical channel ( #12140 )
2026-06-13 15:16:16 +10:00
Sanidhya
3bce9c0a15
Remember last used label template and printer plugin per model type ( #12146 )
...
* Remember last used label template and printer plugin per model type
* Added playwright test for printing preference persistence and format code
* Used waitFor for react-select assertions for test case fixing and persist plugin key correctly
* Updated the problem resolution code and the tests
* Fixed printing test assertion to avoid word boundary failure with concatenated text
2026-06-13 13:30:42 +10:00
dependabot[bot]
d8ae8723ff
chore(deps): bump the dependencies group across 2 directories with 16 updates ( #12159 )
...
* chore(deps): bump the dependencies group across 2 directories with 16 updates
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 15 updates in the /src/backend directory:
| Package | From | To |
| --- | --- | --- |
| [idna](https://github.com/kjd/idna ) | `3.17` | `3.18` |
| [pip](https://github.com/pypa/pip ) | `26.1.1` | `26.1.2` |
| [prek](https://github.com/j178/prek ) | `0.4.3` | `0.4.4` |
| [boto3](https://github.com/boto/boto3 ) | `1.43.17` | `1.43.23` |
| [botocore](https://github.com/boto/botocore ) | `1.43.17` | `1.43.23` |
| [django-redis](https://github.com/jazzband/django-redis ) | `6.0.0` | `7.0.0` |
| [django-structlog](https://github.com/jrobichaud/django-structlog ) | `10.0.0` | `10.1.0` |
| [dulwich](https://github.com/dulwich/dulwich ) | `1.2.5` | `1.2.6` |
| [grpcio](https://github.com/grpc/grpc ) | `1.80.0` | `1.81.0` |
| [protobuf](https://github.com/protocolbuffers/protobuf ) | `6.33.6` | `7.35.0` |
| [pypdf](https://github.com/py-pdf/pypdf ) | `6.12.2` | `6.13.0` |
| [sentry-sdk](https://github.com/getsentry/sentry-python ) | `2.61.0` | `2.61.1` |
| [tqdm](https://github.com/tqdm/tqdm ) | `4.67.3` | `4.68.1` |
| [weasyprint](https://github.com/Kozea/WeasyPrint ) | `68.1` | `69.0` |
| [wrapt](https://github.com/GrahamDumpleton/wrapt ) | `1.17.3` | `2.2.1` |
Updates `mkdocs-git-revision-date-localized-plugin` from 1.5.2 to 1.5.3
- [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.2...v1.5.3 )
Updates `idna` from 3.17 to 3.18
- [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.17...v3.18 )
Updates `pip` from 26.1.1 to 26.1.2
- [Changelog](https://github.com/pypa/pip/blob/main/NEWS.rst )
- [Commits](https://github.com/pypa/pip/compare/26.1.1...26.1.2 )
Updates `prek` from 0.4.3 to 0.4.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.4.3...v0.4.4 )
Updates `boto3` from 1.43.17 to 1.43.23
- [Release notes](https://github.com/boto/boto3/releases )
- [Commits](https://github.com/boto/boto3/compare/1.43.17...1.43.23 )
Updates `botocore` from 1.43.17 to 1.43.23
- [Commits](https://github.com/boto/botocore/compare/1.43.17...1.43.23 )
Updates `django-redis` from 6.0.0 to 7.0.0
- [Release notes](https://github.com/jazzband/django-redis/releases )
- [Changelog](https://github.com/jazzband/django-redis/blob/master/CHANGELOG.rst )
- [Commits](https://github.com/jazzband/django-redis/compare/6.0.0...7.0.0 )
Updates `django-structlog` from 10.0.0 to 10.1.0
- [Changelog](https://github.com/jrobichaud/django-structlog/blob/main/docs/changelog.rst )
- [Commits](https://github.com/jrobichaud/django-structlog/compare/10.0.0...10.1.0 )
Updates `dulwich` from 1.2.5 to 1.2.6
- [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.5...dulwich-1.2.6 )
Updates `grpcio` from 1.80.0 to 1.81.0
- [Release notes](https://github.com/grpc/grpc/releases )
- [Commits](https://github.com/grpc/grpc/compare/v1.80.0...v1.81.0 )
Updates `protobuf` from 6.33.6 to 7.35.0
- [Release notes](https://github.com/protocolbuffers/protobuf/releases )
- [Commits](https://github.com/protocolbuffers/protobuf/commits )
Updates `pypdf` from 6.12.2 to 6.13.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.12.2...6.13.0 )
Updates `sentry-sdk` from 2.61.0 to 2.61.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.61.0...2.61.1 )
Updates `tqdm` from 4.67.3 to 4.68.1
- [Release notes](https://github.com/tqdm/tqdm/releases )
- [Commits](https://github.com/tqdm/tqdm/compare/v4.67.3...v4.68.1 )
Updates `weasyprint` from 68.1 to 69.0
- [Release notes](https://github.com/Kozea/WeasyPrint/releases )
- [Changelog](https://github.com/Kozea/WeasyPrint/blob/main/docs/changelog.rst )
- [Commits](https://github.com/Kozea/WeasyPrint/compare/v68.1...v69.0 )
Updates `wrapt` from 1.17.3 to 2.2.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/1.17.3...2.2.1 )
---
updated-dependencies:
- dependency-name: mkdocs-git-revision-date-localized-plugin
dependency-version: 1.5.3
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: idna
dependency-version: '3.18'
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: pip
dependency-version: 26.1.2
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: prek
dependency-version: 0.4.4
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: boto3
dependency-version: 1.43.23
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: botocore
dependency-version: 1.43.23
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: django-redis
dependency-version: 7.0.0
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: dependencies
- dependency-name: django-structlog
dependency-version: 10.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: dulwich
dependency-version: 1.2.6
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: grpcio
dependency-version: 1.81.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: protobuf
dependency-version: 7.35.0
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: dependencies
- dependency-name: pypdf
dependency-version: 6.13.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: sentry-sdk
dependency-version: 2.61.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: tqdm
dependency-version: 4.68.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: weasyprint
dependency-version: '69.0'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: dependencies
- dependency-name: wrapt
dependency-version: 2.2.1
dependency-type: direct:production
update-type: version-update:semver-major
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-06-13 13:28:50 +10:00
Matthias Mair
1947db06e7
feat(ci): add flakeiness ( #12148 )
...
* add-flakeiness
* Update flakiness project in Playwright config
2026-06-12 02:02:42 +02:00
Oliver
3309032b26
Machine fixes ( #12154 )
...
* Handle missing machine location
- e.g. if location PK is invalid or has been deleted
* Add spotlight action for machine management panel
* Add unit test for code change
2026-06-11 16:32:14 +10:00
Oliver
39cc399a67
Improvements for template tables ( #12155 )
...
* Enable in-column filtering for model type
* Enable sorting by label size
* Enable backend ordering
* Improve filtering for report template table
* Update API version
2026-06-11 15:54:40 +10:00
github-actions[bot]
741f0e56c8
New Crowdin translations by GitHub Action ( #12069 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-06-11 13:38:01 +10:00
Christopher Johnson
7cca9cb326
Make plugin registry hash independent of plugin discovery order ( #12151 )
...
* Make plugin registry hash independent of plugin discovery order
calculate_plugin_hash() iterates self.plugins.items() in insertion
order, which is the plugin discovery order of the local process. Two
processes can hold the same registry state (same plugins, versions,
active flags) in a different order and compute different hashes,
ping-ponging the _PLUGIN_REGISTRY_HASH setting and triggering endless
registry reloads in check_reload().
Sort by slug before hashing so the hash represents the registry state
rather than the iteration order of any particular process. Add a
regression test that reverses the plugin dict and asserts the hash is
unchanged.
* Address review comments: explicit sort key, guard against vacuous test
---------
Co-authored-by: Nasawa <christopher@anigeek.com >
2026-06-11 10:26:26 +10:00
Oliver
73bfa53a35
[report] Printing fixes ( #12142 )
...
* Check model permissions for printing
* Add unit tests
* Prevent printing of disabled reports
* Updated unit test
* Adjust unit test for printing
* Update API and CHANGELOG
2026-06-10 16:59:39 +10:00