2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-04-27 19:16:44 +00:00

667 Commits

Author SHA1 Message Date
github-actions[bot]
fc42b6d7a1
New Crowdin translations by GitHub Action (#9588)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
2025-04-27 20:05:55 +08:00
dependabot[bot]
964a14754e
Bump the dependencies group across 1 directory with 2 updates (#9585)
* Bump the dependencies group across 1 directory with 2 updates

Bumps the dependencies group with 2 updates in the /src/backend directory: [django-q2](https://github.com/GDay/django-q2) and [sentry-sdk](https://github.com/getsentry/sentry-python).


Updates `django-q2` from 1.7.6 to 1.8.0
- [Release notes](https://github.com/GDay/django-q2/releases)
- [Changelog](https://github.com/django-q2/django-q2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/GDay/django-q2/compare/v1.7.6...v1.8.0)

Updates `sentry-sdk` from 2.26.1 to 2.27.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.26.1...2.27.0)

---
updated-dependencies:
- dependency-name: django-q2
  dependency-version: 1.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: sentry-sdk
  dependency-version: 2.27.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
...

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

* fix req

* sync setuptools

* Add missing API key - see https://github.com/inventree/InvenTree/actions/runs/14673293670/job/41184590051?pr=9585#step:5:1230

* fix this call too

* add an easier to debug assert

* ensure token is set

---------

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>
2025-04-26 10:01:38 +10:00
github-actions[bot]
c6907a0bf2
New Crowdin translations by GitHub Action (#9543)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-04-22 22:09:24 +10:00
Oliver
527652007e
Remove trailing slash from SITE_URL (#9559)
- ref: https://github.com/inventree/InvenTree/discussions/9552
- ref: https://stackoverflow.com/questions/56404930/when-trying-set-corsheaders-in-settings-py-file
2025-04-22 12:29:11 +10:00
Joe Rogers
0bf1ab250f
Schema: Require pagination limit parameter (#9547)
* Ensure pagination limit is set on schema list queries

* Bump api version

* Update api_version.py

* Bump version again

---------

Co-authored-by: Matthias Mair <code@mjmair.com>
2025-04-22 10:02:03 +10:00
Oliver
e249a21622
Url fix 2 (#9548)
* Logic fix

* Playwright test

* Revert "Playwright test"

This reverts commit a63b23961efd61f5ea5e10f7158a5bc2fd7ca11b.

* Simplify test

* Cleanup test
2025-04-21 17:42:22 +10:00
Joe Rogers
0de8e61d53
Schema: Mark nullable fields (#9546)
* Add allow_null to nullable fields

* Fix serializer for InfoApi, add nullable flags

* Bump api version

* Fix incorrectly replaced required tag
2025-04-21 16:59:23 +10:00
Oliver
79dad13328
[UI] Barcode actions (#9538)
* Provide callback function for barcode scan dialog

* Adds hook for barcode scan dialog

* Fix callback processing

* Add function to extract API URL for a model instance

* Tweak page titles

* Extract instance data when scanning a barcode

* Scan item into location

* Scan in stock location

* Remove notYetImplemented func

* Revert "Remove notYetImplemented func"

This reverts commit a35408380e749c1d9054fd4fe7bcabec71863982.

* Add stock item action

* Add playwright tests
2025-04-21 08:42:54 +10:00
Oliver
7d87b8b896
[UI] Add CUI compatibility URLs (#9541)
* Add CUI compatibility URLs

* Add config option to enable URL compatibility

* Add unit tests

* Simplify tests
2025-04-21 08:27:41 +10:00
Matthias Mair
1dae1bc906
fix(backend): Better error handling for report template generation (#9534)
found in https://github.com/inventree/InvenTree/actions/runs/14535795056/job/40783805508?pr=9523
2025-04-21 00:00:05 +10:00
github-actions[bot]
64f72381a1
New Crowdin translations by GitHub Action (#9529)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-04-20 11:23:21 +10:00
Matthias Mair
6b0a082b5a
feat: New / Refactor "Nav Mixin" (#9283)
* [FR/P-UI] New / Refactor "Nav Mixin"
Fixes #5269

* remove logging

* fix sample item that causes issues

* Add test coverage

* Update src/frontend/src/components/plugins/PluginUIFeatureTypes.ts

Co-authored-by: Lukas <76838159+wolflu05@users.noreply.github.com>

* [FR/P-UI] New / Refactor "Nav Mixin"
Fixes #5269

* fix style

* remove requirement for source

* fix import

* bump api version

---------

Co-authored-by: Lukas <76838159+wolflu05@users.noreply.github.com>
2025-04-20 11:22:58 +10:00
dependabot[bot]
35150e3bd3
Bump the dependencies group across 1 directory with 2 updates (#9536)
* Bump the dependencies group across 1 directory with 2 updates

Bumps the dependencies group with 2 updates in the /src/backend directory: [pdfminer-six](https://github.com/pdfminer/pdfminer.six) and [django-money](https://github.com/django-money/django-money).


Updates `pdfminer-six` from 20250327 to 20250416
- [Release notes](https://github.com/pdfminer/pdfminer.six/releases)
- [Changelog](https://github.com/pdfminer/pdfminer.six/blob/master/CHANGELOG.md)
- [Commits](https://github.com/pdfminer/pdfminer.six/commits)

Updates `django-money` from 3.5.3 to 3.5.4
- [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.5.3...3.5.4)

---
updated-dependencies:
- dependency-name: pdfminer-six
  dependency-version: '20250416'
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: dependencies
- dependency-name: django-money
  dependency-version: 3.5.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
...

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

* fix req

---------

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>
2025-04-20 09:56:52 +10:00
Oliver
8d48f9cecd
Fix for URL validation (#9539)
* FIx for URL validation

* Further fixes
2025-04-20 00:21:59 +10:00
Matthias Mair
9a49c9f19c
feat(backend): clearer behaviour on missing migrations (#9527)
* feat(backend): better warning on missing migrations

* add debug info to some tasks

* ensure db would even be accessed before raising concerns

* add more markers

* Add decorator to log flow

* reduce calls

* reduce fnc down
2025-04-19 08:03:16 +10:00
Matthias Mair
8bb03b7afd
feat(backend): add oauth2 (#9333)
* feat(backend): add oauth2

* fix import

* Add inventree roles

* refactor to make lookup more efficient

* fix single scope definitions

* cleanup

* fix schema

* reduce auth methods

* fix OAuth validator

* re-enable token and basic auth again

* Add models to role mapping

* change scope args

* add debug step for schema generation

* add oauth config for schema generation

* improve token -> permission mapping

* fix req

* extend checks to ensure normal auth also passes

* fix api version

* fix ignore

* fix rule name

* bump api version

* remove old modelref

* move scope definition

* make test results easier to work with

* add tests to ensure scopes are in sync with rulesets

* fix docstring

* fix various permissions and their mapping to oauth

* refactor

* simplify

* fix permission mapping

* ignore failure cases

* fix unauthenticated access

* flag oAuth2 till it is done

* Add OIDC support

* add RSA key generation and docs

* fix test

* move imports

* update ignore

* feat(backend): Add API Schema stats

* add scope stats

* fix name

* fix scope output

* feat(backend): test custom command

* add warning for unknown scopes

* reduce diff in launch.json

* cleanup  diff

* add error code for ruleset / scope issues

* update structure

* add oauth docs

* add experimetnal feature docs

* simplify metadata endpoint

* add importer model

* refactor(backend): simplify metadata endpoint

* fix imports

* simplify even more

* remove unneeded schema tooling

* fix permission mappings

* fix testing

* fix role calculations

* fix mapping

* remove importer change to unblock this

* remove importer scope everywhere

* fix merge conflict in test

* add missing models

* fix api version

* fix OASToken matcher

* revert permission class change

* reduce size of test log by writing schema

* fix permissions

* fix file path

* extend schema to remove need for TokenMatchesOASRequirements

* cleanup permissions file

* add base object permission
2025-04-18 19:27:32 +10:00
Oliver
afbcfe66bb
Fix for email sending (#9526)
* Fix for email sending

- Extract valid email for user
- Do not send if email not configured for user

* Improve email address filtering logic

* Fix return type hint
2025-04-17 17:29:26 +10:00
github-actions[bot]
62d058f0e3
New Crowdin translations by GitHub Action (#9508)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-04-17 13:17:41 +10:00
dependabot[bot]
1269fefa0e
Bump the dependencies group across 1 directory with 4 updates (#9512)
* Bump the dependencies group across 1 directory with 4 updates

Bumps the dependencies group with 4 updates in the /src/backend directory: [django-structlog](https://github.com/jrobichaud/django-structlog), [pillow](https://github.com/python-pillow/Pillow), [sentry-sdk](https://github.com/getsentry/sentry-python) and [weasyprint](https://github.com/Kozea/WeasyPrint).


Updates `django-structlog` from 9.0.1 to 9.1.1
- [Changelog](https://github.com/jrobichaud/django-structlog/blob/main/docs/changelog.rst)
- [Commits](https://github.com/jrobichaud/django-structlog/compare/9.0.1...9.1.1)

Updates `pillow` from 11.1.0 to 11.2.1
- [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/11.1.0...11.2.1)

Updates `sentry-sdk` from 2.25.1 to 2.26.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.25.1...2.26.1)

Updates `weasyprint` from 65.0 to 65.1
- [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/v65.0...v65.1)

---
updated-dependencies:
- dependency-name: django-structlog
  dependency-version: 9.1.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: pillow
  dependency-version: 11.2.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: sentry-sdk
  dependency-version: 2.26.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: weasyprint
  dependency-version: '65.1'
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
...

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

* fix req

---------

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>
2025-04-16 17:07:55 +10:00
Matthias Mair
4c830fb167
fix(backend): reduce noice in docker image start (#9515)
make dulwich detection less loud
2025-04-16 07:21:48 +10:00
Oliver
448d24de21
[UI] Serial Number Navigation (#9505)
* Add checkClose function to forms

- Allow custom check for whether form should be closed

* Add form to jump to serial number

* Tweak stock detail display

* Remove dead field

(might fix later, but it's hard with the current API)

* Add some icons

* Enhance extract_int functionality

* Add API endpoint for "next" and "previous" serials for a given stock item

* Add serial number navigation on stock item page

* Add playwright tests

* Bump API version

* Fix for serial number clipping

* Another tweak
2025-04-15 12:42:25 +10:00
github-actions[bot]
8d44a0d330
New Crowdin translations by GitHub Action (#9489)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-04-15 11:39:30 +10:00
Matthias Mair
4f110e399d
refactor(backend): Remove custom role admin (#9500)
See https://github.com/inventree/InvenTree/pull/9476#issuecomment-2791584989
2025-04-14 09:05:18 +10:00
Joe Rogers
195cecb35b
Schema: Batch of small fixes (#9492)
* Fix AllUnitList schema operation and serializer to match actual response

* Fix LicenseViewSerializer to match actual response

* Remove references to credits page (removed in #8811)

* Allow null commit_branch for detatched HEAD state

* Fix version formatting, add test, clean up parser

* Fix schema mapping and return type for VersionTextView

* Fix and test version off-by-one bug

* API version bump

* Merge version tests, enforce more formatting constraints for parsing
2025-04-11 14:22:01 +10:00
Oliver
15be7ab988
[Refactor] Users and Groups (#9476)
* Cleanup UserDetail page

* Cleanup display

* Re-use UserTable

* Add 'users' permission role

* Check user roles in "admin center"

* Revert "Add 'users' permission role"

This reverts commit 35b047b2f9859c836993026fdd22eeeca950f450.

* Improve display logic

* Expose group rule-sets to API

* Prefetch rule_sets

* Add 'label' to RuleSetSerializer

* Add basic RuleSet table

* Add API endpoints for RuleSet model

* Edit group roles via table

* Refactor user permissions checks

- Remove duplicate function calls
- Refactor permission checks into new file

* Further refactoring

* Even more refactoring

* Fix user settings permission

* Add TransferList component

* Tweak GroupDrawer

* Tweak UserDrawer

* adjust user groups via API / UI

* Allow "users" detail on Group API

* Bump API version

* Enumeration of RuleSet name

* Update

* Add permission check

* Update src/frontend/src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx

Co-authored-by: Matthias Mair <code@mjmair.com>

* uncomment warning

* Extend enum usage

* More checks

* Bug fix

* Fix permission checks

* Additional testing for user roles endpoint

* Updated permission classes

- RolePermission with read-only fallback
- RolePermission with additional staff requirement

* Do not allow creation of new RuleSet objects

* Cleanup permission checks and unit tests

* Cleanup UI permission checks

* Updated class dostrings

* Cleanup

* Cleanup permission checks for UserTable

* Add playwright tests for "permission" checks

- Basic for now
- Can be extended in the future

* Tweak unit tests

* Adjust layout of warning / error messages

* Tweak group table logic

* Table cleanup

* Display roles associated with a particular group

* Cleanup

* Tweak user detail page

---------

Co-authored-by: Matthias Mair <code@mjmair.com>
2025-04-10 15:19:24 +10:00
Matthias Mair
dc1acfdacb
refactor(backend): metadata endpoint (#9488)
* refactor(backend): simplify metadata endpoint

* fix imports

* simplify even more

* remove unneeded schema tooling

* fix attr handling
2025-04-10 09:09:52 +10:00
Matthias Mair
bb1faf236a
feat(backend): api schema stats (#9478)
* feat(backend): Add API Schema stats

* add scope stats

* fix scope output
2025-04-09 07:38:03 +10:00
Matthias Mair
2987cdfbb2
feat(backend): test custom command (#9479) 2025-04-09 07:37:28 +10:00
github-actions[bot]
2eb0331ddd
New Crowdin translations by GitHub Action (#9474)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-04-09 00:31:32 +10:00
Matthias Mair
0d6c47fcd5
fix(backend): repair remaining schema generation errors (#9453)
* Remove hardcoded currency enum from schema

* Convert schema custom key enums to int to allow customized keys to validate

* Convert stock status key enums to int to allow customizations to
validate in schema

* api version bump

* fix remaining operationId errors

* fix errors

* fix another error

* fix missing model

* ensure we do not ignore warnings anymore

* Restore enumerated help text for currencies

* Remove commented block of old code

* Restore custom key enumerated values to schema documentation

* Restore status key enumeration to schema documentation

* fix more enums

* Add debug definitions for schema generation

* fix schema generation for PluginRelationSerializer

* add migrations

* fix enum names for allauth schema duplications

* bump api version

---------

Co-authored-by: Joe Rogers <1337joe@gmail.com>
2025-04-08 22:09:57 +10:00
Joe Rogers
f87f4387ed
Schema: (Redo) Remove hardcoded enum values from customizable fields (#9452)
* Remove hardcoded currency enum from schema

* Convert schema custom key enums to int to allow customized keys to validate

* Convert stock status key enums to int to allow customizations to
validate in schema

* api version bump

* Restore enumerated help text for currencies

* Remove commented block of old code

* Restore custom key enumerated values to schema documentation

* Restore status key enumeration to schema documentation
2025-04-08 15:31:40 +10:00
github-actions[bot]
1cab0a1914
New Crowdin translations by GitHub Action (#9438)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-04-07 23:03:41 +10:00
dependabot[bot]
3cfab8e7ed
Bump the dependencies group across 1 directory with 16 updates (#9459)
* Bump the dependencies group across 1 directory with 16 updates

Bumps the dependencies group with 16 updates in the /src/backend directory:

| Package | From | To |
| --- | --- | --- |
| [coverage[toml]](https://github.com/nedbat/coveragepy) | `7.6.12` | `7.8.0` |
| [cryptography](https://github.com/pyca/cryptography) | `44.0.1` | `44.0.2` |
| [isort](https://github.com/PyCQA/isort) | `6.0.0` | `6.0.1` |
| [pdfminer-six](https://github.com/pdfminer/pdfminer.six) | `20240706` | `20250327` |
| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.1.0` | `4.2.0` |
| [django-allauth[mfa,openid,saml,socialaccount]](https://github.com/sponsors/pennersr) | `65.4.1` | `65.7.0` |
| [django-maintenance-mode](https://github.com/fabiocaccamo/django-maintenance-mode) | `0.21.1` | `0.22.0` |
| [django-mptt](https://github.com/django-mptt/django-mptt) | `0.16.0` | `0.17.0` |
| [django-otp](https://github.com/django-otp/django-otp) | `1.3.0` | `1.6.0` |
| [djangorestframework-simplejwt[crypto]](https://github.com/jazzband/djangorestframework-simplejwt) | `5.4.0` | `5.5.0` |
| [dulwich](https://github.com/dulwich/dulwich) | `0.22.7` | `0.22.8` |
| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.1.0` |
| [qrcode[pil]](https://github.com/lincolnloop/python-qrcode) | `8.0` | `8.1` |
| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.12.1` | `3.13.0` |
| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.22.0` | `2.25.1` |
| [weasyprint](https://github.com/Kozea/WeasyPrint) | `64.1` | `65.0` |



Updates `coverage[toml]` from 7.6.12 to 7.8.0
- [Release notes](https://github.com/nedbat/coveragepy/releases)
- [Changelog](https://github.com/nedbat/coveragepy/blob/master/CHANGES.rst)
- [Commits](https://github.com/nedbat/coveragepy/compare/7.6.12...7.8.0)

Updates `cryptography` from 44.0.1 to 44.0.2
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/44.0.1...44.0.2)

Updates `isort` from 6.0.0 to 6.0.1
- [Release notes](https://github.com/PyCQA/isort/releases)
- [Changelog](https://github.com/PyCQA/isort/blob/main/CHANGELOG.md)
- [Commits](https://github.com/PyCQA/isort/compare/6.0.0...6.0.1)

Updates `pdfminer-six` from 20240706 to 20250327
- [Release notes](https://github.com/pdfminer/pdfminer.six/releases)
- [Changelog](https://github.com/pdfminer/pdfminer.six/blob/master/CHANGELOG.md)
- [Commits](https://github.com/pdfminer/pdfminer.six/commits)

Updates `pre-commit` from 4.1.0 to 4.2.0
- [Release notes](https://github.com/pre-commit/pre-commit/releases)
- [Changelog](https://github.com/pre-commit/pre-commit/blob/main/CHANGELOG.md)
- [Commits](https://github.com/pre-commit/pre-commit/compare/v4.1.0...v4.2.0)

Updates `django-allauth[mfa,openid,saml,socialaccount]` from 65.4.1 to 65.7.0
- [Commits](https://github.com/sponsors/pennersr/commits)

Updates `django-maintenance-mode` from 0.21.1 to 0.22.0
- [Release notes](https://github.com/fabiocaccamo/django-maintenance-mode/releases)
- [Changelog](https://github.com/fabiocaccamo/django-maintenance-mode/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fabiocaccamo/django-maintenance-mode/compare/0.21.1...0.22.0)

Updates `django-mptt` from 0.16.0 to 0.17.0
- [Release notes](https://github.com/django-mptt/django-mptt/releases)
- [Changelog](https://github.com/django-mptt/django-mptt/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/django-mptt/django-mptt/compare/0.16...0.17)

Updates `django-otp` from 1.3.0 to 1.6.0
- [Changelog](https://github.com/django-otp/django-otp/blob/master/CHANGES.rst)
- [Commits](https://github.com/django-otp/django-otp/compare/v1.3.0...v1.6.0)

Updates `djangorestframework-simplejwt[crypto]` from 5.4.0 to 5.5.0
- [Release notes](https://github.com/jazzband/djangorestframework-simplejwt/releases)
- [Changelog](https://github.com/jazzband/djangorestframework-simplejwt/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jazzband/djangorestframework-simplejwt/compare/v5.4.0...v5.5.0)

Updates `dulwich` from 0.22.7 to 0.22.8
- [Release notes](https://github.com/dulwich/dulwich/releases)
- [Changelog](https://github.com/jelmer/dulwich/blob/master/NEWS)
- [Commits](https://github.com/dulwich/dulwich/compare/dulwich-0.22.7...dulwich-0.22.8)

Updates `python-dotenv` from 1.0.1 to 1.1.0
- [Release notes](https://github.com/theskumar/python-dotenv/releases)
- [Changelog](https://github.com/theskumar/python-dotenv/blob/main/CHANGELOG.md)
- [Commits](https://github.com/theskumar/python-dotenv/compare/v1.0.1...v1.1.0)

Updates `qrcode[pil]` from 8.0 to 8.1
- [Changelog](https://github.com/lincolnloop/python-qrcode/blob/main/CHANGES.rst)
- [Commits](https://github.com/lincolnloop/python-qrcode/commits)

Updates `rapidfuzz` from 3.12.1 to 3.13.0
- [Release notes](https://github.com/rapidfuzz/RapidFuzz/releases)
- [Changelog](https://github.com/rapidfuzz/RapidFuzz/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/rapidfuzz/RapidFuzz/compare/v3.12.1...v3.13.0)

Updates `sentry-sdk` from 2.22.0 to 2.25.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.22.0...2.25.1)

Updates `weasyprint` from 64.1 to 65.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/v64.1...v65.0)

---
updated-dependencies:
- dependency-name: coverage[toml]
  dependency-version: 7.8.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: cryptography
  dependency-version: 44.0.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: isort
  dependency-version: 6.0.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: pdfminer-six
  dependency-version: '20250327'
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: dependencies
- dependency-name: pre-commit
  dependency-version: 4.2.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: django-allauth[mfa,openid,saml,socialaccount]
  dependency-version: 65.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: django-maintenance-mode
  dependency-version: 0.22.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: django-mptt
  dependency-version: 0.17.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: django-otp
  dependency-version: 1.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: djangorestframework-simplejwt[crypto]
  dependency-version: 5.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: dulwich
  dependency-version: 0.22.8
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
- dependency-name: python-dotenv
  dependency-version: 1.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: qrcode[pil]
  dependency-version: '8.1'
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: rapidfuzz
  dependency-version: 3.13.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: sentry-sdk
  dependency-version: 2.25.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: weasyprint
  dependency-version: '65.0'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: dependencies
...

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

* fix req

* lower django-otp

---------

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>
2025-04-07 09:05:38 +10:00
Oliver
544a3c6263
Notification permissions (#9449)
* Updated type hints

* Fix tooltip bug

* Check user when sending notification

* Fix test

* Update unit test

* More unit test fixes

* Tweak playwright tests
2025-04-05 10:30:58 +11:00
Oliver
f66efa7733
Handle potential null header (#9462) 2025-04-05 09:45:13 +11:00
Joe Rogers
721f56f36e
Wrap values() call in list to fix type error (#9460) 2025-04-05 09:13:53 +11:00
Jacob Felknor
6021035e3f
User Setting To Search Notes (#9393)
* add search notes and tie user search settings to checkboxes in search drawer

* add user setting to optionally search the notes of objects

* add search filter test

* add PR link

* add limit parameter

* typo, meant to check part result

* resolve api_version.py conflict

* don't use search_whole and search_regex together

---------

Co-authored-by: Matthias Mair <code@mjmair.com>
2025-04-04 09:22:39 +11:00
Matthias Mair
a2370dbe59
fix(backend): enforce docstring args (#9428)
* enforce docstring args

* add more rules that we could add later

* fix missing yields

* add a type

* make 3.9 compat
2025-04-04 09:02:55 +11:00
Matthias Mair
b48ceb00f2
refactor(frontend): seperate Alerts into own component (#9442)
* refactor(frontend): seperate Alerts into own component

* refactor debug mode info

* add error code for debug mode and render help links in alerts

* add error message for background worker

* add error code for server restart required

* Add error code for missing email settings

* fix various typings

* add error code for missing migrations
2025-04-03 18:03:07 +11:00
Oliver
c4f98cd6a1
Report cache fix (#9447)
* Adjust allowed CORS headers

* Disable caching in template preview
2025-04-03 15:11:36 +11:00
Oliver
9c419e6ac1
Notify subscribed users (#9446)
* Update docstrings

* Update 'notify_responsible' function

* Update build notifications

* Update notifications for external orders

* Update more notifications

* Notify for overdue return orders

* Fix typos

* Fixes
2025-04-03 13:42:21 +11:00
Oliver
67bdf3162a
Update overdue order notification (#9444)
* Update overdue order notification

- Check individual line items too

* Fix typo
2025-04-03 11:22:23 +11:00
Lukas
75b47f8d09
Typed report context (#9431)
* add typed report context

* make it py3.9 compatible

* fix docs

* debug docs

* fix for py 3.9

* add requested error codes
2025-04-03 07:45:37 +11:00
Joe Rogers
b2db0b67e0
Clean up various schema generator warnings (#9437)
* Add default metadata model for schema generation

* Add type hints and annotations where needed for schema generation

* Bump api version

* Fix version bump
2025-04-02 14:34:58 +11:00
github-actions[bot]
15933a6b3a
New Crowdin translations by GitHub Action (#9337)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-04-02 10:52:59 +11:00
Lukas
ba703cf58a
Template Editor Improvements (#9434)
* add unmount hook and context to report editor ui feature

* Fix tests

* Update pui_printing.spec.ts

* Update pui_printing.spec.ts

* try fix tests

* retrigger ci

* remove debug messages
2025-04-02 09:01:12 +11:00
Joe Rogers
33cc86a603
Add request body to schema for bulk delete operations, deconflict list (#9420)
* Add request body to schema for bulk delete operations, deconflict list
vs single delete operation ids

* API version bump

* Fix variable name conflict

* Switch from post-processing hook to AutoSchema extension

* Loosen typing on filter dict, correct expected code in tests

* Filter by view class instead of path

---------

Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
2025-04-01 10:38:17 +11:00
Oliver
f7a4469590
Download params (#9413)
* Pass extra options through to data export plugins

* Add PartParameterExporter plugin

- Useful for including part parameter data in exporter

* Fix bug in InvenTreeTableHeader

* enable export for partparametertable

* Simplify tests

* Add typing hints
2025-03-31 19:45:59 +11:00
Joe Rogers
2457dfee70
Use int PK instead of regex string in API endpoints (#9399)
* Convert company api endpoints to use int PK instead of regex string

* Convert additional path PK strings to ints
2025-03-30 15:54:19 +11:00
Oliver
7f5a447769
[CI] Playwright improvements (#9395)
* Allow port 4173 (vite preview)

* Change 'base' attr based on vite command

* Allow api_host to be specified separately

* Harden API host functionality

* Adjust server selections

* Cleanup vite.config.ts

* Adjust playwright configuration

- Allow to run in "production" mode
- Builds the code first
- Runs only the backend web server
- Not suitable for coverage

* Tweak github actions

* Tweak QC file

* Reduce number of steps

* Tweak CI file

* Fix typo

* Ensure translation before build

* Fix hard-coded test

* Test tweaks

* uncomment

* Revert some changes

* Run with gunicorn, single worker

* Reduce log output in DEBUG mode

* Update deps

* Add global-setup func

* Fix for .gitignore file

* Cached auth state

* Tweak login func

* Updated tests

* Enable parallel workers again

* Simplify config

* Try with a single worker again

* Single retry mode

* Run auth setup first

- Prevent issues with parallel test doing login

* Improve test setup process

* Tweaks

* Bump to 3 workers

* Tweak playwright settings

* Revert change

* Revert change
2025-03-30 14:12:48 +11:00