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
Dean
346d7e0a70
Improvements to PrintingOptionsSerializer ( #12434 )
...
* Fixed issue with default `driver_options on `InvenTreeLabelPlugin`
* Provide current `machine` to `LabelPrinterBaseDriver.get_printing_options_serializer`
2026-07-23 11:15:10 +10:00
Matthias Mair and dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
e3825b5aa9
general deps bump ( #12409 )
...
* chore(deps): bump the dependencies group across 1 directory with 13 updates
Bumps the dependencies group with 13 updates in the /src/backend directory:
| Package | From | To |
| --- | --- | --- |
| [coverage](https://github.com/coveragepy/coveragepy ) | `7.14.3` | `7.15.0` |
| [prek](https://github.com/j178/prek ) | `0.4.5` | `0.4.6` |
| [typing-extensions](https://github.com/python/typing_extensions ) | `4.15.0` | `4.16.0` |
| [blessed](https://github.com/jquast/blessed ) | `1.44.0` | `1.45.0` |
| [boto3](https://github.com/boto/boto3 ) | `1.43.36` | `1.43.40` |
| [botocore](https://github.com/boto/botocore ) | `1.43.36` | `1.43.40` |
| [dulwich](https://github.com/dulwich/dulwich ) | `1.2.6` | `1.2.7` |
| [fido2](https://github.com/Yubico/python-fido2 ) | `2.2.0` | `2.2.1` |
| [jinxed](https://github.com/Rockhopper-Technologies/jinxed ) | `2.0.4` | `2.1.0` |
| [pillow](https://github.com/python-pillow/Pillow ) | `12.2.0` | `12.3.0` |
| [rpds-py](https://github.com/crate-py/rpds ) | `2026.5.1` | `2026.6.3` |
| [sentry-sdk](https://github.com/getsentry/sentry-python ) | `2.63.0` | `2.64.0` |
| [wcwidth](https://github.com/jquast/wcwidth ) | `0.8.1` | `0.8.2` |
Updates `coverage` from 7.14.3 to 7.15.0
- [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.14.3...7.15.0 )
Updates `prek` from 0.4.5 to 0.4.6
- [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.5...v0.4.6 )
Updates `typing-extensions` from 4.15.0 to 4.16.0
- [Release notes](https://github.com/python/typing_extensions/releases )
- [Changelog](https://github.com/python/typing_extensions/blob/main/CHANGELOG.md )
- [Commits](https://github.com/python/typing_extensions/compare/4.15.0...4.16.0 )
Updates `blessed` from 1.44.0 to 1.45.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/commits )
Updates `boto3` from 1.43.36 to 1.43.40
- [Release notes](https://github.com/boto/boto3/releases )
- [Commits](https://github.com/boto/boto3/compare/1.43.36...1.43.40 )
Updates `botocore` from 1.43.36 to 1.43.40
- [Commits](https://github.com/boto/botocore/compare/1.43.36...1.43.40 )
Updates `dulwich` from 1.2.6 to 1.2.7
- [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.6...dulwich-1.2.7 )
Updates `fido2` from 2.2.0 to 2.2.1
- [Release notes](https://github.com/Yubico/python-fido2/releases )
- [Changelog](https://github.com/Yubico/python-fido2/blob/main/NEWS )
- [Commits](https://github.com/Yubico/python-fido2/compare/2.2.0...2.2.1 )
Updates `jinxed` from 2.0.4 to 2.1.0
- [Release notes](https://github.com/Rockhopper-Technologies/jinxed/releases )
- [Commits](https://github.com/Rockhopper-Technologies/jinxed/compare/2.0.4...2.1.0 )
Updates `pillow` from 12.2.0 to 12.3.0
- [Release notes](https://github.com/python-pillow/Pillow/releases )
- [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst )
- [Commits](https://github.com/python-pillow/Pillow/compare/12.2.0...12.3.0 )
Updates `rpds-py` from 2026.5.1 to 2026.6.3
- [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.5.1...v2026.6.3 )
Updates `sentry-sdk` from 2.63.0 to 2.64.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.63.0...2.64.0 )
Updates `wcwidth` from 0.8.1 to 0.8.2
- [Release notes](https://github.com/jquast/wcwidth/releases )
- [Commits](https://github.com/jquast/wcwidth/compare/0.8.1...0.8.2 )
---
updated-dependencies:
- dependency-name: coverage
dependency-version: 7.15.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: prek
dependency-version: 0.4.6
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: typing-extensions
dependency-version: 4.16.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: blessed
dependency-version: 1.45.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: boto3
dependency-version: 1.43.40
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: botocore
dependency-version: 1.43.40
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: dulwich
dependency-version: 1.2.7
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: fido2
dependency-version: 2.2.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: jinxed
dependency-version: 2.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: pillow
dependency-version: 12.3.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: rpds-py
dependency-version: 2026.6.3
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: sentry-sdk
dependency-version: 2.64.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: wcwidth
dependency-version: 0.8.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
* fix style
* master bump
* api bump
* bump a bit further
---------
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-23 09:09:39 +10:00
Bhumin Paladiya
8d8ecf2c4c
Fix admin search for Address and Contact models ( #12440 )
2026-07-23 09:08:36 +10:00
9f5723a3e3
chore(deps): bump the dependencies group across 2 directories with 22 updates ( #12417 )
...
* chore(deps): bump the dependencies group across 2 directories with 22 updates
Bumps the dependencies group with 1 update in the /docs directory: [mkdocstrings](https://github.com/mkdocstrings/mkdocstrings ).
Bumps the dependencies group with 21 updates in the /src/backend directory:
| Package | From | To |
| --- | --- | --- |
| [blessed](https://github.com/jquast/blessed ) | `1.44.0` | `1.47.0` |
| [boto3](https://github.com/boto/boto3 ) | `1.43.36` | `1.43.45` |
| [botocore](https://github.com/boto/botocore ) | `1.43.36` | `1.43.45` |
| [cffi](https://github.com/python-cffi/cffi ) | `2.0.0` | `2.1.0` |
| [charset-normalizer](https://github.com/jawah/charset_normalizer ) | `3.4.7` | `3.4.9` |
| [drf-spectacular](https://github.com/tfranzel/drf-spectacular ) | `0.29.0` | `0.30.0` |
| [dulwich](https://github.com/dulwich/dulwich ) | `1.2.6` | `1.2.10` |
| [fido2](https://github.com/Yubico/python-fido2 ) | `2.2.0` | `2.2.1` |
| [grpcio](https://github.com/grpc/grpc ) | `1.81.1` | `1.82.1` |
| [jinxed](https://github.com/Rockhopper-Technologies/jinxed ) | `2.0.4` | `2.1.0` |
| [pillow](https://github.com/python-pillow/Pillow ) | `12.2.0` | `12.3.0` |
| [python-fsutil](https://github.com/fabiocaccamo/python-fsutil ) | `0.16.1` | `0.17.0` |
| [rpds-py](https://github.com/crate-py/rpds ) | `2026.5.1` | `2026.6.3` |
| [sentry-sdk](https://github.com/getsentry/sentry-python ) | `2.63.0` | `2.64.0` |
| [setuptools](https://github.com/pypa/setuptools ) | `82.0.1` | `83.0.0` |
| [tqdm](https://github.com/tqdm/tqdm ) | `4.68.3` | `4.68.4` |
| [typing-extensions](https://github.com/python/typing_extensions ) | `4.15.0` | `4.16.0` |
| [tzdata](https://github.com/python/tzdata ) | `2026.2` | `2026.3` |
| [wcwidth](https://github.com/jquast/wcwidth ) | `0.8.1` | `0.8.2` |
| [coverage](https://github.com/coveragepy/coveragepy ) | `7.14.3` | `7.15.0` |
| [prek](https://github.com/j178/prek ) | `0.4.5` | `0.4.8` |
Updates `mkdocstrings` from 1.0.4 to 1.0.5
- [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.4...1.0.5 )
Updates `blessed` from 1.44.0 to 1.47.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/commits )
Updates `boto3` from 1.43.36 to 1.43.45
- [Release notes](https://github.com/boto/boto3/releases )
- [Commits](https://github.com/boto/boto3/compare/1.43.36...1.43.45 )
Updates `botocore` from 1.43.36 to 1.43.45
- [Commits](https://github.com/boto/botocore/compare/1.43.36...1.43.45 )
Updates `cffi` from 2.0.0 to 2.1.0
- [Release notes](https://github.com/python-cffi/cffi/releases )
- [Commits](https://github.com/python-cffi/cffi/compare/v2.0.0...v2.1.0 )
Updates `charset-normalizer` from 3.4.7 to 3.4.9
- [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.4.7...3.4.9 )
Updates `drf-spectacular` from 0.29.0 to 0.30.0
- [Release notes](https://github.com/tfranzel/drf-spectacular/releases )
- [Changelog](https://github.com/tfranzel/drf-spectacular/blob/master/CHANGELOG.rst )
- [Commits](https://github.com/tfranzel/drf-spectacular/compare/0.29.0...0.30.0 )
Updates `dulwich` from 1.2.6 to 1.2.10
- [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.6...dulwich-1.2.10 )
Updates `fido2` from 2.2.0 to 2.2.1
- [Release notes](https://github.com/Yubico/python-fido2/releases )
- [Changelog](https://github.com/Yubico/python-fido2/blob/main/NEWS )
- [Commits](https://github.com/Yubico/python-fido2/compare/2.2.0...2.2.1 )
Updates `grpcio` from 1.81.1 to 1.82.1
- [Release notes](https://github.com/grpc/grpc/releases )
- [Commits](https://github.com/grpc/grpc/compare/v1.81.1...v1.82.1 )
Updates `jinxed` from 2.0.4 to 2.1.0
- [Release notes](https://github.com/Rockhopper-Technologies/jinxed/releases )
- [Commits](https://github.com/Rockhopper-Technologies/jinxed/compare/2.0.4...2.1.0 )
Updates `pillow` from 12.2.0 to 12.3.0
- [Release notes](https://github.com/python-pillow/Pillow/releases )
- [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst )
- [Commits](https://github.com/python-pillow/Pillow/compare/12.2.0...12.3.0 )
Updates `python-fsutil` from 0.16.1 to 0.17.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.16.1...0.17.0 )
Updates `rpds-py` from 2026.5.1 to 2026.6.3
- [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.5.1...v2026.6.3 )
Updates `sentry-sdk` from 2.63.0 to 2.64.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.63.0...2.64.0 )
Updates `setuptools` from 82.0.1 to 83.0.0
- [Release notes](https://github.com/pypa/setuptools/releases )
- [Changelog](https://github.com/pypa/setuptools/blob/main/NEWS.rst )
- [Commits](https://github.com/pypa/setuptools/compare/v82.0.1...v83.0.0 )
Updates `tqdm` from 4.68.3 to 4.68.4
- [Release notes](https://github.com/tqdm/tqdm/releases )
- [Commits](https://github.com/tqdm/tqdm/compare/v4.68.3...v4.68.4 )
Updates `typing-extensions` from 4.15.0 to 4.16.0
- [Release notes](https://github.com/python/typing_extensions/releases )
- [Changelog](https://github.com/python/typing_extensions/blob/main/CHANGELOG.md )
- [Commits](https://github.com/python/typing_extensions/compare/4.15.0...4.16.0 )
Updates `tzdata` from 2026.2 to 2026.3
- [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.2...2026.3 )
Updates `wcwidth` from 0.8.1 to 0.8.2
- [Release notes](https://github.com/jquast/wcwidth/releases )
- [Commits](https://github.com/jquast/wcwidth/compare/0.8.1...0.8.2 )
Updates `coverage` from 7.14.3 to 7.15.0
- [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.14.3...7.15.0 )
Updates `prek` from 0.4.5 to 0.4.8
- [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.5...v0.4.8 )
---
updated-dependencies:
- dependency-name: mkdocstrings
dependency-version: 1.0.5
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: blessed
dependency-version: 1.47.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: boto3
dependency-version: 1.43.45
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: botocore
dependency-version: 1.43.45
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: cffi
dependency-version: 2.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: charset-normalizer
dependency-version: 3.4.9
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: drf-spectacular
dependency-version: 0.30.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: dulwich
dependency-version: 1.2.10
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: fido2
dependency-version: 2.2.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: grpcio
dependency-version: 1.82.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: jinxed
dependency-version: 2.1.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: pillow
dependency-version: 12.3.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: python-fsutil
dependency-version: 0.17.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: rpds-py
dependency-version: 2026.6.3
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: sentry-sdk
dependency-version: 2.64.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: setuptools
dependency-version: 83.0.0
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: dependencies
- dependency-name: tqdm
dependency-version: 4.68.4
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: typing-extensions
dependency-version: 4.16.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: tzdata
dependency-version: '2026.3'
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: wcwidth
dependency-version: 0.8.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: dependencies
- dependency-name: coverage
dependency-version: 7.15.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: dependencies
- dependency-name: prek
dependency-version: 0.4.8
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
* fix style
* lower drf-spectacular to remove api diff
---------
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-07-22 22:22:26 +10:00
872cea95ff
chore(deps): bump pillow from 12.2.0 to 12.3.0 in /src/backend ( #12438 )
...
* chore(deps): bump pillow from 12.2.0 to 12.3.0 in /src/backend
Bumps [pillow](https://github.com/python-pillow/Pillow ) from 12.2.0 to 12.3.0.
- [Release notes](https://github.com/python-pillow/Pillow/releases )
- [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst )
- [Commits](https://github.com/python-pillow/Pillow/compare/12.2.0...12.3.0 )
---
updated-dependencies:
- dependency-name: pillow
dependency-version: 12.3.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-07-22 22:22:02 +10:00
Alex K
ce47cda948
Read report/label templates in binary mode ( #12432 )
...
* Read report/label templates in binary mode
file_from_template read the template in text mode and wrapped the string
in a ContentFile. The ContentFile size then reflected the character count,
which differs from the UTF-8 byte length for any template that contains
multi-byte characters. Strict S3 implementations such as Backblaze B2
validate the Content-Length header and reject the upload with an
IncompleteBody error. AWS S3 tolerates the mismatch, so the problem is
not visible there.
inventree_transfer_order_report.html is 1458 characters but 1460 bytes.
Its upload fails during create_default_reports, the transaction rolls
back, and the default template is recreated and fails again on every
startup.
Use Path.read_bytes() so the ContentFile size matches the uploaded bytes
and the file handle is closed. Add a regression test asserting the size
equals the file's byte length.
* Test file_from_template across text encodings
2026-07-21 20:17:17 +10:00
Oliver
8b009e8d9f
Locking fixes ( #12435 )
...
* Secure row locks when trimming allocated stock
* Secure row locks when completing a SalesOrder
* Regression testing
* Further improvements and regression testing
* Ignore locking test for sqlite
2026-07-21 16:17:56 +10:00
github-actions[bot] and github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
0c8dd5dac1
New Crowdin translations by GitHub Action ( #12425 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-07-21 11:41:59 +10:00
Oliver
7973057ad9
Improve request caching for plugin config objects ( #12430 )
...
* Improve request caching for plugin config objects
* Cache configs dict further
2026-07-21 10:23:50 +10:00
Oliver
4c4c86e180
[feature] Line discount ( #12393 )
...
* Add "discount" support to order line items
* Fix total_price annotation for ExtraLineItem
* Add regression tests
* Add frontend support
* Updated documentation
* Added docs
* Bump API version and CHANGELOG
* Remove 'total_price' annotation
- Can be achieved using in-memory python methods
* Apply fix for migration testing
* Revert "Apply fix for migration testing"
This reverts commit 8d9f2dce8c .
* Different approach
* Adjust playwright threshold
2026-07-20 20:42:54 +10:00
Senior Data Engineer & Data Architect
44d8d0e266
fix(ui): show initial stock fields when PART_CREATE_INITIAL enabled ( #12415 )
...
* fix(ui): show initial stock fields when PART_CREATE_INITIAL enabled (#12266 )
* Fix Docker setup for local Windows deployment.
Disable Redis disk persistence to avoid bind-mount permission errors that caused login 500s, and configure localhost as the default site URL.
* Apply Biome formatting to Playwright test file.
Fixes Style [prek] CI failure on PR #12415 .
* Use specific locators in initial stock Playwright tests.
Avoid strict-mode violations from getByText('Initial Stock') matching multiple form elements.
* Scope initial stock Playwright test to part detail Stock tab.
Avoid strict-mode violations from duplicate Stock tabs on the part page.
* Use raw SQL inserts in MPTT migration test setup.
Avoid duplicate status_custom_key ORM bug in historical StockItem models.
2026-07-20 19:05:54 +10:00
github-actions[bot] and github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
d365cb44aa
New Crowdin translations by GitHub Action ( #12408 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-07-20 14:33:36 +10:00
Leonid Zaliubovskyi
3ddf792a59
Fix update notification deduplication and release link ( #12424 )
2026-07-20 14:33:25 +10:00
github-actions[bot] and github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
c1e1fd89f9
New Crowdin translations by GitHub Action ( #12318 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-07-16 19:02:44 +10:00
Oliver
5422896288
Bulk create events ( #12405 )
...
* Add initial benchmark test
* Enable event batching for BulkdCreate API mixin
* Fix duplicate save event for Parameter
* Apply event batching for bulk_update
* Similar testing for bulk_delete
2026-07-16 14:24:00 +10:00
Oliver
a09479665a
prevent duplicate save event when creating a part ( #12406 )
2026-07-16 14:23:44 +10:00
Oliver
3fd0e9d304
Bulk delete line items ( #12391 )
...
* Add bulk-delete mixin for order line items
* Add unit tests
* Enable frontend support
* Add CHANGELOG entry
* Add locking control for TransferOrder
* Fix playwright tests
* Fix playwright tests
2026-07-16 11:55:34 +10:00
Oliver
8407f63656
[bug] Tree parent fix ( #12401 )
...
* Refactor
* row locking on bulk-update
* Rebuild tree in background task
* Regression testing
* Fix unit test
* Allow more generous timeout
2026-07-16 10:05:01 +10:00
Oliver
70749ed93c
Fix StockItem parent update on delete ( #12377 )
...
* Fix StockItem parent update on delete
* Check for null parents
2026-07-14 16:29:30 +10:00
Oliver
afbe3b3ab9
Bug fixes ( #12365 )
...
* Bug fixes:
- Enforce serial number requirements when receiving items
- Stricter merge checking
- Fix count-into-location bug
- Unit testing
* Additional unit tests
2026-07-14 16:00:26 +10:00
Oliver
61dcc04205
[feature] Unique parameters ( #12388 )
...
* Add uniqueness requirement for parameter values
* Add documentation
* Do not copy unique parameters
* Updated playwright tests
* Enhanced validation checks for uniqueness
* Update documentation
* Update CHANGELOG
* Bump API version
2026-07-14 14:34:17 +10:00
Oliver
183e6c37b1
Fix for BuildItem with zero quantity ( #12387 )
2026-07-14 12:41:40 +10:00
Oliver
2b25a46eaa
Prevent duplication completion of ReturnOrder ( #12386 )
2026-07-14 12:06:53 +10:00
Oliver
fcc68ee69f
Apply row-level locking when updating stock item quantity ( #12385 )
2026-07-14 12:02:02 +10:00
Oliver
6be654954e
[refactor] SalesOrder allocation fixes ( #12379 )
...
* Use API for unit test
* Refactor SalesOrderSerialAllocationSerializer
- Move business logic into the SalesOrder model
* Add unit testing for serial allocation
2026-07-14 10:34:54 +10:00
Oliver
d9b9a87893
[bug] Quantity fixes ( #12375 )
...
- Ensure valid quantity values on stock operations
- Regression testing
2026-07-14 10:25:27 +10:00
Oliver
b64182b565
Uninstall fix ( #12378 )
...
* Prevent uninstall into structural location
* Regression tests
2026-07-13 20:21:56 +10:00
Oliver
a12fd546ff
use new helper func ( #12373 )
2026-07-13 18:54:10 +10:00
Oliver
431a6e49a0
fix concurrent update issues ( #12380 )
...
- Ensure database values are used for delta updates
- Regression tests
2026-07-13 18:53:18 +10:00
Oliver
dd05611ea4
Hardening build outputs ( #12376 )
...
- ensure outputs cannot be double completed
2026-07-13 18:53:07 +10:00
Oliver
31f97934d0
[bug] Child fix ( #12374 )
...
* Remove outdated helper
* Fix children prop and add regression test
2026-07-13 18:48:49 +10:00
Oliver
766a8b41db
[refactor] Remove MPTT mixin from StockItem model ( #12360 )
...
* Remove MPTT from StockItem model
* cleanup stock fixture file
* Remove tree rebuild code for StockItem
* Adjust API
* Update CHANGELOG and API version
* remove tree references
* Additional checks
* Remove unused tests
* Add data migration test
* fix fk fields
* Cleanup
* Tweak unit test
* Revert bulk-create in unit test
* Don't rebuild StockItem models
* Add bulk_create_and_fetch helper model
- Overcome limitations of mysql
* Add unit test for new bulk-create helper
* Apply new helper to codebase
* Adjust unit test
* bug fix
* Adjust query limits
* Remove assert
2026-07-13 15:09:27 +10:00
Oliver
85e13b26ec
Prevent duplicate receive operation on ReturnOrder ( #12368 )
2026-07-13 14:53:01 +10:00
Oliver
a19771dec9
Progressive falloff for delay ( #12369 )
2026-07-13 14:52:40 +10:00
Oliver
0b3ba6c4eb
[bug] Transfer order fixes ( #12367 )
...
* Handle failed transfer order transaction
* Prevent duplicate completion of transfer order
2026-07-13 14:35:07 +10:00
Oliver
32ca78f65c
[bug] prevent double-complete of shipments ( #12366 )
2026-07-13 14:34:08 +10:00
Oliver
c5e81a7820
[UI] Preview Drawer ( #12117 )
...
* Add <GlobalPreviewDrawer> component
* Allow plugins to interact
* provide either pk or instance data
* open preview drawer from calendar views
* Launch preview drawer directly from tables
* Add preview types
* Fix types
* CLear data on close
* Fix transition
* Allow caller to pass preview component
* AttributeGrid
* Use a table component
* Display info items
* Navigate to detail page from drawer
* Updates
* Refactor to use part detail view
* Display parameters
* Fix image caching
* Apply same to StockItem
* Remove old component
* Refactor details grid component
* Preview panel for PurchaseOrder model
* Implement for SalesOrder
* Support ReturnOrder
* SupplierPart and ManufacturerPart
* Support preview in parameteric tables
* support Company and BuildOrder
* Fix numbervalue
* BuildOrder and SalesOrderShipment
* location and category
* add user setting
* Fix typing
* Handle link clicks within preview drawer
* fixes
* Implement onClose callback
* Handle row click when panel preview is disabled
* Support custom detail links
* update playwright tests
* UI tweaks
* Add CHANGELOG entry
* docs
* define default API params per model type
* Split out more docs pages
* Simplify state ref
* Refactoring
* Simplify PreviewDrawer component
* observe user setting in calendar view
* Enable PreviewDrawer from RowViewAction
* Push render functions onto ModelInformation dict
* Fix lib compilation
* Refactor internal uses of RowViewAction
* typescript fixes
* Simplify PreviewDrawer component structure
* remove TODO placeholders
2026-07-12 20:11:27 +10:00