feat(container)!: Update image ghcr.io/paperless-ngx/paperless-ngx ( 2.20.15 ➔ 3.0.3 )#2426
feat(container)!: Update image ghcr.io/paperless-ngx/paperless-ngx ( 2.20.15 ➔ 3.0.3 )#2426robot-rosey[bot] wants to merge 1 commit into
Conversation
konflate — summaryNote +0 added · 2 changed · −0 removed — 2 resources · 2 apps Tip Routine — only container-image and chart-version changes; nothing else changed. Blast radius
Image changes
konflate · rendered |
There was a problem hiding this comment.
paperless-ngx: v2.20.15 → v3.0.0
Verdict: Changes required before merge
Breaking changes:
PAPERLESS_SECRET_KEYis mandatory in v3.0.0, and startup raises an error when it is absent. This repository does not currently populate that key inkubernetes/apps/default/paperless/app/externalsecret.yaml, so the upgraded pod will not start. Fix: source a unique, non-default value through the existing ExternalSecret and expose it to the app; do not hard-code it.PAPERLESS_CONSUMER_POLLINGwas removed in v3.0.0 and replaced byPAPERLESS_CONSUMER_POLLING_INTERVAL. The deployment uses polling for its network-backed consume directory inkubernetes/apps/default/paperless/app/helmrelease.yaml; leaving the old key silently falls back to the v3 default of filesystem notifications, which may miss new documents. Fix: rename the key while preserving the configured interval.
Deprecations:
- Advanced database options now use
PAPERLESS_DB_OPTIONS; the legacyPAPERLESS_DBSSLMODE,PAPERLESS_DBSSLROOTCERT,PAPERLESS_DBSSLCERT,PAPERLESS_DBSSLKEY,PAPERLESS_DB_POOLSIZE, andPAPERLESS_DB_TIMEOUTnames are deprecated for removal in v3.2. The manifest instead has similarly namedPG*variables, which Paperless v2 did not read as application settings and v3 still does not read. Move the intended TLS/pooling options intoPAPERLESS_DB_OPTIONSinkubernetes/apps/default/paperless/app/helmrelease.yamlso the application actually applies them.
New features worth adopting:
- Tantivy replaces Whoosh and automatically rebuilds the incompatible search index on first startup. No manifest change is required, but the rollout should allow for the one-time rebuild and use a current backup.
- Duplicate documents are now accepted by default. If the previous rejection behavior is desired, set
PAPERLESS_CONSUMER_DELETE_DUPLICATES=trueinkubernetes/apps/default/paperless/app/helmrelease.yaml.
The explicit PostgreSQL engine is already present, and I found no configured legacy OCR/archive settings, encryption, barcode backend selection, or pre/post-consume scripts requiring migration. The in-repo paperless-gpt consumer uses unversioned API requests, which v3 serves with its supported default API version; upstream also reports its current line tested against the v3 beta.
Sources consulted:
- https://github.com/paperless-ngx/paperless-ngx/releases/tag/v3.0.0
- https://github.com/paperless-ngx/paperless-ngx/blob/v3.0.0/docs/migration-v3.md
- https://github.com/paperless-ngx/paperless-ngx/blob/v3.0.0/docs/configuration.md
- https://github.com/paperless-ngx/paperless-ngx/blob/v3.0.0/src/paperless/settings/__init__.py
- https://github.com/paperless-ngx/paperless-ngx/blob/v3.0.0/src/paperless/settings/custom.py
- paperless-ngx/paperless-ngx#11753
- paperless-ngx/paperless-ngx#12165
- paperless-ngx/paperless-ngx#12284
- icereed/paperless-gpt#990
af0aedf to
6e97d02
Compare
There was a problem hiding this comment.
paperless-ngx: v2.20.15 → v3.0.1
Verdict: Changes required before merge
This PR was previously reviewed at v3.0.0; Renovate rebased to v3.0.1 (a bugfix-only patch), so the v3.0.0 breaking-change findings still apply and are re-summarized here. No new breaking changes or deprecations are introduced between v3.0.0 and v3.0.1.
Breaking changes (re-applied from the v3.0.0 review, since the manifest has not been updated):
PAPERLESS_SECRET_KEYis mandatory in v3.0.0+, and startup raises an error when it is absent. This repository does not currently populate that key inkubernetes/apps/default/paperless/app/externalsecret.yaml, so the upgraded pod will not start. Fix: source a unique, non-default value through the existing ExternalSecret and expose it to the app; do not hard-code it.PAPERLESS_CONSUMER_POLLINGwas removed in v3.0.0 and replaced byPAPERLESS_CONSUMER_POLLING_INTERVAL. The deployment uses polling for its network-backed consume directory inkubernetes/apps/default/paperless/app/helmrelease.yaml; leaving the old key silently falls back to the v3 default of filesystem notifications, which may miss new documents. Fix: rename the key while preserving the configured interval.
Deprecations (re-applied from the v3.0.0 review):
- Advanced database options now use
PAPERLESS_DB_OPTIONS; the legacyPAPERLESS_DBSSLMODE,PAPERLESS_DBSSLROOTCERT,PAPERLESS_DBSSLCERT,PAPERLESS_DBSSLKEY,PAPERLESS_DB_POOLSIZE, andPAPERLESS_DB_TIMEOUTnames are deprecated for removal in v3.2. The manifest instead uses similarly namedPG*variables, which Paperless v3 still does not read as application settings. Move the intended TLS/pooling options intoPAPERLESS_DB_OPTIONSinkubernetes/apps/default/paperless/app/helmrelease.yamlso the application actually applies them.
New features worth adopting (re-applied from the v3.0.0 review):
- Tantivy replaces Whoosh and automatically rebuilds the incompatible search index on first startup. No manifest change is required, but the rollout should allow for the one-time rebuild and use a current backup.
- Duplicate documents are now accepted by default. If the previous rejection behavior is desired, set
PAPERLESS_CONSUMER_DELETE_DUPLICATES=trueinkubernetes/apps/default/paperless/app/helmrelease.yaml.
v3.0.1-only notes: The v3.0.0 → v3.0.1 delta is a bugfix patch — performance fixes (tag/custom-field counts, document list queries, selection_data), a RAG fix (source documents excluded from their own similarity results), UI fixes, a corrected DB engine string (postgres → postgresql, already explicit in this manifest), a migration split for mailrule maximum_age, and dependency bumps (postcss, pyasn1, uv group). No new configuration requirements, no breaking changes, no deprecations.
Sources consulted:
6e97d02 to
b742272
Compare
There was a problem hiding this comment.
paperless-ngx: v3.0.1 → v3.0.2 (incremental review)
Verdict: Changes required before merge
The current Renovate revision advances the previously reviewed target from v3.0.1 to v3.0.2. The v3.0.2 delta only repairs the broken Paperless mail migration introduced in v3.0.1: upstream restores the released migration graph and makes the data update/table alteration sequence non-atomic. This is beneficial for this PostgreSQL-backed deployment and introduces no new configuration requirements, breaking changes, deprecations, or features to adopt.
The actionable v3.0.0 findings from the earlier review remain unresolved in the current manifest, so the requested-changes verdict remains in effect; they are not repeated here.
Sources consulted:
…2.20.15 ➔ 3.0.3 )
b742272 to
923a53f
Compare
There was a problem hiding this comment.
paperless-ngx: v3.0.2 → v3.0.3 (incremental review)
Verdict: Changes required before merge
The Renovate target has advanced from the previously reviewed v3.0.2 to v3.0.3. The v3.0.3 delta introduces no new breaking changes or deprecations. It consists of targeted fixes for Gotenberg field preservation, mail-date handling, Celery tracebacks, search indexing for ownerless notes, and configurable allauth proxy-hop counting. The Gotenberg fix directly benefits this deployment and requires no configuration change. The bare-metal stale-file warning does not apply to this containerized rollout.
Upstream also documented that NumPy 2.4 requires x86-64-v2/SSE4.2 for the classifier. The repository’s documented cluster hardware satisfies that baseline, so no manifest change is indicated. On older hosts without SSE4.2, workers can crash with SIGILL; the supported mitigation is PAPERLESS_TRAIN_TASK_CRON=disable, at the cost of classifier-based suggestions.
The actionable v3.0.0 findings from the earlier review remain unresolved in the current manifest, so the requested-changes verdict remains in effect; they are not repeated here.
New features worth adopting:
PAPERLESS_ALLAUTH_TRUSTED_PROXY_COUNTcan now override the proxy-hop count when the number of trusted proxy addresses differs from the number of hops. The current Paperless configuration does not use the related trusted-proxy settings, so adoption is not presently needed.
Sources consulted:
- https://github.com/paperless-ngx/paperless-ngx/releases/tag/v3.0.3
- paperless-ngx/paperless-ngx@v3.0.2...v3.0.3
- https://github.com/paperless-ngx/paperless-ngx/blob/v3.0.3/docs/migration-v3.md
- paperless-ngx/paperless-ngx#13281
- paperless-ngx/paperless-ngx#13271
- paperless-ngx/paperless-ngx#13269
- paperless-ngx/paperless-ngx#13296
- numpy/numpy#27851
This PR contains the following updates:
2.20.15→3.0.3Release Notes
paperless-ngx/paperless-ngx (ghcr.io/paperless-ngx/paperless-ngx)
v3.0.3: Paperless-ngx v3.0.3Compare Source
paperless-ngx 3.0.3
Bug Fixes
Documentation
Maintenance
All App Changes
6 changes
v3.0.2: Paperless-ngx v3.0.2Compare Source
paperless-ngx 3.0.2
Bug Fixes
All App Changes
v3.0.1: Paperless-ngx v3.0.1Compare Source
paperless-ngx 3.0.1
Bug Fixes
Dependencies
All App Changes
17 changes
v3.0.0: Paperless-ngx v3.0.0Compare Source
paperless-ngx 3.0.0
Breaking Changes
Notable Changes
Features / Enhancements
Bug Fixes
saveon all fields @shamoon (#12992)Documentation
Configuration
📅 Schedule: (in timezone America/Chicago)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR has been generated by Mend Renovate.