* [bug] Handle null plugin instance
* Add regression test
* Fix secondary instances of same bug
(cherry picked from commit 2566d332a8)
Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
* Robustify plugin file loading
* Lock static file copying
* Improve robustness of static file copying
* Add regression tests
* Handle database not being ready
* Fix identified limitation and refactor code
* Attempt to fix CI job
* instrumentation for CI - will revert
* Another bugfix attempt
(cherry picked from commit b4cb9a9746)
Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
* Enhanced error message on CSRF failure
* Defer to 'detail' field if exists
(cherry picked from commit 9a416df5d4)
Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
* Refactor part pricing updates
- Handles cases where underlying part has been deleted
* Add regression tests
(cherry picked from commit fa44925b21)
Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
* Adjust get_bom_hash function:
- Optionally skip inclusion of part names
- Skip 'piece_count' if default value set
* Fall back to legacy comparison
* Add per-line-item check
* Add regression tests
* Fix security hole for metadata API
* Regression test for field injection
(cherry picked from commit 694d890ce5)
Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
* Fill out stock location based on part default
* Add playwright tests
(cherry picked from commit 871147d936)
Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
* Bug fix for tracing setup
* Support forking against multiple PIDs
* Updated documentation
(cherry picked from commit fcbcef5aae)
Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
* fix: trigger pricing recalculation when SupplierPart is saved or deleted
When a SupplierPart's pack_quantity is updated after price breaks have
already been created, the Part's pricing (and BOM cost rollups for any
assemblies using that part) was not recalculated. This is because there
was no post_save or post_delete signal handler for the SupplierPart model
to trigger schedule_pricing_update on the linked Part.
Added post_save and post_delete signal handlers for SupplierPart that
mirror the existing SupplierPriceBreak signal handlers. The pricing
cascade (via update_assemblies) ensures BOM line costs in parent
assemblies are also updated.
Fixes#12285
* style: fix ruff format issues
* style: apply ruff format with --preview flag (matching project config)
* fix: resolve PartPricing.DoesNotExist in pack_quantity test
The test captured self.part.pricing before any PartPricing row existed,
yielding an unsaved instance; the later refresh_from_db() then raised
DoesNotExist. Re-fetch self.part.pricing after the price break creates
the row, matching the pattern in test_supplier_part_pricing.
---------
(cherry picked from commit be9faff766)
Co-authored-by: amanjain57-gif <aman.jain57@gmail.com>
Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
Co-authored-by: Aman Jain <jainamn@amazon.com>
* [bug] OptionalField race condition
Fixes subtle bug where OptionalField entries can be silenty dropped from an API request due to concurrent requests / race conditions
* Additional unit tests
* Additional guard in metadata.py
* include extra kwargs
* Adjust import/exporting options
* Fix attribute sharing across class instances
(cherry picked from commit 2b3283d5d2)
Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
- Only log unhandled exceptions to sentry.io
- Check for valid handling first
- Report second
(cherry picked from commit 1020ed3009)
Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
* Fix test result ordering by test timestamps
* Refractor test result comparison helper
* Apply formatting fixes
* Fix frontend formatting
* Avoid mutating test result records
* Add migration for test result ordering
* Retry documentation build
---------
Co-authored-by: jayasree723 <confidentlehmann@tomorjerry.com>
Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
* Specify JSON encoder for data import fields
- Fixes encoding issues when importing from XLSX file
* Add regression test
* Fix faulty error handler
* Fix for unit test