Skip to content

root: deprecate non-UTF8 database encoding - #25517

Open
dominic-r wants to merge 6 commits into
mainfrom
dominic/db-encoding-error
Open

root: deprecate non-UTF8 database encoding#25517
dominic-r wants to merge 6 commits into
mainfrom
dominic/db-encoding-error

Conversation

@dominic-r

Copy link
Copy Markdown
Member

authentik has required a UTF8 database since 2025.8 but only warned about it, letting installs run until something downstream failed on bytes it could not decode. The system check now fails startup and points at the docs.

Closes: #25495

@dominic-r dominic-r added this to the Release 2026.11.0: Required milestone Aug 26, 2026
@dominic-r dominic-r self-assigned this Aug 26, 2026
@dominic-r
dominic-r requested review from a team as code owners August 26, 2026 17:03
@dominic-r dominic-r added area:backend area:docs Features or issues related to Docusaurus labels Aug 26, 2026
@netlify

netlify Bot commented Aug 26, 2026

Copy link
Copy Markdown

Deploy Preview for authentik-storybook ready!

Name Link
🔨 Latest commit d4b4a20
🔍 Latest deploy log https://app.netlify.com/projects/authentik-storybook/deploys/6a905422cd6d710008f89e81
😎 Deploy Preview https://deploy-preview-25517--authentik-storybook.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@netlify

netlify Bot commented Aug 26, 2026

Copy link
Copy Markdown

Deploy Preview for authentik-integrations ready!

Name Link
🔨 Latest commit d4b4a20
🔍 Latest deploy log https://app.netlify.com/projects/authentik-integrations/deploys/6a9054222e5195000867880b
😎 Deploy Preview https://deploy-preview-25517--authentik-integrations.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@netlify

netlify Bot commented Aug 26, 2026

Copy link
Copy Markdown

Deploy Preview for authentik-docs ready!

Name Link
🔨 Latest commit d4b4a20
🔍 Latest deploy log https://app.netlify.com/projects/authentik-docs/deploys/6a9054229a5d3200083f67cd
😎 Deploy Preview https://deploy-preview-25517--authentik-docs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@dominic-r
dominic-r force-pushed the dominic/db-encoding-error branch from 40a0c0e to 809d9aa Compare August 26, 2026 17:07
authentik has required a UTF8 database since 2025.8 but only warned about it,
letting installs run until something downstream failed on bytes it could not
decode. The system check now fails startup and points at the docs.

Closes: #25495
@dominic-r
dominic-r force-pushed the dominic/db-encoding-error branch from 809d9aa to 09ed155 Compare August 26, 2026 17:10

@dewi-tik dewi-tik left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Docs LGTM

@codecov

codecov Bot commented Aug 26, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 75.00000% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 91.69%. Comparing base (8890ee2) to head (4aa9cc6).
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
authentik/root/db/base.py 75.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main   #25517      +/-   ##
==========================================
+ Coverage   91.67%   91.69%   +0.01%     
==========================================
  Files        1151     1151              
  Lines       73416    73412       -4     
  Branches     4054     4054              
==========================================
+ Hits        67301    67312      +11     
+ Misses       6073     6058      -15     
  Partials       42       42              
Flag Coverage Δ
conformance 34.43% <75.00%> (+0.01%) ⬆️
e2e 39.08% <75.00%> (+0.01%) ⬆️
integration 31.02% <75.00%> (+0.01%) ⬆️
rust 42.87% <ø> (-0.05%) ⬇️
unit 93.23% <75.00%> (+0.01%) ⬆️
unit-migrate 93.25% <75.00%> (+0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

@github-actions

github-actions Bot commented Aug 26, 2026

Copy link
Copy Markdown
Contributor

authentik PR Installation instructions

Instructions for docker-compose

Add the following block to your .env file:

AUTHENTIK_IMAGE=ghcr.io/goauthentik/dev-server
AUTHENTIK_TAG=gh-4aa9cc67b77dc89c2ee49900055d895a3f0d563c
AUTHENTIK_OUTPOSTS__CONTAINER_IMAGE_BASE=ghcr.io/goauthentik/dev-%(type)s:gh-%(build_hash)s

Afterwards, run the upgrade commands from the latest release notes.

Instructions for Kubernetes

Add the following block to your values.yml file:

authentik:
    outposts:
        container_image_base: ghcr.io/goauthentik/dev-%(type)s:gh-%(build_hash)s
global:
    image:
        repository: ghcr.io/goauthentik/dev-server
        tag: gh-4aa9cc67b77dc89c2ee49900055d895a3f0d563c

Afterwards, run the upgrade commands from the latest release notes.

@gergosimonyi gergosimonyi left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Two thoughts

  1. We should create deprecation events for a release or two before just failing.
  2. The rest of _check_encoding can be removed after this, right? Django client encoding defaults to UTF8 anyway.

@dominic-r
dominic-r force-pushed the dominic/db-encoding-error branch from 96556b5 to d4b4a20 Compare August 27, 2026 15:13
@dominic-r dominic-r changed the title root: make non-UTF8 database encoding an error root: deprecate non-UTF8 database encoding Aug 27, 2026
@rissson

rissson commented Aug 27, 2026

Copy link
Copy Markdown
Member
1. We should create deprecation events for a release or two before just failing.

technically we announced it already https://docs.goauthentik.io/releases/2025.8/#database-encoding-requirements

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

Labels

area:backend area:docs Features or issues related to Docusaurus

Projects

Status: Todo

Development

Successfully merging this pull request may close these issues.

UTF8 encoding being required

4 participants