Skip to content

Rc/v4.22.2#568

Merged
evilguy4000 merged 8 commits intomainfrom
rc/v4.22.2
Mar 12, 2026
Merged

Rc/v4.22.2#568
evilguy4000 merged 8 commits intomainfrom
rc/v4.22.2

Conversation

@evilguy4000
Copy link
Collaborator

Description

Brief description of the change and why it's needed.

Type of change

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (fix or feature that would change existing behavior)
  • Documentation update
  • Refactor (no functional change)

Checklist

  • My code follows the project's style guidelines (Black, flake8).
  • I have added/updated tests for my changes.
  • All tests pass locally (e.g. pytest).
  • I have updated the documentation if needed.
  • For user-facing changes, I have added an entry to the Unreleased section of CHANGELOG.md.

Related issues

Fixes # (issue number, if applicable)


See CONTRIBUTING.md and CHANGELOG.md for guidelines.

…fixes #566)

When the IdP returns an encrypted ID token (e.g. Authentik with Encryption Key
set), Authlib raises UnsupportedAlgorithmError. Previously this was caught
generically and users saw a misleading message about session/cookie/proxy.

- Detect algorithm/JWE-related errors via exception type, module, or message
- Log reason=unsupported_algorithm_or_jwe and a specific warning
- Flash: disable ID token encryption (e.g. leave Authentik Encryption Key empty)
- Keep existing message for real session/state/code failures
#566)

- Add Authentik to provider notes: leave Encryption Key empty; JWE not supported
- Add troubleshooting entry for 'SSO failed' with unsupported algorithm/encrypted token
- Mention reason=unsupported_algorithm_or_jwe in callback redirect log examples
OAuth: Replace deprecated accounting.transactions scope with accounting.invoices and accounting.payments so new Xero Developer apps (on or after 2026-03-02) complete the authorization flow.

Expense sync: Use /api.xro/2.0/ExpenseClaims instead of non-existent /api.xro/2.0/Expenses; read ExpenseClaimID from response.

API: Add optional json_body to _api_request and send invoice/expense payloads (Invoices and ExpenseClaims wrappers) to Xero.

Docs: Add docs/integrations/XERO.md (setup, scopes, sync, troubleshooting) and CHANGELOG entry.
- Add data-devaluation-supported on stock item options (trackable + default cost).
- When return/waste is selected and item cannot be devalued, disable 'Apply
  devaluation', show message: 'Devaluation requires a trackable item with a
  default cost.'
- Same message for standalone devaluation type when item is unsupported.
- Add en translation string for the new message.
Defer manual entry worked-time recalculation to the next microtask so
the DOM has the latest start/end date and time before reading. Add
input listeners so recalculation runs on every date/time change.

Fixes incorrect duration when end date is in the past (e.g. yesterday)
until the user reselected the end date.
- In section 5.3 Stock Devaluation: note form message when item does not
  support devaluation.
- Add 'How to use (UI)' steps for return and waste with devaluation.
- Add API note for POST /api/v1/inventory/movements devaluation parameters.
- Enables closing GitHub issue #385 with a doc reference.
- Add implementation note for deferred recalculation and input listeners
- Reference fix from Break Time feature doc (manual entry / worked time)
@evilguy4000 evilguy4000 merged commit 76b0a65 into main Mar 12, 2026
0 of 2 checks passed
@github-actions
Copy link

❌ CI Test Results

Overall Status: 2 test suite(s) failed

Test Results: 0/7 passed

Test Suites:

  • ❌ Smoke Tests: failure
  • ⏭️ Unit Tests: skipped
  • ⏭️ Integration Tests: skipped
  • ⏭️ Security Tests: skipped
  • ❌ Code Quality: failure
  • ⏭️ Docker Build: skipped
  • ⏭️ Full Test Suite: skipped

Commit: c10eda1
Workflow: 23022847893

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant