Oliver
901dc024c0
[bug] Fix for plugin fetching ( #12590 )
...
- Prevent operation on stale plugin
2026-08-09 08:19:01 +10:00
Oliver
61fe3c9ce5
[bug] Fix PartStocktakeSerializer ( #12587 )
...
Closes https://github.com/inventree/InvenTree/issues/12555
2026-08-09 07:26:37 +10:00
Oliver and Matthias Mair
94024ad23e
[bug] Validate location when completing build outputs ( #12570 )
...
* [bug] Validate location when completing build outputs
- Cannot be structural
* Fix unit test
---------
Co-authored-by: Matthias Mair <code@mjmair.com >
2026-08-08 23:27:53 +10:00
Oliver
c0ed42549f
[API] Restrict barcode scan history ( #12569 )
...
- A non-staff user can only view their own results
2026-08-08 21:56:47 +10:00
Oliver
28fea388f6
[bug] Handle deleted Part ( #12578 )
2026-08-08 21:56:25 +10:00
Oliver
6cdc21c308
[sentry] Do not report MethodNotAllowed ( #12584 )
2026-08-08 20:51:21 +10:00
Oliver
21819ebc78
Fix flaky test on sqlite ( #12582 )
2026-08-08 20:27:50 +10:00
Oliver
5c798f4237
[bug] Fix part duplicate checks ( #12574 )
...
* [bug] Fix part duplicate checks
* Additional unit tests
2026-08-08 19:11:46 +10:00
Oliver
cf2f64c83a
[bug] Fix getLogoImage helper ( #12577 )
...
* [bug] Fix getLogoImage helper
- Do not return a file:// URI
* cleanup code
2026-08-08 19:11:32 +10:00
Oliver
f1e6ec249d
[bug] Fix post-delete actions ( #12575 )
...
- Check that underlying part is still available
2026-08-08 17:58:21 +10:00
Oliver
9b5c69da26
[bug] excel encoding for data import ( #12576 )
...
- Handle different encoding types for excel import
- Fail cleanly if cannot read file
2026-08-08 17:58:01 +10:00
Oliver
fe82ff1f9e
[refactor] Improve efficiency of check_missing_pricing ( #12572 )
2026-08-08 17:17:20 +10:00
Oliver
66b95cde5b
[API] Handle AppRegistryNotReady ( #12571 )
...
Explicit handling for AppRegistryNotReady error
2026-08-08 16:11:30 +10:00
Oliver
358c464349
Barcode API bugs ( #12565 )
...
* Add explicit permission checks for barcode scanning
- Previous role_required attribute did not do anything
* Additional unit tests
2026-08-08 14:17:50 +10:00
Oliver
ad818889df
Deduplicate part pricing updates per session ( #12564 )
2026-08-08 12:27:32 +10:00
Oliver
badf7ab300
Handle missing part ( #12566 )
...
Part instance may have already been deleted in post_delete hook for related models.
2026-08-08 12:27:19 +10:00
Oliver
02ee7ca2a1
Fix permissions for group and RuleSet endpoints ( #12563 )
...
- Require StaffRole in addition to is_staff
2026-08-08 10:43:15 +10:00
4a7970b61f
chore(deps): bump cryptography from 49.0.0 to 50.0.0 in /src/backend ( #12546 )
...
* chore(deps): bump cryptography from 49.0.0 to 50.0.0 in /src/backend
Bumps [cryptography](https://github.com/pyca/cryptography ) from 49.0.0 to 50.0.0.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst )
- [Commits](https://github.com/pyca/cryptography/compare/49.0.0...50.0.0 )
---
updated-dependencies:
- dependency-name: cryptography
dependency-version: 50.0.0
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
* fix style
---------
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Matthias Mair <code@mjmair.com >
2026-08-05 21:27:27 +12:00
Oliver
8998d835a4
[API] Optional field permissions ( #12529 )
...
* Add permissions check for OptionalField
* Adjust existing unit tests
* Add caching
* Additional tests
* Additional testing
* Add exclusions for owner and group models
* Bump CHANGELOG
* Detect demo branch based on software version
* Updated docstrings
2026-08-04 07:03:12 +12:00
5e9a840e41
chore(deps): bump the dependencies group across 1 directory with 9 updates ( #12526 )
...
* chore(deps): bump the dependencies group across 1 directory with 9 updates
Bumps the dependencies group with 9 updates in the /src/backend directory:
| Package | From | To |
| --- | --- | --- |
| [boto3](https://github.com/boto/boto3 ) | `1.43.53` | `1.43.55` |
| [botocore](https://github.com/boto/botocore ) | `1.43.53` | `1.43.55` |
| [django-oauth-toolkit](https://github.com/django-oauth/django-oauth-toolkit ) | `3.3.0` | `3.4.0` |
| [grpcio](https://github.com/grpc/grpc ) | `1.82.1` | `1.83.0` |
| [s3transfer](https://github.com/boto/s3transfer ) | `0.19.1` | `0.19.2` |
| [tqdm](https://github.com/tqdm/tqdm ) | `4.69.0` | `4.69.1` |
| [prek](https://github.com/j178/prek ) | `0.4.10` | `0.4.11` |
| [types-psycopg2](https://github.com/python/typeshed ) | `2.9.21.20260712` | `2.9.21.20260724` |
| [types-pyyaml](https://github.com/python/typeshed ) | `6.0.12.20260518` | `6.0.12.20260724` |
Updates `boto3` from 1.43.53 to 1.43.55
- [Release notes](https://github.com/boto/boto3/releases )
- [Commits](https://github.com/boto/boto3/compare/1.43.53...1.43.55 )
Updates `botocore` from 1.43.53 to 1.43.55
- [Commits](https://github.com/boto/botocore/compare/1.43.53...1.43.55 )
Updates `django-oauth-toolkit` from 3.3.0 to 3.4.0
- [Release notes](https://github.com/django-oauth/django-oauth-toolkit/releases )
- [Changelog](https://github.com/django-oauth/django-oauth-toolkit/blob/master/CHANGELOG.md )
- [Commits](https://github.com/django-oauth/django-oauth-toolkit/compare/3.3.0...3.4.0 )
Updates `grpcio` from 1.82.1 to 1.83.0
- [Release notes](https://github.com/grpc/grpc/releases )
- [Commits](https://github.com/grpc/grpc/compare/v1.82.1...v1.83.0 )
Updates `s3transfer` from 0.19.1 to 0.19.2
- [Changelog](https://github.com/boto/s3transfer/blob/develop/CHANGELOG.rst )
- [Commits](https://github.com/boto/s3transfer/compare/0.19.1...0.19.2 )
Updates `tqdm` from 4.69.0 to 4.69.1
- [Release notes](https://github.com/tqdm/tqdm/releases )
- [Commits](https://github.com/tqdm/tqdm/compare/v4.69.0...v4.69.1 )
Updates `prek` from 0.4.10 to 0.4.11
- [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.10...v0.4.11 )
Updates `types-psycopg2` from 2.9.21.20260712 to 2.9.21.20260724
- [Commits](https://github.com/python/typeshed/commits )
Updates `types-pyyaml` from 6.0.12.20260518 to 6.0.12.20260724
- [Commits](https://github.com/python/typeshed/commits )
---
updated-dependencies:
- dependency-name: boto3
dependency-version: 1.43.55
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: botocore
dependency-version: 1.43.55
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: django-oauth-toolkit
dependency-version: 3.4.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: grpcio
dependency-version: 1.83.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: s3transfer
dependency-version: 0.19.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: tqdm
dependency-version: 4.69.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: prek
dependency-version: 0.4.11
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: types-psycopg2
dependency-version: 2.9.21.20260724
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: types-pyyaml
dependency-version: 6.0.12.20260724
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-08-03 05:48:00 +10:00
Oliver
d024a3fe2f
Fix for N+1 issues in stock item serializing ( #12534 )
2026-08-01 20:35:11 +10:00
github-actions[bot] and github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
5216203e0d
New Crowdin translations by GitHub Action ( #12512 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-08-01 08:59:43 +10:00
Oliver
b50ad42a3e
Row locking for data import / update ( #12515 )
...
- Concurrency protection for data imports
2026-07-31 12:15:39 +10:00
Oliver
76a0005b61
Handle report error on missing svg data ( #12514 )
...
* Handle report error on missing svg data
* Add regression tests
2026-07-31 11:46:38 +10:00
Oliver
16639f35ac
Fix for data import "update" ( #12513 )
...
- Use partial update on serializer
- Mark other fields as not required (pk only)
2026-07-31 11:43:34 +10:00
Bhumin Paladiya
5d758bbdf4
Fix admin search for PurchaseOrderLineItem ( #12508 )
...
Expand search_fields on PurchaseOrderLineItemAdmin to allow
searching by part name, part description, supplier SKU,
order reference, and supplier name.
Previously, only the optional 'reference' field was searchable,
making it impossible to find line items by part or order details.
- part__part__name: search by underlying Part name
- part__part__description: search by Part description
- part__SKU: search by Supplier SKU
- order__reference: search by Purchase Order reference
- order__supplier__name: search by Supplier name
Also adds a unit test to verify the search_fields are correctly
configured.
2026-07-31 10:24:05 +10:00
github-actions[bot] and github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
20ea122a8b
New Crowdin translations by GitHub Action ( #12437 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-07-29 19:47:41 +10:00
Oliver
4b9bea17de
remove errant test report ( #12496 )
2026-07-29 07:42:53 +10:00
Oliver
6dda125e5c
Concurrency fix for scheduled tasks ( #12493 )
...
- Prevent multiple instances of scheduled tasks from plugins
2026-07-29 00:22:19 +10:00
Oliver
73c0bb9603
Improve validation for import session ( #12492 )
...
- Ensure that validated data is a dict shape
2026-07-28 23:50:44 +10:00
Oliver
e918d84f60
Token save fix ( #12491 )
...
- Only update 'last_seen' field
2026-07-28 23:50:34 +10:00
Oliver
e6d1ceb20b
Filtering for report snippets ( #12487 )
...
* Filtering for report snippets
* Bump API version
2026-07-28 22:52:54 +10:00
Oliver
1cee1bdefb
[API] Refactor stock adjustment endpoints ( #12488 )
2026-07-28 18:49:32 +10:00
Oliver
45f3810a8b
Build output serial number docs ( #12486 )
...
* Remove serial number restriction when creating build outputs
* Updated docs
* additional docs
2026-07-28 18:49:14 +10:00
Oliver
6302748ec8
[bug] Unique constraint for serial numbers ( #12483 )
...
* Unique constraint for serial numbers
* Revert unrelated changes
* Updated tests
2026-07-28 16:30:32 +10:00
Oliver
4a8ee54ee7
[bug] Fix concurrency issues for allocation ( #12478 )
...
* Fix concurrency issues for allocation
* Remove duplicate atomic call
* Reduce query count
2026-07-28 12:37:01 +10:00
Matthias Mair and Oliver
253aee1ff3
fix(backend): registry install command ( #11657 )
...
* Unable to install plugins through web UI using custom registry and/or Python wheel files.
Fixes #11460
* use more fitting variable name
* add typing
* clean up logic flow - make easier to understand
* make check easier to understand
* reduce complexity
* ensure user is tested
* add more tests
* add user validation
* move test
* disable uninstall in test
* Update test_api.py
* style fix
* fix typing
* check if pip exsists
* fix gate
* fix typo
* reference pip instead
* make test more tolerant
* revert permission check change
* remove new test
---------
Co-authored-by: Oliver <oliver.henry.walters@gmail.com >
2026-07-28 11:06:06 +10:00
Oliver
b33dda76d3
Refactor sales order methods: ( #12477 )
...
- Cancel sales order
- Assign serial numbers
2026-07-27 17:37:14 +10:00
Oliver
eb5138127b
[UI] Add search result preview ( #12475 )
...
* [UI] Add search result preview
* Updated search docs
2026-07-27 16:02:33 +10:00
Oliver
35f2f1aab6
On order filter ( #12476 )
...
* Add "on order" filter for Part model
- Added API filter
- Added table filter
- Added table column
* Bump API version
* Add table sorting
* Adjust API text
2026-07-27 13:01:56 +10:00
Senior Data Engineer
e43390badb
Add configurable default for PO line item merging ( #12472 )
...
* Add configurable default for PO line item merging
Introduce PURCHASEORDER_MERGE_LINE_ITEMS global setting to control the
default state of the merge_items option when creating purchase order lines.
Fixes #10947
* Apply ruff and biome formatting for CI
2026-07-27 11:10:11 +10:00
Oliver
b5abf47115
Offfload email notification ( #12470 )
...
* Offfload email notification
* Run email sync in testing
2026-07-27 10:56:05 +10:00
Oliver
b7d65d754b
Fix part SalesOrder table ( #12469 )
...
* Fix part SalesOrder table
- Show line item quantity, not number of lines
* add regression test
* Bump API version
2026-07-26 21:38:41 +10:00
Oliver
145ef21196
[refactor] Build allocation endpoints ( #12361 )
...
* Create benchmark for completing a build and consuming all items
* Refactor build consume task
* Add benchmarking
* Unroll allocate-stock serializer
* Complete build only after allocations are consumed
* re-export batch_events
* Add BulkPrefetchSerializerMixin
* Reduce queries even further
* Refactoring
* Unroll code and use bulk operations
* Refactoring for auto-allocation
* Add more test coverage for auto-allocation
* Fix model_reference_fields
* adjust unit test
* Apply concurrency protection
* Additional unit tests
* Remove per-line validation
* Fix unit test
* Adjust unit test
* Use bulk_create_and_fetch
* Cleanup
* Reimplement wrapper func for backwards compatibility
* Fix unit test
* Increase max query time
* Fix serializer
* Enforce pk ordering
* FIx for mysql
2026-07-24 19:48:50 +10:00
Matthias Mair
ea68eaf258
chore(backend): major allauth bump ( #12454 )
...
* mayjor allauth bump
* add PR link
2026-07-24 06:26:05 +00:00
Oliver
7d8b3ff160
Bug fix for exporting SalesOrderAllocation data ( #12463 )
...
* Bug fix for exporting SalesOrderAllocation data
* Regression test
* Bump API version
* Bug fix for unit test
2026-07-24 15:38:14 +10:00
Oliver
6bd4842fd8
[bug] Attachment str fix ( #12461 )
...
* Fix stringify for Attachment model
* Add regression tests
2026-07-24 12:30:40 +10:00
Oliver and Matthias Mair
bda2534ed3
[refactor] Complete shipment API endpoint ( #12363 )
...
* Use API for unit test
* Loop unrolling is super effective
* Additional unit testing
* Fix for bulk_create - use bulk_create_and_fetch
* Fix unit tests
* Fix unit tests
* Adjust unit test
* Revert return type on helper func
* Evaluate returned QuerySet
* Adjust unit tests
* Adjust complete_allocations
* Fix for bulk_create in unit test
* Reimplement complete_allocation for compatibility
---------
Co-authored-by: Matthias Mair <code@mjmair.com >
2026-07-24 10:22:22 +10:00
Oliver
829a4462c7
[bug] BOM checksum fix ( #12455 )
...
* Enforce ordering of BOM items
* Add prefetch to getRequiredParts
* Add regression test
2026-07-23 21:44:04 +10:00
Oliver
65efa51524
[docs] Report discovery ( #12449 )
...
* Adds decorator to mark an attribute for report context discovery
* Update context variables in docs
* Include fields captured against each model type
* Expose more properties
* Image URL tags
* Add more attributes
* Rearrange docs
* Simplify docs
* Enforce type hinting for reportable properties
* Expose more properties for the Order model
* Auto-discover related / linked models
* Remove extra text
* Collapsible blocks
* Reduce boilerplate
* Remove cruft
* Enhance documentation for filename generation
* Cleanup
2026-07-23 21:43:55 +10:00