Compare commits

..

3861 Commits

Author SHA1 Message Date
shamoon
0c89721133 Merge pull request #1567 from paperless-ngx/feature-process-names
Feature: Display django-q process names
2022-09-12 12:21:49 -07:00
Trenton H
e206687070 Updates django-q and add optional setproctitle to allow display 2022-09-12 12:18:41 -07:00
Trenton Holmes
cdb9c48545 Minor logging updates 2022-09-12 11:44:33 -07:00
Trenton Holmes
0b8eff9643 Extends the cleanup of image versions to the library images and all the registry cache images as well 2022-09-12 11:44:33 -07:00
shamoon
16882b8fa9 Merge pull request #1566 from paperless-ngx/fix/issue-1564
Fix document comments not updating on document navigation
2022-09-12 11:37:30 -07:00
Michael Shamoon
2afa5940e3 Fix live updating of comments on doc change 2022-09-12 08:35:13 -07:00
Michael Shamoon
8fa7bc3dab Remove user dropdown border 2022-09-12 08:35:04 -07:00
Michael Shamoon
4a9dc1e33a Update messages.xlf 2022-09-11 20:47:47 -07:00
Trenton Holmes
b0d842a370 Updates version string to 1.9.0-rc1
Signed-off-by: Trenton Holmes <holmes.trenton@gmail.com>
2022-09-11 15:34:10 -07:00
Trenton Holmes
194dda6d84 Merge branch 'main' into beta 2022-09-11 15:12:54 -07:00
Paperless-ngx Translation Bot [bot]
3267708097 New Crowdin updates (#1295)
Squashed commit of Crowdin updates

Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
2022-09-11 15:04:55 -07:00
shamoon
71a808c95a Merge pull request #543 from bckelly1/feature-mariadb-support
Feature: Add MariaDB support
2022-09-11 08:50:27 -07:00
Trenton Holmes
2c3c26edf1 Ensures the Pipfile.lock hash is up to date 2022-09-11 08:20:58 -07:00
Trenton Holmes
18a4ba7778 Removes optipng, added in a bad merge 2022-09-11 07:42:20 -07:00
Trenton Holmes
140e239bdb Fixes the shellcheck issues 2022-09-11 07:42:20 -07:00
Trenton Holmes
537e7c63f4 Combines the two database folders to a single variable during installation 2022-09-11 07:42:20 -07:00
Trenton Holmes
ed2e884de8 Fully qualifies the image and updates to Redis 7 2022-09-11 07:42:20 -07:00
Trenton Holmes
60980cb26a Adds the mysql Python dependency 2022-09-11 07:42:19 -07:00
Brian Kelly
3b84e34c8e re-order apt dependencies 2022-09-11 07:40:32 -07:00
Brian Kelly
ebdf9b55df correct the mariadb volume data path 2022-09-11 07:40:32 -07:00
Brian Kelly
f528b01de4 set paperless db user 2022-09-11 07:40:32 -07:00
Brian Kelly
6ae9a8f2be remove debug image reference 2022-09-11 07:40:32 -07:00
Brian Kelly
65cfd55027 rebase mariadb feature onto dev 2022-09-11 07:40:31 -07:00
Michael Shamoon
15d074d39c Include storage path in exporter + tests 2022-09-11 07:39:35 -07:00
shamoon
962d0ebb40 Merge pull request #1551 from paperless-ngx/chore-settings-cleanup
Chore: Cleanup and validate settings
2022-09-10 20:04:35 -07:00
Trenton Holmes
d408900a91 Adds validation and testing to cover some of the common settings 2022-09-09 11:48:57 -07:00
Trenton Holmes
0bf9e55ca7 Fixes a minor TODO in settings, and enables flake8 for settings.py 2022-09-09 11:42:50 -07:00
dependabot[bot]
55d36b39b1 Bump pikepdf from 5.5.0 to 5.6.1
Bumps [pikepdf](https://github.com/pikepdf/pikepdf) from 5.5.0 to 5.6.1.
- [Release notes](https://github.com/pikepdf/pikepdf/releases)
- [Commits](https://github.com/pikepdf/pikepdf/compare/v5.5.0...v5.6.1)

---
updated-dependencies:
- dependency-name: pikepdf
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-08 07:51:11 -07:00
Trenton Holmes
45fd01a688 Decrease the final size of the images containing .deb and .whl files 2022-09-08 07:31:00 -07:00
dependabot[bot]
1fda0782ae Bump black from 22.6.0 to 22.8.0
Bumps [black](https://github.com/psf/black) from 22.6.0 to 22.8.0.
- [Release notes](https://github.com/psf/black/releases)
- [Changelog](https://github.com/psf/black/blob/main/CHANGES.md)
- [Commits](https://github.com/psf/black/compare/22.6.0...22.8.0)

---
updated-dependencies:
- dependency-name: black
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-07 09:33:36 -07:00
dependabot[bot]
2680a83455 Bump tqdm from 4.64.0 to 4.64.1
Bumps [tqdm](https://github.com/tqdm/tqdm) from 4.64.0 to 4.64.1.
- [Release notes](https://github.com/tqdm/tqdm/releases)
- [Commits](https://github.com/tqdm/tqdm/compare/v4.64.0...v4.64.1)

---
updated-dependencies:
- dependency-name: tqdm
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-07 09:05:32 -07:00
dependabot[bot]
148e875523 Bump pytest from 7.1.2 to 7.1.3
Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.1.2 to 7.1.3.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/7.1.2...7.1.3)

---
updated-dependencies:
- dependency-name: pytest
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-07 07:57:41 -07:00
shamoon
b9e60e0145 Merge pull request #1528 from erikarvstedt/docs-fix-variable-defaults
docs/configuration: Fix binary variable defaults
2022-09-06 14:22:23 -07:00
Erik Arvstedt
03559454f6 docs/configuration: Fix binary variable defaults 2022-09-04 15:21:49 +02:00
dependabot[bot]
50ee1c0bd5 Bump tj-actions/changed-files from 24 to 29.0.2
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 24 to 29.0.2.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v24...v29.0.2)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-03 18:35:51 -07:00
shamoon
c6b13271cf Merge pull request #1500 from paperless-ngx/feature-gunicorn-tune
Bugfix: Better gunicorn settings for workers
2022-09-02 18:01:47 -07:00
dependabot[bot]
fd83e8f2a9 Merge pull request #1502 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/angular/cli-14.2.1 2022-09-02 08:40:58 +00:00
Michael Shamoon
5f7c724531 update jest-preset-angular 2022-09-02 01:26:05 -07:00
Michael Shamoon
31ebe2675b update angular core 2022-09-02 01:25:39 -07:00
Michael Shamoon
60d40cc2ce update angular cli 2022-09-02 01:24:14 -07:00
dependabot[bot]
6796cdf947 Bump @angular/cli from 14.1.0 to 14.2.1 in /src-ui
Bumps [@angular/cli](https://github.com/angular/angular-cli) from 14.1.0 to 14.2.1.
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/14.1.0...14.2.1)

---
updated-dependencies:
- dependency-name: "@angular/cli"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-02 08:15:36 +00:00
shamoon
6592a925c4 Merge pull request #1507 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/jest-environment-jsdom-29.0.1
Bump jest-environment-jsdom from 28.1.3 to 29.0.1 in /src-ui
2022-09-02 01:03:23 -07:00
dependabot[bot]
6d42b2a29d Bump jest-environment-jsdom from 28.1.3 to 29.0.1 in /src-ui
Bumps [jest-environment-jsdom](https://github.com/facebook/jest/tree/HEAD/packages/jest-environment-jsdom) from 28.1.3 to 29.0.1.
- [Release notes](https://github.com/facebook/jest/releases)
- [Changelog](https://github.com/facebook/jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/jest/commits/v29.0.1/packages/jest-environment-jsdom)

---
updated-dependencies:
- dependency-name: jest-environment-jsdom
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-02 07:41:29 +00:00
shamoon
6b4dccfbd5 Merge pull request #1506 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/types/node-18.7.14
Bump @types/node from 18.6.3 to 18.7.14 in /src-ui
2022-09-02 00:40:15 -07:00
dependabot[bot]
2582d325bc Bump @types/node from 18.6.3 to 18.7.14 in /src-ui
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 18.6.3 to 18.7.14.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-02 07:39:49 +00:00
shamoon
078814e77a Merge pull request #1505 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/angular-builders/jest-14.0.1
Bump @angular-builders/jest from 14.0.0 to 14.0.1 in /src-ui
2022-09-02 00:35:49 -07:00
dependabot[bot]
a80b413d38 Bump @angular-builders/jest from 14.0.0 to 14.0.1 in /src-ui
Bumps [@angular-builders/jest](https://github.com/just-jeb/angular-builders/tree/HEAD/packages/jest) from 14.0.0 to 14.0.1.
- [Release notes](https://github.com/just-jeb/angular-builders/releases)
- [Changelog](https://github.com/just-jeb/angular-builders/blob/master/packages/jest/CHANGELOG.md)
- [Commits](https://github.com/just-jeb/angular-builders/commits/@angular-builders/jest@14.0.1/packages/jest)

---
updated-dependencies:
- dependency-name: "@angular-builders/jest"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-02 07:33:26 +00:00
shamoon
8cb93da53e Merge pull request #1504 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/zone.js-0.11.8
Bump zone.js from 0.11.7 to 0.11.8 in /src-ui
2022-09-02 00:32:20 -07:00
dependabot[bot]
299ae2b828 Bump zone.js from 0.11.7 to 0.11.8 in /src-ui
Bumps [zone.js](https://github.com/angular/angular/tree/HEAD/packages/zone.js) from 0.11.7 to 0.11.8.
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/main/packages/zone.js/CHANGELOG.md)
- [Commits](https://github.com/angular/angular/commits/zone.js-0.11.8/packages/zone.js)

---
updated-dependencies:
- dependency-name: zone.js
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-02 07:30:09 +00:00
shamoon
96cf316eec Merge pull request #1494 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/ngx-color-8.0.2
Bump ngx-color from 8.0.1 to 8.0.2 in /src-ui
2022-09-02 00:17:09 -07:00
dependabot[bot]
4aebb8e153 Bump ngx-color from 8.0.1 to 8.0.2 in /src-ui
Bumps [ngx-color](https://github.com/scttcper/ngx-color) from 8.0.1 to 8.0.2.
- [Release notes](https://github.com/scttcper/ngx-color/releases)
- [Commits](https://github.com/scttcper/ngx-color/compare/v8.0.1...v8.0.2)

---
updated-dependencies:
- dependency-name: ngx-color
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-02 07:02:45 +00:00
shamoon
82c6942f09 Merge pull request #1496 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/cypress-10.7.0
Bump cypress from 10.3.1 to 10.7.0 in /src-ui
2022-09-02 00:01:35 -07:00
dependabot[bot]
ff280f0309 Bump cypress from 10.3.1 to 10.7.0 in /src-ui
Bumps [cypress](https://github.com/cypress-io/cypress) from 10.3.1 to 10.7.0.
- [Release notes](https://github.com/cypress-io/cypress/releases)
- [Changelog](https://github.com/cypress-io/cypress/blob/develop/.releaserc.base.js)
- [Commits](https://github.com/cypress-io/cypress/compare/v10.3.1...v10.7.0)

---
updated-dependencies:
- dependency-name: cypress
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-02 06:53:44 +00:00
shamoon
06d15a11c8 Merge pull request #1495 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/cypress/schematic-2.1.1
Bump @cypress/schematic from 2.0.0 to 2.1.1 in /src-ui
2022-09-01 23:52:39 -07:00
shamoon
4b3649ea94 Merge pull request #1498 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/popperjs/core-2.11.6
Bump @popperjs/core from 2.11.5 to 2.11.6 in /src-ui
2022-09-01 23:41:01 -07:00
Trenton Holmes
5ffb25b71d Tweaks gunicorn to preload the app and use shared memory for temporary fs 2022-09-01 18:04:12 -07:00
dependabot[bot]
8b28159e2d Bump @popperjs/core from 2.11.5 to 2.11.6 in /src-ui
Bumps [@popperjs/core](https://github.com/popperjs/popper-core) from 2.11.5 to 2.11.6.
- [Release notes](https://github.com/popperjs/popper-core/releases)
- [Commits](https://github.com/popperjs/popper-core/compare/v2.11.5...v2.11.6)

---
updated-dependencies:
- dependency-name: "@popperjs/core"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-01 20:12:56 +00:00
dependabot[bot]
99d6103617 Bump @cypress/schematic from 2.0.0 to 2.1.1 in /src-ui
Bumps [@cypress/schematic](https://github.com/cypress-io/cypress) from 2.0.0 to 2.1.1.
- [Release notes](https://github.com/cypress-io/cypress/releases)
- [Changelog](https://github.com/cypress-io/cypress/blob/develop/.releaserc.base.js)
- [Commits](https://github.com/cypress-io/cypress/compare/@cypress/schematic-v2.0.0...@cypress/schematic-v2.1.1)

---
updated-dependencies:
- dependency-name: "@cypress/schematic"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-01 20:09:45 +00:00
shamoon
a502fe7c5c Merge pull request #1492 from paperless-ngx/feature-imap-utf-improve
Feature: Simplify IMAP login for UTF-8
2022-09-01 09:35:26 -07:00
Trenton Holmes
bd18a57a5d Updates imap_tools and updates to use the new login method for UTF-8 2022-09-01 08:54:44 -07:00
viktor-c
3828d712bd Info about installing on subpath (#1350)
* Update docker-compose.env

* Update configuration.rst

example.com/paperless is not a subdomain, but a subpath. Also when hosting from a subdomain like paperless.example.com one does not have to change anything in the configuration, it just works, because paperless expects to be hosted at root, i.e. paperless.example.com
This however changes when paperless is not hosted at root anymore but for example at paperless.example.com/paperlessNgx

* Update docker-compose.env

* Apply suggestions from code review

Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
2022-08-31 16:36:13 -07:00
Quinn Casey
a6be010464 Merge pull request #1488 from paperless-ngx/fix/tasks-table-actions
Fix actions button in tasks table
2022-08-31 16:18:13 -07:00
Michael Shamoon
efe51b30fe Fix actions button in tasks table 2022-08-31 12:39:56 -07:00
Felix E
26019b9c17 Merge pull request #1482 from paperless-ngx/move-scanners-to-wiki
Docs: move scanner & software recs to GH wiki
2022-08-31 19:28:03 +02:00
Michael Shamoon
ebdd7afb67 Move scanner & software recs to GH wiki 2022-08-30 22:14:07 -07:00
Felix E
0c90b84a92 Merge pull request #1467 from tooomm/patch-1
Docs: Update mobile scanner section
2022-08-28 10:29:15 +02:00
tooomm
9c2265d1aa update mobile scanner section 2022-08-27 18:03:54 +02:00
Quinn Casey
8046a6f3a7 Merge pull request #1463 from paperless-ngx/fix/issue-1462
Fix: Add missing filter rule types to SavedViewFilterRule model & fix migrations
2022-08-26 12:35:29 -07:00
Michael Shamoon
ddff902291 Fix 1023, 1024 migrations, add savedviewfilterrule migration 2022-08-26 10:02:48 -07:00
Michael Shamoon
a406920ae6 Add missing filter rule types to SavedViewFilterRule model
And add note to filter-rule-type.ts
2022-08-26 10:02:48 -07:00
Quinn Casey
44e596b0c4 Merge pull request #1451 from paperless-ngx/feature-better-redo-ocr
Feature: Even better re-do of OCR
2022-08-25 17:01:54 -07:00
shamoon
2b1c8c8d9a Merge pull request #1375 from tim-vogel/add_comments
Feature: document comments
2022-08-25 11:48:31 -07:00
shamoon
d40c13420d Merge pull request #1367 from Eckii24/feat/date-suggestions
Adding date suggestions to the documents details view
2022-08-25 11:47:37 -07:00
Trenton Holmes
8ad2f7daf0 Locks scipy to 1.8.1, allows some other minor version updates 2022-08-25 11:34:00 -07:00
shamoon
696ebf545f Revert "Bump sphinx from 5.0.2 to 5.1.1" 2022-08-25 11:34:00 -07:00
Quinn Casey
ed515f4e36 Merge pull request #1460 from paperless-ngx/fix/paperless-conf-typo
Fix paperless.conf.example typo
2022-08-25 08:39:53 -07:00
Quinn Casey
06a4949266 Fix minor duplicate/incorrect conf key 2022-08-25 08:36:48 -07:00
shamoon
f50a01e118 Merge pull request #1297 from paperless-ngx/dependabot/pip/dev/sphinx-5.1.1
Bump sphinx from 5.0.2 to 5.1.1
2022-08-25 08:33:40 -07:00
shamoon
09512be1ad Merge pull request #1301 from paperless-ngx/fix-release-drafter
[CI] Fix release drafter issues
2022-08-25 08:25:28 -07:00
shamoon
bb951ad860 Merge pull request #1421 from paperless-ngx/feature-consumer-event-driven
Feature: Event driven consumer
2022-08-25 08:16:47 -07:00
Michael Shamoon
858ae909e8 Default PAPERLESS_NUMBER_OF_SUGGESTED_DATES to 3 2022-08-25 08:03:38 -07:00
Quinn Casey
1692bac3fe Merge pull request #1442 from paperless-ngx/fix/skip-archive-still-archiving
Bugfix: Fixes the creation of an archive file, even if noarchive was specified
2022-08-25 06:23:10 -07:00
Michael Shamoon
cce1595c3d Fix CodeQL warnings 2022-08-24 14:24:10 -07:00
Trenton Holmes
67bb140eef Finalizes testing of the delete comment 2022-08-24 14:24:10 -07:00
Trenton Holmes
6d5d308d6c Starts on implementing tests for the new API 2022-08-24 14:24:10 -07:00
Trenton Holmes
d39b4ae8cb Merges the migration branches 2022-08-24 14:24:10 -07:00
Michael Shamoon
0f4b118b61 Basic verification of Comment export & exporter comment tuple fix
From oprhaned commits b1855a4b7a
53f21574fd

Co-Authored-By: Trenton Holmes <797416+stumpylog@users.noreply.github.com>
2022-08-24 14:24:10 -07:00
Michael Shamoon
f5f2240828 Add frontend tests for comments 2022-08-24 14:24:10 -07:00
Mark Stenglein
66593a28f5 docs: scanners: add Brother ads4700w
I've tested Paperless with the ADS-4700W and it works great.

This commit adds the recommendation.
2022-08-24 08:57:45 -07:00
Michael Shamoon
ba1cdd5914 Update messages.xlf 2022-08-23 19:22:30 -07:00
Michael Shamoon
3f536552a6 Move add comment to top of comments list 2022-08-23 19:22:30 -07:00
Michael Shamoon
1d2282df9e Cleanup frontend comment service & other code
[ci skip]
2022-08-23 19:20:08 -07:00
Michael Shamoon
1b56ffd0c0 Rework comment UI
Add error popups, text field validation, move form, move comment header to footer, updated styling
2022-08-23 19:20:08 -07:00
Michael Shamoon
d5018af2a3 python code style 2022-08-23 19:20:08 -07:00
Michael Shamoon
5c1e09cc48 Refactor comment UI code
And run prettier
2022-08-23 19:20:08 -07:00
Michael Shamoon
6d956ac13b fix migration dependency
and run code style
2022-08-23 19:19:21 -07:00
Michael Shamoon
865fbbd15c Missed PAPERLESS_COMMENTS_ENABLED code 2022-08-23 19:19:21 -07:00
shamoon
97cfd0085e Remove faux test file 2022-08-23 19:19:21 -07:00
Michael Shamoon
f20f200c8d Fix comment service method signature
and run prettier over file
2022-08-23 19:19:21 -07:00
Michael Shamoon
78bd424ecb Remove faux testing file 2022-08-23 19:19:21 -07:00
Michael Shamoon
6fa32c36e9 Use frontend settings instead of env variable 2022-08-23 19:19:21 -07:00
tim-vogel
817882ff6f add comment function 2022-08-23 19:19:21 -07:00
tooomm
d1e8299010 typo 2022-08-23 19:18:45 -07:00
dependabot[bot]
42c50c4e0b Bump sphinx from 5.0.2 to 5.1.1
Bumps [sphinx](https://github.com/sphinx-doc/sphinx) from 5.0.2 to 5.1.1.
- [Release notes](https://github.com/sphinx-doc/sphinx/releases)
- [Changelog](https://github.com/sphinx-doc/sphinx/blob/5.x/CHANGES)
- [Commits](https://github.com/sphinx-doc/sphinx/compare/v5.0.2...v5.1.1)

---
updated-dependencies:
- dependency-name: sphinx
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-22 12:37:59 +00:00
shamoon
c151db6e21 Merge pull request #1446 from paperless-ngx/feature-storage-path-rematch
Feature: Adds storage paths to re-tagger command
2022-08-21 20:07:06 -07:00
shamoon
7844537355 Merge pull request #1440 from GwynHannay/feature-orig-filename-metadata
Feature: Preserve original filename in metadata
2022-08-21 20:05:25 -07:00
Quinn Casey
a414208327 Merge pull request #1445 from paperless-ngx/library-deps-update
Chore: Bump Python dependencies
2022-08-21 18:45:58 -07:00
Trenton Holmes
ab761e837c Implements a better re-do of OCR by making the document archiver function common. Actually creates updated file now 2022-08-21 18:20:59 -07:00
Trenton Holmes
c8e838e3a0 Adds the storage paths to the re-tagger command 2022-08-21 18:01:19 -07:00
Trenton Holmes
9b24cf7591 Also provide the original file name to the post consumption script 2022-08-21 16:16:28 -07:00
Trenton Holmes
5e3cdcdd6e Bumps all library versions which are currently working 2022-08-21 08:34:40 -07:00
Michael Shamoon
baeb2a074a Add original filename to frontend doc detail metadata 2022-08-21 08:06:56 -07:00
Zerteax
a56de4547c Changes to Redis documentation (#1441)
* Added more description in PAPERLESS_REDIS

* More Information on Redis

* Update configuration.rst

* Changed <ip> to <host>

Same as in the Documentation of Redis

* Edited the link

Linking directly to the Securing Redis part
2022-08-21 07:27:45 -07:00
Gwyn Hannay
e3cc5c3013 format code 2022-08-20 14:31:30 -07:00
Gwyn Hannay
4194b248b9 create migration for original filename 2022-08-20 14:30:40 -07:00
Gwyn Hannay
3fcbd8f3ac update files and model to include new field 2022-08-20 14:30:14 -07:00
Trenton Holmes
b3b2519bf0 Fixes the creation of an archive file, even if noarchive was specified 2022-08-20 13:47:56 -07:00
Stefan
fccea022fa adapt test to respect gmail_label keyword 2022-08-20 13:15:38 -07:00
Stefan
d80d5e4e70 fix debug output 2022-08-20 13:15:38 -07:00
Stefan
f1e93eb70a Ignore tagged emails from gmail to avoid duplicated documents. 2022-08-20 13:15:38 -07:00
Stefan
260b709296 add test for gmail account tag handling 2022-08-20 13:15:38 -07:00
Stefan
9bb762fc8f fix mail tests 2022-08-20 13:15:38 -07:00
Stefan
5c49bbfc73 fix formatting 2022-08-20 13:15:38 -07:00
Stefan
edabf208bc Handle tags for gmail email accounts
like mentioned here: https://github.com/ikvk/imap_tools/issues/174
2022-08-20 13:15:38 -07:00
Quinn Casey
0878a199f4 Merge pull request #1436 from tribut/redis-image
Update redis image
2022-08-18 08:03:19 -07:00
Felix Eckhofer
eec1f03f86 Use redis image tag :7 2022-08-18 11:47:47 +02:00
Quinn Casey
a4c4b81297 Manually link authors only in docs/changelog.md 2022-08-17 08:30:40 -07:00
Felix E
a5f9c8f651 Merge pull request #1430 from glassbox-sco/patch-1
Update scanners.rst
2022-08-17 08:31:51 +02:00
Quinn Casey
1ec7351842 Minor doc fixes 2022-08-16 19:44:48 -07:00
glassbox-sco
f2cab81aed Update scanners.rst 2022-08-17 00:09:21 +01:00
Dennis Gaida
9cbc74ebb2 remove redis URL from log 2022-08-16 12:41:52 -07:00
Dennis Gaida
3d36d0445c Hide credentials from log 2022-08-16 12:41:52 -07:00
Dennis Gaida
f4fece5550 PAPERLESS_REDIS may be set via docker secrets
Best practice is for redis to be at least password protected: https://redis.io/docs/getting-started/.

Paperless uses `Redis.from_url` (5fe435048b/docker/wait-for-redis.py (L24)) to establish a connection to redis which already enables us to use username/password, e.g. `redis://username:password@redis:6379`.

The redis connection string therefore is a secret and needs to be able to leverage docker secrets, hence this PR.
2022-08-16 12:41:52 -07:00
Quinn Casey
6133f745b7 Merge pull request #1415 from derlucas/main
Update scanners.rst
2022-08-15 06:47:21 -07:00
Quinn Casey
02456b271b Fix incorrect double quote on string 2022-08-15 06:27:08 -07:00
Trenton Holmes
ad1f5ae081 Corrects the timeout's interaction with files waiting to be consumed 2022-08-14 17:47:59 -07:00
Trenton Holmes
86358d5561 Attempts to make production consumer more event driven while still allowing unit testing 2022-08-14 17:47:59 -07:00
shamoon
87953cb98a Merge pull request #1412 from paperless-ngx/fix/created-date-not-required
Fix: `created_date` should not be required
2022-08-14 16:06:48 -07:00
Trenton Holmes
f58e0041ce Resets to a last known working pipenv version 2022-08-14 16:01:22 -07:00
Michael Shamoon
8183de4902 created_date is not supposed to be required 2022-08-14 00:58:31 -07:00
Lucas Pleß
a8c575147b Update scanners.rst
added Brother ADS-4300N. I tested it and can recommend the Device. It scans fast and reliable.
2022-08-13 22:52:17 +02:00
shamoon
09fcc28ded Merge pull request #1397 from paperless-ngx/chore/remove-dependabot-from-projects
Chore: Exclude dependabot PRs from Project, set status to "Needs Review"
2022-08-13 07:27:50 -07:00
Quinn Casey
22fb659b72 Set status of new PRs to "Needs Review" 2022-08-11 10:10:08 -07:00
Quinn Casey
40ae184c4e Exclude dependabot PRs from project 2022-08-11 10:03:37 -07:00
Quinn Casey
18a2a41682 Use fork of release-drafter to exclude prereleases 2022-08-11 09:49:04 -07:00
Quinn Casey
4faff70b5d Merge pull request #1396 from paperless-ngx/chore/add-autolabeler
Chore: Add `autolabeler` to label PRs based on `ref` and title
2022-08-11 09:46:24 -07:00
Quinn Casey
8d3361766d Draft more comprehensive changelog 2022-08-10 17:48:56 -07:00
Quinn Casey
5dd4d0c370 Add documentation as included label 2022-08-10 17:48:56 -07:00
Quinn Casey
a0617c1fad CI: Add autolabeler 2022-08-10 17:19:13 -07:00
Quinn Casey
9e9593b899 Merge pull request #1391 from paperless-ngx/chore-update-deps
Chore: Update Python deps
2022-08-10 09:31:00 -07:00
Trenton Holmes
89b7270233 Updates some deps, skipping scipy 2022-08-10 08:45:49 -07:00
shamoon
3af4808864 Merge pull request #1387 from paperless-ngx/bugfix-task-error-prevents-consume
Bugfix: Catch all exceptions during the task signals
2022-08-10 07:09:29 -07:00
Trenton Holmes
d4c3b7614d Catch all exceptions during the task creation so some error here, but not with a file, will allow consumption to run 2022-08-09 15:50:03 -07:00
Quinn Casey
676ba9ca22 Merge pull request #1376 from paperless-ngx/fix/saved-view-page-param
Fix: saved view page parameter
2022-08-08 10:06:11 -07:00
Michael Shamoon
d0f5cc839f fix navigation to /documents breaks history 2022-08-08 00:05:19 -07:00
Michael Shamoon
110bd65c20 fix pagination, refactor 2022-08-08 00:03:15 -07:00
shamoon
ef0080b0a9 Merge pull request #1369 from paperless-ngx/fix/browser-unsaved-changes
Fix: Correct browser unsaved changes warning
2022-08-07 15:43:10 -07:00
shamoon
a81dc00ccf Merge pull request #1370 from paperless-ngx/fix/date-pasting
Fix: correct date pasting with some non-US formats
2022-08-07 15:42:00 -07:00
Quinn Casey
765fea7f7e Merge pull request #1362 from paperless-ngx/ci-file-health
Chore: use pre-commit in the Ci workflow
2022-08-07 13:33:34 -07:00
Michael Shamoon
a0f48130c0 Fix some date pasting cases 2022-08-07 08:44:39 -07:00
Michael Shamoon
7e2c693c8a Make date suggestions timezone-unaware 2022-08-07 08:37:18 -07:00
Michael Shamoon
7396e4c326 simplify date value format 2022-08-06 21:19:06 -07:00
Michael Shamoon
0175eab031 Fix browser unsaved changes with custom guard 2022-08-06 20:23:05 -07:00
Matthias Eck
3d0a26fdb1 fix(parsers|test_api): fix failed tests 2022-08-06 19:19:10 +02:00
Matthias Eck
c52d18da1f feat(date.component): adding suggestions to frontend 2022-08-06 13:03:20 +02:00
Matthias Eck
e0f341938a docs(configuration.rst): add doc for NUMBER_OF_SUGGESTED_DATES 2022-08-06 13:03:20 +02:00
Matthias Eck
a037e562b2 test(test-date-parsing): test parsing of multiple dates 2022-08-06 13:03:20 +02:00
Matthias Eck
f1084cbdcf feat(settings): add setting to set number of suggested dates 2022-08-06 13:03:20 +02:00
Matthias Eck
f6e4339069 test(test-date-parsing): test parsing of multiple dates 2022-08-06 13:03:20 +02:00
Matthias Eck
a754c6047d test(test-api): update existing tests for suggestions 2022-08-06 13:03:20 +02:00
Matthias Eck
a5d2ae2588 feat(parsers): add generator for date parsing 2022-08-06 13:03:20 +02:00
Michael Shamoon
a6f3378c21 Handle page parameter on saved views 2022-08-05 23:35:13 -07:00
Quinn Casey
ca75fb5664 Merge pull request #1358 from paperless-ngx/bugfix-ip-bind-addr
Bugfix: Allow webserver bind address to be configured
2022-08-04 12:35:28 -07:00
Trenton Holmes
32861ad592 Removes no longer needed files 2022-08-04 11:11:49 -07:00
Trenton Holmes
ada8516803 Allows the webserver binding address to be configured via the environment 2022-08-04 07:43:23 -07:00
Trenton Holmes
d5c27a95aa Fixes minor linting 2022-08-03 13:26:04 -07:00
Trenton Holmes
6b8a21d2b0 Test pre-commit action 2022-08-03 13:20:02 -07:00
Trenton Holmes
cb7e6f8cd0 Adds a pull of all images for the main image after the pruning 2022-08-03 10:19:15 -07:00
Trenton Holmes
f48a2cb65e Fixes the untagged image deletion so it will not remove images which are referred to by a multi-arch manifest image 2022-08-03 10:19:15 -07:00
Trenton Holmes
0fdd3d56f4 Changes the cleanup images workflow so it uses a OAuth token with the correct scope (GITHUB_TOKEN is not enough). Also prevents running if the token is not defined and generally does commenting/cleanups" 2022-08-03 10:19:15 -07:00
Quinn Casey
173934258c Merge pull request #1354 from paperless-ngx/bugfix-exception-chains
Bugfix: Chain exceptions during exception handling
2022-08-03 09:59:26 -07:00
Trenton Holmes
b70e21a6d5 When raising an exception during exception handling, chain them together for slightly cleaner logs 2022-08-03 09:00:56 -07:00
shamoon
cafb884991 Merge pull request #1352 from tooomm/patch-1
docs: fix small typo
2022-08-03 06:42:13 -07:00
tooomm
94b09614d9 typo 2022-08-03 15:00:23 +02:00
shamoon
7488505e37 Update dev version string
[ci skip]
2022-08-02 13:28:29 -07:00
Trenton Holmes
641ff9a71d Revert "Bump watchfiles from 0.15.0 to 0.16.1"
This reverts commit b596502f74.
2022-08-02 11:25:01 -07:00
dependabot[bot]
b596502f74 Bump watchfiles from 0.15.0 to 0.16.1
Bumps [watchfiles](https://github.com/samuelcolvin/watchfiles) from 0.15.0 to 0.16.1.
- [Release notes](https://github.com/samuelcolvin/watchfiles/releases)
- [Commits](https://github.com/samuelcolvin/watchfiles/compare/v0.15.0...v0.16.1)

---
updated-dependencies:
- dependency-name: watchfiles
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-02 08:46:02 -07:00
dependabot[bot]
4fbd760005 Bump leonsteinhaeuser/project-beta-automations from 1.2.1 to 1.3.0
Bumps [leonsteinhaeuser/project-beta-automations](https://github.com/leonsteinhaeuser/project-beta-automations) from 1.2.1 to 1.3.0.
- [Release notes](https://github.com/leonsteinhaeuser/project-beta-automations/releases)
- [Commits](https://github.com/leonsteinhaeuser/project-beta-automations/compare/v1.2.1...v1.3.0)

---
updated-dependencies:
- dependency-name: leonsteinhaeuser/project-beta-automations
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-02 08:10:45 -07:00
dependabot[bot]
6a5ac15b07 Bump tj-actions/changed-files from 23.1 to 24
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 23.1 to 24.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v23.1...v24)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-02 07:55:28 -07:00
shamoon
57b419fa87 Merge pull request #1342 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/cypress-10.3.1
Bump cypress from 10.3.0 to 10.3.1 in /src-ui
2022-08-01 15:49:45 -07:00
shamoon
52ce54930b Merge pull request #1343 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/ngx-color-8.0.1
Bump ngx-color from 7.3.3 to 8.0.1 in /src-ui
2022-08-01 13:59:15 -07:00
dependabot[bot]
fa9898ebe1 Bump ngx-color from 7.3.3 to 8.0.1 in /src-ui
Bumps [ngx-color](https://github.com/scttcper/ngx-color) from 7.3.3 to 8.0.1.
- [Release notes](https://github.com/scttcper/ngx-color/releases)
- [Commits](https://github.com/scttcper/ngx-color/compare/v7.3.3...v8.0.1)

---
updated-dependencies:
- dependency-name: ngx-color
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-01 20:56:48 +00:00
shamoon
de4b3c39b9 Merge pull request #1330 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/angular/cli-14.1.0
Bump @angular/cli from 14.0.4 to 14.1.0 in /src-ui
2022-08-01 13:55:41 -07:00
Michael Shamoon
232e358a34 bump all angular packages together 2022-08-01 13:54:09 -07:00
dependabot[bot]
a0d35f9262 Bump @angular/cli from 14.0.4 to 14.1.0 in /src-ui
Bumps [@angular/cli](https://github.com/angular/angular-cli) from 14.0.4 to 14.1.0.
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/14.0.4...14.1.0)

---
updated-dependencies:
- dependency-name: "@angular/cli"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-01 20:46:55 +00:00
dependabot[bot]
8883ef81dc Bump cypress from 10.3.0 to 10.3.1 in /src-ui
Bumps [cypress](https://github.com/cypress-io/cypress) from 10.3.0 to 10.3.1.
- [Release notes](https://github.com/cypress-io/cypress/releases)
- [Changelog](https://github.com/cypress-io/cypress/blob/develop/.releaserc.base.js)
- [Commits](https://github.com/cypress-io/cypress/compare/v10.3.0...v10.3.1)

---
updated-dependencies:
- dependency-name: cypress
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-01 20:46:27 +00:00
shamoon
39a425eca4 Merge pull request #1341 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/types/node-18.6.3
Bump @types/node from 18.0.0 to 18.6.3 in /src-ui
2022-08-01 13:45:09 -07:00
dependabot[bot]
e31d383cfc Bump @types/node from 18.0.0 to 18.6.3 in /src-ui
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 18.0.0 to 18.6.3.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-01 20:44:37 +00:00
shamoon
cb104b60f4 Merge pull request #1340 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/jest-preset-angular-12.2.0
Bump jest-preset-angular from 12.1.0 to 12.2.0 in /src-ui
2022-08-01 13:43:47 -07:00
dependabot[bot]
b88963c900 Bump jest-preset-angular from 12.1.0 to 12.2.0 in /src-ui
Bumps [jest-preset-angular](https://github.com/thymikee/jest-preset-angular) from 12.1.0 to 12.2.0.
- [Release notes](https://github.com/thymikee/jest-preset-angular/releases)
- [Changelog](https://github.com/thymikee/jest-preset-angular/blob/main/CHANGELOG.md)
- [Commits](https://github.com/thymikee/jest-preset-angular/compare/v12.1.0...v12.2.0)

---
updated-dependencies:
- dependency-name: jest-preset-angular
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-01 20:39:58 +00:00
shamoon
3597abbcd7 Merge pull request #1326 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/concurrently-7.3.0
Bump concurrently from 7.2.2 to 7.3.0 in /src-ui
2022-08-01 13:38:44 -07:00
dependabot[bot]
0f780b6271 Bump concurrently from 7.2.2 to 7.3.0 in /src-ui
Bumps [concurrently](https://github.com/open-cli-tools/concurrently) from 7.2.2 to 7.3.0.
- [Release notes](https://github.com/open-cli-tools/concurrently/releases)
- [Commits](https://github.com/open-cli-tools/concurrently/compare/v7.2.2...v7.3.0)

---
updated-dependencies:
- dependency-name: concurrently
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-01 20:38:16 +00:00
shamoon
f1ce4e1f5b Merge pull request #1337 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/ng2-pdf-viewer-9.1.0
Bump ng2-pdf-viewer from 9.0.0 to 9.1.0 in /src-ui
2022-08-01 13:38:11 -07:00
dependabot[bot]
5d0d800c0a Bump ng2-pdf-viewer from 9.0.0 to 9.1.0 in /src-ui
Bumps [ng2-pdf-viewer](https://github.com/VadimDez/ng2-pdf-viewer) from 9.0.0 to 9.1.0.
- [Release notes](https://github.com/VadimDez/ng2-pdf-viewer/releases)
- [Changelog](https://github.com/VadimDez/ng2-pdf-viewer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/VadimDez/ng2-pdf-viewer/compare/9.0.0...9.1.0)

---
updated-dependencies:
- dependency-name: ng2-pdf-viewer
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-01 20:37:34 +00:00
shamoon
3b330ef22f Merge pull request #1336 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/jest-environment-jsdom-28.1.3
Bump jest-environment-jsdom from 28.1.2 to 28.1.3 in /src-ui
2022-08-01 13:36:22 -07:00
dependabot[bot]
873bb4fd2d Bump jest-environment-jsdom from 28.1.2 to 28.1.3 in /src-ui
Bumps [jest-environment-jsdom](https://github.com/facebook/jest/tree/HEAD/packages/jest-environment-jsdom) from 28.1.2 to 28.1.3.
- [Release notes](https://github.com/facebook/jest/releases)
- [Changelog](https://github.com/facebook/jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/jest/commits/v28.1.3/packages/jest-environment-jsdom)

---
updated-dependencies:
- dependency-name: jest-environment-jsdom
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-01 20:35:56 +00:00
shamoon
3973df64ba Merge pull request #1331 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/ngx-file-drop-14.0.1
Bump ngx-file-drop from 13.0.0 to 14.0.1 in /src-ui
2022-08-01 13:35:04 -07:00
shamoon
8cda62ae92 Merge pull request #1333 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/jest-and-types/jest-28.1.3
Bump jest and @types/jest in /src-ui
2022-08-01 13:29:31 -07:00
dependabot[bot]
b8e1a49f85 Bump jest and @types/jest in /src-ui
Bumps [jest](https://github.com/facebook/jest/tree/HEAD/packages/jest) and [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest). These dependencies needed to be updated together.

Updates `jest` from 28.1.2 to 28.1.3
- [Release notes](https://github.com/facebook/jest/releases)
- [Changelog](https://github.com/facebook/jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/jest/commits/v28.1.3/packages/jest)

Updates `@types/jest` from 28.1.4 to 28.1.6
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest)

---
updated-dependencies:
- dependency-name: jest
  dependency-type: direct:development
  update-type: version-update:semver-patch
- dependency-name: "@types/jest"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-01 20:25:09 +00:00
shamoon
f9147b5405 Merge pull request #1327 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/bootstrap-5.2.0
Bump bootstrap from 5.1.3 to 5.2.0 in /src-ui
2022-08-01 13:21:46 -07:00
dependabot[bot]
878f727a2c Bump ngx-file-drop from 13.0.0 to 14.0.1 in /src-ui
Bumps [ngx-file-drop](https://github.com/georgipeltekov/ngx-file-drop) from 13.0.0 to 14.0.1.
- [Release notes](https://github.com/georgipeltekov/ngx-file-drop/releases)
- [Changelog](https://github.com/georgipeltekov/ngx-file-drop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/georgipeltekov/ngx-file-drop/compare/v13.0.0...v14.0.1)

---
updated-dependencies:
- dependency-name: ngx-file-drop
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-01 20:19:33 +00:00
shamoon
0169ee4885 Merge pull request #1324 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/typescript-4.7.4
Bump typescript from 4.6.4 to 4.7.4 in /src-ui
2022-08-01 13:18:12 -07:00
dependabot[bot]
904faf27c2 Bump typescript from 4.6.4 to 4.7.4 in /src-ui
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.6.4 to 4.7.4.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.6.4...v4.7.4)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-01 20:15:13 +00:00
shamoon
d2a38fe05c Merge pull request #1325 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/ts-node-10.9.1
Bump ts-node from 10.8.1 to 10.9.1 in /src-ui
2022-08-01 13:13:49 -07:00
shamoon
9a5d06239f Merge pull request #1323 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/rxjs-7.5.6
Bump rxjs from 7.5.5 to 7.5.6 in /src-ui
2022-08-01 13:12:06 -07:00
dependabot[bot]
a1fad471a9 Bump bootstrap from 5.1.3 to 5.2.0 in /src-ui
Bumps [bootstrap](https://github.com/twbs/bootstrap) from 5.1.3 to 5.2.0.
- [Release notes](https://github.com/twbs/bootstrap/releases)
- [Commits](https://github.com/twbs/bootstrap/compare/v5.1.3...v5.2.0)

---
updated-dependencies:
- dependency-name: bootstrap
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-01 20:09:16 +00:00
dependabot[bot]
57a97365b6 Bump ts-node from 10.8.1 to 10.9.1 in /src-ui
Bumps [ts-node](https://github.com/TypeStrong/ts-node) from 10.8.1 to 10.9.1.
- [Release notes](https://github.com/TypeStrong/ts-node/releases)
- [Commits](https://github.com/TypeStrong/ts-node/compare/v10.8.1...v10.9.1)

---
updated-dependencies:
- dependency-name: ts-node
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-01 20:08:43 +00:00
dependabot[bot]
cce36906b1 Bump rxjs from 7.5.5 to 7.5.6 in /src-ui
Bumps [rxjs](https://github.com/reactivex/rxjs) from 7.5.5 to 7.5.6.
- [Release notes](https://github.com/reactivex/rxjs/releases)
- [Changelog](https://github.com/ReactiveX/rxjs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/reactivex/rxjs/compare/7.5.5...7.5.6)

---
updated-dependencies:
- dependency-name: rxjs
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-01 20:08:06 +00:00
Quinn Casey
da99ba114b Merge pull request #1305 from paperless-ngx/fix/1299+1300
Fix: missing tooltip translation & filter editor wrapping
2022-07-31 20:40:48 -07:00
Michael Shamoon
9a66bd3c34 Better filter editor wrapping across display sizes
Closes #1299
2022-07-31 20:25:21 -07:00
Quinn Casey
0d23b33c0e Merge pull request #1316 from paperless-ngx/feature-docker-pipenv
Feature: Remove requirements.txt and use pipenv everywhere
2022-07-31 18:46:59 -07:00
Trenton Holmes
e721092c2a Changes the Dockerfile to use pipenv and the releases to use pipenv, removing the need for a requirements.txt 2022-07-30 13:41:08 -07:00
Quinn Casey
8c7afc5646 Merge branch 'main' into dev 2022-07-30 08:41:36 -07:00
Michael Shamoon
7752d83781 Fix "suggest an idea" not using translation
Closes #1300
2022-07-29 14:48:11 -07:00
Quinn Casey
4b45e94beb Merge pull request #1303 from paperless-ngx/bugfix-barcode-and-dirs
Bugfix: Interaction between barcode and directories as tags
2022-07-29 12:25:40 -07:00
Trenton Holmes
2a4ec13c8e Fixes issue where barcode containing files wouldn't be placed into the same directory after splitting 2022-07-29 10:22:54 -07:00
Michael Shamoon
20671c718e Run prettier over changelog.md
[ci skip]
2022-07-28 20:00:59 -07:00
github-actions[bot]
e73db49ed0 [Documentation] Add v1.8.0 changelog (#1298)
* Changelog  - GHA

* Update changelog.md

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
2022-07-28 19:52:13 -07:00
Michael Shamoon
0553824df2 Revert "Update changelog.md"
This reverts commit 3a031084f3.
2022-07-28 15:41:39 -07:00
Michael Shamoon
71bc2c5944 Add -dev to version string 2022-07-28 15:36:55 -07:00
Michael Shamoon
05feadbb7a Squashed commit of the following:
commit a4709b1175
Author: Michael Shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Thu Jul 28 15:36:13 2022 -0700

    Update stale.yml

    [skip ci]

commit 3a031084f3
Author: Michael Shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Thu Jul 28 15:24:23 2022 -0700

    Update changelog.md

commit 0c517e5351
Author: Michael Shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Thu Jul 28 15:18:49 2022 -0700

    v1.8.0 version strings

commit 5fe435048b
Merge: 278cedf3 a722bfd0
Author: shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Thu Jul 28 15:17:30 2022 -0700

    Merge pull request #1240 from paperless-ngx/beta

    [Beta] Paperless-ngx v1.8.0 Release Candidate 1

commit a722bfd099
Author: Paperless-ngx Translation Bot [bot] <99855517+paperless-l10n@users.noreply.github.com>
Date:   Thu Jul 28 07:46:12 2022 -0700

    New Crowdin updates (#1291)

    * New translations django.po (French)
    [ci skip]

    * New translations messages.xlf (French)
    [ci skip]

    * New translations django.po (French)
    [ci skip]

    * New translations messages.xlf (French)
    [ci skip]

    * New translations messages.xlf (Turkish)
    [ci skip]

    * New translations django.po (Turkish)
    [ci skip]

commit f3d99a5fdb
Merge: ca334770 79de0989
Author: shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Tue Jul 26 11:21:42 2022 -0700

    Merge pull request #1277 from paperless-ngx/fix/redo-ocr-button-on-edit

    Fix/feature: add redo ocr button to document edit view

commit 79de0989d5
Author: Michael Shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Tue Jul 26 09:54:05 2022 -0700

    fix button icon spacing on mobile

commit ca334770b7
Author: Paperless-ngx Translation Bot [bot] <99855517+paperless-l10n@users.noreply.github.com>
Date:   Tue Jul 26 09:45:21 2022 -0700

    New Crowdin updates (#1242)

    * New translations messages.xlf (Turkish)
    [ci skip]

    * New translations messages.xlf (German)
    [ci skip]

    * New translations django.po (German)
    [ci skip]

    * New translations messages.xlf (Italian)
    [ci skip]

    * New translations messages.xlf (Italian)
    [ci skip]

    * New translations messages.xlf (Finnish)
    [ci skip]

    * New translations messages.xlf (Finnish)
    [ci skip]

commit 1071357505
Merge: f32dfe02 ef790ca6
Author: shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Tue Jul 26 09:44:42 2022 -0700

    Merge pull request #1268 from paperless-ngx/bugfix-db-locked

    Bugfix: Adds configuration for database timeout, fixing database locked error

commit f32dfe0278
Merge: 611707a3 4e78ca5d
Author: shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Mon Jul 25 12:59:31 2022 -0700

    Merge pull request #1261 from paperless-ngx/fix/b1.8.0-ng-select-dropdowns

    Fix: dropdown selected items not visible again

commit 278cedf3d0
Merge: b141671d ecc4553e
Author: shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Mon Jul 25 09:25:52 2022 -0700

    Merge pull request #1272 from paperless-ngx/fix-1263

    Documentation: fix occasional code block color legibility

commit 45a6b5a436
Author: Michael Shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Sun Jul 24 20:15:26 2022 -0700

    Add redo OCR button to document edit

commit 611707a3d1
Merge: 2d88638d b4d20d9b
Author: shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Sun Jul 24 19:59:30 2022 -0700

    Merge pull request #1276 from paperless-ngx/bugfix-webp-import

    Bugfix: Document import doesn't convert thumbnails to WebP

commit b4d20d9b9a
Author: Trenton Holmes <holmes.trenton@gmail.com>
Date:   Sun Jul 24 10:22:53 2022 -0700

    Fixes document import copying PNG files to .webp extensions without actual conversion

commit ecc4553e67
Author: Michael Shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Fri Jul 22 15:10:33 2022 -0700

    fix occasional code block color legibility

commit ef790ca6f4
Author: Trenton Holmes <holmes.trenton@gmail.com>
Date:   Fri Jul 22 11:08:52 2022 -0700

    Fixes the copy and paste of the log line

commit 2d88638da7
Merge: 0e2e5f34 91ba0bd0
Author: shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Fri Jul 22 10:45:53 2022 -0700

    Merge pull request #1269 from paperless-ngx/beta-deps-final

    Chore: Locks dependencies to the final versions for the beta

commit 91ba0bd0af
Author: Trenton Holmes <holmes.trenton@gmail.com>
Date:   Fri Jul 22 08:53:02 2022 -0700

    Locks dependencies to the final versions for the beta

commit 0e2e5f3413
Author: Trenton Holmes <holmes.trenton@gmail.com>
Date:   Tue Jul 19 13:57:00 2022 -0700

    Creates utiliy to ensure all paths in settings are normalized and absolute

commit 7a99dcf693
Author: Trenton Holmes <holmes.trenton@gmail.com>
Date:   Thu Jul 21 08:02:11 2022 -0700

    Adds configuration for database timeout, documentation and troubleshotting suggestion

commit 4e78ca5d82
Author: Michael Shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Wed Jul 20 11:15:35 2022 -0700

    remove merge error ng-select css

commit 83de38e56f
Merge: f4be2e4f b1b6d50a
Author: shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Wed Jul 20 08:26:12 2022 -0700

    Merge pull request #1247 from paperless-ngx/bugfix-pikepdf-ocrmypdf-warnings

    Bugfix: Adds pngquant and jbig2dec to Docker image

commit f4be2e4fe7
Merge: 4444925d 16b0f7f9
Author: Quinn Casey <quinn@quinncasey.com>
Date:   Tue Jul 19 21:03:16 2022 -0700

    Merge pull request #1259 from paperless-ngx/chore-add-ci-hadolint

    Chore: Add Hadolint job to CI

commit 16b0f7f9ee
Author: Trenton Holmes <holmes.trenton@gmail.com>
Date:   Tue Jul 19 14:18:47 2022 -0700

    Removes a Dockerfile I can't find referenced anywhere

commit 27721aef71
Author: Trenton Holmes <holmes.trenton@gmail.com>
Date:   Tue Jul 19 14:01:47 2022 -0700

    Fixes and updates the Hadolint action version

commit 329a317fdf
Author: Trenton Holmes <holmes.trenton@gmail.com>
Date:   Tue Jul 19 13:54:33 2022 -0700

    Configure Hadolint in a single location for both hooks and CI

commit daad634894
Author: Trenton Holmes <holmes.trenton@gmail.com>
Date:   Fri Jul 15 13:45:23 2022 -0700

    Adds a CI job for hadolint over all the Dockerfiles, fixes the minor thing it complained about

commit 4444925dea
Merge: 4c697ab5 9c1ae96d
Author: shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Mon Jul 18 15:55:29 2022 -0700

    Merge pull request #1249 from paperless-ngx/fix-generated-changelog

    [CI] Fix automatic changelog generation on release

commit 9c1ae96d33
Author: Quinn Casey <quinn@quinncasey.com>
Date:   Mon Jul 18 09:48:03 2022 -0700

    Create PR for changelog instead of direct commit

commit b1b6d50af6
Author: Trenton Holmes <holmes.trenton@gmail.com>
Date:   Mon Jul 18 09:46:31 2022 -0700

    Adds a couple packages to the Docker image for ocrmypdf and pikepdf

commit 4c697ab50e
Author: Quinn Casey <quinn@quinncasey.com>
Date:   Sun Jul 17 15:23:28 2022 -0700

    Bump version to beta

commit b141671d90
Merge: 48dfbbeb 2ab2d912
Author: Quinn Casey <quinn@quinncasey.com>
Date:   Sun Jul 17 13:18:57 2022 -0700

    Merge pull request #1237 from tooomm/patch-1

    chore: Run stale bot only on certain labels

commit 2ab2d9127d
Author: shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Fri Jul 15 20:19:28 2022 -0700

    Use cant-reproduce for stale

commit 278453451e
Author: tooomm <tooomm@users.noreply.github.com>
Date:   Fri Jul 15 21:18:38 2022 +0200

    only run on certain labels

commit 48dfbbebc6
Merge: 8efb97ef e568b300
Author: shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Sun Jul 3 07:42:20 2022 -0700

    Merge pull request #1110 from paperless-ngx/update-issue-form

commit 8efb97ef4e
Author: shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Sat Jul 2 19:06:32 2022 -0700

    Update stale.yml

    [ci skip]

commit d8cda7fc1b
Author: shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Sat Jul 2 17:51:39 2022 -0700

    Use any-of-labels for stalebot

    [ci skip]

commit 68f0cf419b
Merge: 666b9385 26b12512
Author: Felix E <felix@eckhofer.com>
Date:   Mon Jun 20 14:25:59 2022 +0200

    Merge pull request #1148 from pReya/patch-1

    fix: update scanner capability

commit 26b12512b1
Author: Moritz Stückler <moritz.stueckler@gmail.com>
Date:   Mon Jun 20 12:06:54 2022 +0200

    fix: update scanner capability

    The Brother ADS-A1700W does indeed support SFTP. I've just bought it, and set it up like this.

commit e568b3000e
Author: shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Tue Jun 7 15:28:49 2022 -0700

    Add lsio to issue form

commit 666b938550
Merge: de5eaf1c 163231d3
Author: Quinn Casey <quinn@quinncasey.com>
Date:   Thu May 19 17:23:23 2022 -0700

    Merge pull request #990 from tooomm/patch-2

    Docs: Fix headings and add links to PRs in changelog

commit 163231d307
Author: tooomm <tooomm@users.noreply.github.com>
Date:   Thu May 19 23:12:40 2022 +0200

    Link issues, capitalization and minor fixes

commit e530750fc6
Author: tooomm <tooomm@users.noreply.github.com>
Date:   Thu May 19 22:05:43 2022 +0200

    update heading levels for v1.7.0
2022-07-28 15:36:24 -07:00
Michael Shamoon
a4709b1175 Update stale.yml
[skip ci]
2022-07-28 15:36:13 -07:00
Michael Shamoon
3a031084f3 Update changelog.md 2022-07-28 15:24:23 -07:00
Michael Shamoon
0c517e5351 v1.8.0 version strings 2022-07-28 15:18:49 -07:00
shamoon
5fe435048b Merge pull request #1240 from paperless-ngx/beta
[Beta] Paperless-ngx v1.8.0 Release Candidate 1
2022-07-28 15:17:30 -07:00
Paperless-ngx Translation Bot [bot]
a722bfd099 New Crowdin updates (#1291)
* New translations django.po (French)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations django.po (French)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]

* New translations django.po (Turkish)
[ci skip]
2022-07-28 07:46:12 -07:00
shamoon
f3d99a5fdb Merge pull request #1277 from paperless-ngx/fix/redo-ocr-button-on-edit
Fix/feature: add redo ocr button to document edit view
2022-07-26 11:21:42 -07:00
Michael Shamoon
79de0989d5 fix button icon spacing on mobile 2022-07-26 09:54:05 -07:00
Paperless-ngx Translation Bot [bot]
ca334770b7 New Crowdin updates (#1242)
* New translations messages.xlf (Turkish)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations django.po (German)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Finnish)
[ci skip]

* New translations messages.xlf (Finnish)
[ci skip]
2022-07-26 09:45:21 -07:00
shamoon
1071357505 Merge pull request #1268 from paperless-ngx/bugfix-db-locked
Bugfix: Adds configuration for database timeout, fixing database locked error
2022-07-26 09:44:42 -07:00
shamoon
f32dfe0278 Merge pull request #1261 from paperless-ngx/fix/b1.8.0-ng-select-dropdowns
Fix: dropdown selected items not visible again
2022-07-25 12:59:31 -07:00
shamoon
278cedf3d0 Merge pull request #1272 from paperless-ngx/fix-1263
Documentation: fix occasional code block color legibility
2022-07-25 09:25:52 -07:00
Michael Shamoon
45a6b5a436 Add redo OCR button to document edit 2022-07-24 20:15:26 -07:00
shamoon
611707a3d1 Merge pull request #1276 from paperless-ngx/bugfix-webp-import
Bugfix: Document import doesn't convert thumbnails to WebP
2022-07-24 19:59:30 -07:00
Trenton Holmes
b4d20d9b9a Fixes document import copying PNG files to .webp extensions without actual conversion 2022-07-24 10:22:53 -07:00
Michael Shamoon
ecc4553e67 fix occasional code block color legibility 2022-07-22 15:12:18 -07:00
Trenton Holmes
ef790ca6f4 Fixes the copy and paste of the log line 2022-07-22 11:08:52 -07:00
shamoon
2d88638da7 Merge pull request #1269 from paperless-ngx/beta-deps-final
Chore: Locks dependencies to the final versions for the beta
2022-07-22 10:45:53 -07:00
Trenton Holmes
91ba0bd0af Locks dependencies to the final versions for the beta 2022-07-22 08:53:02 -07:00
Trenton Holmes
0e2e5f3413 Creates utiliy to ensure all paths in settings are normalized and absolute 2022-07-22 08:48:17 -07:00
Trenton Holmes
7a99dcf693 Adds configuration for database timeout, documentation and troubleshotting suggestion 2022-07-22 08:40:08 -07:00
Michael Shamoon
4e78ca5d82 remove merge error ng-select css 2022-07-20 11:15:35 -07:00
shamoon
83de38e56f Merge pull request #1247 from paperless-ngx/bugfix-pikepdf-ocrmypdf-warnings
Bugfix: Adds pngquant and jbig2dec to Docker image
2022-07-20 08:26:12 -07:00
Quinn Casey
f4be2e4fe7 Merge pull request #1259 from paperless-ngx/chore-add-ci-hadolint
Chore: Add Hadolint job to CI
2022-07-19 21:03:16 -07:00
Trenton Holmes
16b0f7f9ee Removes a Dockerfile I can't find referenced anywhere 2022-07-19 14:18:47 -07:00
Trenton Holmes
27721aef71 Fixes and updates the Hadolint action version 2022-07-19 14:01:47 -07:00
Trenton Holmes
329a317fdf Configure Hadolint in a single location for both hooks and CI 2022-07-19 13:54:33 -07:00
Trenton Holmes
daad634894 Adds a CI job for hadolint over all the Dockerfiles, fixes the minor thing it complained about 2022-07-19 13:50:15 -07:00
shamoon
4444925dea Merge pull request #1249 from paperless-ngx/fix-generated-changelog
[CI] Fix automatic changelog generation on release
2022-07-18 15:55:29 -07:00
Quinn Casey
9c1ae96d33 Create PR for changelog instead of direct commit 2022-07-18 09:48:03 -07:00
Trenton Holmes
b1b6d50af6 Adds a couple packages to the Docker image for ocrmypdf and pikepdf 2022-07-18 09:46:31 -07:00
Quinn Casey
4c697ab50e Bump version to beta 2022-07-17 15:23:28 -07:00
Paperless-ngx Translation Bot [bot]
7450088674 New Crowdin updates (#1238)
* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (German)
[ci skip]
2022-07-17 15:22:35 -07:00
Quinn Casey
b141671d90 Merge pull request #1237 from tooomm/patch-1
chore: Run stale bot only on certain labels
2022-07-17 13:18:57 -07:00
shamoon
2ab2d9127d Use cant-reproduce for stale 2022-07-15 20:19:28 -07:00
tooomm
278453451e only run on certain labels 2022-07-15 21:18:38 +02:00
Paperless-ngx Translation Bot [bot]
91ee7972d2 New Crowdin updates (#1235)
* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations django.po (Chinese Simplified)
[ci skip]
2022-07-15 08:41:29 -07:00
shamoon
d1f59a6590 Merge pull request #1212 from theEndBeta/feature_rootless_and_container_repo
Enable rootless container w/ CI tweaks/bugfixes
2022-07-15 08:41:09 -07:00
Aidan Stein
cdecf8904e move supervisord call into wrapper script 2022-07-15 11:00:46 -04:00
Aidan Stein
3d16266c69 pr comment - documentation edits 2022-07-15 11:00:46 -04:00
Aidan Stein
191676b011 switch from bind mount to COPY to avoid requiring host directory relabeling on selinux enabled systems 2022-07-15 11:00:46 -04:00
Aidan Stein
ea07b261ad negate second gosu command when running as paperless user 2022-07-15 11:00:46 -04:00
Aidan Stein
e86f737320 pr comment(s) - CI typos 2022-07-15 11:00:46 -04:00
Aidan Stein
9a8562c624 add instructions for rootless 2022-07-15 11:00:46 -04:00
Aidan Stein
145c41f462 container repository name must be lowercase 2022-07-15 11:00:45 -04:00
Aidan Stein
1d38367e79 allow podman build 2022-07-15 10:58:41 -04:00
Aidan Stein
f58c2d0a7b allow rootless (as paperless user) 2022-07-15 10:58:41 -04:00
Paperless-ngx Translation Bot [bot]
ca7a6fe1f1 New Crowdin updates (#1234)
* New translations messages.xlf (Spanish)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]
2022-07-14 19:37:51 -07:00
shamoon
95042f73c7 Merge pull request #1154 from ziprandom/feature-use-env-vars-in-pre-post-scripts
Feature use env vars in pre post scripts
2022-07-14 19:37:19 -07:00
Trenton Holmes
678bcb171a Re-adds the script arguments 2022-07-14 08:50:00 -07:00
shamoon
8da7e505c0 Merge pull request #1227 from paperless-ngx/feature-reduce-worker-counts
Chore: Reduces webserver and task worker count to 1 by default
2022-07-12 09:56:21 -07:00
Trenton Holmes
72ce4405d5 Updates all dependencies and re-generates the lock files 2022-07-11 23:29:46 +02:00
Paperless-ngx Translation Bot [bot]
d8e3d91a79 New Crowdin updates (#1214)
* New translations django.po (Croatian)
[ci skip]

* New translations django.po (Croatian)
[ci skip]

* New translations messages.xlf (Croatian)
[ci skip]

* New translations messages.xlf (Croatian)
[ci skip]

* New translations messages.xlf (French)
[ci skip]
2022-07-11 14:02:58 -07:00
Trenton Holmes
edaaedae36 Reduces webserver and task worker count to 1 by default 2022-07-11 13:54:04 -07:00
shamoon
da8246d8c3 Merge pull request #1220 from paperless-ngx/bugfix-oserror-msg
Bugfix: Include the actual OSError string when a file can't be opened for consumption
2022-07-11 12:26:08 -07:00
Trenton Holmes
5243ae80b4 Feature: Don't push feature development branches to DockerHub (#1219)
* Don't push to the DockerHub except for certain refs

* Enables deletetion of feature images

* Adds links to the API docs for the end points

* Makes it clear in the logs a dry-run vs actual deletion event
2022-07-11 12:22:43 -07:00
Trenton Holmes
3aca576a0d Includes the actual OSError string in the log, instead of assuming it's a busy file 2022-07-11 11:57:02 -07:00
Paperless-ngx Translation Bot [bot]
0bb9d91eae New Crowdin updates (#1090)
* New translations messages.xlf (Luxembourgish)
[ci skip]

* New translations messages.xlf (Luxembourgish)
[ci skip]

* New translations django.po (Luxembourgish)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations django.po (German)
[ci skip]

* New translations django.po (German)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations django.po (German)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations django.po (Italian)
[ci skip]

* New translations django.po (Finnish)
[ci skip]

* New translations django.po (Hebrew)
[ci skip]

* New translations django.po (Polish)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations django.po (Hebrew)
[ci skip]

* New translations django.po (Hebrew)
[ci skip]

* New translations django.po (Hebrew)
[ci skip]

* New translations django.po (Hebrew)
[ci skip]

* New translations messages.xlf (Hebrew)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations django.po (Spanish)
[ci skip]

* New translations django.po (Spanish)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations messages.xlf (Finnish)
[ci skip]

* New translations django.po (Norwegian)
[ci skip]

* New translations messages.xlf (Norwegian)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations django.po (Norwegian)
[ci skip]

* New translations django.po (Norwegian)
[ci skip]

* New translations django.po (Norwegian)
[ci skip]

* New translations messages.xlf (Norwegian)
[ci skip]

* New translations django.po (Norwegian)
[ci skip]

* New translations messages.xlf (Norwegian)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations messages.xlf (Finnish)
[ci skip]

* New translations messages.xlf (Norwegian)
[ci skip]

* New translations messages.xlf (Romanian)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations messages.xlf (Belarusian)
[ci skip]

* New translations messages.xlf (Czech)
[ci skip]

* New translations messages.xlf (Danish)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Hebrew)
[ci skip]

* New translations messages.xlf (Dutch)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Serbian (Latin))
[ci skip]

* New translations messages.xlf (Luxembourgish)
[ci skip]

* New translations messages.xlf (Portuguese, Brazilian)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]

* New translations messages.xlf (Swedish)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations django.po (Japanese)
[ci skip]

* New translations messages.xlf (Japanese)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations django.po (Chinese Simplified)
[ci skip]

* New translations django.po (Croatian)
[ci skip]

* New translations messages.xlf (Croatian)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations django.po (Hebrew)
[ci skip]

* New translations django.po (Croatian)
[ci skip]

* New translations messages.xlf (Croatian)
[ci skip]

* New translations django.po (Romanian)
[ci skip]

* New translations django.po (French)
[ci skip]

* New translations django.po (Belarusian)
[ci skip]

* New translations django.po (Czech)
[ci skip]

* New translations django.po (Danish)
[ci skip]

* New translations django.po (German)
[ci skip]

* New translations django.po (Finnish)
[ci skip]

* New translations django.po (Italian)
[ci skip]

* New translations messages.xlf (Japanese)
[ci skip]

* New translations django.po (Dutch)
[ci skip]

* New translations django.po (Polish)
[ci skip]

* New translations django.po (Portuguese)
[ci skip]

* New translations django.po (Russian)
[ci skip]

* New translations django.po (Slovenian)
[ci skip]

* New translations django.po (Swedish)
[ci skip]

* New translations django.po (Turkish)
[ci skip]

* New translations django.po (Portuguese, Brazilian)
[ci skip]

* New translations django.po (Luxembourgish)
[ci skip]

* New translations django.po (Serbian (Latin))
[ci skip]

* New translations django.po (Chinese Simplified)
[ci skip]

* New translations django.po (Japanese)
[ci skip]

* New translations messages.xlf (Hebrew)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations django.po (Spanish)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations messages.xlf (Finnish)
[ci skip]

* New translations django.po (Norwegian)
[ci skip]

* New translations messages.xlf (Norwegian)
[ci skip]

* New translations messages.xlf (Romanian)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations messages.xlf (Belarusian)
[ci skip]

* New translations messages.xlf (Czech)
[ci skip]

* New translations messages.xlf (Danish)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]

* New translations messages.xlf (Dutch)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Swedish)
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Portuguese, Brazilian)
[ci skip]

* New translations messages.xlf (Luxembourgish)
[ci skip]

* New translations messages.xlf (Serbian (Latin))
[ci skip]

* New translations django.po (Arabic, Saudi Arabia)
[ci skip]
2022-07-08 15:21:13 -07:00
Michael Shamoon
8825d6b15f Update translation source strings 2022-07-08 14:12:07 -07:00
shamoon
1f73ca21bf Merge pull request #1020 from paperless-ngx/feature-frontend-task-queue
Feature: frontend task queue
2022-07-08 14:06:24 -07:00
Michael Shamoon
2db0854eef fix conflicting migrations 2022-07-08 14:02:43 -07:00
shamoon
f66e589312 Merge pull request #1133 from paperless-ngx/feature-prevent-text-dupe-api-calls
Fix: Prevent duplicate api calls on text filtering
2022-07-08 13:56:45 -07:00
Michael Shamoon
5c9ad3068b simplify filter rule comparison 2022-07-08 13:55:27 -07:00
shamoon
d07b786da6 Merge pull request #1140 from paperless-ngx/chore-image-tag-cleanups 2022-07-07 06:50:47 -07:00
Trenton Holmes
da5d32ed89 Relocks the dependencies following latest updates 2022-07-05 08:20:35 +02:00
Trenton Holmes
55dadea98e No need for a branch here, the loop takes care of it 2022-07-05 08:20:35 +02:00
Trenton Holmes
77fbbe95ff Updates the classifier to catch warnings from scikit-learn and rebuild the model file when this happens 2022-07-05 08:20:35 +02:00
Trenton Holmes
1aeb95396b Updates scikit-learn and fixes the warning this normally generates in the unit tests 2022-07-05 08:20:35 +02:00
shamoon
48dfbbebc6 Merge pull request #1110 from paperless-ngx/update-issue-form 2022-07-03 07:42:20 -07:00
Trenton Holmes
ccf3a9f3b2 Implements reading from a Docker secrets file in place of an environment variable for certain settings 2022-07-03 10:56:01 +02:00
dependabot[bot]
c0cb97bd42 Bump pillow from 9.1.1 to 9.2.0
Bumps [pillow](https://github.com/python-pillow/Pillow) from 9.1.1 to 9.2.0.
- [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/9.1.1...9.2.0)

---
updated-dependencies:
- dependency-name: pillow
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-03 10:47:43 +02:00
shamoon
8efb97ef4e Update stale.yml
[ci skip]
2022-07-02 19:06:32 -07:00
shamoon
d8cda7fc1b Use any-of-labels for stalebot
[ci skip]
2022-07-02 17:51:39 -07:00
shamoon
ee9f1e7b70 Merge pull request #957 from paperless-ngx/feature-created-date
Feature: make frontend timezone un-aware
2022-07-02 16:58:30 -07:00
shamoon
92dd70098c Merge branch 'dev' into feature-frontend-task-queue 2022-07-02 16:54:16 -07:00
shamoon
4bea4c69a4 Merge pull request #1139 from paperless-ngx/feature-redo-ocr
Feature: Management command to redo OCR
2022-07-02 09:02:32 -07:00
Michael Shamoon
7734325b71 Update tasks.py 2022-07-02 08:42:59 -07:00
shamoon
186ae844bc Merge branch 'dev' into feature-redo-ocr 2022-07-02 08:41:18 -07:00
Michael Shamoon
c9bdf1c184 Frontend UI for redo OCR 2022-07-02 08:39:09 -07:00
Michael Shamoon
13ffe468df Extract redo ocr to task 2022-07-02 08:39:09 -07:00
Trenton Holmes
a090cf7a10 Updates following testing of command 2022-07-02 08:39:09 -07:00
Trenton Holmes
b7250477b5 Includes the progress bar 2022-07-02 08:39:09 -07:00
Trenton Holmes
dfd16c5187 Saves work on a new management comment to re-ocr a file 2022-07-02 08:39:09 -07:00
shamoon
4afd6b78af Merge pull request #1122 from paperless-ngx/feature-quick-toggleable-filters
Feature / fix quick toggleable filters
2022-07-02 08:26:42 -07:00
Trenton Holmes
398f6e5b0c Removes variable which was never set, removed unneeded serializer method 2022-07-02 16:19:22 +02:00
Trenton Holmes
d7f7d839f8 Adds invalid storage path format test 2022-07-02 16:19:22 +02:00
Trenton Holmes
49a843dcdd Changes the simple-alpha parsing test to use a tempdir so the original isn't modified in Git 2022-07-02 16:19:22 +02:00
Trenton Holmes
ec045e81f2 Moves the barcode related functionality out of tasks and into its own location. Splits up the testing based on that 2022-07-02 16:19:22 +02:00
Trenton Holmes
d8a7828cb5 Splits tests for the tasks into their own classes 2022-07-02 16:19:22 +02:00
Michael Shamoon
e32cb12ad7 fix content_type on test_api_create_storage_path 2022-07-02 16:19:22 +02:00
Trenton Holmes
ee2847cfea Omit a few files that don't really make sense to cover at all 2022-07-02 16:19:22 +02:00
Trenton Holmes
22e00a7080 Adds a few more test cases for coverage and adds no coverage to some others 2022-07-02 16:19:22 +02:00
Trenton Holmes
cbe567069f Fixes the whitenoise warning in the test suite 2022-07-02 16:19:22 +02:00
Trenton Holmes
53baed0389 Increases test coverage of storage paths 2022-07-02 16:19:22 +02:00
dependabot[bot]
39cb9589c8 Bump watchdog from 2.1.8 to 2.1.9 (#1132) 2022-07-02 14:07:32 +00:00
dependabot[bot]
bde03f3574 Bump scikit-learn from 1.0.2 to 1.1.1 (#992) 2022-07-02 13:44:01 +00:00
dependabot[bot]
8f31d150fd Bump setuptools from 62.3.3 to 62.6.0
Bumps [setuptools](https://github.com/pypa/setuptools) from 62.3.3 to 62.6.0.
- [Release notes](https://github.com/pypa/setuptools/releases)
- [Changelog](https://github.com/pypa/setuptools/blob/main/CHANGES.rst)
- [Commits](https://github.com/pypa/setuptools/compare/v62.3.3...v62.6.0)

---
updated-dependencies:
- dependency-name: setuptools
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-02 15:08:18 +02:00
dependabot[bot]
453dbbb031 Bump django-filter from 21.1 to 22.1
Bumps [django-filter](https://github.com/carltongibson/django-filter) from 21.1 to 22.1.
- [Release notes](https://github.com/carltongibson/django-filter/releases)
- [Changelog](https://github.com/carltongibson/django-filter/blob/main/CHANGES.rst)
- [Commits](https://github.com/carltongibson/django-filter/compare/21.1...22.1)

---
updated-dependencies:
- dependency-name: django-filter
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-02 15:07:27 +02:00
dependabot[bot]
421754fff6 Bump actions/setup-python from 3 to 4
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 3 to 4.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-02 14:26:49 +02:00
dependabot[bot]
05ec5feacf Bump sphinx from 4.5.0 to 5.0.2
Bumps [sphinx](https://github.com/sphinx-doc/sphinx) from 4.5.0 to 5.0.2.
- [Release notes](https://github.com/sphinx-doc/sphinx/releases)
- [Changelog](https://github.com/sphinx-doc/sphinx/blob/5.x/CHANGES)
- [Commits](https://github.com/sphinx-doc/sphinx/compare/v4.5.0...v5.0.2)

---
updated-dependencies:
- dependency-name: sphinx
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-02 14:25:57 +02:00
dependabot[bot]
639d9b27c8 Bump docker/metadata-action from 3 to 4
Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 3 to 4.
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Upgrade guide](https://github.com/docker/metadata-action/blob/master/UPGRADE.md)
- [Commits](https://github.com/docker/metadata-action/compare/v3...v4)

---
updated-dependencies:
- dependency-name: docker/metadata-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-02 14:25:14 +02:00
dependabot[bot]
2c99d027f3 Bump tj-actions/changed-files from 22.1 to 23.1
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 22.1 to 23.1.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v22.1...v23.1)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-02 14:24:13 +02:00
dependabot[bot]
4f176682dc Merge pull request #1177 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/angular/cli-14.0.4 2022-07-02 08:09:09 +00:00
Michael Shamoon
13ef41bd42 Update ngbRadioGroups to native buttons 2022-07-02 00:55:18 -07:00
Michael Shamoon
3c6ba80323 Merge branch 'dependabot/npm_and_yarn/src-ui/dev/angular/cli-14.0.4' of github.com:paperless-ngx/paperless-ngx into dependabot/npm_and_yarn/src-ui/dev/angular/cli-14.0.4 2022-07-01 14:15:10 -07:00
Michael Shamoon
fcfa8dfac2 bump angular, ng-bootstrap, ng-select 2022-07-01 14:12:17 -07:00
dependabot[bot]
5b73e9aee6 Bump @angular/cli from 13.3.7 to 14.0.4 in /src-ui
Bumps [@angular/cli](https://github.com/angular/angular-cli) from 13.3.7 to 14.0.4.
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/13.3.7...14.0.4)

---
updated-dependencies:
- dependency-name: "@angular/cli"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-01 14:10:51 -07:00
shamoon
9ead264300 Merge pull request #1187 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/cypress-10.3.0
Bump cypress from 10.0.1 to 10.3.0 in /src-ui
2022-07-01 13:42:06 -07:00
dependabot[bot]
a617eda321 Bump cypress from 10.0.1 to 10.3.0 in /src-ui
Bumps [cypress](https://github.com/cypress-io/cypress) from 10.0.1 to 10.3.0.
- [Release notes](https://github.com/cypress-io/cypress/releases)
- [Changelog](https://github.com/cypress-io/cypress/blob/develop/.releaserc.base.js)
- [Commits](https://github.com/cypress-io/cypress/compare/v10.0.1...v10.3.0)

---
updated-dependencies:
- dependency-name: cypress
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-01 20:41:20 +00:00
shamoon
c913fa65b2 Merge pull request #1185 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/zone.js-0.11.6
Bump zone.js from 0.11.5 to 0.11.6 in /src-ui
2022-07-01 13:40:40 -07:00
shamoon
497c8c84e5 Merge pull request #1184 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/ts-node-10.8.1
Bump ts-node from 10.8.0 to 10.8.1 in /src-ui
2022-07-01 13:39:43 -07:00
dependabot[bot]
c58a94d497 Bump zone.js from 0.11.5 to 0.11.6 in /src-ui
Bumps [zone.js](https://github.com/angular/angular/tree/HEAD/packages/zone.js) from 0.11.5 to 0.11.6.
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/main/packages/zone.js/CHANGELOG.md)
- [Commits](https://github.com/angular/angular/commits/zone.js-0.11.6/packages/zone.js)

---
updated-dependencies:
- dependency-name: zone.js
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-01 20:39:16 +00:00
dependabot[bot]
6a853d1fa2 Bump @angular/cli from 13.3.7 to 14.0.4 in /src-ui
Bumps [@angular/cli](https://github.com/angular/angular-cli) from 13.3.7 to 14.0.4.
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/13.3.7...14.0.4)

---
updated-dependencies:
- dependency-name: "@angular/cli"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-01 20:38:38 +00:00
dependabot[bot]
c30c58e564 Bump ts-node from 10.8.0 to 10.8.1 in /src-ui
Bumps [ts-node](https://github.com/TypeStrong/ts-node) from 10.8.0 to 10.8.1.
- [Release notes](https://github.com/TypeStrong/ts-node/releases)
- [Commits](https://github.com/TypeStrong/ts-node/compare/v10.8.0...v10.8.1)

---
updated-dependencies:
- dependency-name: ts-node
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-01 20:38:22 +00:00
shamoon
3b7a4c6b6b Merge pull request #1175 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/jest-environment-jsdom-28.1.2
Bump jest-environment-jsdom from 28.1.0 to 28.1.2 in /src-ui
2022-07-01 13:37:47 -07:00
shamoon
978cdf2514 Merge pull request #1183 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/types/node-18.0.0
Bump @types/node from 17.0.38 to 18.0.0 in /src-ui
2022-07-01 13:37:05 -07:00
dependabot[bot]
33609616aa Bump jest-environment-jsdom from 28.1.0 to 28.1.2 in /src-ui
Bumps [jest-environment-jsdom](https://github.com/facebook/jest/tree/HEAD/packages/jest-environment-jsdom) from 28.1.0 to 28.1.2.
- [Release notes](https://github.com/facebook/jest/releases)
- [Changelog](https://github.com/facebook/jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/jest/commits/v28.1.2/packages/jest-environment-jsdom)

---
updated-dependencies:
- dependency-name: jest-environment-jsdom
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-01 20:36:20 +00:00
dependabot[bot]
006f6c998d Bump @types/node from 17.0.38 to 18.0.0 in /src-ui
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 17.0.38 to 18.0.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-01 20:36:05 +00:00
shamoon
05fd69eae4 Merge pull request #1181 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/concurrently-7.2.2
Bump concurrently from 7.2.1 to 7.2.2 in /src-ui
2022-07-01 13:35:12 -07:00
dependabot[bot]
b6b8719efa Bump concurrently from 7.2.1 to 7.2.2 in /src-ui
Bumps [concurrently](https://github.com/open-cli-tools/concurrently) from 7.2.1 to 7.2.2.
- [Release notes](https://github.com/open-cli-tools/concurrently/releases)
- [Commits](https://github.com/open-cli-tools/concurrently/compare/v7.2.1...v7.2.2)

---
updated-dependencies:
- dependency-name: concurrently
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-01 20:33:25 +00:00
shamoon
7e8b9549a1 Merge pull request #1182 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/jest-preset-angular-12.1.0
Bump jest-preset-angular from 12.0.1 to 12.1.0 in /src-ui
2022-07-01 13:32:00 -07:00
dependabot[bot]
032f78e0f5 Bump jest-preset-angular from 12.0.1 to 12.1.0 in /src-ui
Bumps [jest-preset-angular](https://github.com/thymikee/jest-preset-angular) from 12.0.1 to 12.1.0.
- [Release notes](https://github.com/thymikee/jest-preset-angular/releases)
- [Changelog](https://github.com/thymikee/jest-preset-angular/blob/main/CHANGELOG.md)
- [Commits](https://github.com/thymikee/jest-preset-angular/compare/v12.0.1...v12.1.0)

---
updated-dependencies:
- dependency-name: jest-preset-angular
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-01 20:30:30 +00:00
shamoon
4059bc9ec6 Merge pull request #1180 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/jest-and-types/jest-28.1.2
Bump jest and @types/jest in /src-ui
2022-07-01 13:28:41 -07:00
dependabot[bot]
b85cd0925a Bump jest and @types/jest in /src-ui
Bumps [jest](https://github.com/facebook/jest/tree/HEAD/packages/jest) and [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest). These dependencies needed to be updated together.

Updates `jest` from 28.1.0 to 28.1.2
- [Release notes](https://github.com/facebook/jest/releases)
- [Changelog](https://github.com/facebook/jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/jest/commits/v28.1.2/packages/jest)

Updates `@types/jest` from 27.5.2 to 28.1.4
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest)

---
updated-dependencies:
- dependency-name: jest
  dependency-type: direct:development
  update-type: version-update:semver-patch
- dependency-name: "@types/jest"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-01 20:13:50 +00:00
ziprandom
f20254217f POST_CONSUME_SCRIPT: add documents archive_path 2022-06-22 14:00:20 +00:00
ziprandom
9424b763ca POST_CONSUME_SCRIPT: add document dates to env 2022-06-22 13:58:16 +00:00
ziprandom
08ae3f8771 use env variables in pre-|post-consume scripts
+ instead of positional arguments because it's easier to use in the
shell script and easier to read in the python code.
2022-06-22 13:56:59 +00:00
Felix E
68f0cf419b Merge pull request #1148 from pReya/patch-1
fix: update scanner capability
2022-06-20 14:25:59 +02:00
Moritz Stückler
26b12512b1 fix: update scanner capability
The Brother ADS-A1700W does indeed support SFTP. I've just bought it, and set it up like this.
2022-06-20 12:06:54 +02:00
Michael Shamoon
b98afadd5c python tests for tasks api endpoints 2022-06-17 23:11:29 -04:00
Trenton Holmes
499bd552a1 Fine, I made my own GitHub API interface. With blackjack and ... 2022-06-17 08:11:15 -07:00
Trenton Holmes
0090e27699 Adds a new workflow to cleanup image tags which no longer have an associated branch 2022-06-16 09:20:58 -07:00
shamoon
e568b3000e Add lsio to issue form 2022-06-14 08:31:08 -07:00
Michael Shamoon
7ae8b46ea7 allow PaperlessTask.started null 2022-06-13 16:21:37 -07:00
Michael Shamoon
ffb903841b Prevent duplicate api calls on text filtering 2022-06-13 15:35:00 -07:00
shamoon
72ee904e67 Merge pull request #1127 from paperless-ngx/feature-webp-thumbnails
Feature: Change document thumbnails to WebP
2022-06-12 09:44:53 -07:00
Trenton Holmes
222e1968d8 Removes one last portion of PNG vs WebP 2022-06-12 09:12:02 -07:00
Trenton Holmes
1df517afd3 Removes last vestiges of PNG from the tests, code, docs and samples 2022-06-11 14:20:50 -07:00
Trenton Holmes
cc4cea1a41 Converts the conversion into a database migration 2022-06-11 13:04:21 -07:00
Trenton Holmes
e8868d7ebf Entirely removes the optipng, updates ghostscript fall back to also use WebP. Updates the conversion to use a multiprocessing pool 2022-06-11 08:38:49 -07:00
Trenton Holmes
7d9a9033f9 Fixes the re-generation of thumbnails making webp file, but named as PNG files 2022-06-10 13:17:41 -07:00
Trenton Holmes
87322d7732 Adds quick documentation of new functionality 2022-06-10 11:26:23 -07:00
Trenton Holmes
08c3d6e84b Fixes existing testing, adds test coverage of new command 2022-06-10 10:12:01 -07:00
Trenton Holmes
b50325c3a3 Minor tweak to determining content type 2022-06-10 08:57:36 -07:00
Trenton Holmes
12cdcf7681 Adds information system check for PNG thumbnail existence 2022-06-10 08:56:55 -07:00
Trenton Holmes
34192349be Corrects the functionality of the webp conversion script 2022-06-10 08:56:25 -07:00
Trenton Holmes
153d0bb12a Corrects the logic of thumbnail path to account for both getting existing path or building expected path 2022-06-10 07:59:22 -07:00
Trenton Holmes
20092dadad Adds untested manual conversion command 2022-06-10 07:17:15 -07:00
Trenton Holmes
6844f8f2bf Minor tweaks to getting the document thumbnail path. Adds text thumbnail as webp 2022-06-10 06:56:28 -07:00
Michael Shamoon
58f2c6a5fc webp thumbnail support with png fallback 2022-06-10 02:28:13 -07:00
Michael Shamoon
5f10d86f04 Quick toggle for tags / doctypes etc on doc view 2022-06-09 08:37:40 -07:00
Michael Shamoon
1120e823ed Update tasks e2e tests to cypress 10
and remove debug print
2022-06-08 19:57:34 -07:00
Michael Shamoon
301b384a02 Merge branch 'dev' into feature-frontend-task-queue 2022-06-08 19:44:23 -07:00
Trenton Holmes
e4a26164de Merge pull request #1014 from paperless-ngx/feature-own-django-q
Feature: Fork django-q to update dependencies
2022-06-08 18:57:30 -07:00
Trenton Holmes
56d3e8893f Manually downgrades reportlab, no 3.9 wheel was built yet 2022-06-08 17:04:00 -07:00
Trenton Holmes
99336908f0 Points to the organization fork of django-q, which now includes my replicated changes 2022-06-08 16:04:03 -07:00
Trenton Holmes
090325af35 Adds git as needed for a git link 2022-06-08 15:59:25 -07:00
Trenton Holmes
485be6c3fd Changes to the forked django-q 2022-06-08 15:59:20 -07:00
Trenton Holmes
faa9d36c34 Merge pull request #1118 from paperless-ngx/feature-simplify-library-image
Chore: Simplify building Python wheels
2022-06-08 15:21:51 -07:00
Trenton Holmes
ea8e108cdf Removes references to now not set or used build args 2022-06-08 13:33:17 -07:00
Trenton Holmes
100f5422f6 Updates the wheel builders to let pip handle finding the sdist of the required package and version 2022-06-08 13:33:17 -07:00
Trenton Holmes
15c716e53b Merge pull request #1116 from paperless-ngx/feature-bugfix-reportlab
Chore: Manually downgrade reportlab (and update everything else)
2022-06-08 13:32:51 -07:00
Trenton Holmes
75e77c5e54 Re-locks all dependencies and manually downgrades reportlab to 3.6.9 until piwheels issue is fixed 2022-06-08 12:04:30 -07:00
Trenton Holmes
de4fdc07e0 Merge pull request #1103 from paperless-ngx/dependabot/pip/dev/whitenoise-6.2.0
Bump whitenoise from 6.1.0 to 6.2.0
2022-06-08 07:41:56 -07:00
dependabot[bot]
51edb2fa14 Bump whitenoise from 6.1.0 to 6.2.0
Bumps [whitenoise](https://github.com/evansd/whitenoise) from 6.1.0 to 6.2.0.
- [Release notes](https://github.com/evansd/whitenoise/releases)
- [Changelog](https://github.com/evansd/whitenoise/blob/main/docs/changelog.rst)
- [Commits](https://github.com/evansd/whitenoise/compare/6.1.0...6.2.0)

---
updated-dependencies:
- dependency-name: whitenoise
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-06 20:24:26 +00:00
Michael Shamoon
bd995089a8 Use pre_execute signal to specify started vs queued 2022-06-06 01:39:45 -07:00
Michael Shamoon
a90dd2ad1e Update e2e tests for collapsible result 2022-06-05 14:16:15 -07:00
Michael Shamoon
cd44151e16 add collapsible task result output 2022-06-05 14:16:15 -07:00
Trenton Holmes
5715ba1a9a Merge pull request #1091 from adam-ah/dev
Longer (5 vs 0.2s) guard_cycle for Django-Q
2022-06-05 08:11:51 -07:00
shamoon
6f4a1c1751 Merge pull request #1092 from similicious/fix/web-manifest
Fix app name and icons web manifest, optimize svg
2022-06-04 06:27:15 -07:00
similicious
2a1b1eb1a4 Fix app name 2022-06-04 12:29:12 +02:00
Adam H
20c597b1d7 Longer (5 vs 0.2s) guard_cycle for Django-Q
To reduce average CPU load. Given paperless is mostly idling and when not, just spawns long-running operations (e.g., OCR), a 0.2s health-check of the Django-Q cluster is unnecessary. See also #1084
2022-06-04 10:12:53 +10:00
Trenton Holmes
9dc1989507 Merge pull request #1088 from paperless-ngx/bugfix-docker-folder-create
Bugfix: Don't assume default Docker folders
2022-06-03 15:26:32 -07:00
Trenton Holmes
681cb1b978 Makes sure the export folder also exists 2022-06-03 14:02:58 -07:00
Trenton Holmes
332a9fac5a Adds quotes around usages that may be of a user defined directory
Co-authored-by: Felix E <felix@eckhofer.com>
2022-06-03 11:21:13 -07:00
Trenton Holmes
d118f4a3f0 Setup the defined user folders instead of always using the defaults at Docker startup 2022-06-03 09:18:48 -07:00
similicious
7620cd02f0 Optimize svg files with svgo 2022-06-03 11:41:46 +02:00
similicious
fdfd7bd82a Fix: icons and app name in manifest 2022-06-03 10:50:33 +02:00
shamoon
01c17e10cc Merge pull request #1083 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/cypress-10.0.1
Bump cypress from 9.6.1 to 10.0.1 in /src-ui
2022-06-02 17:29:51 -07:00
Michael Shamoon
bed03b301b use global fixtures in e2e tests 2022-06-02 15:00:41 -07:00
Michael Shamoon
ef48762da5 Migrate to cypress 10 2022-06-02 14:47:09 -07:00
dependabot[bot]
7978f3f0e6 Bump cypress from 9.6.1 to 10.0.1 in /src-ui
Bumps [cypress](https://github.com/cypress-io/cypress) from 9.6.1 to 10.0.1.
- [Release notes](https://github.com/cypress-io/cypress/releases)
- [Changelog](https://github.com/cypress-io/cypress/blob/develop/.releaserc.base.js)
- [Commits](https://github.com/cypress-io/cypress/compare/v9.6.1...v10.0.1)

---
updated-dependencies:
- dependency-name: cypress
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-02 21:36:01 +00:00
shamoon
8d5fad72bf Merge pull request #1076 from paperless-ngx/query-params-e2e-tests
Query params e2e tests
2022-06-02 14:33:14 -07:00
shamoon
04db521851 Merge pull request #1049 from paperless-ngx/bugfix-better-sanity-msgs
Bugfix: Better sanity check messages
2022-06-02 11:17:56 -07:00
shamoon
26d27be161 Merge pull request #1081 from paperless-ngx/fix-pdf-viewer-margins
Fix vertical margins between pages of pdf viewer
2022-06-02 11:17:02 -07:00
Michael Shamoon
1259d06302 Fix vertical margins between pages of pdf viewer 2022-06-02 11:03:54 -07:00
Trenton Holmes
4db3f366ef Merge pull request #1032 from pheerai/feature-mailActionCustomTag
Feature mail action custom tag
2022-06-02 09:46:34 -07:00
Trenton Holmes
1c52c5b673 Merge pull request #1065 from paperless-ngx/dependabot/github_actions/dev/docker/setup-qemu-action-2
Bump docker/setup-qemu-action from 1 to 2
2022-06-01 15:53:16 -07:00
dependabot[bot]
a6a885d4f4 Bump docker/setup-qemu-action from 1 to 2
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 1 to 2.
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](https://github.com/docker/setup-qemu-action/compare/v1...v2)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-01 22:25:39 +00:00
Trenton Holmes
b11066cef1 Merge pull request #1064 from paperless-ngx/dependabot/github_actions/dev/docker/setup-buildx-action-2
Bump docker/setup-buildx-action from 1 to 2
2022-06-01 15:25:18 -07:00
Trenton Holmes
1941b0c3ed Merge pull request #1063 from paperless-ngx/dependabot/github_actions/dev/docker/build-push-action-3
Bump docker/build-push-action from 2 to 3
2022-06-01 15:24:15 -07:00
shamoon
9a47fc747f Merge pull request #1075 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/cypress/schematic-2.0.0 2022-06-01 14:53:12 -07:00
Trenton Holmes
a425d3a55b Merge pull request #1062 from paperless-ngx/dependabot/github_actions/dev/tj-actions/changed-files-22.1
Bump tj-actions/changed-files from 19 to 22.1
2022-06-01 14:25:11 -07:00
Michael Shamoon
f03a0f6e73 Add documents query params e2e tests 2022-06-01 14:12:38 -07:00
dependabot[bot]
74d5724092 Bump @cypress/schematic from 1.7.0 to 2.0.0 in /src-ui
Bumps [@cypress/schematic](https://github.com/cypress-io/cypress) from 1.7.0 to 2.0.0.
- [Release notes](https://github.com/cypress-io/cypress/releases)
- [Changelog](https://github.com/cypress-io/cypress/blob/develop/.releaserc.base.js)
- [Commits](https://github.com/cypress-io/cypress/compare/@cypress/schematic-v1.7.0...@cypress/schematic-v2.0.0)

---
updated-dependencies:
- dependency-name: "@cypress/schematic"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-01 21:10:21 +00:00
shamoon
3df21fcaa3 Merge pull request #1073 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/concurrently-7.2.1
Bump concurrently from 7.1.0 to 7.2.1 in /src-ui
2022-06-01 14:09:19 -07:00
shamoon
fbb5de6740 Merge pull request #1074 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/types/jest-27.5.2
Bump @types/jest from 27.4.1 to 27.5.2 in /src-ui
2022-06-01 14:08:55 -07:00
dependabot[bot]
f7f9096c6e Bump concurrently from 7.1.0 to 7.2.1 in /src-ui
Bumps [concurrently](https://github.com/open-cli-tools/concurrently) from 7.1.0 to 7.2.1.
- [Release notes](https://github.com/open-cli-tools/concurrently/releases)
- [Commits](https://github.com/open-cli-tools/concurrently/compare/v7.1.0...v7.2.1)

---
updated-dependencies:
- dependency-name: concurrently
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-01 21:07:51 +00:00
dependabot[bot]
d5a8e1725d Bump @types/jest from 27.4.1 to 27.5.2 in /src-ui
Bumps [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest) from 27.4.1 to 27.5.2.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest)

---
updated-dependencies:
- dependency-name: "@types/jest"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-01 21:07:37 +00:00
shamoon
34413747d5 Merge pull request #1070 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/ts-node-10.8.0
Bump ts-node from 10.7.0 to 10.8.0 in /src-ui
2022-06-01 14:06:48 -07:00
dependabot[bot]
18de626919 Bump ts-node from 10.7.0 to 10.8.0 in /src-ui
Bumps [ts-node](https://github.com/TypeStrong/ts-node) from 10.7.0 to 10.8.0.
- [Release notes](https://github.com/TypeStrong/ts-node/releases)
- [Commits](https://github.com/TypeStrong/ts-node/compare/v10.7.0...v10.8.0)

---
updated-dependencies:
- dependency-name: ts-node
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-01 21:05:51 +00:00
shamoon
bef192084f Merge pull request #1071 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/jest-28.1.0
Bump jest from 28.0.3 to 28.1.0 in /src-ui
2022-06-01 14:04:47 -07:00
dependabot[bot]
54eef16bfb Bump jest from 28.0.3 to 28.1.0 in /src-ui
Bumps [jest](https://github.com/facebook/jest/tree/HEAD/packages/jest) from 28.0.3 to 28.1.0.
- [Release notes](https://github.com/facebook/jest/releases)
- [Changelog](https://github.com/facebook/jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/jest/commits/v28.1.0/packages/jest)

---
updated-dependencies:
- dependency-name: jest
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-01 21:03:57 +00:00
shamoon
7be49dba69 Merge pull request #1069 from paperless-ngx/npm-updates-220601
Chore: npm package updates 22-06-01
2022-06-01 14:02:13 -07:00
Trenton Holmes
218a6af62a Merge pull request #1061 from paperless-ngx/dependabot/github_actions/dev/docker/login-action-2
Bump docker/login-action from 1 to 2
2022-06-01 14:00:14 -07:00
Michael Shamoon
f0315d5c70 bump packages for angular, popperjs, node, ngx-cookie-service 2022-06-01 13:50:17 -07:00
dependabot[bot]
f82e04201b Bump docker/setup-buildx-action from 1 to 2
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 1 to 2.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](https://github.com/docker/setup-buildx-action/compare/v1...v2)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-01 20:17:31 +00:00
dependabot[bot]
f41231f017 Bump docker/build-push-action from 2 to 3
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 2 to 3.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v2...v3)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-01 20:17:28 +00:00
dependabot[bot]
ae1fb76d13 Bump tj-actions/changed-files from 19 to 22.1
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 19 to 22.1.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v19...v22.1)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-01 20:17:25 +00:00
dependabot[bot]
fa0023223f Bump docker/login-action from 1 to 2
Bumps [docker/login-action](https://github.com/docker/login-action) from 1 to 2.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v1...v2)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-01 20:17:21 +00:00
Michael Shamoon
1c80fd17fd Reorganize e2e tests 2022-06-01 12:37:43 -07:00
Paperless-ngx Translation Bot [bot]
48cb347198 New Crowdin updates (#959)
* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Luxembourgish)
[ci skip]

* New translations messages.xlf (Portuguese, Brazilian)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]

* New translations messages.xlf (Swedish)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Slovak)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (Dutch)
[ci skip]

* New translations messages.xlf (Hebrew)
[ci skip]

* New translations messages.xlf (Danish)
[ci skip]

* New translations messages.xlf (Finnish)
[ci skip]

* New translations messages.xlf (Greek)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Czech)
[ci skip]

* New translations messages.xlf (Belarusian)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations messages.xlf (Romanian)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations messages.xlf (Serbian (Latin))
[ci skip]

* New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Luxembourgish)
[ci skip]

* New translations messages.xlf (Portuguese, Brazilian)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]

* New translations messages.xlf (Swedish)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Slovak)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (Dutch)
[ci skip]

* New translations messages.xlf (Hebrew)
[ci skip]

* New translations messages.xlf (Danish)
[ci skip]

* New translations messages.xlf (Finnish)
[ci skip]

* New translations messages.xlf (Greek)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Czech)
[ci skip]

* New translations messages.xlf (Belarusian)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations messages.xlf (Romanian)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations messages.xlf (Serbian (Latin))
[ci skip]

* New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations django.po (Dutch)
[ci skip]

* New translations django.po (French)
[ci skip]

* New translations django.po (Romanian)
[ci skip]

* New translations django.po (Spanish)
[ci skip]

* New translations django.po (Belarusian)
[ci skip]

* New translations django.po (Czech)
[ci skip]

* New translations django.po (Greek)
[ci skip]

* New translations django.po (Finnish)
[ci skip]

* New translations django.po (Hebrew)
[ci skip]

* New translations django.po (Italian)
[ci skip]

* New translations django.po (Polish)
[ci skip]

* New translations django.po (Serbian (Latin))
[ci skip]

* New translations django.po (Portuguese)
[ci skip]

* New translations django.po (Russian)
[ci skip]

* New translations django.po (Slovak)
[ci skip]

* New translations django.po (Slovenian)
[ci skip]

* New translations django.po (Swedish)
[ci skip]

* New translations django.po (Turkish)
[ci skip]

* New translations django.po (Chinese Simplified)
[ci skip]

* New translations django.po (Portuguese, Brazilian)
[ci skip]

* New translations django.po (Luxembourgish)
[ci skip]

* New translations django.po (Danish)
[ci skip]

* New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]

* New translations messages.xlf (Danish)
[ci skip]

* New translations messages.xlf (Greek)
[ci skip]

* New translations messages.xlf (Serbian (Latin))
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations django.po (German)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations messages.xlf (Romanian)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations messages.xlf (Belarusian)
[ci skip]

* New translations messages.xlf (Czech)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Finnish)
[ci skip]

* New translations messages.xlf (Luxembourgish)
[ci skip]

* New translations messages.xlf (Hebrew)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Dutch)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (Slovak)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Swedish)
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Portuguese, Brazilian)
[ci skip]

* New translations django.po (Arabic, Saudi Arabia)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Luxembourgish)
[ci skip]

* New translations messages.xlf (Portuguese, Brazilian)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]

* New translations messages.xlf (Swedish)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Slovak)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (Dutch)
[ci skip]

* New translations messages.xlf (Hebrew)
[ci skip]

* New translations messages.xlf (Danish)
[ci skip]

* New translations messages.xlf (Finnish)
[ci skip]

* New translations messages.xlf (Greek)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Czech)
[ci skip]

* New translations messages.xlf (Belarusian)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations messages.xlf (Romanian)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations messages.xlf (Serbian (Latin))
[ci skip]

* New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations messages.xlf (Finnish)
[ci skip]

* New translations messages.xlf (Swedish)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Slovak)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (Dutch)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Danish)
[ci skip]

* New translations messages.xlf (Hebrew)
[ci skip]

* New translations messages.xlf (Greek)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Czech)
[ci skip]

* New translations messages.xlf (Belarusian)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations messages.xlf (Romanian)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations messages.xlf (Serbian (Latin))
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Portuguese, Brazilian)
[ci skip]

* New translations messages.xlf (Luxembourgish)
[ci skip]

* New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]
2022-06-01 10:20:51 -07:00
shamoon
ffd583ed11 Merge pull request #1043 from slankes/qualify_dockerimages
Qualify images hosted by docker.io in compose files
2022-06-01 09:38:14 -07:00
Michael Shamoon
97bbca3aef fix merge conflict 2022-06-01 09:28:26 -07:00
shamoon
06fd92fd27 Merge pull request #1058 from paperless-ngx/bugfix-enable-django-q-debug
Bugfix: Pass debug setting on to django-q
2022-06-01 09:20:38 -07:00
Trenton Holmes
c0e05a7572 If debug mode is enabled, also pass this setting on to django-q 2022-06-01 08:59:20 -07:00
shamoon
2abe6eec84 Merge pull request #1057 from paperless-ngx/bugfix-document-str
Bugfix: Don't assume the document has a title set
2022-06-01 08:28:22 -07:00
Trenton Holmes
0b6e73840a Fixes formatting 2022-06-01 08:20:04 -07:00
Trenton Holmes
1707fe8990 Updates the Document str to account for a blank title instead of assuming title will be populated 2022-06-01 08:03:38 -07:00
Trenton Holmes
9335b0779c Update no content warning to be more clear it is missing OCR content
Co-authored-by: tooomm <tooomm@users.noreply.github.com>
2022-06-01 07:44:48 -07:00
Trenton Holmes
277b521fad Removes unused import 2022-06-01 07:43:46 -07:00
Trenton Holmes
af1b634d6d Updates to use pathlib instead of os.path 2022-05-31 08:42:11 -07:00
Sven Lankes
cc19008961 We want gotenberg 7.4 and not pin to 7.4.4 2022-05-31 09:48:01 +02:00
Trenton Holmes
be304e37b4 Refines the sanity check header, fixes other test issues 2022-05-30 18:21:24 -07:00
Trenton Holmes
0a34a4a7ad Makes the sanity check messages better for users 2022-05-30 17:03:33 -07:00
Oliver Rümpelein
898564c8d8 Add migration for new rule. 2022-05-29 15:22:50 +02:00
Oliver Rümpelein
708638b97f Merge remote-tracking branch 'upstream/dev' into feature-mailActionCustomTag 2022-05-29 13:51:54 +02:00
Sven Lankes
458e857956 use qualified hostnames for images stored on docker.io 2022-05-29 13:50:58 +02:00
Oliver Rümpelein
ac62bcb7ba Clear cache instead of working around it. 2022-05-27 22:51:32 +02:00
Michael Shamoon
6b1c50b051 Simple e2e test for Tasks component 2022-05-27 01:11:20 -07:00
Michael Shamoon
d4a5376f73 automatically refresh tasks on file socket messages too 2022-05-27 00:45:50 -07:00
Michael Shamoon
71b34aa3bd fix result on empty task 2022-05-27 00:45:50 -07:00
Michael Shamoon
6b4d8b18e0 show failed tasks badge in sidebar 2022-05-27 00:45:50 -07:00
Michael Shamoon
66b2013d23 tasks usability improvements 2022-05-27 00:45:50 -07:00
Michael Shamoon
dc86993c84 mobile improvements, fix dismiss 1 task 2022-05-26 22:15:56 -07:00
Michael Shamoon
00a5c13001 Update 1021_paperlesstask.py 2022-05-26 21:58:02 -07:00
Michael Shamoon
0e34923114 Revert "Merge branch 'feature-frontend-task-queue' of github.com:paperless-ngx/paperless-ngx into feature-frontend-task-queue"
This reverts commit 011164bc32, reversing
changes made to 0a43ce9ced.
2022-05-26 21:24:55 -07:00
Michael Shamoon
011164bc32 Merge branch 'feature-frontend-task-queue' of github.com:paperless-ngx/paperless-ngx into feature-frontend-task-queue 2022-05-26 21:24:45 -07:00
Michael Shamoon
0a43ce9ced fix merge 2022-05-26 21:21:29 -07:00
Michael Shamoon
d925fb38ce Basic tasks frontend view
Update app-frame.component.ts
2022-05-26 21:19:16 -07:00
Michael Shamoon
3dc617277f Task results popover
fix merge
2022-05-26 21:18:39 -07:00
Michael Shamoon
096af09fc4 Basic tasks frontend view
Update app-frame.component.ts
2022-05-26 21:09:11 -07:00
Michael Shamoon
f97f9b857b Task results popover 2022-05-26 21:09:08 -07:00
Michael Shamoon
5c0829b052 Better tasks api endpoint 2022-05-26 21:09:05 -07:00
Michael Shamoon
aa999b34e2 Update frontend for reworked tasks api endpoint 2022-05-26 21:09:05 -07:00
Michael Shamoon
0a06c291e2 acknowledge_tasks endpoint & basic UI
Update tasks.service.ts
2022-05-26 21:09:04 -07:00
Michael Shamoon
4bbaf5f89c update post_save signal receiver 2022-05-26 21:09:04 -07:00
Michael Shamoon
f88e070455 Toggle functionality for tasks list 2022-05-26 21:09:01 -07:00
Michael Shamoon
5c980c31be PaperlessTask and consumption_tasks endpoint 2022-05-26 21:05:24 -07:00
shamoon
9eee37bc68 Merge branch 'dev' into feature-created-date 2022-05-26 14:28:33 -07:00
Quinn Casey
a4927477fb Merge pull request #1008 from paperless-ngx/bugfix-max-pixel-setting
Bugfix: Corrects the setting of max pixel size for OCR
2022-05-26 09:12:24 -07:00
Quinn Casey
d0a6c6a2f3 Merge pull request #1007 from paperless-ngx/improve-date-paste-input
Feature: better date pasting
2022-05-26 08:50:08 -07:00
Quinn Casey
92757c5d8c Merge pull request #1017 from paperless-ngx/alphabetize-tags
Enhancement: Alphabetize tags by default
2022-05-26 08:42:55 -07:00
Oliver Rümpelein
0cc7765f2b Revert accidentally included changes. 2022-05-26 17:40:11 +02:00
Quinn Casey
ee1ef4ff56 Merge pull request #1000 from paperless-ngx/rework-query-params-logic
Fix: Rework query params logic
2022-05-26 08:18:43 -07:00
Quinn Casey
b5eed5e043 Merge pull request #1030 from paperless-ngx/feature-reload-language-change
Enhancement: show note on language change and offer reload
2022-05-26 08:12:43 -07:00
Oliver Rümpelein
62a253f571 Merge remote-tracking branch 'upstream/dev' into feature-mailActionCustomTag 2022-05-26 14:05:48 +02:00
Oliver Rümpelein
080a23dd8c Update docs. 2022-05-26 12:42:29 +02:00
Oliver Rümpelein
c90129957e Make test work. 2022-05-26 12:42:20 +02:00
Michael Shamoon
0fa717fe11 Show note on language change and offer reload 2022-05-25 16:06:59 -07:00
Michael Shamoon
e72766a5bf fix global overlay color 2022-05-25 14:47:05 -07:00
Oliver Rümpelein
104a684514 Revert all changes to tests, will need a more structured approach. 2022-05-25 20:47:43 +02:00
Oliver Rümpelein
5a809d7e31 Add first draft implementation, test broken. 2022-05-25 19:23:52 +02:00
tooomm
ce3f6837e9 Link issues, capitalization and minor fixes 2022-05-25 19:23:52 +02:00
tooomm
3ffd2a745b update heading levels for v1.7.0 2022-05-25 19:23:52 +02:00
shamoon
6b9c07b809 Merge pull request #1025 from paperless-ngx/fix-pytest-api-auth
Fix: use `force_authentication` instead of `force_login` for python api tests
2022-05-24 09:59:14 -07:00
Michael Shamoon
d4e2722586 use force_authenticate in api tests 2022-05-23 23:07:49 -07:00
shamoon
1343767295 Merge pull request #1013 from paperless-ngx/chore-manual-updates
Chore: Manually update dependencies
2022-05-23 20:32:23 -07:00
Michael Shamoon
4b4bfc052f Alphabetize tags by default 2022-05-23 20:25:26 -07:00
shamoon
f7539eb931 Merge pull request #1016 from paperless-ngx/more-redis-wait-info
Feature: Include error information when Redis connection fails
2022-05-23 19:12:49 -07:00
Trenton Holmes
efcfecca10 Also output the exception when the Redis ping fails 2022-05-23 16:53:48 -07:00
shamoon
6a3735822d Merge pull request #1009 from dragere/patch-2
Better handle long tags on small cards
2022-05-23 11:51:07 -07:00
Michael Shamoon
5bbcc7f2f7 Better handle long tag names 2022-05-23 11:24:13 -07:00
Michael Shamoon
400f1d37bf Revert "Allow line breaks in Tags"
This reverts commit 14cbcb4af6.
2022-05-23 11:24:08 -07:00
Trenton Holmes
985b774378 Reworks documentation on the max pixels setting 2022-05-23 10:54:41 -07:00
dragere
14cbcb4af6 Allow line breaks in Tags 2022-05-23 19:28:29 +02:00
Trenton Holmes
18ce86407d Manually updates dependencies 2022-05-23 09:31:31 -07:00
Michael Shamoon
d0ee203265 Update saved-view-widget.component.ts
[ci skip]
2022-05-23 01:54:21 -07:00
Trenton Holmes
fc26fe0ac0 Updates to provide the user provided max pixel size to ocrmypdf 2022-05-22 16:56:08 -07:00
Michael Shamoon
0e0cbe3517 Use NgbDateParserFormatter 2022-05-22 14:38:15 -07:00
Michael Shamoon
8e2cb6d416 Strip some characters from pasted date input 2022-05-22 09:03:26 -07:00
Michael Shamoon
73a6e68e03 Fix conflicting rule type 22 2022-05-21 00:22:36 -07:00
Michael Shamoon
48f9cb09af minor refactor query params utils 2022-05-21 00:22:36 -07:00
Michael Shamoon
1c83f489d1 Use 1/0 instead of true/false 2022-05-21 00:22:35 -07:00
Michael Shamoon
f6d78a0044 fix documents list without query params 2022-05-20 23:18:18 -07:00
Michael Shamoon
e60a7df9a2 Refactor query params service 2022-05-20 23:18:18 -07:00
Quinn Casey
feaf2da834 Merge pull request #995 from paperless-ngx/translate-more-tooltips
Fix: add translation for some un-translated tooltips
2022-05-20 06:05:41 -07:00
Michael Shamoon
bf8703deae Update messages.xlf 2022-05-19 23:54:23 -07:00
Michael Shamoon
1997b7b2d9 Mark various tooltips for translation 2022-05-19 23:50:57 -07:00
Quinn Casey
666b938550 Merge pull request #990 from tooomm/patch-2
Docs: Fix headings and add links to PRs in changelog
2022-05-19 17:23:23 -07:00
Michael Shamoon
4e8f546502 Update django.po 2022-05-19 15:24:43 -07:00
Michael Shamoon
5e9f3586cd Update messages.xlf 2022-05-19 15:22:13 -07:00
Markus
69ef26dab0 Feature: Dynamic document storage pathes (#916)
* Added devcontainer

* Add feature storage pathes

* Exclude tests and add versioning

* Check escaping

* Check escaping

* Check quoting

* Echo

* Escape

* Escape :

* Double escape \

* Escaping

* Remove if

* Escape colon

* Missing \

* Esacpe :

* Escape all

* test

* Remove sed

* Fix exclude

* Remove SED command

* Add LD_LIBRARY_PATH

* Adjusted to v1.7

* Updated test-cases

* Remove devcontainer

* Removed internal build-file

* Run pre-commit

* Corrected flak8 error

* Adjusted to v1.7

* Updated test-cases

* Corrected flak8 error

* Adjusted to new plural translations

* Small adjustments due to code-review backend

* Adjusted line-break

* Removed PAPERLESS prefix from settings variables

* Corrected style change due to search+replace

* First documentation draft

* Revert changes to Pipfile

* Add sphinx-autobuild with keep-outdated

* Revert merge error that results in wrong storage path is evaluated

* Adjust styles of generated files ...

* Adds additional testing to cover dynamic storage path functionality

* Remove unnecessary condition

* Add hint to edit storage path dialog

* Correct spelling of pathes to paths

* Minor documentation tweaks

* Minor typo

* improving wrapping of filter editor buttons with new storage path button

* Update .gitignore

* Fix select border radius in non input-groups

* Better storage path edit hint

* Add note to edit storage path dialog re document_renamer

* Add note to bulk edit storage path re document_renamer

* Rename FILTER_STORAGE_DIRECTORY to PATH

* Fix broken filter rule parsing

* Show default storage if unspecified

* Remove note re storage path on bulk edit

* Add basic validation of filename variables

Co-authored-by: Markus Kling <markus@markus-kling.net>
Co-authored-by: Trenton Holmes <holmes.trenton@gmail.com>
Co-authored-by: Michael Shamoon <4887959+shamoon@users.noreply.github.com>
Co-authored-by: Quinn Casey <quinn@quinncasey.com>
2022-05-19 14:42:25 -07:00
tooomm
163231d307 Link issues, capitalization and minor fixes 2022-05-19 23:12:40 +02:00
tooomm
e530750fc6 update heading levels for v1.7.0 2022-05-19 22:05:43 +02:00
Quinn Casey
c3997c9f26 Merge pull request #987 from paperless-ngx/canon-mfp-new-config
Docs: Add link to new config option in scanners.rst
2022-05-18 14:48:30 -07:00
Quinn Casey
6d7defa79e Merge pull request #986 from paperless-ngx/fix-npm-optional-flag
Change npm --no-optional to --omit=optional
2022-05-18 14:42:08 -07:00
Quinn Casey
bc232582df Add link to new config option 2022-05-18 14:30:33 -07:00
Quinn Casey
286affea38 Fix formatting 2022-05-18 14:30:16 -07:00
Quinn Casey
5f5c9e2eb3 Merge branch 'main' into dev 2022-05-18 14:26:36 -07:00
Quinn Casey
de5eaf1c2c Merge pull request #985 from paperless-ngx/fix-changelog-links
Fix links in changelog
2022-05-18 14:25:56 -07:00
Quinn Casey
6f3755684e Merge pull request #984 from eingemaischt/canon-maxify-mb5350
Added Maxify MB5350 Documentation
2022-05-18 14:25:18 -07:00
Quinn Casey
6950daca9a Link to configuration values for Canon MFP 2022-05-18 14:03:43 -07:00
Michael Shamoon
b4de83e348 Change npm --no-optional to --omit=optional 2022-05-18 14:01:19 -07:00
Quinn Casey
83a1a32a5e Fix formatting, typo 2022-05-18 13:53:03 -07:00
Michael Shamoon
3cea4804f8 Update .gitignore
[ci skip]
2022-05-18 13:52:31 -07:00
Michael Shamoon
8ce32003d7 Update changelog.md 2022-05-18 13:38:56 -07:00
Philipp
d3191490d9 Added Maxify MB5350 Documentation 2022-05-18 20:59:10 +02:00
Michael Shamoon
f6d5ba56b1 Update custom.css
[ci skip]
2022-05-18 11:41:36 -07:00
shamoon
998ca64c1e Merge pull request #919 from paperless-ngx/feature-settings-saved-to-db
Feature: frontend settings saved to database
2022-05-18 11:33:17 -07:00
shamoon
eaa33744a6 Merge pull request #982 from qcasey/changelog-to-md
Add `myst-parser` to fix readthedocs
2022-05-18 11:01:59 -07:00
Quinn Casey
c0a47ca999 Add myst-parser 2022-05-18 07:48:24 -07:00
Quinn Casey
22bfab840d Merge pull request #878 from dabenzel/patch-1
[documentation] added iOS Shortcut Link for Uploading PDF to paperless
2022-05-18 07:00:28 -07:00
Michael Shamoon
88b7f8ac1e Use zoneinfo instead of tz
Co-Authored-By: Trenton Holmes <797416+stumpylog@users.noreply.github.com>
2022-05-18 03:25:02 -07:00
shamoon
6fbe4404f5 Update api.rst 2022-05-18 03:25:02 -07:00
Michael Shamoon
d5e340d0f6 Consolidate date adapter 2022-05-18 03:25:02 -07:00
Michael Shamoon
94954eeba3 created_date error display 2022-05-18 03:25:02 -07:00
Michael Shamoon
b2911b2eba use created_date in all of frontend 2022-05-18 03:25:02 -07:00
Michael Shamoon
c398f22e76 fix docs update endpoint 2022-05-18 03:25:02 -07:00
Michael Shamoon
063f6c1d5a only pass created_date from frontend 2022-05-18 03:25:02 -07:00
Michael Shamoon
2ca691d3b8 use created_date 2022-05-18 03:25:02 -07:00
shamoon
f2086b3a90 Update shortcut link 2022-05-18 03:19:41 -07:00
Philipp
bb15b744c8 Add "Created" as additional (optional) parameter for post_documents (#965)
* Added "created" as optional parameter for post_documents.

* Fixed Conflict

* After Black Reformatting

* Run "add-trailing-comma"

* The right order between black and trailing comma is important....

* Added required=False

* Adds unit test for optional created in document api POST

* Fixes adding of settings override

* And a mis-added print, sigh

Co-authored-by: Philipp <philipp@invalid.invalid>
Co-authored-by: Trenton Holmes <holmes.trenton@gmail.com>
2022-05-18 02:56:32 -07:00
shamoon
f1e99de59a Merge pull request #979 from paperless-ngx/fix-978
Fix: Title is changed after switching doc quickly
2022-05-18 02:55:24 -07:00
Michael Shamoon
e0999c7ba4 pull frontend lang setting from db if set 2022-05-18 02:41:15 -07:00
Michael Shamoon
89c5aac9ed tap ui settings get to avoid dup 2022-05-17 16:12:59 -07:00
Michael Shamoon
4a7c9a6050 Update settings e2e fixture 2022-05-17 11:14:21 -07:00
Michael Shamoon
e94ce3102e Correct translation string locations 2022-05-17 11:14:21 -07:00
Michael Shamoon
0225faddbb Add ui_settings to exporter 2022-05-17 11:13:58 -07:00
Trenton Holmes
fb10d3a5be Removes accidental printing left in testing 2022-05-17 11:13:58 -07:00
Trenton Holmes
0613e3ab12 Makes minor improvements to ui_settings API testing 2022-05-17 11:13:58 -07:00
Michael Shamoon
b21edde1bc Code suggestions
Co-Authored-By: Trenton Holmes <797416+stumpylog@users.noreply.github.com>
2022-05-17 11:13:58 -07:00
Michael Shamoon
1953a8ecb7 Note JSON1 extension requirement on bare metal installs 2022-05-17 11:13:58 -07:00
Michael Shamoon
c84b592543 Update frontend strings 2022-05-17 11:13:58 -07:00
Michael Shamoon
53f905b88b basic python tests 2022-05-17 11:13:19 -07:00
Michael Shamoon
d057a5076c Remove post_save receiver 2022-05-17 11:13:19 -07:00
Michael Shamoon
bcb9c6ccb0 Properly get username & display name 2022-05-17 11:13:19 -07:00
Michael Shamoon
96f86adfb8 PaperlessUiSettings data object 2022-05-17 11:13:19 -07:00
Michael Shamoon
de89f75707 Refactor to UiSettings 2022-05-17 11:11:39 -07:00
Michael Shamoon
b2307d911e update e2e tests for settings initialization 2022-05-17 11:11:39 -07:00
Michael Shamoon
35a558ec01 include language in db settings 2022-05-17 11:11:39 -07:00
Michael Shamoon
2e97c0a5fb Automatic migration to database 2022-05-17 11:11:39 -07:00
Michael Shamoon
7d9575b7fd Use app initializer to wait on settings 2022-05-17 11:11:38 -07:00
Michael Shamoon
321e0ced2a fix key constraint error 2022-05-17 11:11:38 -07:00
Michael Shamoon
a697eb8530 Basic frontend settings retrieval 2022-05-17 11:11:38 -07:00
Michael Shamoon
4b37c1963b skeleton frontend_settings api endpoint 2022-05-17 11:11:38 -07:00
Michael Shamoon
8f2687e390 frontend settings db migration 2022-05-17 11:11:38 -07:00
Michael Shamoon
c0f799a807 Update settings.service.ts 2022-05-17 11:11:38 -07:00
shamoon
abc5bd98b4 Merge pull request #956 from paperless-ngx/fix-warn-max-open-docs
Fix: warn when closing a document with unsaved changes due to max open docs
2022-05-17 10:43:10 -07:00
Michael Shamoon
a51893c849 Manually dirty check title on doc change 2022-05-17 10:36:43 -07:00
Michael Shamoon
79e218d00a Fix title subscription fires even after doc change 2022-05-17 09:59:14 -07:00
Trenton Holmes
9ae20a6bec Merge pull request #953 from paperless-ngx/bugfix-intoify-debounce
Bugfix: Adds configurable intoify debounce time
2022-05-17 09:25:29 -07:00
Michael Shamoon
2f739ff0b3 close button color with light primary only for toasts 2022-05-17 09:09:38 -07:00
Trenton Holmes
e0a8f4df0d Adds troubleshooting and missing documentation for inotify and polling configuration 2022-05-17 08:56:52 -07:00
shamoon
347d7c07ef Merge pull request #942 from paperless-ngx/bugfix-date-format
Bugfix: Fixes document filename date off by 1 issue
2022-05-16 21:47:56 -07:00
shamoon
42e3cf821b Merge pull request #943 from paperless-ngx/feature-seperate-library-workflow
Feature:  Move installer library images to new workflow
2022-05-16 21:46:35 -07:00
shamoon
574f1be067 Merge pull request #973 from paperless-ngx/feature-chore-deps-update
Chore: Manually update all Python dependencies
2022-05-16 17:25:28 -07:00
Trenton Holmes
cbde0e0286 Manually updates dependency files 2022-05-16 16:05:40 -07:00
benzel
11012c6be1 Update docs/scanners.rst
Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
2022-05-16 21:44:34 +02:00
shamoon
432bd83188 Merge pull request #962 from paperless-ngx/add-MIME-pdf-check
fixes #949: change to MIME detection for files
2022-05-16 10:40:43 -07:00
Florian Brandes
f8adfa9873 fixes #949: change to MIME detection for files
Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2022-05-16 17:29:29 +02:00
Michael Shamoon
1efd226f75 let OpenDocumentsService handle nav 2022-05-15 23:44:29 -07:00
Michael Shamoon
ba1bb95935 Update messages.xlf 2022-05-15 23:44:28 -07:00
Michael Shamoon
f5e740f2ec Warn on closing edited doc due to max open docs 2022-05-15 22:55:25 -07:00
benzel
98be7b227f Update scanners.rst 2022-05-15 21:10:03 +02:00
Trenton Holmes
f07cfd4f51 Adds configuration variable to the inotify debounce timing 2022-05-15 11:48:12 -07:00
Trenton Holmes
029d81122b Makes the workflow triggers more specific 2022-05-15 11:25:14 -07:00
shamoon
26eb7ecdb5 Merge pull request #948 from Berjou/docs-typo
docs: fix some typos
2022-05-14 16:00:32 -07:00
Maxime Joubert
3cf3ea4e20 docs: fix some typos 2022-05-15 00:52:37 +02:00
shamoon
84a2937d31 Merge pull request #946 from tooomm/patch-1
[Docs] Fix 2 small typos
2022-05-14 09:11:04 -07:00
Trenton Holmes
1d1f3bde96 Moves the asserts to be closer together 2022-05-14 08:20:55 -07:00
tooomm
329d81ec64 wording 2022-05-14 17:05:52 +02:00
tooomm
c725f50f07 one more 2022-05-14 15:50:38 +02:00
tooomm
463560c929 small typos 2022-05-14 15:45:03 +02:00
Paperless-ngx Translation Bot [bot]
c7412deb77 New Crowdin updates (#911)
* New translations messages.xlf (French)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Luxembourgish)
[ci skip]

* New translations messages.xlf (Portuguese, Brazilian)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]

* New translations messages.xlf (Swedish)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Slovak)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (Dutch)
[ci skip]

* New translations messages.xlf (Hebrew)
[ci skip]

* New translations messages.xlf (Danish)
[ci skip]

* New translations messages.xlf (Finnish)
[ci skip]

* New translations messages.xlf (Greek)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Czech)
[ci skip]

* New translations messages.xlf (Belarusian)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations messages.xlf (Romanian)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations messages.xlf (Serbian (Latin))
[ci skip]

* New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]

* New translations django.po (Polish)
[ci skip]

* New translations django.po (Serbian (Latin))
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Luxembourgish)
[ci skip]

* New translations messages.xlf (Portuguese, Brazilian)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]

* New translations messages.xlf (Swedish)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Slovak)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (Dutch)
[ci skip]

* New translations messages.xlf (Hebrew)
[ci skip]

* New translations messages.xlf (Danish)
[ci skip]

* New translations messages.xlf (Finnish)
[ci skip]

* New translations messages.xlf (Greek)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Czech)
[ci skip]

* New translations messages.xlf (Belarusian)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations messages.xlf (Romanian)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations messages.xlf (Serbian (Latin))
[ci skip]

* New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Luxembourgish)
[ci skip]

* New translations messages.xlf (Portuguese, Brazilian)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]

* New translations messages.xlf (Swedish)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Slovak)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (Dutch)
[ci skip]

* New translations messages.xlf (Hebrew)
[ci skip]

* New translations messages.xlf (Danish)
[ci skip]

* New translations messages.xlf (Finnish)
[ci skip]

* New translations messages.xlf (Greek)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Czech)
[ci skip]

* New translations messages.xlf (Belarusian)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations messages.xlf (Romanian)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations messages.xlf (Serbian (Latin))
[ci skip]

* New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]

Co-authored-by: Michael Shamoon <4887959+shamoon@users.noreply.github.com>
2022-05-13 20:34:51 -07:00
Michael Shamoon
9ed6c78466 Update date.ts
[ci skip]
2022-05-13 11:52:05 -07:00
shamoon
9a1bd9637c Merge pull request #935 from qcasey/changelog-to-md
Convert Changelog to markdown, auto-commit future changelogs
2022-05-13 09:29:07 -07:00
Trenton Holmes
87fd18bee1 Seperates out the library image building into a new, minimal workflow 2022-05-13 09:21:26 -07:00
Trenton Holmes
f3dced3199 Fixes Document public filename so it will use the local date instead of UTC date 2022-05-13 09:10:36 -07:00
shamoon
b36989e8e4 Merge pull request #941 from tooomm/patch-1
[Readme] Fix typo
2022-05-13 08:38:45 -07:00
tooomm
95c45b90a8 fix typo 2022-05-13 17:31:02 +02:00
Michael Shamoon
0bdc132dcf Update messages.xlf
[ci skip]
2022-05-13 08:30:41 -07:00
Quinn Casey
e450391d9b Add links to usernames and PR #s
Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
2022-05-13 07:46:49 -07:00
Quinn Casey
38f4bf4e28 Merge pull request #939 from paperless-ngx/fix-management-pages-plurals
Fix: management pages plurals incorrect in other languages
2022-05-13 07:45:41 -07:00
Quinn Casey
109b0ea78b Merge pull request #933 from paperless-ngx/1.7.1-frontend-css-tweaks
Fix: v1.7.1 frontend visual fixes
2022-05-13 07:44:28 -07:00
Michael Shamoon
5061feb7bc Update messages.xlf 2022-05-12 20:39:04 -07:00
Michael Shamoon
52480e0bc4 Use explicit plural strings on management pages 2022-05-12 20:34:32 -07:00
Michael Shamoon
109dd45b56 Update messages.xlf
[ci skip]
2022-05-12 20:32:17 -07:00
Michael Shamoon
c8da513d97 Hide text on large cards on tiny screens 2022-05-12 20:22:40 -07:00
Quinn Casey
06e7e40b15 Use checkout in action 2022-05-12 15:36:46 -07:00
Quinn Casey
f3d6fcb52b Merge pull request #920 from paperless-ngx/frontend-asn-empty
Feature: allow all ASN filtering functions
2022-05-12 10:28:10 -07:00
Quinn Casey
2decae6586 Merge pull request #930 from paperless-ngx/fix-unassigned-filtering-query-params
Fix: unassigned query params ignored
2022-05-12 09:53:00 -07:00
Quinn Casey
6766041328 Add myst_parser for sphinx, changelog to md 2022-05-12 09:15:55 -07:00
Quinn Casey
2d96cec464 Convert changelog to md 2022-05-12 09:13:32 -07:00
Quinn Casey
843d229c3d Append generated changelog to docs 2022-05-12 09:13:21 -07:00
Michael Shamoon
3d5bcd9d75 Visible bg & text color changes on ng-select 2022-05-11 23:20:21 -07:00
Michael Shamoon
b391dd6a3f Improve mobile filter editor layout with long languages 2022-05-11 23:20:21 -07:00
Quinn Casey
c126cf2bc1 Merge pull request #924 from vlcty/enable-ipv6
gunicorn: Allow IPv6 sockets
2022-05-11 16:04:06 -07:00
Michael Shamoon
fcb5beb617 Fix unassigned query params ignored 2022-05-11 15:15:06 -07:00
Michael Shamoon
dad141726c Fix disabled input bg color 2022-05-11 14:44:02 -07:00
Michael Shamoon
48637188a7 Handle all ASN filtering rules 2022-05-11 14:44:02 -07:00
Quinn Casey
5d063e8449 Merge pull request #925 from paperless-ngx/chore-remote-version-tests
Chore: Add testing for remote version checking
2022-05-11 14:16:46 -07:00
Trenton Holmes
2b8a03e93c Adds unit testing for remote version getting 2022-05-11 12:59:38 -07:00
Josef 'veloc1ty' Stautner
213665cea2 gunicorn: Allow ipv6 sockets 2022-05-11 21:00:00 +02:00
shamoon
d230431227 Merge pull request #923 from paperless-ngx/fix-queryparams-comma-splitting
Fix: allow commas in non-multi rules query params
2022-05-11 11:15:39 -07:00
Michael Shamoon
2040c9fe41 allow commas in non-multi rules query params 2022-05-11 10:26:17 -07:00
shamoon
b49821a9f4 Merge pull request #921 from lippoliv/fix-update-notice-typo
fix duplicate v in update notification popup
2022-05-10 23:33:12 -07:00
Oliver Lippert
1701b0afed fix typo in update notification popup
seems like appRemoteVersion.version brings it's own "v"
2022-05-11 08:26:24 +02:00
Michael Shamoon
7785431152 ASN 'is null' from frontend 2022-05-10 21:51:29 -07:00
shamoon
b325233b2d Merge pull request #883 from paperless-ngx/feature-version-export-import
Fix: Include version in export for better error messages
2022-05-10 19:49:46 -07:00
Quinn Casey
3baf29a6b7 Use currently... importing... instead of "vs" 2022-05-10 17:41:09 -07:00
shamoon
2510216f21 Merge pull request #899 from paperless-ngx/feature-dashboard-loading-indicators
Feature: initial app loading indicators
2022-05-10 17:01:37 -07:00
Quinn Casey
e4d7ae9718 Merge pull request #905 from paperless-ngx/qol-changes
Chore: Minor improvements for quality of life
2022-05-10 17:01:01 -07:00
Michael Shamoon
596fabda5d Update environment.prod.ts 2022-05-10 16:48:59 -07:00
Michael Shamoon
e95f34ae13 Merge branch 'main' into dev 2022-05-10 16:47:31 -07:00
shamoon
169cb9424f Merge pull request #903 from paperless-ngx/bugfix-superuser-command
Bugfix: Superuser Management Won't Reset Password
2022-05-10 16:46:14 -07:00
shamoon
536576518e Merge pull request #721 from paperless-ngx/bug-fix-date-ignore
Fix Ignore Date Parsing
2022-05-10 16:45:58 -07:00
Quinn Casey
b034e972b0 Merge pull request #902 from paperless-ngx/v1.7.1
v1.7.1
2022-05-10 16:11:12 -07:00
Quinn Casey
1bf36b6461 Merge pull request #918 from paperless-ngx/manual-dep-updates
Chore: Manually update Python dependencies
2022-05-10 16:10:23 -07:00
Trenton Holmes
58ab269d3d Manually re-locks dependencies 2022-05-10 11:20:00 -07:00
Trenton Holmes
7cbb73be7a Minor improvements for quality of life 2022-05-09 12:05:29 -07:00
Paperless-ngx Translation Bot [bot]
cdbf81c51c New Crowdin updates (#816)
* New translations messages.xlf (Polish)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Luxembourgish)
[ci skip]

* New translations messages.xlf (Portuguese, Brazilian)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]

* New translations messages.xlf (Swedish)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Slovak)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (Dutch)
[ci skip]

* New translations messages.xlf (Hebrew)
[ci skip]

* New translations messages.xlf (Danish)
[ci skip]

* New translations messages.xlf (Finnish)
[ci skip]

* New translations messages.xlf (Greek)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Czech)
[ci skip]

* New translations messages.xlf (Belarusian)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations messages.xlf (Romanian)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations messages.xlf (Serbian (Latin))
[ci skip]

* New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]

* New translations messages.xlf (Belarusian)
[ci skip]

* New translations messages.xlf (Czech)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Luxembourgish)
[ci skip]

* New translations messages.xlf (Portuguese, Brazilian)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]

* New translations messages.xlf (Swedish)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Slovak)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (Dutch)
[ci skip]

* New translations messages.xlf (Hebrew)
[ci skip]

* New translations messages.xlf (Danish)
[ci skip]

* New translations messages.xlf (Finnish)
[ci skip]

* New translations messages.xlf (Greek)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Czech)
[ci skip]

* New translations messages.xlf (Belarusian)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations messages.xlf (Romanian)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations messages.xlf (Serbian (Latin))
[ci skip]

* New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Serbian (Latin))
[ci skip]

* New translations messages.xlf (Serbian (Latin))
[ci skip]

* New translations django.po (Serbian (Latin))
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Danish)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Luxembourgish)
[ci skip]

* New translations messages.xlf (Portuguese, Brazilian)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]

* New translations messages.xlf (Swedish)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Slovak)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (Dutch)
[ci skip]

* New translations messages.xlf (Hebrew)
[ci skip]

* New translations messages.xlf (Danish)
[ci skip]

* New translations messages.xlf (Finnish)
[ci skip]

* New translations messages.xlf (Greek)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Czech)
[ci skip]

* New translations messages.xlf (Belarusian)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations messages.xlf (Romanian)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations messages.xlf (Serbian (Latin))
[ci skip]

* New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]
2022-05-09 11:29:26 -07:00
Trenton Holmes
cc54368658 Removes unused imports from test case 2022-05-09 09:49:11 -07:00
Quinn Casey
d81e4dbe99 Bump version 2022-05-09 09:48:48 -07:00
Trenton Holmes
4fd075aafa Updates the superuser management command to better handle existing super users 2022-05-09 09:38:17 -07:00
Trenton Holmes
a789649d97 Merge pull request #890 from paperless-ngx/feature-pyupgrade
(chore) Runs pyupgrade to Python 3.8+
2022-05-09 08:08:54 -07:00
Trenton Holmes
1817d014ef Fixes missing f on an f-string 2022-05-08 16:57:35 -07:00
Trenton Holmes
8f1f0f5475 Further updates documentation to note a date sep string is needed 2022-05-08 16:57:35 -07:00
Trenton Holmes
b406a2430d Updates the documentation for ignoring dates 2022-05-08 16:57:35 -07:00
Trenton Holmes
431edb0e67 Updates the documentation for ignore dates 2022-05-08 16:57:35 -07:00
Trenton Holmes
5b96944940 Updates the ignore date parsing to utilize the settings defined date order, instead of guessing a bit 2022-05-08 16:57:35 -07:00
Trenton Holmes
8a6aaf4e2d Adds additional testing for both date parsing and consumed document created date 2022-05-08 16:57:35 -07:00
Michael Shamoon
b30c4275ef dashboard loading indicator, remove duplicate call to saved views 2022-05-08 14:17:11 -07:00
Michael Shamoon
7f7ec625c8 loading indicators for sidebar saved views 2022-05-08 14:16:37 -07:00
Michael Shamoon
010f1f2bd1 loading indicator for dashboard widgets 2022-05-08 09:12:29 -07:00
Michael Shamoon
ce32089cc4 fix back button double history bug 2022-05-07 00:08:34 -07:00
shamoon
f0ee2e14fb Merge pull request #888 from paperless-ngx/feature-docker-improvements
Feature: Dockerfile Organization & Enhancements
2022-05-06 14:45:54 -07:00
Quinn Casey
9b8a490061 Merge pull request #881 from paperless-ngx/feature-fix-saved-view-query-params
Feature / fix saved view & sort field query params
2022-05-06 12:45:22 -07:00
benzel
f4e8ab27fa Update docs/scanners.rst
Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
2022-05-06 20:48:06 +02:00
Michael Shamoon
4da49c8d59 Ensure retain all params when loading saved views 2022-05-06 11:27:18 -07:00
Trenton Holmes
3960093231 Organizes the Dockerfile from top to bottom in order of least changing. Uses RUN bind mounts to avoid copies of the installer being included in the final image 2022-05-06 10:27:18 -07:00
Trenton Holmes
3003bdd507 Runs pyupgrade to Python 3.8+ and adds a hook for it 2022-05-06 09:04:08 -07:00
Quinn Casey
7909b30b4b Merge pull request #853 from lippoliv/bugfix-document_exporter-document-dates-are-off-by-one-day-#267
Bugfix document exporter document dates are off by one day #267
2022-05-05 09:59:11 -07:00
Trenton Holmes
915382f2c7 Adds documentation note about version matching 2022-05-05 09:23:15 -07:00
Quinn Casey
905a34188d Merge pull request #882 from paperless-ngx/bugfix-q-cluster-setting
Fix: Minor update to Q Cluster Configuration
2022-05-05 09:22:17 -07:00
Trenton Holmes
c907d690b7 Improves the output to the user 2022-05-05 09:17:51 -07:00
Michael Shamoon
261cab8450 support sort fields & some refactoring 2022-05-05 08:36:18 -07:00
Quinn Casey
7c2137fcda Merge pull request #873 from paperless-ngx/feature-mobile-friendlier-manage-pages
Feature: mobile friendlier manage pages
2022-05-05 07:41:09 -07:00
Trenton Holmes
2c3cb7f516 Adds stopasgroup to the qcluster run command, as recommended by the documentation 2022-05-05 07:37:53 -07:00
Trenton Holmes
dd4d903f69 Uses the correct styling for output messages 2022-05-05 07:30:02 -07:00
Trenton Holmes
a823b8f70c Includes a version.json file with the current version in export. On import, catch certain errors and check the version if possible 2022-05-05 07:30:02 -07:00
Quinn Casey
3d7aa7a4b9 Merge pull request #880 from paperless-ngx/feature-improve-healthcheck
Add timeout to healthcheck
2022-05-05 06:23:10 -07:00
Michael Shamoon
3e8bff03e7 Refactor query param handling to service 2022-05-05 00:23:06 -07:00
Michael Shamoon
584082a1df Add query params for saved views 2022-05-04 22:31:09 -07:00
Michael Shamoon
49644ce18a Add timeout to healthcheck 2022-05-04 18:58:58 -07:00
Trenton Holmes
7432ef9e19 Accounts for Python 3.8 backported zoneinfo 2022-05-04 15:13:17 -07:00
benzel
ca40e39da4 I have created a shortcut to Upload PDF files
//
2022-05-04 22:22:39 +02:00
Michael Shamoon
7e271129c7 fix management test failing due to hidden button 2022-05-03 13:14:19 -07:00
Michael Shamoon
b5f95a351c ng extract-i18n 2022-05-03 13:04:28 -07:00
Michael Shamoon
5e10befe28 Mobile friendly management tables 2022-05-03 13:00:42 -07:00
Quinn Casey
98ebb095cc Merge pull request #851 from paperless-ngx/feature-semver-tags
Feature: Use semver for release process
2022-05-03 06:30:11 -07:00
Oliver Lippert
c3b5b47b22 use zoneinfo instead of pytz
Signed-off-by: Oliver Lippert <info@trusty.codes>

#267
2022-05-03 08:08:28 +02:00
Trenton Holmes
3c133c36bd Merge pull request #830 from paperless-ngx/dependabot/github_actions/dev/tj-actions/changed-files-19
Bump tj-actions/changed-files from 18.7 to 19
2022-05-02 16:13:58 -07:00
dependabot[bot]
9ceb2e6084 Bump tj-actions/changed-files from 18.7 to 19
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 18.7 to 19.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v18.7...v19)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-02 23:00:56 +00:00
Quinn Casey
2b322b638e Merge pull request #866 from paperless-ngx/feature-arm-tika-consolidate
Deployment: Consolidate tika compose files
2022-05-02 15:56:02 -07:00
phail
0d298d743a Add log messages for mail errors (#727)
* adapt to starttls interface change in imap_tools
pin imap-tools version to avoid breaking changes
improve mail log

* fix unittest

* remove uneeded print and fix merge fail

* bump to next version
2022-05-02 15:54:51 -07:00
shamoon
ec5d80585d Merge pull request #869 from paperless-ngx/feature-update-deps
Chore: Update dependency lock file
2022-05-02 15:44:38 -07:00
Trenton Holmes
88e71e12b1 Manually updates dependencies 2022-05-02 15:11:45 -07:00
Quinn Casey
63bb72caab Merge pull request #867 from paperless-ngx/dependabot/pip/dev/asgiref-3.5.1
Bump asgiref from 3.5.0 to 3.5.1
2022-05-02 14:27:40 -07:00
dependabot[bot]
240c7913e9 Bump asgiref from 3.5.0 to 3.5.1
Bumps [asgiref](https://github.com/django/asgiref) from 3.5.0 to 3.5.1.
- [Release notes](https://github.com/django/asgiref/releases)
- [Changelog](https://github.com/django/asgiref/blob/main/CHANGELOG.txt)
- [Commits](https://github.com/django/asgiref/compare/3.5.0...3.5.1)

---
updated-dependencies:
- dependency-name: asgiref
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-02 20:38:20 +00:00
Quinn Casey
582629a996 Chore: Improve Bug Report template (#859)
* Try to get architecture in BR

* Move screenshots to Description

* Add link to search

* Specify doc page

* Clarify bug report intro

* Add missing period

* Other missing periods for consistiency

* Add line breaks, architecture req

* Expand Currently...

* Removing trailing quote
2022-05-02 11:35:06 -07:00
Quinn Casey
939dd17910 Update Gotenberg to 7.4 2022-05-02 09:16:42 -07:00
Quinn Casey
d58b1a7de7 Update Tika documentation 2022-05-02 09:02:29 -07:00
Quinn Casey
a938895e5e Use our arm compatible tika container 2022-05-02 08:23:04 -07:00
Quinn Casey
9d9111e4d8 Merge pull request #864 from paperless-ngx/fix-863
Always accept yyyy-mm-dd date inputs
2022-05-02 08:10:49 -07:00
shamoon
79dbfce36f Merge pull request #860 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/jest-28.0.3
Bump jest from 27.5.1 to 28.0.3 in /src-ui and related packages
2022-05-02 01:29:43 -07:00
shamoon
e7f162e5e5 setup-jest compatibility with v28 2022-05-02 01:24:24 -07:00
shamoon
f23d10f000 Add jest-environment-jsdom, update jest-preset-angular 2022-05-02 01:24:24 -07:00
dependabot[bot]
67dd86988b Bump jest from 27.5.1 to 28.0.3 in /src-ui
Bumps [jest](https://github.com/facebook/jest/tree/HEAD/packages/jest) from 27.5.1 to 28.0.3.
- [Release notes](https://github.com/facebook/jest/releases)
- [Changelog](https://github.com/facebook/jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/jest/commits/v28.0.3/packages/jest)

---
updated-dependencies:
- dependency-name: jest
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-02 01:21:57 -07:00
Michael Shamoon
e16ab324f4 Always accept yyyy-mm-dd date inputs 2022-05-01 21:38:04 -07:00
Quinn Casey
317926f379 Merge pull request #849 from paperless-ngx/feature-fix-image-local-build
Fix local Docker image building
2022-05-01 16:02:56 -07:00
Quinn Casey
fe61ca2c97 Merge pull request #862 from paperless-ngx/fix-date-input-errors
Fix: show errors on invalid date input
2022-05-01 15:48:32 -07:00
Michael Shamoon
2940686fba show errors on invalid date input 2022-05-01 14:07:31 -07:00
Trenton Holmes
2ef2a561ef Fixes beta or rcs from updating the latest Docker tag 2022-05-01 13:58:24 -07:00
shamoon
7ae31def4f Merge pull request #852 from paperless-ngx/fix-818
Fix: Older dates do not display on frontend
2022-05-01 13:36:55 -07:00
shamoon
8f038d7d26 Merge pull request #861 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/ng-bootstrap/ng-bootstrap-12.1.1
Bump @ng-bootstrap/ng-bootstrap from 12.1.0 to 12.1.1 in /src-ui
2022-05-01 13:36:33 -07:00
Trenton Holmes
b9a2652013 Fixing up more locations of the old tag naming style 2022-05-01 13:21:10 -07:00
Trenton Holmes
dce4166bc8 First changes for using semver everywhere 2022-05-01 13:21:10 -07:00
dependabot[bot]
3c5f509bc7 Bump @ng-bootstrap/ng-bootstrap from 12.1.0 to 12.1.1 in /src-ui
Bumps [@ng-bootstrap/ng-bootstrap](https://github.com/ng-bootstrap/ng-bootstrap) from 12.1.0 to 12.1.1.
- [Release notes](https://github.com/ng-bootstrap/ng-bootstrap/releases)
- [Changelog](https://github.com/ng-bootstrap/ng-bootstrap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ng-bootstrap/ng-bootstrap/compare/12.1.0...12.1.1)

---
updated-dependencies:
- dependency-name: "@ng-bootstrap/ng-bootstrap"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-01 20:07:08 +00:00
Oliver Lippert
182cea3385 always use datetime.date.isoformat to generate filename
fixes #267

Signed-off-by: Oliver Lippert <info@trusty.codes>
2022-05-01 08:54:41 +02:00
Oliver Lippert
0ba1ba55bd add test for filename expectation with modified timezone
Signed-off-by: Oliver Lippert <info@trusty.codes>

#267
2022-05-01 08:41:38 +02:00
Michael Shamoon
45440eec1d handle very old date strings 2022-04-30 22:01:04 -07:00
Trenton Holmes
49fad14920 Updates the Dockerfile to facilitate local image builds, adds documentation for how to build, adds registry caching for final image too 2022-04-30 10:33:09 -07:00
Quinn Casey
0f1e31643d Merge pull request #725 from paperless-ngx/bugfix-imap-utf8-login
Fixes IMAP UTF8 Authenication
2022-04-29 10:31:38 -07:00
Quinn Casey
c17c291b1c Merge pull request #840 from paperless-ngx/fix-password-field-remains-visible
Fix password field remains visible
2022-04-29 07:08:51 -07:00
Michael Shamoon
666641f990 reset password field visibility 2022-04-28 21:07:25 -07:00
Michael Shamoon
268f99f8ac Bump angular to 13.3.5, builders to 13.3.4, types/node to 17.0.30
Supersedes #831, #832, #838, #839
2022-04-28 20:34:35 -07:00
shamoon
216f048466 Merge pull request #833 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/types/node-17.0.29
Bump @types/node from 17.0.27 to 17.0.29 in /src-ui
2022-04-28 20:11:12 -07:00
shamoon
ed8d5f1a80 Merge pull request #834 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/ng-bootstrap/ng-bootstrap-12.1.0
Bump @ng-bootstrap/ng-bootstrap from 12.0.2 to 12.1.0 in /src-ui
2022-04-28 20:10:24 -07:00
dependabot[bot]
27a1ef25a5 Bump @ng-bootstrap/ng-bootstrap from 12.0.2 to 12.1.0 in /src-ui
Bumps [@ng-bootstrap/ng-bootstrap](https://github.com/ng-bootstrap/ng-bootstrap) from 12.0.2 to 12.1.0.
- [Release notes](https://github.com/ng-bootstrap/ng-bootstrap/releases)
- [Changelog](https://github.com/ng-bootstrap/ng-bootstrap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ng-bootstrap/ng-bootstrap/compare/12.0.2...12.1.0)

---
updated-dependencies:
- dependency-name: "@ng-bootstrap/ng-bootstrap"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-28 21:27:25 +00:00
dependabot[bot]
ecbc8165d5 Bump @types/node from 17.0.27 to 17.0.29 in /src-ui
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 17.0.27 to 17.0.29.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-28 21:27:05 +00:00
shamoon
128594584e Merge pull request #829 from paperless-ngx/fix-missing-labels-dep
Fix `dependabot.yml` config
2022-04-28 14:25:13 -07:00
Quinn Casey
8b798013c1 Merge pull request #828 from paperless-ngx/feature-docker-hub-push
Enable Docker Hub push
2022-04-28 13:40:55 -07:00
Quinn Casey
8c19c2c2e9 Fix comment directory 2022-04-28 12:52:20 -07:00
Quinn Casey
6f0fee4c43 Assign GHA bumps to CI/CD team 2022-04-28 12:51:43 -07:00
Quinn Casey
a5b4a7caad Add back review groups 2022-04-28 12:49:44 -07:00
Quinn Casey
c1b9db19c6 Add back labels removed in 30834e 2022-04-28 12:47:37 -07:00
Trenton Holmes
40f88faf37 Updates the workflow to enable Docker Hub pushing 2022-04-28 12:18:25 -07:00
Trenton Holmes
81e6228ab3 Merge pull request #806 from paperless-ngx/dependabot/pip/dev/pytest-7.1.2
Bump pytest from 7.1.1 to 7.1.2
2022-04-28 07:28:15 -07:00
dependabot[bot]
157951343b Bump pytest from 7.1.1 to 7.1.2
Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.1.1 to 7.1.2.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/7.1.1...7.1.2)

---
updated-dependencies:
- dependency-name: pytest
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-28 13:33:34 +00:00
Quinn Casey
9325eff6fc Merge pull request #815 from paperless-ngx/feature-fix-pillow-libs
Fixes Pillow build for armv7
2022-04-27 20:27:12 -07:00
Quinn Casey
8c8f366e0f Merge pull request #766 from paperless-ngx/feature-barcode-tiff-support
Feature barcode tiff support
2022-04-27 19:46:16 -07:00
Trenton Holmes
542221a38d Merge pull request #792 from paperless-ngx/dependabot/github_actions/github/codeql-action-2
Bump github/codeql-action from 1 to 2
2022-04-27 19:33:25 -07:00
dependabot[bot]
aa7faaaa72 Bump github/codeql-action from 1 to 2
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 1 to 2.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v1...v2)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-28 01:10:48 +00:00
Trenton Holmes
c96db31006 Merge pull request #821 from aruhier/pr_docker
docker: set default postgresql port back to 5432
2022-04-27 18:09:07 -07:00
Anthony Ruhier
c66de5931c docker: set default postgresql port back to 5432
Postgresql default port in the docker prepare script has been changed by
mistake to 5342 in commit c2c8a2754. Set it back to 5432.
2022-04-28 02:04:19 +02:00
Trenton Holmes
fdec13ef81 Updates the Pillow link to a better anchor 2022-04-27 15:48:19 -07:00
Trenton Holmes
9aee44f363 Adds extra system libraries for pikepdf/Pillow building 2022-04-27 15:48:19 -07:00
Trenton Holmes
2caa2d5b32 Merge pull request #820 from paperless-ngx/feature-rebuild-inter-images
Updates GHA workflow to rebuild intermediate images on changes
2022-04-27 15:47:32 -07:00
Trenton Holmes
66c7f44bea Changes the intermediate image building steps to use registry caching, allowig us to always rebuild them, but do so very quickly when nothing has changed 2022-04-27 11:28:55 -07:00
Quinn Casey
99e4a79cb8 Merge pull request #814 from paperless-ngx/update-i18n
Update frontend localization source file
2022-04-26 15:27:14 -07:00
Michael Shamoon
f7f0df60ec Update messages.xlf 2022-04-26 14:46:37 -07:00
Quinn Casey
e012262301 Merge pull request #813 from paperless-ngx/remove-expected-behavior
Remove expected behavior section
2022-04-26 14:21:33 -07:00
Quinn Casey
5676155e4e Remove expected behavior section 2022-04-26 11:15:26 -07:00
Quinn Casey
d98bfa5bed Merge pull request #777 from paperless-ngx/bugfix-install-ocr-settings
Fix install script extra OCR languages format
2022-04-26 11:12:19 -07:00
Quinn Casey
7ccac8053b Merge pull request #788 from paperless-ngx/feature-wait-for-redis
Adds simple Python to wait for Redis broker to be ready
2022-04-26 11:10:01 -07:00
Quinn Casey
40cf46fe7d Merge pull request #758 from paperless-ngx/dependabot/pip/dev/imap-tools-0.54.0
Bump imap-tools from 0.53.0 to 0.54.0
2022-04-26 10:46:32 -07:00
Trenton Holmes
f5c05e1283 Fixes newly added mail tests to account for model change 2022-04-26 10:03:41 -07:00
Trenton Holmes
330e47f0b7 Adds some logging so we know which login method has failed 2022-04-26 09:41:36 -07:00
Trenton Holmes
1e9378b429 Implements a fallback to AUTH=PLAIN in the event of a UnicodeEncodeError during a normal login 2022-04-26 09:41:36 -07:00
Trenton Holmes
af58fb5fa3 Empty, dummy commit because GHA? 2022-04-26 09:41:08 -07:00
Trenton Holmes
3d6fb2383a Updates install script to split + seperated OCR languages to spaces for installation script 2022-04-26 09:41:08 -07:00
Trenton Holmes
2407798d2e Adds simple Python to wait for Redis broker to be ready (with minor Dockerfile improvements) 2022-04-26 08:46:03 -07:00
Trenton Holmes
f9194bd28c Merge pull request #761 from paperless-ngx/feature-build-all-images
Update GHA workflow to build all Docker images
2022-04-26 08:31:13 -07:00
Trenton Holmes
816f020cc3 Fixes tests with imap-tools 0.54.0 changes to the EmailAddress class 2022-04-26 08:11:25 -07:00
dependabot[bot]
9191aa32df Bump imap-tools from 0.53.0 to 0.54.0
Bumps [imap-tools](https://github.com/ikvk/imap_tools) from 0.53.0 to 0.54.0.
- [Release notes](https://github.com/ikvk/imap_tools/releases)
- [Changelog](https://github.com/ikvk/imap_tools/blob/master/docs/release_notes.rst)
- [Commits](https://github.com/ikvk/imap_tools/compare/v0.53.0...v0.54.0)

---
updated-dependencies:
- dependency-name: imap-tools
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-26 13:30:32 +00:00
Trenton Holmes
0a6395507e Merge pull request #757 from paperless-ngx/dependabot/pip/dev/ocrmypdf-13.4.3
Bump ocrmypdf from 13.4.2 to 13.4.3
2022-04-25 17:25:41 -07:00
shamoon
eff68c601c Merge pull request #804 from paperless-ngx/dependabot-gha-target-dev
Updates the target branch for GHA updates to be dev
2022-04-25 16:29:50 -07:00
dependabot[bot]
3f5540f35b Bump ocrmypdf from 13.4.2 to 13.4.3
Bumps [ocrmypdf](https://github.com/jbarlow83/ocrmypdf) from 13.4.2 to 13.4.3.
- [Release notes](https://github.com/jbarlow83/ocrmypdf/releases)
- [Changelog](https://github.com/ocrmypdf/OCRmyPDF/blob/master/docs/release_notes.rst)
- [Commits](https://github.com/jbarlow83/ocrmypdf/compare/v13.4.2...v13.4.3)

---
updated-dependencies:
- dependency-name: ocrmypdf
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-25 23:26:26 +00:00
Trenton Holmes
e5f5030e9c Updates the target branch for GHA updates to be dev 2022-04-25 15:27:15 -07:00
Trenton Holmes
df39d37ca9 Merge pull request #756 from paperless-ngx/dependabot/pip/dev/importlib-resources-5.7.1
Bump importlib-resources from 5.6.0 to 5.7.1
2022-04-25 14:19:49 -07:00
dependabot[bot]
bea81d0449 Bump importlib-resources from 5.6.0 to 5.7.1
Bumps [importlib-resources](https://github.com/python/importlib_resources) from 5.6.0 to 5.7.1.
- [Release notes](https://github.com/python/importlib_resources/releases)
- [Changelog](https://github.com/python/importlib_resources/blob/main/CHANGES.rst)
- [Commits](https://github.com/python/importlib_resources/compare/v5.6.0...v5.7.1)

---
updated-dependencies:
- dependency-name: importlib-resources
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-25 20:54:20 +00:00
Trenton Holmes
d261845fc6 Merge pull request #692 from paperless-ngx/dependabot/pip/dev/tox-3.25.0
Bump tox from 3.24.5 to 3.25.0
2022-04-25 13:49:42 -07:00
dependabot[bot]
eac0b295d2 Bump tox from 3.24.5 to 3.25.0
Bumps [tox](https://github.com/tox-dev/tox) from 3.24.5 to 3.25.0.
- [Release notes](https://github.com/tox-dev/tox/releases)
- [Changelog](https://github.com/tox-dev/tox/blob/master/docs/changelog.rst)
- [Commits](https://github.com/tox-dev/tox/compare/3.24.5...3.25.0)

---
updated-dependencies:
- dependency-name: tox
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-25 19:19:35 +00:00
shamoon
f4eefcea13 Merge pull request #800 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/cypress-9.6.0
Bump cypress from 9.5.3 to 9.6.0 in /src-ui
2022-04-25 12:18:54 -07:00
dependabot[bot]
268715711f Bump cypress from 9.5.3 to 9.6.0 in /src-ui
Bumps [cypress](https://github.com/cypress-io/cypress) from 9.5.3 to 9.6.0.
- [Release notes](https://github.com/cypress-io/cypress/releases)
- [Changelog](https://github.com/cypress-io/cypress/blob/develop/.releaserc.base.js)
- [Commits](https://github.com/cypress-io/cypress/compare/v9.5.3...v9.6.0)

---
updated-dependencies:
- dependency-name: cypress
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-25 19:14:24 +00:00
shamoon
c5f70b4401 Merge pull request #799 from paperless-ngx/bump-angular-250422
Bump angular & tools to 13.3.4 or 13.3.3
2022-04-25 12:12:50 -07:00
Michael Shamoon
912caf84a6 Bump angular & tools to 13.3.4 or 13.3.3 2022-04-25 12:09:54 -07:00
shamoon
448fa4d35f Merge pull request #797 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/concurrently-7.1.0
Bump concurrently from 7.0.0 to 7.1.0 in /src-ui
2022-04-25 12:08:48 -07:00
Trenton Holmes
cd8d4c357d Fixes the merge issues 2022-04-25 11:39:05 -07:00
Trenton Holmes
bdcc6f861d Converts tabs to spaces and update EditorConfig for the new files 2022-04-25 11:32:55 -07:00
Trenton Holmes
d9d6b7b151 Updates the utlity build script to actually support all the images 2022-04-25 11:32:55 -07:00
Trenton Holmes
4517692c20 Updates the utility script to allow building of other Dockerfiles for building any image locally. Adds a single point to configure non-Python versions 2022-04-25 11:32:55 -07:00
Trenton Holmes
609b9e3369 Adds utility script for building the Docker image locally 2022-04-25 11:32:54 -07:00
Trenton Holmes
be8ca110f4 Fixes spelling 2022-04-25 11:32:54 -07:00
Trenton Holmes
f1da37dd12 Minor fixes for local building 2022-04-25 11:32:53 -07:00
Trenton Holmes
ecca51dbdd Ports over the improvements to the frontend compilation from other PR 2022-04-25 11:32:53 -07:00
Trenton Holmes
d19015579c Instead of using a full image name, use the repo and version to build the image to pull from. Removes building of the frontend for multiple platforms 2022-04-25 11:32:53 -07:00
Trenton Holmes
6179ca5668 Fixes final WORKDIR directive 2022-04-25 11:32:52 -07:00
Trenton Holmes
6c70db31bd Incorporates the base image building back into the main repo with multi stage building 2022-04-25 11:32:52 -07:00
shamoon
b0790d7010 Merge pull request #798 from paperless-ngx/hotfix-mail-tests
Fix Backend Mail Tests
2022-04-25 11:29:31 -07:00
Trenton Holmes
eb8158673f Fixes backend testing of mail on dev 2022-04-25 11:10:32 -07:00
Michael Shamoon
409f17980f Update environment.prod.ts 2022-04-25 10:34:20 -07:00
Michael Shamoon
654ef06682 Merge branch 'main' into dev 2022-04-25 10:33:40 -07:00
dependabot[bot]
bca95a4972 Bump concurrently from 7.0.0 to 7.1.0 in /src-ui
Bumps [concurrently](https://github.com/open-cli-tools/concurrently) from 7.0.0 to 7.1.0.
- [Release notes](https://github.com/open-cli-tools/concurrently/releases)
- [Commits](https://github.com/open-cli-tools/concurrently/compare/v7.0.0...v7.1.0)

---
updated-dependencies:
- dependency-name: concurrently
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-25 17:27:16 +00:00
Michael Shamoon
4df065d8d5 v1.7.0 2022-04-25 10:26:49 -07:00
shamoon
a358477cda Merge pull request #695 from paperless-ngx/beta
[Beta] Paperless-ngx v1.7.0 Release Candidate 1
2022-04-25 10:24:27 -07:00
shamoon
44d6db8c47 Merge pull request #772 from paperless-ngx/fix-dark-mode-delay-btn-progress
Fix dark mode delay button progress bar not visible
2022-04-22 08:15:30 -07:00
Quinn Casey
49e627d2fd Merge pull request #785 from paperless-ngx/fix-docs-darkmode-toggle
Fix docs dark mode toggle blocks menu button
2022-04-22 07:24:28 -07:00
shamoon
c3a8d93eb4 fix docs dark mode toggle blocks menu button 2022-04-22 01:00:19 -07:00
Paperless-ngx Translation Bot [bot]
7a648c6465 New Crowdin updates (#781)
* New translations messages.xlf (Russian)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]
2022-04-21 20:33:16 -07:00
Quinn Casey
5c1c5b5b0d Merge pull request #782 from paperless-ngx/add-python-3-10
Adds Python 3.10 to the backend test matrix
2022-04-21 11:13:50 -07:00
Trenton Holmes
811da4bac5 Adds Python 3.10 to the backend test matrix 2022-04-21 10:28:13 -07:00
Michael Shamoon
23b2fbef45 Fix dark mode delay button progress bar not visible 2022-04-19 19:25:24 -07:00
shamoon
f1b52b495a Merge pull request #769 from chrpme/fix/preview-link
Open preview link in new browser tab
2022-04-19 17:49:55 -07:00
Quinn Casey
0bff3891bd Merge pull request #767 from paperless-ngx/bug-fix-list-folders
List Email Account Folders In Event of Error Changing Folder
2022-04-19 15:57:31 -07:00
Florian Brandes
a7b1658ee1 code review changes
Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2022-04-20 00:55:45 +02:00
Trenton Holmes
c274bbcddf Tweaks documentation around mail fetching sub-folders 2022-04-19 15:35:45 -07:00
Trenton Holmes
57f32e5360 Includes exception information during exception listing folders
Co-authored-by: Florian <florian.brandes@posteo.de>
2022-04-19 13:40:04 -07:00
Mike Unke
b4ecf8e28e Open preview link in new browser tab 2022-04-19 21:47:49 +02:00
Trenton Holmes
06cfba8c7e Updates the documentation 2022-04-19 09:05:30 -07:00
Trenton Holmes
5603834282 Only output the folder names 2022-04-19 09:03:08 -07:00
Trenton Holmes
33134d4529 In the event of an error when setting the mail account folder, attempt to list the account's folders to the log 2022-04-19 08:32:34 -07:00
Florian Brandes
bf57b6e4a2 more improvements to tiff support
Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2022-04-19 13:08:40 +02:00
Paperless-ngx Translation Bot [bot]
b63f87a5b5 New translations messages.xlf (French) (#764)
[ci skip]
2022-04-18 19:48:23 -07:00
shamoon
68e3612d36 Merge pull request #765 from p-h-a-i-l/fix-mail-action-mixup
fix Mail actions mixup
2022-04-18 16:23:34 -07:00
phail
616a826b8a fix Mail actions mixup 2022-04-19 00:59:57 +02:00
shamoon
09d62d76b2 Merge pull request #745 from paperless-ngx/1.7.0-rc1-css-fixes-1
Beta 1.7.0 rc1 CSS Fixes #1
2022-04-18 12:02:14 -07:00
Quinn Casey
deab7794d6 Merge pull request #751 from paperless-ngx/feature-ci-concurrency
Adds workflow level concurrency group
2022-04-17 17:17:28 -07:00
Trenton Holmes
bc892059a1 Adds workflow level concurrency group with cancelling of in progress jobs to the CI 2022-04-17 15:29:50 -07:00
Florian Brandes
6d0fdc7510 add tests
fix indention
add more documentation

Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2022-04-17 16:10:53 +02:00
Michael Shamoon
dd1d4b86d2 use var in input check / radio svgs 2022-04-17 00:49:34 -07:00
Michael Shamoon
65eeea9453 toasts should respect close button coloring 2022-04-17 00:48:57 -07:00
Michael Shamoon
b2b202586c fix settings mobile display bugs 2022-04-17 00:36:47 -07:00
Michael Shamoon
49341260dc fix popover carats 2022-04-17 00:25:39 -07:00
Michael Shamoon
dfcef81001 fix dark mode progress showing in light mode 2022-04-17 00:25:28 -07:00
Michael Shamoon
a834a6c874 remove single-use css vars 2022-04-17 00:25:10 -07:00
Florian Brandes
ad5188a280 add TIFF barcode support
Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2022-04-16 21:59:03 +02:00
Paperless-ngx Translation Bot [bot]
53c2a0c724 New translations messages.xlf (Serbian (Latin)) (#735)
[ci skip]
2022-04-16 00:39:08 -07:00
Michael Shamoon
3a8cc31f1b fix some css specificity issues, unused vars 2022-04-16 00:23:15 -07:00
Quinn Casey
0f6b452d17 Merge pull request #737 from paperless-ngx/add-missing-packages-to-doc
add barcode packages to setup.rst
2022-04-15 06:32:47 -07:00
Florian Brandes
e994bcf737 add barcode packages to setup.rst
fixes #730

Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2022-04-15 08:32:53 +02:00
Michael Shamoon
5432700b0d Add note for malformed package-lock in 1.6.0 2022-04-13 20:43:42 -07:00
Paperless-ngx Translation Bot [bot]
7b7534c952 New Crowdin updates (#699)
* New translations django.po (Polish)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations django.po (Polish)
[ci skip]

* New translations messages.xlf (Danish)
[ci skip]
2022-04-13 20:33:15 -07:00
shamoon
b4570545ef Merge pull request #717 from paperless-ngx/fix-custom-theme-color-contrast
Fix custom theme color contrast
2022-04-13 13:31:24 -07:00
Michael Shamoon
6478db13e6 miscellaneous css fixes / reorganization 2022-04-13 13:30:02 -07:00
Michael Shamoon
1d7ddcc10d Remove unneeded imports since change to css vars 2022-04-13 08:43:35 -07:00
shamoon
30508c6c2c Merge pull request #702 from paperless-ngx/stalebot-unconfirmed
Chore: Only stale unconfirmed issues
2022-04-13 08:35:31 -07:00
Quinn Casey
18f43c5757 Merge pull request #722 from paperless-ngx/fix-gotenberg
Fix: use correct gotenberg image for sqlite-tika.arm.yml
2022-04-13 08:34:40 -07:00
shamoon
52498efd14 Merge pull request #723 from paperless-ngx/bugfix-remove-tag-match
Fix docker/metadata-action creation of latest tag
2022-04-13 08:28:44 -07:00
Trenton Holmes
40cb721d16 Removes the matching regex from the docker/metadata-action as it will create a new :latest even for release candidates 2022-04-13 08:20:30 -07:00
Michael Shamoon
1c2699b16e Refactor contrast to use luminance function 2022-04-13 08:18:10 -07:00
Michael Shamoon
d98a016087 Initial build of primary color contrast 2022-04-13 08:18:09 -07:00
Quinn Casey
bc5b6db031 Fix gotenberg image 2022-04-13 08:16:35 -07:00
Quinn Casey
4a4f252ad8 Merge branch 'main' into beta 2022-04-13 08:13:32 -07:00
Quinn Casey
c81dd1a478 Merge pull request #720 from alumpe/docs-typo-fixes
Corrects some spelling mistakes in docs
2022-04-13 07:11:36 -07:00
Adrian Lumpe
31016156be corrects some spelling mistakes in docs 2022-04-13 15:39:49 +02:00
shamoon
dad352f05e Update changelog.rst
[ci skip]
2022-04-13 03:14:43 -07:00
shamoon
95e94618d8 Merge pull request #270 from jonasc/dev
Allow setting more than one tag in mail rules
2022-04-13 03:11:38 -07:00
shamoon
045a401cd7 Merge pull request #705 from paperless-ngx/fix-startls
bugfix for imap using starttls
2022-04-12 18:51:46 -07:00
Quinn Casey
d5d7e2edbc Merge pull request #715 from paperless-ngx/nginx-proxy-config-variable
Add required PAPERLESS_URL to nginx proxy docs
2022-04-12 15:17:22 -07:00
Quinn Casey
64e1a6ec7e Merge pull request #713 from paperless-ngx/fix-1.7.0-rc1-tags-input-color
Fix: v1.7.0-rc1 Tags input should use body color
2022-04-12 15:11:05 -07:00
Quinn Casey
2221b425ad Add required PAPERLESS_URL to nginx proxy docs 2022-04-12 15:06:32 -07:00
Michael Shamoon
86b2ccae94 Tags input should use body color 2022-04-12 14:45:47 -07:00
shamoon
0bd67a54ab Merge pull request #704 from paperless-ngx/breaking-changes-changelog
Chore: Add Breaking Changes to release notes
2022-04-12 10:19:15 -07:00
Quinn Casey
306f254218 Add Breaking Changes 2022-04-12 07:37:49 -07:00
Quinn Casey
449add88a6 Bump header level 2022-04-12 07:37:02 -07:00
Quinn Casey
941ba8d689 Only stale unconfirmed issues 2022-04-12 07:31:14 -07:00
shamoon
813335f8eb Update changelog.rst
[ci skip]
2022-04-12 07:30:16 -07:00
shamoon
f0cef2f42f Update changelog.rst
[ci skip]
2022-04-12 07:29:07 -07:00
shamoon
e767eb38f4 Merge pull request #700 from paperless-ngx/fix-healthcheck
add "localhost" to ALLOWED_HOSTS
2022-04-12 07:25:09 -07:00
Florian Brandes
71cbef4c13 fixes #697
Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2022-04-12 15:54:18 +02:00
jonasc
834ad1ef84 reformat migration with black 2022-04-12 15:06:38 +02:00
Florian Brandes
753e6661bc add "localhost" to ALLOWED_HOSTS
if PAPERLESS_URL is set and ALLOWED_HOSTS is NOT set

Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2022-04-12 14:39:08 +02:00
jonasc
1ce19f5444 merge migrations 2022-04-12 10:51:19 +02:00
jonasc
0de1230a1a Reset related_name (was set to prevent duplicate) 2022-04-12 10:45:56 +02:00
jonasc
5ff304324d Add backwards data migration
The documents.tests.test_migration_mime_type test suite failes if no
backwards migration is provided. This simple backwards migration sets
the old assign_tag field with a tag if exactly one is set in
assign_tags.
2022-04-12 10:45:56 +02:00
jonasc
37f7ef41f2 Save MailRule and MailAccount objects in tests
This fixes the errors in the tests that the new many-to-many
assign_tags property cannot be accessed due to MailRule not having an
id. In one case it it necessary to give additional names to both objects
as several are created.
2022-04-12 10:45:52 +02:00
jonasc
4022284059 Allow setting more than one tag in mail rules
The three migrations do the following to preserve existing data in
assign_tag:
1. Add the new many-to-many field assign_tags.
2. Copy existing data from the assign_tag field to the assign_tags.
3. Delete the existing assign_tag field.
2022-04-12 10:41:08 +02:00
shamoon
dde6a2eb7d Merge branch 'main' into beta 2022-04-11 23:37:21 -07:00
Michael Shamoon
1083ed4e40 Update .pre-commit-config.yaml
[ci skip]
2022-04-11 23:32:37 -07:00
Michael Shamoon
c111825b1e Minor merge conflicts
[ci skip]
2022-04-11 23:31:20 -07:00
Michael Shamoon
e36c22d29a Update changelog.rst
[ci skip]
2022-04-11 23:05:16 -07:00
Michael Shamoon
c192931015 Update changelog.rst
[ci skip]
2022-04-11 22:58:08 -07:00
Michael Shamoon
ae895a4aec Create release-drafter.yml
[ci skip]
2022-04-11 22:05:55 -07:00
Michael Shamoon
301ad7e07d v1.7.0-rc1 2022-04-11 21:03:02 -07:00
Trenton Holmes
cc93616019 Merge pull request #691 from paperless-ngx/dependabot/pip/dev/django-4.0.4
Bump django from 4.0.3 to 4.0.4
2022-04-11 16:04:44 -07:00
Michael Shamoon
493d9875d4 tiny docs css fix
[ci skip]
2022-04-11 14:14:15 -07:00
shamoon
3fb8d05f0d Merge pull request #684 from paperless-ngx/docs-dark-mode
Documentation dark mode
2022-04-11 14:10:23 -07:00
dependabot[bot]
88066563d3 Bump django from 4.0.3 to 4.0.4
Bumps [django](https://github.com/django/django) from 4.0.3 to 4.0.4.
- [Release notes](https://github.com/django/django/releases)
- [Commits](https://github.com/django/django/compare/4.0.3...4.0.4)

---
updated-dependencies:
- dependency-name: django
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-11 20:37:09 +00:00
shamoon
9e3590352c Merge pull request #690 from paperless-ngx/fix-scanners-table
Fix: scanners table
2022-04-11 12:56:45 -07:00
Quinn Casey
86ad52639f Fix name 2022-04-11 12:34:37 -07:00
Quinn Casey
c00be946a5 Remove explicit "no" as was done in f303a1c 2022-04-11 12:32:32 -07:00
Quinn Casey
322aeeb552 Add 994d502 2022-04-11 12:23:27 -07:00
Quinn Casey
501d4cafa9 Add f303a1c 2022-04-11 12:21:52 -07:00
Quinn Casey
e556fb3e3a Add f2f7b71 2022-04-11 12:17:44 -07:00
Quinn Casey
bb930297d6 Reset table to b318c0a 2022-04-11 12:12:01 -07:00
shamoon
83f10167e5 Merge pull request #483 from stumpylog/check-if-file-busy
Adds wait for file before consuming
2022-04-11 11:56:05 -07:00
Quinn Casey
d47bb21389 Merge pull request #654 from paperless-ngx/fix-doc-detail-time
Fix: frontend document editing erases time data
2022-04-11 11:54:24 -07:00
Florian
4dedff00b8 Merge pull request #532 from paperless-ngx/feature-barcode-splitter
Feature barcode splitter
2022-04-11 08:51:48 +02:00
Trenton Holmes
2414dad656 Adds additional checking for both inotify and polling around document still being busy before consuming it 2022-04-10 12:21:34 -07:00
shamoon
8f98cb4860 Merge pull request #550 from stumpylog/feature-mail-consume-improve-docs
Feature mail consume improve docs
2022-04-10 08:46:45 -07:00
shamoon
6e96b7e00a Merge pull request #612 from stumpylog/bug-fix-filter-len
Increase length of SavedViewFilterRule
2022-04-10 08:46:25 -07:00
Michael Shamoon
04acce4916 dark mode toggle, css vars 2022-04-09 22:10:03 -07:00
Michael Shamoon
1b7a304149 initial docs dark mode css 2022-04-08 22:49:45 -07:00
shamoon
00287b27ab Merge pull request #680 from paperless-ngx/bug-fix-fnmatch
[bug] - Fixes attachment filename matching during mail fetching
2022-04-08 13:59:22 -07:00
Trenton Holmes
8f18b7fd6c Fixes the matching of attachment files names to patterns 2022-04-08 13:42:42 -07:00
Felix E
dde7771dc6 Merge pull request #674 from paperless-ngx/feature-django4-csrf
Add `PAPERLESS_URL` env variable & CSRF var
2022-04-08 21:00:57 +02:00
Quinn Casey
4165184e42 Chore: Implement release-drafter action for Changelogs (#669)
* Add inital release-drafter config

* Replace release action

* Add collapse-after 3 to dependencies
2022-04-08 11:12:19 -07:00
shamoon
f3c8211ba4 Merge pull request #672 from paperless-ngx/update-screenshots 2022-04-08 10:25:51 -07:00
Michael Shamoon
e4953a756a docs for PAPERLESS_URL + PAPERLESS_CSRF_TRUSTED_ORIGINS 2022-04-08 09:59:59 -07:00
Trenton Holmes
471ac63a3a Increases SavedViewFilterRule value to the maximum length 2022-04-08 08:55:58 -07:00
Trenton Holmes
f358eda5c5 Updates the mail db model to use the built-in enum capabilities and runs the migrations 2022-04-08 08:55:40 -07:00
Trenton Holmes
035130ecdc Updates the folder input text and adds docs note for how to figure out the folder separator value 2022-04-08 08:55:40 -07:00
Michael Shamoon
908fc8573a Merge dev changes to PULL_REQUEST_TEMPLATE.md
[ci skip]
2022-04-08 00:41:55 -07:00
Michael Shamoon
ca0e86757b add PAPERLESS_URL env variable for CSRF 2022-04-08 00:27:53 -07:00
Michael Shamoon
d4153607c9 reorganizing scss for clarity
[ci skip]
2022-04-07 23:23:28 -07:00
Michael Shamoon
99d0a0845d fix scss organization
[ci skip]
2022-04-07 23:15:27 -07:00
Florian Brandes
5fae5a9ee0 fix conditional in separate_pages
add additional test for separate_pages

Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2022-04-08 08:09:48 +02:00
Michael Shamoon
b5a75be1db fix error case
[ci skip]
2022-04-07 23:06:46 -07:00
Michael Shamoon
93ad5433e4 Updated screenshots 2022-04-07 15:28:54 -07:00
Trenton Holmes
eb5e0e0b9b Merge pull request #501 from stumpylog/configure-worker-retry
Adds settings for worker retry time
2022-04-07 15:24:53 -07:00
Michael Shamoon
5ead8de0bb Add global drag-n-drop note
[ci skip]
2022-04-07 15:21:49 -07:00
Trenton Holmes
dc90f58391 Merge pull request #641 from paperless-ngx/dependabot/pip/dev/pre-commit-2.18.1
Bump pre-commit from 2.17.0 to 2.18.1
2022-04-07 14:29:08 -07:00
Michael Shamoon
ca43c71cf5 fix some broken css vars 2022-04-07 14:27:49 -07:00
dependabot[bot]
931a311c48 Bump pre-commit from 2.17.0 to 2.18.1
Bumps [pre-commit](https://github.com/pre-commit/pre-commit) from 2.17.0 to 2.18.1.
- [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/v2.17.0...v2.18.1)

---
updated-dependencies:
- dependency-name: pre-commit
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-07 20:54:33 +00:00
Michael Shamoon
9f9d7da1ce minor css hover + focus state fixes
[ci skip]
2022-04-07 13:51:36 -07:00
Trenton Holmes
d00e8d3b0f Merge pull request #649 from paperless-ngx/dependabot/pip/dev/zipp-3.8.0
Bump zipp from 3.7.0 to 3.8.0
2022-04-07 13:49:50 -07:00
Trenton Holmes
d4124bae0c Merge pull request #653 from paperless-ngx/dependabot/pip/dev/tqdm-4.64.0
Bump tqdm from 4.63.1 to 4.64.0
2022-04-07 13:37:46 -07:00
Michael Shamoon
c062eb751e another tiny doc style fix
[ci skip]
2022-04-07 12:47:48 -07:00
Michael Shamoon
e273a594ba tiny doc style fixes for rtd tools
[ci skip]
2022-04-07 12:44:08 -07:00
shamoon
ebb724e687 Merge pull request #652 from paperless-ngx/documentation-style
Documentation style
2022-04-07 12:35:06 -07:00
shamoon
58eb2d6f63 Merge pull request #283 from paperless-ngx/feature-global-dragdrop
Feature: global drag'n'drop
2022-04-07 12:14:59 -07:00
Michael Shamoon
b14bf8a96d prettier docs 2022-04-07 11:38:48 -07:00
Quinn Casey
01987f1b51 Merge pull request #667 from paperless-ngx/codeowners
Feature: Add CODEOWNERS
2022-04-07 08:31:48 -07:00
shamoon
0a35358e8d Merge pull request #666 from paperless-ngx/feature-update-base-image 2022-04-07 08:30:59 -07:00
Quinn Casey
5bacb85c33 Fix typo 2022-04-07 08:13:25 -07:00
Quinn Casey
6933ac523f Remove explicit team tagging from PR template 2022-04-07 08:13:12 -07:00
Quinn Casey
ba9120b417 Add CODEOWNERS 2022-04-07 08:12:05 -07:00
dependabot[bot]
3e71f5810f Bump tqdm from 4.63.1 to 4.64.0
Bumps [tqdm](https://github.com/tqdm/tqdm) from 4.63.1 to 4.64.0.
- [Release notes](https://github.com/tqdm/tqdm/releases)
- [Commits](https://github.com/tqdm/tqdm/compare/v4.63.1...v4.64.0)

---
updated-dependencies:
- dependency-name: tqdm
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-07 15:02:57 +00:00
Trenton Holmes
296a0edae4 Updates the base image tag to use the :dev tag from the base image dev branch 2022-04-07 08:00:22 -07:00
Florian Brandes
cdf5602dfb update documentation
Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2022-04-07 11:14:29 +02:00
Florian Brandes
e214f719c9 add more tests
Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2022-04-07 11:14:29 +02:00
Florian Brandes
08fbcf5158 use imported List
fail test if non-existing dir exists

Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2022-04-07 11:14:29 +02:00
Florian Brandes
10ca515ac5 addes tests:
- barcode-39
- barcode-128
- qr barcodes
- test for consumption

Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2022-04-07 11:14:29 +02:00
Florian Brandes
e59a14852b code formatting
Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2022-04-07 11:14:29 +02:00
Florian Brandes
c696b4f2f2 set barcode reader default to disabled
Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2022-04-07 11:14:29 +02:00
Florian Brandes
553153ba92 put code under CONSUMER_ENABLE_BARCODES
Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2022-04-07 11:14:29 +02:00
Florian Brandes
9d2bcf807e add more type hinting
Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2022-04-07 11:14:29 +02:00
Florian Brandes
422ac9befe decode bytecode in string
Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2022-04-07 11:14:29 +02:00
Florian Brandes
793f641af6 make list checks consistent
Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2022-04-07 11:14:29 +02:00
Florian Brandes
0ea5f5d584 use append method for lists
Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2022-04-07 11:14:29 +02:00
florian on nixos (Florian Brandes)
c024b846c3 add config options and documentation
Signed-off-by: florian on nixos (Florian Brandes) <florian.brandes@posteo.de>
2022-04-07 11:14:29 +02:00
florian on nixos (Florian Brandes)
37b3fde4e1 pre-commit hooks
Signed-off-by: florian on nixos (Florian Brandes) <florian.brandes@posteo.de>
2022-04-07 11:14:29 +02:00
florian on nixos (Florian Brandes)
e89ef5de25 renaming of documents to align with front end
Signed-off-by: florian on nixos (Florian Brandes) <florian.brandes@posteo.de>
2022-04-07 11:14:29 +02:00
florian on nixos (Florian Brandes)
06cac44d02 update ci.yml to include new dependency
Signed-off-by: florian on nixos (Florian Brandes) <florian.brandes@posteo.de>
2022-04-07 11:14:29 +02:00
florian on nixos (Florian Brandes)
488fe28ad3 flake8
Signed-off-by: florian on nixos (Florian Brandes) <florian.brandes@posteo.de>
2022-04-07 11:14:29 +02:00
florian on nixos (Florian Brandes)
50f474ae92 run black
Signed-off-by: florian on nixos (Florian Brandes) <florian.brandes@posteo.de>
2022-04-07 11:14:29 +02:00
florian on nixos (Florian Brandes)
78ca2ffaba add trailing commas
Signed-off-by: florian on nixos (Florian Brandes) <florian.brandes@posteo.de>
2022-04-07 11:14:29 +02:00
florian on nixos (Florian Brandes)
911f5bc78e reorder imports
Signed-off-by: florian on nixos (Florian Brandes) <florian.brandes@posteo.de>
2022-04-07 11:14:29 +02:00
Florian Brandes
b227427916 add split logic to consume_file
Signed-off-by: florian on nixos (Florian Brandes) <florian.brandes@posteo.de>
2022-04-07 11:14:17 +02:00
florian on nixos (Florian Brandes)
b5f77fd6e7 skip test if dir exists
Signed-off-by: florian on nixos (Florian Brandes) <florian.brandes@posteo.de>
2022-04-06 21:16:41 +02:00
florian on nixos (Florian Brandes)
4fe966f534 more work on barcode
Signed-off-by: florian on nixos (Florian Brandes) <florian.brandes@posteo.de>
2022-04-06 21:16:41 +02:00
florian on nixos (Florian Brandes)
bcce0838dd working split pages
Signed-off-by: florian on nixos (Florian Brandes) <florian.brandes@posteo.de>
2022-04-06 21:16:41 +02:00
florian on nixos (Florian Brandes)
76e43bcb89 add first tests for barcode reader
Signed-off-by: florian on nixos (Florian Brandes) <florian.brandes@posteo.de>
2022-04-06 21:16:41 +02:00
florian on nixos (Florian Brandes)
c666be32f4 add barcode packages
Signed-off-by: florian on nixos (Florian Brandes) <florian.brandes@posteo.de>
2022-04-06 21:16:41 +02:00
Trenton Holmes
2d850795d8 Merge pull request #642 from paperless-ngx/dependabot/pip/dev/ocrmypdf-13.4.2
Bump ocrmypdf from 13.4.1 to 13.4.2
2022-04-06 12:13:03 -07:00
Michael Shamoon
784982718e retain document time / tz in detail form 2022-04-05 22:11:09 -07:00
shamoon
2f8d263c9c Merge pull request #630 from paperless-ngx/fix-disableable-download-buttons
Fix: download buttons should disable while waiting
2022-04-05 19:44:43 -07:00
dependabot[bot]
b214163af3 Bump ocrmypdf from 13.4.1 to 13.4.2
Bumps [ocrmypdf](https://github.com/jbarlow83/ocrmypdf) from 13.4.1 to 13.4.2.
- [Release notes](https://github.com/jbarlow83/ocrmypdf/releases)
- [Changelog](https://github.com/ocrmypdf/OCRmyPDF/blob/master/docs/release_notes.rst)
- [Commits](https://github.com/jbarlow83/ocrmypdf/compare/v13.4.1...v13.4.2)

---
updated-dependencies:
- dependency-name: ocrmypdf
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-06 02:04:09 +00:00
dependabot[bot]
a4fe1000c2 Bump zipp from 3.7.0 to 3.8.0
Bumps [zipp](https://github.com/jaraco/zipp) from 3.7.0 to 3.8.0.
- [Release notes](https://github.com/jaraco/zipp/releases)
- [Changelog](https://github.com/jaraco/zipp/blob/main/CHANGES.rst)
- [Commits](https://github.com/jaraco/zipp/compare/v3.7.0...v3.8.0)

---
updated-dependencies:
- dependency-name: zipp
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-06 02:03:28 +00:00
Trenton Holmes
9a275fa4ed Merge pull request #619 from paperless-ngx/dependabot/pip/dev/pillow-9.1.0
Bump pillow from 9.0.1 to 9.1.0
2022-04-05 18:57:52 -07:00
Michael Shamoon
f2c83f51de Cleanup file upload susbcriptions 2022-04-05 13:33:24 -07:00
Michael Shamoon
fb76b72787 Delete upload-documents.service.spec.ts 2022-04-05 13:33:24 -07:00
Michael Shamoon
bec6c4511c Cleaner activation with Angular directives 2022-04-05 13:33:24 -07:00
Michael Shamoon
77b9988d05 Refactor uploads to service, working global dd 2022-04-05 13:33:24 -07:00
Michael Shamoon
3e49f93816 100vh body height, fix filter editor horizontal overflow 2022-04-05 13:33:24 -07:00
Michael Shamoon
32f6932faf fix overlay background color in dark mode 2022-04-05 13:16:13 -07:00
Michael Shamoon
db76e1d65f code formatting 2022-04-05 13:16:13 -07:00
Michael Shamoon
0136ba504b Delete upload-documents.service.spec.ts 2022-04-05 13:16:13 -07:00
Michael Shamoon
459e026f16 Add translation directive for upload message 2022-04-05 13:16:13 -07:00
Michael Shamoon
b03a723c3e Fix dark mode alert close button 2022-04-05 13:16:13 -07:00
Michael Shamoon
7562636151 Cleaner activation with Angular directives 2022-04-05 13:16:13 -07:00
Michael Shamoon
3acc65ca0d Fix broken toast animations & DOM removal 2022-04-05 13:16:13 -07:00
Michael Shamoon
fde0f4ca0a Add initiating toast 2022-04-05 13:16:13 -07:00
Michael Shamoon
73cab2af2d Refactor uploads to service, working global dd 2022-04-05 13:16:12 -07:00
dependabot[bot]
94d2198b30 Bump pillow from 9.0.1 to 9.1.0
Bumps [pillow](https://github.com/python-pillow/Pillow) from 9.0.1 to 9.1.0.
- [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/9.0.1...9.1.0)

---
updated-dependencies:
- dependency-name: pillow
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-05 18:20:14 +00:00
Trenton Holmes
88a67c8703 Merge pull request #618 from paperless-ngx/dependabot/pip/dev/pikepdf-5.1.1
Bump pikepdf from 5.1.0 to 5.1.1
2022-04-05 11:14:21 -07:00
Felix E
ccf9b1291e Merge pull request #591 from paperless-ngx/feature-version-checker
Feature: Update checker
2022-04-05 20:11:21 +02:00
Quinn Casey
47dae716ae Merge pull request #599 from stumpylog/minor-bug-fixes
Fixes downloaded filename, add more consumer ignore settings
2022-04-05 09:56:54 -07:00
Quinn Casey
ea26e1c72f Merge pull request #576 from fantasticle/dev
Update regex date match patterns
2022-04-05 09:52:27 -07:00
Quinn Casey
e6d79f0673 Update docs, examples with new ignore settings 2022-04-05 09:21:18 -07:00
Quinn Casey
bf7002d0ae Merge pull request #616 from paperless-ngx/fix-save-vew-modal-errors
fix some api error displaying
2022-04-05 09:10:15 -07:00
Quinn Casey
cbae145da5 Merge pull request #564 from paperless-ngx/feature-password-protected-pdfs
Feature: Show prompt on password-protected pdfs
2022-04-05 08:59:29 -07:00
shamoon
a728502988 Update bug-report.yml 2022-04-04 15:30:40 -07:00
shamoon
9419f74d13 Update bug-report.yml 2022-04-04 15:30:15 -07:00
shamoon
50523c1566 Update bug-report.yml 2022-04-04 15:18:59 -07:00
shamoon
e9ef3e270d Update bug-report.yml 2022-04-04 15:18:12 -07:00
shamoon
9078f7beef Update bug-report.yml 2022-04-04 15:03:35 -07:00
shamoon
ac2c5abb09 Create config.yml 2022-04-04 15:02:41 -07:00
shamoon
a02235eb2b Delete other.md 2022-04-04 14:59:09 -07:00
shamoon
7658761940 Update bug-report.yml 2022-04-04 14:57:58 -07:00
shamoon
3f03f076cf Create bug-report.yml 2022-04-04 14:56:55 -07:00
shamoon
141e6de88f Delete bug_report.md 2022-04-04 14:56:21 -07:00
Trenton Holmes
88bbfe5961 Merge pull request #594 from danielBreitlauch/dev
FIX BUG: case-sensitive matching was not possible
2022-04-04 09:24:59 -07:00
Trenton Holmes
d60569b6d6 Quiets the pytest output 2022-04-04 17:59:37 +02:00
Michael Shamoon
91165e80ba Remove unused default 2022-04-04 07:05:00 -07:00
dependabot[bot]
a15f9552eb Bump pikepdf from 5.1.0 to 5.1.1
Bumps [pikepdf](https://github.com/pikepdf/pikepdf) from 5.1.0 to 5.1.1.
- [Release notes](https://github.com/pikepdf/pikepdf/releases)
- [Changelog](https://github.com/pikepdf/pikepdf/blob/master/docs/release_notes.rst)
- [Commits](https://github.com/pikepdf/pikepdf/compare/v5.1.0...v5.1.1)

---
updated-dependencies:
- dependency-name: pikepdf
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-03 22:20:33 +00:00
Trenton Holmes
501d225f93 Merge pull request #557 from paperless-ngx/dependabot/pip/dev/sphinx-4.5.0
Bump sphinx from 4.4.0 to 4.5.0
2022-04-03 15:08:38 -07:00
dependabot[bot]
4942f244da Bump sphinx from 4.4.0 to 4.5.0
Bumps [sphinx](https://github.com/sphinx-doc/sphinx) from 4.4.0 to 4.5.0.
- [Release notes](https://github.com/sphinx-doc/sphinx/releases)
- [Changelog](https://github.com/sphinx-doc/sphinx/blob/4.x/CHANGES)
- [Commits](https://github.com/sphinx-doc/sphinx/compare/v4.4.0...v4.5.0)

---
updated-dependencies:
- dependency-name: sphinx
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-03 20:35:06 +00:00
Trenton Holmes
1be5c9af56 Merge pull request #554 from paperless-ngx/dependabot/pip/dev/black-22.3.0
Bump black from 22.1.0 to 22.3.0
2022-04-03 13:14:03 -07:00
Trenton Holmes
fab7abb85b Merge pull request #622 from fantasticle/patch-2
fix 404 for post-consumption-example
2022-04-03 08:45:13 -07:00
fantasticle
818d383f2e Merge branch 'paperless-ngx:dev' into dev 2022-04-03 16:42:51 +02:00
shamoon
5fffa32630 disable download buttons while awaiting zip 2022-04-02 22:23:42 -07:00
Michael Shamoon
19d5feb483 Fix save view error for filter_rules
see #601
2022-04-02 19:49:58 -07:00
Michael Shamoon
199fc6be94 Properly display api errors on list filter & translate error message 2022-04-02 19:45:54 -07:00
Trenton Holmes
865729c033 Merge pull request #611 from stumpylog/bug-fix-install-script
Support docker-compose v2 in install
2022-04-02 15:36:52 -07:00
Trenton Holmes
6aa9071e24 Converts the docker compose check to use if statement 2022-04-02 14:34:19 -07:00
Trenton Holmes
6db3fc2eea Fixes an issue where the install script wouldn't recognize docker compose v2 command 2022-04-02 14:34:19 -07:00
shamoon
65ffaaa67c Merge pull request #623 from paperless-ngx/feature-fix-docker-tags
Fixes the Docker image tags
2022-04-02 13:46:23 -07:00
Michael Shamoon
440467e304 Allow notify user if update checking not explicitly set 2022-04-02 10:10:49 -07:00
fantasticle
07f2c9c1c6 Update docs/advanced_usage.rst
Co-authored-by: Felix E <felix@eckhofer.com>
2022-04-02 18:25:56 +02:00
Fantasticle
74422dd000 update name from master to main 2022-04-02 18:19:11 +02:00
Trenton Holmes
78d663bbb4 Fixes the Docker image tags 2022-04-02 08:48:58 -07:00
fantasticle
6cc2fa5306 fix 404 for post-consumption-example
still pointed to jonas' repository
2022-04-02 15:56:03 +02:00
Fantasticle
db0a58ea04 fix link for post-consumption-example, 404d to jonas 2022-04-02 15:52:32 +02:00
fantasticle
eba1e69e64 Merge branch 'paperless-ngx:dev' into dev 2022-04-02 15:49:35 +02:00
shamoon
a4e7877033 Update docs/configuration.rst for consistency
Co-authored-by: Quinn Casey <quinn@quinncasey.com>
2022-04-02 01:37:37 -07:00
Michael Shamoon
c62260ab02 Use GH api URL
Update configuration.rst
2022-04-02 01:36:37 -07:00
Michael Shamoon
b58550bb79 refactor to update_available 2022-04-02 01:36:19 -07:00
Michael Shamoon
d02c7df75c json parse version string 2022-04-02 01:36:19 -07:00
Michael Shamoon
6dbebf4806 Fix version string regex 2022-04-02 01:33:51 -07:00
Michael Shamoon
1019660f6a Add config variable for update check 2022-04-02 01:33:51 -07:00
Michael Shamoon
bfd11060ec Add version check to app frame 2022-04-02 01:33:51 -07:00
Michael Shamoon
7b6dccf5ef RemoteVersionService 2022-04-02 01:33:51 -07:00
Michael Shamoon
d76eccad1c remote_version API endpoint 2022-04-02 01:33:51 -07:00
Michael Shamoon
6f0ac7ae45 Update bootstrap-icons.svg 2022-04-02 01:33:50 -07:00
dependabot[bot]
8f17ed1eb9 Bump black from 22.1.0 to 22.3.0
Bumps [black](https://github.com/psf/black) from 22.1.0 to 22.3.0.
- [Release notes](https://github.com/psf/black/releases)
- [Changelog](https://github.com/psf/black/blob/main/CHANGES.md)
- [Commits](https://github.com/psf/black/compare/22.1.0...22.3.0)

---
updated-dependencies:
- dependency-name: black
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-02 08:29:39 +00:00
shamoon
9737e4a24d Merge pull request #238 from schnuffle/feature-split-dockerimage
Feature split dockerimage
2022-04-02 01:24:15 -07:00
Quinn Casey
805c17565b Merge pull request #617 from paperless-ngx/fix-move-to-trash
uses shutil.move instead of rename
2022-04-02 15:17:43 +07:00
Florian Brandes
8e9d1cdd18 uses shutil.move instead of rename
fixes issues with cross-filesystem movement

Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2022-04-02 07:23:31 +02:00
shamoon
1d3300fb34 Merge pull request #610 from paperless-ngx/fix-npm-deps-010222_2
Fix npm deps 01.02.22 2
2022-04-01 21:41:54 -07:00
Trenton Holmes
26d93cf3be Fixes the name and path of the built image so it doesn't duplicate 2022-04-01 16:17:22 -07:00
Michael Shamoon
4e3183ee65 remove unused ngx-infinite-scroll
see 9993381cda
2022-04-01 14:19:59 -07:00
Michael Shamoon
8370ec58c1 bump dirty-check-forms, ngx-infinite-scroll, typescript 2022-04-01 13:54:14 -07:00
shamoon
0d1bcd3c13 Merge pull request #600 from paperless-ngx/fix-npm-deps-010222
Fix npm dependencies 01.02.22
2022-04-01 13:44:10 -07:00
Michael Shamoon
a456b968af bump @types/node, ng2-pdf-viewer, cypress 2022-04-01 13:25:36 -07:00
Daniel Breitlauch
2b5562e376 adding case-sensitive tests 2022-04-01 21:15:30 +02:00
Michael Shamoon
3a242dc296 remove stubborn failing e2e settings test for now 2022-04-01 12:11:08 -07:00
Michael Shamoon
5aff9b6fdb bump angular deps & regenerate package-lock 2022-04-01 11:41:01 -07:00
Trenton Holmes
35b3216fee Fixes a couple of minor bugs in the downloading of documents and additional consumer ignore items 2022-04-01 11:12:18 -07:00
Michael Shamoon
fac6fe0c2e Squashed commit of the following:
commit 3709bf5d7602bb2e126465870e00fca35d4f99be
Author: Michael Shamoon <4887959+shamoon@users.noreply.github.com>
Date:   Fri Apr 1 09:24:12 2022 -0700

    Attempt 2 to fix test failing on GHA
2022-04-01 09:28:47 -07:00
Daniel Breitlauch
6f8020e30d removing transformation to lowercase since it is not needed at all. 2022-04-01 18:26:01 +02:00
Michael Shamoon
efbc2a5715 Fix failing e2e settings test
[ci skip]
2022-04-01 09:09:02 -07:00
Daniel Breitlauch
0bee3901b6 Merge branch 'paperless-ngx:dev' into dev 2022-04-01 12:04:51 +02:00
Daniel Breitlauch
7106c68032 FIX BUG: case-sensitive matching was not possible 2022-04-01 12:03:05 +02:00
fantasticle
be707536bd Merge branch 'paperless-ngx:dev' into dev 2022-04-01 11:35:00 +02:00
Quinn Casey
d18eebf97d Merge pull request #588 from paperless-ngx/locale-belarusian
Add Belarusian localization
2022-04-01 11:51:02 +07:00
Paperless-ngx Translation Bot [bot]
60cc7afc72 New Crowdin updates (#538)
* New translations django.po (Spanish)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations django.po (Serbian (Latin))
[ci skip]

* New translations messages.xlf (Serbian (Latin))
[ci skip]

* New translations django.po (Serbian (Latin))
[ci skip]

* New translations messages.xlf (Serbian (Latin))
[ci skip]

* New translations django.po (Chinese Simplified)
[ci skip]

* New translations django.po (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations django.po (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations django.po (Russian)
[ci skip]

* New translations django.po (Russian)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations django.po (Belarusian)
[ci skip]

* New translations messages.xlf (Belarusian)
[ci skip]

* New translations django.po (Belarusian)
[ci skip]

* New translations django.po (Belarusian)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations django.po (Russian)
[ci skip]

* New translations django.po (Belarusian)
[ci skip]

* New translations django.po (Finnish)
[ci skip]

* New translations messages.xlf (Finnish)
[ci skip]

* New translations django.po (Finnish)
[ci skip]

* New translations messages.xlf (Finnish)
[ci skip]

* New translations django.po (Finnish)
[ci skip]

* New translations django.po (Finnish)
[ci skip]

* New translations django.po (Belarusian)
[ci skip]

* New translations django.po (Belarusian)
[ci skip]

* New translations messages.xlf (Belarusian)
[ci skip]

* New translations messages.xlf (Belarusian)
[ci skip]

* New translations messages.xlf (Belarusian)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations messages.xlf (Belarusian)
[ci skip]
2022-03-31 19:47:16 -07:00
Michael Shamoon
b7949d2e69 Add Belarusian localization 2022-03-31 19:42:08 -07:00
shamoon
48175d5b8e Merge pull request #580 from paperless-ngx/docs-frontend-tests-style
Add frontend tests to docs
2022-03-31 15:43:50 -07:00
Michael Shamoon
cb8fd6597d Merge changes from #583 from @fantasticle
5496412aec
2022-03-31 15:42:46 -07:00
Fantasticle
4754ac2bd1 remove unnecessary import 2022-03-31 21:25:58 +02:00
Fantasticle
3cca77e748 add more tests for regex date parser, remove duplicate name 2022-03-31 21:24:57 +02:00
Trenton Holmes
4ec1aaabe6 Adds settings for worker retry time, with what should be sensible default 2022-03-31 10:24:46 -07:00
Fantasticle
0baacbef98 update new regex pattern for second boundary 2022-03-31 09:37:15 +02:00
Michael Shamoon
70bc70ec97 Add frontend tests to docs 2022-03-30 19:09:07 -07:00
Alexey Zinchenko
be2b59431f Update troubleshooting.rst 2022-03-30 19:08:40 -07:00
shamoon
c43193b17d Add note for target branch
[ci skip]
2022-03-30 19:08:40 -07:00
Storm Heg
2147af0e6a Fix typo in api.rst 2022-03-30 19:08:30 -07:00
fantasticle
d8261b3359 add test for new regex 2022-03-30 23:18:03 +02:00
shamoon
ed2524cbbb Merge pull request #582 from paperless-ngx/fix-black-main-branch
[ci skip]
2022-03-30 10:44:33 -07:00
Trenton Holmes
76a4ae2aae Merge pull request #552 from stumpylog/bugfix-black
Bump version of black in CI/pre-commit

Revert "Merge pull request #552 from stumpylog/bugfix-black"

This reverts commit 9e8ac05f72.

Merge pull request #552 from stumpylog/bugfix-black

Bump version of black in CI/pre-commit
2022-03-30 10:35:02 -07:00
Trenton Holmes
2666e70706 Removes the filtering of on:pull_request event types 2022-03-30 10:10:36 -07:00
Trenton Holmes
19cf66be0f Updates the Dockerfile to utilize our new base image 1.0 which provides the pre-compiled wheels for certain dependencies and most base packages 2022-03-30 09:09:50 -07:00
shamoon
f3d1bd25ad Merge pull request #577 from Prominence/patch-1
add ocr fails for XX to troubleshooting.rst
2022-03-30 06:42:19 -07:00
Alexey Zinchenko
3ed6d4bc7a Update troubleshooting.rst 2022-03-30 13:27:09 +03:00
fantasticle
1ecb26a3fb Update regex date match patterns 2022-03-30 12:19:30 +02:00
Henning Häcker
8b26ddcd2c add trailing comma 2022-03-30 09:23:45 +02:00
Henning Häcker
47786dcb8c use double quotes 2022-03-30 09:23:45 +02:00
Henning Häcker
5d91d6a885 fix default value for OCR_MAX_IMAGE_PIXELS 2022-03-30 09:23:45 +02:00
Henning Häcker
559f7c2683 elaborate PAPERLESS_OCR_MAX_IMAGE_PIXELS docs 2022-03-30 09:23:45 +02:00
Henning Häcker
3b4da70c85 extract OCR_MAX_IMAGE_PIXELS into settings.py 2022-03-30 09:23:45 +02:00
Henning Häcker
95199bd325 formatting according to black 2022-03-30 09:23:45 +02:00
Henning Häcker
a8887b211e implement PAPERLESS_OCR_MAX_IMAGE_PIXELS 2022-03-30 09:23:45 +02:00
shamoon
15488fbfd0 Add note for target branch
[ci skip]
2022-03-30 00:03:48 -07:00
Michael Shamoon
9a758fc3dc fix management e2e tests title
[ci skip]
2022-03-29 23:30:05 -07:00
shamoon
edc9c3f01c Merge pull request #565 from paperless-ngx/more-e2e-tests
Add some more e2e tests
2022-03-29 23:24:45 -07:00
Michael Shamoon
83d769251d document-detail e2e tests
[ci skip]
2022-03-29 23:12:19 -07:00
Michael Shamoon
bd66333147 test changing pdf viewer 2022-03-29 20:20:46 -07:00
Michael Shamoon
2228678520 Fix settings tests failing because of loading time 2022-03-29 20:02:19 -07:00
Michael Shamoon
9a042118f9 Fix fixture organization
[ci skip]
2022-03-29 20:02:19 -07:00
Michael Shamoon
787ee454ff Mock some API methods in settings spec 2022-03-29 20:02:19 -07:00
Michael Shamoon
32a4587bd3 Mock some API methods 2022-03-29 20:02:19 -07:00
Michael Shamoon
474050ba6b Multiple documents, filtering, view changes, in document list e2e testing 2022-03-29 20:02:19 -07:00
Michael Shamoon
34657fd675 Some document list bulk editor e2e tests 2022-03-29 20:02:19 -07:00
Michael Shamoon
18747db17f Settings e2e tests 2022-03-29 20:02:19 -07:00
Michael Shamoon
dccea9434a Management e2e tests 2022-03-29 20:02:19 -07:00
Michael Shamoon
85bf92ad2f Show prompt on password-protected pdfs 2022-03-29 15:38:09 -07:00
Michael Shamoon
40b07572a9 fix index js warning 2022-03-29 15:28:55 -07:00
shamoon
94afd4f1e2 Merge pull request #561 from MichaelYochpaz/main
Fix reference from Paperless-ngx to Paperless-ng [ci skip]
2022-03-29 11:15:56 -07:00
Michael
1218944680 Fix reference from Paperless-ngx to Paperless-ng 2022-03-29 21:09:09 +03:00
Trenton Holmes
9147e3a0bd Merge pull request #552 from stumpylog/bugfix-black
Bump version of black in CI/pre-commit
2022-03-29 06:14:12 -07:00
Trenton Holmes
ed25212654 Updates black version to fix issues 2022-03-28 12:23:25 -07:00
shamoon
ce5fe61e67 Merge pull request #540 from paperless-ngx/filtering-query-params
Feature: Filtering query params aka browser navigation for filtering
2022-03-28 00:07:46 -07:00
Michael Shamoon
9e9266b92a Remove unused var 2022-03-28 00:06:42 -07:00
Michael Shamoon
e329d72e8b Clarify query var transformation code 2022-03-27 23:47:53 -07:00
Michael Shamoon
92ec3fc060 Clear all subscriptions, switchMap 2022-03-27 23:41:29 -07:00
Michael Shamoon
3afb3a905c fix ci.yml comment
[ci skip]
2022-03-27 14:44:39 -07:00
Michael Shamoon
b3e6f04b30 move const 2022-03-27 00:25:27 -07:00
Michael Shamoon
0a29f51862 Fix quick filtering 2022-03-27 00:09:09 -07:00
Michael Shamoon
7149d407cd Allow filtering by document metadata 2022-03-27 00:08:08 -07:00
Michael Shamoon
fbb17df916 Remove exact document router link matching 2022-03-26 23:30:01 -07:00
Michael Shamoon
34b317da7a Query vars for filtering 2022-03-26 23:18:12 -07:00
Quinn Casey
c161829803 Merge pull request #536 from paperless-ngx/locale-turkish
Add Turkish localization
2022-03-27 07:04:16 +07:00
shamoon
eda69dc881 Merge pull request #537 from Stormheg/patch-1
Fix typo in api documentation
2022-03-26 14:42:34 -07:00
Storm Heg
500e5c41ff Fix typo in api.rst 2022-03-26 22:34:50 +01:00
Michael Shamoon
7c2ae129d7 rxjs compatibility 2022-03-26 14:18:16 -07:00
Paperless-ngx Translation Bot [bot]
c49afa7caa New Crowdin updates (#517)
* New translations messages.xlf (Slovenian)
[ci skip]

* New translations django.po (Turkish)
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]

* New translations django.po (Turkish)
[ci skip]

* New translations django.po (Turkish)
[ci skip]

* New translations django.po (Russian)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations django.po (Turkish)
[ci skip]

* New translations django.po (Turkish)
[ci skip]

* New translations django.po (Turkish)
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]

* New translations messages.xlf (Turkish)
[ci skip]
2022-03-26 13:53:04 -07:00
Michael Shamoon
534c157809 Add Turkish localization 2022-03-26 13:52:15 -07:00
shamoon
cae4d3fae3 Merge pull request #497 from stumpylog/update-dependencies
Bumps dependencies
2022-03-26 08:33:05 -07:00
Michael Shamoon
f59500c809 pipe typo
[ci skip]
2022-03-25 01:50:04 -07:00
Quinn Casey
b75bf255ba Merge pull request #527 from paperless-ngx/reorg-frontend-ci
Realign frontend ci pipeline
2022-03-25 15:29:20 +07:00
Michael Shamoon
1588242876 realign frontend ci pipeline 2022-03-25 00:49:55 -07:00
shamoon
00eff651e6 Merge pull request #526 from FrankStrieter/fix/cypress-on-arm
fix: exclude cypress from build in Dockerfile
2022-03-24 23:49:41 -07:00
Frank Strieter
a83d6a691a fix: exclude cypress from build in Dockerfile 2022-03-25 07:26:15 +01:00
Jan-Hendrik Ewers
5065f2cb80 Add arm64 compatible docker-compose for sqlite-tika - resubmission of #27 (#479)
* Create arm variant for sqlite-tika as apache/tika does not support arm64 arch right now

https://github.com/jonaswinkler/paperless-ng/discussions/1256

* Update documentation to explain why there is a seemingly duplicated docker-compose file

* Add caveat about arm arch

* Update docs to encourage use of the new docker-compose

* Remove whitespace

https://github.com/jonaswinkler/paperless-ng/pull/1354/checks?check_run_id=3756807426

* Update docker container to use official ngx

Co-authored-by: Quinn Casey <quinn@quinncasey.com>

* doesn -> does not

* Update docker/compose/docker-compose.postgres-tika.yml

Co-authored-by: Jan-Hendrik Ewers <jh.ewers@gmail.com>

* Update docker/compose/docker-compose.sqlite-tika.arm.yml

Co-authored-by: Jan-Hendrik Ewers <jh.ewers@gmail.com>

* Update docker/compose/docker-compose.sqlite-tika.yml

Co-authored-by: Jan-Hendrik Ewers <jh.ewers@gmail.com>

* Update docker/compose/docker-compose.sqlite-tika.arm.yml

* Update docker-compose.sqlite-tika.arm.yml

* Update docker/compose/docker-compose.sqlite-tika.arm.yml

Co-authored-by: Jan-Hendrik Ewers <jh.ewers@gmail.com>

* Add redisdata to volumes

Co-authored-by: Quinn Casey <quinn@quinncasey.com>
2022-03-25 06:32:16 +07:00
shamoon
a4b36b041a Merge pull request #515 from paperless-ngx/clickable-dashboard-widget-tags
Clickable tags in dashboard widgets
2022-03-24 14:36:32 -07:00
Michael Shamoon
c360d9fa18 Remove text interpolation from doc routerLink 2022-03-24 08:09:41 -07:00
Trenton Holmes
78258eb9cb Bumps django to 4.0 and fixes associated issues 2022-03-24 07:39:11 -07:00
Trenton Holmes
71e5b5cf72 Bumps pikepdf to ~5.1, dateparser to ~1.1 and other updates as possible/needed 2022-03-24 07:39:07 -07:00
shamoon
4b0229584e Merge pull request #514 from paperless-ngx/unified-management-component
Unify management lists with single template
2022-03-24 07:09:13 -07:00
Florian
b2df8297e1 Merge pull request #520 from gador/revert-pdfminer-six
Revert "Bump pdfminer-six from 20211012 to 20220319"
2022-03-24 15:06:49 +01:00
florian on nixos (Florian Brandes)
95048b14fd Revert "Bump pdfminer-six from 20211012 to 20220319"
ocrmypdf requires pdfminer-six <=20211012

This reverts commit 0932f095e1.
2022-03-24 14:28:32 +01:00
Michael Shamoon
3360791a31 Clickable tags in dashboard widgets 2022-03-23 22:08:00 -07:00
Michael Shamoon
4c65ecbe89 Unify management lists with single template 2022-03-23 13:31:00 -07:00
shamoon
65a56a1da0 Merge pull request #454 from schnuffle/pre-commit
Corrections to pass pre-commit hooks
2022-03-23 11:58:02 -07:00
shamoon
645f9b2ee2 Merge pull request #503 from paperless-ngx/testing
Add unit- & end to end test setup in frontend
2022-03-23 07:25:31 -07:00
Michael Shamoon
117157f02c Merge branch 'main' into testing 2022-03-23 07:22:52 -07:00
Quinn Casey
acab197a45 Merge pull request #508 from Unkn0wnCat/patch-1
Add API Scanning Setup section to scanners.rst
2022-03-23 20:25:27 +07:00
Kevin Kandlbinder
feed7cd556 Fix typo in docs/scanners.rst
Co-authored-by: Quinn Casey <quinn@quinncasey.com>
2022-03-23 14:07:10 +01:00
Kevin Kandlbinder
c79b70fffd Fix typo in docs/scanners.rst
Co-authored-by: Quinn Casey <quinn@quinncasey.com>
2022-03-23 14:06:53 +01:00
Kevin Kandlbinder
42a5709202 Fix typo in docs/scanners.rst
Co-authored-by: Quinn Casey <quinn@quinncasey.com>
2022-03-23 14:06:41 +01:00
Kevin Kandlbinder
806f1ec0a3 Add API Scanning Setup section to scanners.rst
* Add instructions for Doxie Q2 to scanners.rst
2022-03-23 12:15:35 +01:00
Frank Strieter
ccee85a05e fix code style issues
solve merge conflicts

format code

format code

format code
2022-03-23 09:39:55 +01:00
Frank Strieter
a27fb173dd solve merge conflicts 2022-03-23 09:24:07 +01:00
Frank Strieter
e4885badfc chore: update package.lock 2022-03-23 09:24:07 +01:00
Frank Strieter
62c488aff6 test: run tests in ci 2022-03-23 09:24:07 +01:00
Frank Strieter
afcb5fe3cf test: add cypress test for documents list 2022-03-23 09:24:07 +01:00
Frank Strieter
d38bed1334 test: remove most of the boilerplate tests 2022-03-23 09:24:07 +01:00
Frank Strieter
f6a9d5b038 chore: replace karma with jest 2022-03-23 09:23:59 +01:00
Frank Strieter
863258f23d chore: replace protractor with cypress 2022-03-23 09:22:40 +01:00
shamoon
3b76fa3f92 Fix pre-commit link
[ci skip]
2022-03-23 09:22:40 +01:00
shamoon
023a42fa07 Project actions on dev too
[ci skip]
2022-03-23 09:22:40 +01:00
Quinn Casey
537515432c Merge pull request #504 from paperless-ngx/locale-serbian
Add Serbian localization
2022-03-23 13:53:38 +07:00
shamoon
f93783052b Merge pull request #372 from paperless-ngx/feature-bottom-pagination
Feature: Add bottom pagination
2022-03-22 22:58:58 -07:00
Michael Shamoon
991bc1a1ce Add Serbian localization 2022-03-22 22:26:59 -07:00
Paperless-ngx Translation Bot [bot]
1b5c557c44 New Crowdin updates (#493)
* New translations django.po (Serbian (Latin))
* New translations messages.xlf (Serbian (Latin))
[ci skip]
2022-03-22 22:17:16 -07:00
shamoon
5794faef6c Merge pull request #313 from paperless-ngx/fix-issue-311
Fix #311 unable to click checkboxes in document list
2022-03-22 14:59:34 -07:00
Trenton Holmes
ec01c436ea Merge pull request #474 from paperless-ngx/dependabot/pip/dev/pdfminer-six-20220319
Bump pdfminer-six from 20211012 to 20220319
2022-03-22 07:44:39 -07:00
Trenton Holmes
9bb5568d8e Un-pickle and re-pickle the test models to resolve the version difference warning 2022-03-22 09:37:17 +01:00
shamoon
c25a107c04 Fix project automations failing on PRs from forks 2022-03-22 01:22:19 -07:00
shamoon
8f152aac69 Fix project automations failing from forks 2022-03-22 00:55:23 -07:00
dependabot[bot]
1cd5de697e Bump @angular/core from 13.2.5 to 13.3.0 in /src-ui (#488)
Bumps [@angular/core](https://github.com/angular/angular/tree/HEAD/packages/core) from 13.2.5 to 13.3.0.
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/master/docs/RELEASE_SCHEDULE.md)
- [Commits](https://github.com/angular/angular/commits/13.3.0/packages/core)

---
updated-dependencies:
- dependency-name: "@angular/core"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-22 00:23:38 -07:00
dependabot[bot]
ce8c812669 Bump @ng-bootstrap/ng-bootstrap from 12.0.0 to 12.0.1 in /src-ui (#486)
Bumps [@ng-bootstrap/ng-bootstrap](https://github.com/ng-bootstrap/ng-bootstrap) from 12.0.0 to 12.0.1.
- [Release notes](https://github.com/ng-bootstrap/ng-bootstrap/releases)
- [Changelog](https://github.com/ng-bootstrap/ng-bootstrap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ng-bootstrap/ng-bootstrap/compare/12.0.0...12.0.1)

---
updated-dependencies:
- dependency-name: "@ng-bootstrap/ng-bootstrap"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-22 00:17:23 -07:00
dependabot[bot]
2c3ac053d8 Bump @angular/compiler from 13.2.5 to 13.3.0 in /src-ui (#487)
Bumps [@angular/compiler](https://github.com/angular/angular/tree/HEAD/packages/compiler) from 13.2.5 to 13.3.0.
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/master/docs/RELEASE_SCHEDULE.md)
- [Commits](https://github.com/angular/angular/commits/13.3.0/packages/compiler)

---
updated-dependencies:
- dependency-name: "@angular/compiler"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-22 00:16:15 -07:00
dependabot[bot]
ca3bb6a540 Bump @types/jasmine from 3.10.3 to 4.0.0 in /src-ui (#485)
Bumps [@types/jasmine](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jasmine) from 3.10.3 to 4.0.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jasmine)

---
updated-dependencies:
- dependency-name: "@types/jasmine"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-22 00:11:15 -07:00
dependabot[bot]
0932f095e1 Bump pdfminer-six from 20211012 to 20220319
Bumps [pdfminer-six](https://github.com/pdfminer/pdfminer.six) from 20211012 to 20220319.
- [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)

---
updated-dependencies:
- dependency-name: pdfminer-six
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-22 03:47:06 +00:00
Quinn Casey
3d3807ce41 Merge pull request #477 from paperless-ngx/dependachill
Change dependabot to check npm monthly
2022-03-22 08:01:17 +07:00
shamoon
30834eb8ff Change dependabot to check npm monthly
[ci skip]
2022-03-21 14:53:56 -07:00
dependabot[bot]
1c4e74920a Bump @types/node from 17.0.21 to 17.0.22 in /src-ui (#472)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 17.0.21 to 17.0.22.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-21 13:38:47 -07:00
dependabot[bot]
e6efff426a Bump @angular-devkit/build-angular from 13.2.6 to 13.3.0 in /src-ui (#471)
Bumps [@angular-devkit/build-angular](https://github.com/angular/angular-cli) from 13.2.6 to 13.3.0.
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/13.2.6...13.3.0)

---
updated-dependencies:
- dependency-name: "@angular-devkit/build-angular"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-21 13:36:46 -07:00
dependabot[bot]
cacf60fdd9 Bump @angular/platform-browser-dynamic from 13.2.5 to 13.3.0 in /src-ui (#470)
Bumps [@angular/platform-browser-dynamic](https://github.com/angular/angular/tree/HEAD/packages/platform-browser-dynamic) from 13.2.5 to 13.3.0.
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/master/docs/RELEASE_SCHEDULE.md)
- [Commits](https://github.com/angular/angular/commits/13.3.0/packages/platform-browser-dynamic)

---
updated-dependencies:
- dependency-name: "@angular/platform-browser-dynamic"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-21 13:33:59 -07:00
dependabot[bot]
352f94ff2b Bump @angular/platform-browser from 13.2.5 to 13.3.0 in /src-ui (#468)
Bumps [@angular/platform-browser](https://github.com/angular/angular/tree/HEAD/packages/platform-browser) from 13.2.5 to 13.3.0.
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/master/docs/RELEASE_SCHEDULE.md)
- [Commits](https://github.com/angular/angular/commits/13.3.0/packages/platform-browser)

---
updated-dependencies:
- dependency-name: "@angular/platform-browser"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-21 13:30:16 -07:00
Trenton Holmes
47530d274f Merge pull request #467 from paperless-ngx/dependabot/pip/dev/scikit-learn-1.0.2
Fix failing test after updating model format version
2022-03-21 13:28:28 -07:00
dependabot[bot]
be13ec822f Bump @angular/cli from 13.2.6 to 13.3.0 in /src-ui (#469)
Bumps [@angular/cli](https://github.com/angular/angular-cli) from 13.2.6 to 13.3.0.
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/13.2.6...13.3.0)

---
updated-dependencies:
- dependency-name: "@angular/cli"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-21 13:28:09 -07:00
Marc Schaefer
c6da0cc9a2 Merge branch 'pre-commit' of github.com:schnuffle/paperless-ngx into pre-commit 2022-03-21 19:46:19 +01:00
Marc Schaefer
07623f9883 Removed nested quotes 2022-03-21 19:45:46 +01:00
Schnuffle
6e0d334a0c Indentation corrections 2022-03-21 19:38:44 +01:00
shamoon
e514b99c57 Fix pre-commit link
[ci skip]
2022-03-21 10:54:48 -07:00
Johann Bauer
cffdaefe2f Fix model test 2022-03-21 18:53:53 +01:00
Johann Bauer
9de4ca61e8 Increase FORMAT_VERSION to force model re-creation 2022-03-21 18:11:18 +01:00
dependabot[bot]
d7919c45a3 Bump scikit-learn from 0.24.0 to 1.0.2
Bumps [scikit-learn](https://github.com/scikit-learn/scikit-learn) from 0.24.0 to 1.0.2.
- [Release notes](https://github.com/scikit-learn/scikit-learn/releases)
- [Commits](https://github.com/scikit-learn/scikit-learn/compare/0.24.0...1.0.2)

---
updated-dependencies:
- dependency-name: scikit-learn
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-21 18:11:18 +01:00
shamoon
d24826a58e Project actions on dev too
[ci skip]
2022-03-21 08:55:21 -07:00
Michael Shamoon
3dfadcc397 prettier 2022-03-21 08:38:01 -07:00
Michael Shamoon
98d677dc0b Merge branch 'main' into dev 2022-03-21 08:36:44 -07:00
shamoon
4f28225188 Merge pull request #462 from paperless-ngx/update-development-documentation
Remove and integrate content from contributing.rst
2022-03-21 08:26:16 -07:00
Michael Shamoon
8059039ef4 Remove and integrate content from contributing.rst 2022-03-20 23:51:10 -07:00
Paperless Translation Bot
682f3fdc3e New Crowdin updates (#423)
* New translations messages.xlf (French)
[ci skip]

* New translations django.po (Luxembourgish)
[ci skip]

* New translations messages.xlf (Portuguese, Brazilian)
[ci skip]

* New translations django.po (Portuguese, Brazilian)
[ci skip]
2022-03-20 21:09:25 -07:00
shamoon
6f7aaba7fa Add Automatic Project Actions
[ci skip]
2022-03-20 20:53:30 -07:00
Trenton Holmes
ea7a1012b9 Uses a change file action to filter only changed src/ files 2022-03-20 21:50:54 +01:00
Trenton Holmes
f24373699e Disables coveralls step for dependabot branches/pulls 2022-03-20 21:50:54 +01:00
shamoon
f74e15840d Merge pull request #393 from stumpylog/fix-imap-tools-bug
Fix imap tools bug
2022-03-20 13:37:17 -07:00
Schnuffle
c2c8a27545 Corrections to pass pre-commit hooks 2022-03-20 15:58:37 +01:00
shamoon
0979f3c5c3 Merge pull request #446 from MaaxGr/fix-dev-docs
master to main in paperless development docs and CONTRIBUTING.md
2022-03-19 12:01:04 -07:00
shamoon
6f2fd1e2da Merge pull request #449 from paperless-ngx/marbar1-fix-typo
Fix typo: paperles(s)
2022-03-19 11:58:57 -07:00
marbar1
597effc856 Fix typo: paperles(s) 2022-03-19 19:37:52 +01:00
Max
30b3510fbd master to main in CONTRIBUTING.md 2022-03-19 17:37:43 +01:00
Max
0cf9b11c3e master to main in paperless development docs 2022-03-19 17:34:28 +01:00
shamoon
0388ce3e5b Merge pull request #298 from paperless-ngx/feature-loading-screen
Feature: App loading screen
2022-03-19 07:38:21 -07:00
Quinn Casey
1ea6a14437 Merge pull request #443 from paperless-ngx/doc-unraid-template
Update documentation on how to install paperless on Unraid
2022-03-19 17:34:22 +07:00
Felix E
e8a073d538 Merge pull request #440 from addich/fix-374
Allow USERMAP_UID to re-use existing UIDs
2022-03-19 11:04:36 +01:00
Felix E
c8ac686b22 Merge pull request #35 from Tooa/1250-gotenberg-follow-up
fix(gotenberg): use command flags
2022-03-19 11:03:32 +01:00
Felix E
81cfd13b4a Merge pull request #442 from paperless-ngx/fix-allow-shorter-search
Allow shorter search strings with Enter key
2022-03-19 10:24:14 +01:00
Uli
73a3abe535 docs: use link for Unraid store 2022-03-19 09:19:31 +01:00
Uli
9006dd12f3 docs: update Unraid FAQ section 2022-03-19 09:01:53 +01:00
shamoon
2bcbb89175 Merge pull request #419 from paperless-ngx/fix-missing-migration
Add missing migration for savedviewfilterrule
2022-03-18 23:36:14 -07:00
Michael Shamoon
39daddef34 Allow shorter search strings with Enter key 2022-03-18 23:30:26 -07:00
Michael Shamoon
ff4538612e Codestyle cleanup 2022-03-18 21:37:38 -07:00
addi
1782d00cc5 fix issue 374 2022-03-18 23:26:04 +01:00
shamoon
d4f468208e Merge pull request #415 from paperless-ngx/feature-improved-delay-button
Use progress bar for delayed buttons
2022-03-18 08:51:36 -07:00
Quinn Casey
c60b708b9c Merge pull request #324 from stumpylog/more-ci-checks
Align CI checks with pre-commit (mostly)
2022-03-18 18:01:06 +07:00
Michael Shamoon
3dee012415 Use progress bar for button delay 2022-03-17 14:37:21 -07:00
Felix Eckhofer
a1d1fb962b Add missing migration for savedviewfilterrule
Change introduced in d7cefabe98.
2022-03-17 13:19:26 +01:00
shamoon
24e02a6c5f Merge pull request #401 from paperless-ngx/fix-issue-288
Add minimum length for documents text filter
2022-03-17 03:22:19 -07:00
Michael Shamoon
4f352391ae Add minimum length to text filter 2022-03-16 08:46:07 -07:00
Paperless Translation Bot
4667e0bf88 New Crowdin updates (#342)
* New translations django.po (Romanian)
[ci skip]

* New translations django.po (Dutch)
[ci skip]

* New translations messages.xlf (Romanian)
[ci skip]

* New translations messages.xlf (Dutch)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations django.po (Slovenian)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations django.po (Polish)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]
2022-03-15 20:58:44 -07:00
Trenton Holmes
9544e6c757 Improves the mail handling testing to use more of the imap_tools library types instead of internal types 2022-03-15 16:25:51 -07:00
shamoon
83b5e1a49d Merge pull request #388 from paperless-ngx/update-dirty-check-forms
Update @ngneat/dirty-check-forms to 2.0.0
2022-03-15 15:34:33 -07:00
Trenton Holmes
4f287b5ecd Fixes the EmailAddress which was a dict and is now a class 2022-03-15 14:00:01 -07:00
Michael Shamoon
4c346be367 Update @ngneat/dirty-check-forms to 2.0.0 2022-03-15 13:49:43 -07:00
Michael Shamoon
c87ac6f1ad Add bottom pagination for management lists 2022-03-15 10:17:19 -07:00
shamoon
02dc395880 Merge pull request #366 from paperless-ngx/fix-issue-365
Fix filterable dropdown buttons arent translated
2022-03-15 08:25:09 -07:00
Trenton Holmes
63a3e0b325 Merge pull request #330 from paperless-ngx/dependabot/pip/dev/sphinx-4.4.0
Bump sphinx from 3.4.3 to 4.4.0
2022-03-15 07:45:37 -07:00
Michael Shamoon
01ae5688d7 Add bottom pagination 2022-03-15 00:58:58 -07:00
Michael Shamoon
ec8b10c85b Fix filterable dropdown buttons arent translated 2022-03-14 22:40:45 -07:00
shamoon
19ff8339be Merge pull request #304 from paperless-ngx/pull-request-template
Create PULL_REQUEST_TEMPLATE.md
2022-03-14 16:26:04 -07:00
shamoon
a440b712de Merge pull request #355 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/rxjs-7.5.5
Bump rxjs from 6.6.7 to 7.5.5 in /src-ui
2022-03-14 16:24:26 -07:00
Michael Shamoon
3653045922 rxjs7 compatibility 2022-03-14 16:23:14 -07:00
dependabot[bot]
0d7438e398 Bump rxjs from 6.6.7 to 7.5.5 in /src-ui
Bumps [rxjs](https://github.com/reactivex/rxjs) from 6.6.7 to 7.5.5.
- [Release notes](https://github.com/reactivex/rxjs/releases)
- [Changelog](https://github.com/ReactiveX/rxjs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/reactivex/rxjs/compare/6.6.7...7.5.5)

---
updated-dependencies:
- dependency-name: rxjs
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-14 23:07:51 +00:00
shamoon
81b17bec69 Merge pull request #353 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/angular/cli-13.2.6
Bump @angular/cli from 13.2.5 to 13.2.6 in /src-ui
2022-03-14 16:06:53 -07:00
dependabot[bot]
e43c446c38 Bump @angular/cli from 13.2.5 to 13.2.6 in /src-ui
Bumps [@angular/cli](https://github.com/angular/angular-cli) from 13.2.5 to 13.2.6.
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/13.2.5...13.2.6)

---
updated-dependencies:
- dependency-name: "@angular/cli"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-14 23:03:13 +00:00
shamoon
0cb442c6e0 Merge pull request #354 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/angular/animations-13.2.6
Bump @angular/animations from 13.2.5 to 13.2.6 in /src-ui
2022-03-14 16:02:20 -07:00
dependabot[bot]
17ea079fcd Bump @angular/animations from 13.2.5 to 13.2.6 in /src-ui
Bumps [@angular/animations](https://github.com/angular/angular/tree/HEAD/packages/animations) from 13.2.5 to 13.2.6.
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/master/docs/RELEASE_SCHEDULE.md)
- [Commits](https://github.com/angular/angular/commits/13.2.6/packages/animations)

---
updated-dependencies:
- dependency-name: "@angular/animations"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-14 22:58:58 +00:00
shamoon
2270aefdee Merge pull request #352 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/angular/common-13.2.6
Bump @angular/common from 13.2.5 to 13.2.6 in /src-ui
2022-03-14 15:58:03 -07:00
shamoon
30828bcbe0 Merge pull request #356 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/popperjs/core-2.11.4
Bump @popperjs/core from 2.11.2 to 2.11.4 in /src-ui
2022-03-14 15:50:13 -07:00
dependabot[bot]
4667adc64d Bump sphinx from 3.4.3 to 4.4.0
Bumps [sphinx](https://github.com/sphinx-doc/sphinx) from 3.4.3 to 4.4.0.
- [Release notes](https://github.com/sphinx-doc/sphinx/releases)
- [Changelog](https://github.com/sphinx-doc/sphinx/blob/4.x/CHANGES)
- [Commits](https://github.com/sphinx-doc/sphinx/compare/v3.4.3...v4.4.0)

---
updated-dependencies:
- dependency-name: sphinx
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-14 22:29:17 +00:00
dependabot[bot]
de779d453c Bump imap-tools from 0.52.0 to 0.53.0
Bumps [imap-tools](https://github.com/ikvk/imap_tools) from 0.52.0 to 0.53.0.
- [Release notes](https://github.com/ikvk/imap_tools/releases)
- [Changelog](https://github.com/ikvk/imap_tools/blob/master/docs/release_notes.rst)
- [Commits](https://github.com/ikvk/imap_tools/compare/v0.52.0...v0.53.0)

---
updated-dependencies:
- dependency-name: imap-tools
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-14 23:23:12 +01:00
dependabot[bot]
fe959b30c6 Bump pytest from 7.0.1 to 7.1.0
Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.0.1 to 7.1.0.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/7.0.1...7.1.0)

---
updated-dependencies:
- dependency-name: pytest
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-14 23:22:39 +01:00
dependabot[bot]
3fcbb17a15 Bump @popperjs/core from 2.11.2 to 2.11.4 in /src-ui
Bumps [@popperjs/core](https://github.com/popperjs/popper-core) from 2.11.2 to 2.11.4.
- [Release notes](https://github.com/popperjs/popper-core/releases)
- [Commits](https://github.com/popperjs/popper-core/compare/v2.11.2...v2.11.4)

---
updated-dependencies:
- dependency-name: "@popperjs/core"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-14 20:21:40 +00:00
dependabot[bot]
cdfde1d91f Bump @angular/common from 13.2.5 to 13.2.6 in /src-ui
Bumps [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) from 13.2.5 to 13.2.6.
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/master/docs/RELEASE_SCHEDULE.md)
- [Commits](https://github.com/angular/angular/commits/13.2.6/packages/common)

---
updated-dependencies:
- dependency-name: "@angular/common"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-14 20:19:28 +00:00
dependabot[bot]
64a5b24e12 Bump ocrmypdf from 13.4.0 to 13.4.1
Bumps [ocrmypdf](https://github.com/jbarlow83/ocrmypdf) from 13.4.0 to 13.4.1.
- [Release notes](https://github.com/jbarlow83/ocrmypdf/releases)
- [Changelog](https://github.com/ocrmypdf/OCRmyPDF/blob/master/docs/release_notes.rst)
- [Commits](https://github.com/jbarlow83/ocrmypdf/compare/v13.4.0...v13.4.1)

---
updated-dependencies:
- dependency-name: ocrmypdf
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-14 19:39:06 +01:00
Trenton Holmes
7d29bd216d Adds back certain dependencies under certain Python versions to fix dependabot 2022-03-14 19:08:11 +01:00
Simon Siebert
1abd7cc2a0 Fixing Test 2022-03-14 19:03:09 +01:00
Simon Siebert
78608d92b4 Fixing code formating 2022-03-14 19:03:09 +01:00
Simon Siebert
54cbacf4f4 Update parsers.py and test_consumer.py 2022-03-14 19:03:09 +01:00
shamoon
b43aae84ab Merge pull request #247 from paperless-ngx/locale-chinese-simplified
Add Chinese localization
2022-03-14 07:22:28 -07:00
shamoon
9d9789953b Merge pull request #322 from paperless-ngx/fix-sphinx-errors
Fix minor sphinx errors
2022-03-14 06:49:25 -07:00
Paperless Translation Bot
614eb930d3 New Crowdin updates (#308)
* New translations messages.xlf (Slovenian)
[ci skip]

* New translations django.po (Polish)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations django.po (Polish)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]
2022-03-13 21:18:34 -07:00
dependabot[bot]
62094a2098 Bump @angular-devkit/build-angular from 13.2.5 to 13.2.6 in /src-ui (#329)
Bumps [@angular-devkit/build-angular](https://github.com/angular/angular-cli) from 13.2.5 to 13.2.6.
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/13.2.5...13.2.6)

---
updated-dependencies:
- dependency-name: "@angular-devkit/build-angular"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-13 21:17:43 -07:00
dependabot[bot]
84ed805fd7 Bump karma-chrome-launcher from 3.1.0 to 3.1.1 in /src-ui (#328)
Bumps [karma-chrome-launcher](https://github.com/karma-runner/karma-chrome-launcher) from 3.1.0 to 3.1.1.
- [Release notes](https://github.com/karma-runner/karma-chrome-launcher/releases)
- [Changelog](https://github.com/karma-runner/karma-chrome-launcher/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma-chrome-launcher/compare/v3.1.0...v3.1.1)

---
updated-dependencies:
- dependency-name: karma-chrome-launcher
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-13 21:14:49 -07:00
dependabot[bot]
82a158e803 Bump @angular/localize from 13.2.5 to 13.2.6 in /src-ui (#327)
Bumps [@angular/localize](https://github.com/angular/angular) from 13.2.5 to 13.2.6.
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/master/docs/RELEASE_SCHEDULE.md)
- [Commits](https://github.com/angular/angular/compare/13.2.5...13.2.6)

---
updated-dependencies:
- dependency-name: "@angular/localize"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-13 21:11:11 -07:00
dependabot[bot]
1527ae1472 Bump @angular/router from 13.2.5 to 13.2.6 in /src-ui (#326)
Bumps [@angular/router](https://github.com/angular/angular/tree/HEAD/packages/router) from 13.2.5 to 13.2.6.
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/master/docs/RELEASE_SCHEDULE.md)
- [Commits](https://github.com/angular/angular/commits/13.2.6/packages/router)

---
updated-dependencies:
- dependency-name: "@angular/router"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-13 21:03:27 -07:00
dependabot[bot]
5d1e86fdc3 Bump @angular/forms from 13.2.5 to 13.2.6 in /src-ui (#325)
Bumps [@angular/forms](https://github.com/angular/angular/tree/HEAD/packages/forms) from 13.2.5 to 13.2.6.
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/master/docs/RELEASE_SCHEDULE.md)
- [Commits](https://github.com/angular/angular/commits/13.2.6/packages/forms)

---
updated-dependencies:
- dependency-name: "@angular/forms"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-13 21:00:13 -07:00
shamoon
a6d2a390f0 Add review groups 2022-03-13 20:54:06 -07:00
Michael Shamoon
a47ec7c77d Add timeout warning 2022-03-13 20:45:14 -07:00
Trenton Holmes
ee1404d99e Adds additional CI checks for the backend and frontend, to complement pre-commit hooks which should already be run 2022-03-13 19:37:34 -07:00
shamoon
2caba558d7 Revert "Bump sphinx from 3.4.3 to 4.4.0" (#323) 2022-03-13 19:27:02 -07:00
shamoon
5e4119f6a9 Merge pull request #183 from paperless-ngx/dependabot/pip/dev/sphinx-4.4.0
Bump sphinx from 3.4.3 to 4.4.0
2022-03-13 19:06:42 -07:00
Michael Shamoon
6b46b43367 Fix minor sphinx errors 2022-03-13 17:48:17 -07:00
shamoon
460f10f46a Merge pull request #314 from paperless-ngx/fix-issue-312
Fix page links hidden
2022-03-13 16:31:57 -07:00
Michael Shamoon
37c6201a5a Add Chinese localization
Addresses https://github.com/paperless-ngx/paperless-ngx/issues/134#issuecomment-1062950795
2022-03-13 14:26:52 -07:00
shamoon
4184988c0c Merge pull request #315 from paperless-ngx/locale-slovenian
Add Slovenian language for frontend
2022-03-13 14:24:59 -07:00
Trenton Holmes
3264015dac Merge pull request #296 from stumpylog/ci-cache-venv
Updates actions to use GHA Python pipenv caching
2022-03-13 14:00:23 -07:00
Michael Shamoon
d1c785d1d0 Add Slovenian language for frontend
See #303
2022-03-13 09:15:42 -07:00
Michael Shamoon
abd63df75b Fix page links hidden
Closes #312
2022-03-13 09:05:29 -07:00
Michael Shamoon
57f35292d5 Fix dark mode selected table row background color 2022-03-13 08:45:39 -07:00
Michael Shamoon
7bd6f4a4ea Prevent event collision 2022-03-13 08:41:36 -07:00
Trenton Holmes
35de8e6ad5 Changes the pipenv install to be a sync 2022-03-13 08:20:40 -07:00
Trenton Holmes
1549edfd55 Changes codestyle and documentation steps to use cache as well 2022-03-13 08:07:28 -07:00
Trenton Holmes
f33cf6cc2e Fixes coveralls not running 2022-03-13 08:07:28 -07:00
Trenton Holmes
3a8cffe3ce Removes duplicated install of pipenv, changes to use pipx as per the official example 2022-03-13 08:07:28 -07:00
Trenton Holmes
58066443de Updates GHA to use the setup-python pipenv caching 2022-03-13 08:07:28 -07:00
shamoon
20566b6571 Add note to include how to test 2022-03-13 04:14:00 -07:00
shamoon
af52544792 Update PR template with suggestions 2022-03-13 03:56:59 -07:00
Paperless Translation Bot
594445f6dd New Crowdin updates (#305)
* New translations django.po (Slovenian)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]
2022-03-13 03:20:56 -07:00
shamoon
c3e86f0f21 Merge pull request #306 from lippoliv/feature-ignore-vscode-folder
ignore vscode folder
2022-03-13 01:22:34 -08:00
Oliver Lippert
d80102a7a4 ignore .vscode folder
Signed-off-by: Oliver Lippert <oliver@allesit.de>
2022-03-13 10:17:42 +01:00
Paperless Translation Bot
e886c38b45 New translations messages.xlf (Slovenian) (#303)
[ci skip]
2022-03-13 01:16:46 -08:00
shamoon
33a5823801 Update PULL_REQUEST_TEMPLATE.md 2022-03-13 01:15:15 -08:00
shamoon
b220d15fff Create PULL_REQUEST_TEMPLATE.md 2022-03-13 01:08:49 -08:00
Tooa
6fb856ee70 fix(gotenberg): use command flags
Gotenberg v7 does not use environment variables anymore, but command's flags.

See: https://gotenberg.dev/docs/get-started/docker-compose#modules-properties
2022-03-13 07:40:31 +01:00
Paperless Translation Bot
3922588716 New Crowdin updates (#292)
* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations django.po (Slovak)
[ci skip]

* New translations messages.xlf (Slovak)
[ci skip]

* New translations django.po (Slovak)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]
2022-03-12 20:24:22 -08:00
shamoon
940b12a908 Merge pull request #297 from stumpylog/dependabot-gha-updates
Enable dependabot GHA updates
2022-03-12 20:12:28 -08:00
Michael Shamoon
db5349881d App loading screen 2022-03-12 20:09:16 -08:00
Trenton Holmes
0edfe83a23 Enables dependabot for Github Action versions 2022-03-12 18:03:39 -08:00
Oliver Lippert
7abc6440f6 add link to setup instructions for bare metal (#221) 2022-03-12 08:43:12 -08:00
Quinn Casey
168ce2111d Merge pull request #278 from stumpylog/pre-commit-python-changes
Python Cleanup from pre-commit
2022-03-12 08:09:13 -08:00
Paperless Translation Bot
617d0bfee7 New translations messages.xlf (Portuguese, Brazilian) (#286)
[ci skip]
2022-03-12 03:10:58 -08:00
Quinn Casey
0d0da0d623 Merge pull request #275 from paperless-ngx/org-membership
Add Organization Structure & Membership
2022-03-11 12:39:42 -08:00
Trenton Holmes
dc657f2eb0 Maybe make CodeQL happy about this exception handling 2022-03-11 12:39:40 -08:00
shamoon
ef2b4a7536 Merge pull request #276 from paperless-ngx/prettier-cleanup-ts-js-md
Prettier cleanup for .ts .js and .md files
2022-03-11 12:31:21 -08:00
Michael Shamoon
e41d75c374 Prettier code cleanup for PR #273 2022-03-11 12:00:31 -08:00
Michael Shamoon
eb55f5655f Prettier code cleanup for .md files 2022-03-11 11:58:19 -08:00
Michael Shamoon
9f72bf7745 Prettier code cleanup for .js files
See #182
2022-03-11 11:58:19 -08:00
Michael Shamoon
f34202a82a Prettier code cleanup for .ts files
See #182
2022-03-11 11:58:19 -08:00
shamoon
f8c8161a3e Merge pull request #273 from GruberViktor/dev
Added nav buttons in the document detail view
2022-03-11 11:57:03 -08:00
GruberViktor
63aafd3133 remove automatic focus on title in document-detail view
Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
2022-03-11 20:54:24 +01:00
Trenton Holmes
e2303235cd Fixes what looks like a conflict between black and flake8 2022-03-11 11:34:32 -08:00
Trenton Holmes
1771d18a21 Runs the pre-commit hooks over all the Python files 2022-03-11 11:34:28 -08:00
GruberViktor
d02a0b2213 remove text from close-button in the document-detail view
Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
2022-03-11 20:22:39 +01:00
GruberViktor
6cbbd0c515 Apply suggestions from code review
Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
2022-03-11 20:16:53 +01:00
Quinn Casey
cae26f4f70 Fix typo 2022-03-11 11:01:24 -08:00
dependabot[bot]
f328d1461f Bump sphinx from 3.4.3 to 4.4.0
Bumps [sphinx](https://github.com/sphinx-doc/sphinx) from 3.4.3 to 4.4.0.
- [Release notes](https://github.com/sphinx-doc/sphinx/releases)
- [Changelog](https://github.com/sphinx-doc/sphinx/blob/4.x/CHANGES)
- [Commits](https://github.com/sphinx-doc/sphinx/compare/v3.4.3...v4.4.0)

---
updated-dependencies:
- dependency-name: sphinx
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-03-11 18:56:10 +00:00
Quinn Casey
d3e9799279 Merge pull request #182 from stumpylog/pre-commit-hooks
Adds pre-commit hooks for linting and formatting
2022-03-11 10:50:04 -08:00
Paperless Translation Bot
14eefe1f5d New Crowdin updates (#265)
* New translations django.po (Portuguese)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations django.po (German)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]
2022-03-11 10:49:59 -08:00
Trenton Holmes
6c2cc4cf50 Configures prettier formatting further 2022-03-11 10:32:25 -08:00
shamoon
440f4729ac Merge pull request #253 from paperless-ngx/feature-better-date-keyboard-input
Improve date keyboard input
2022-03-11 10:27:56 -08:00
Quinn Casey
e1c6042189 Add Organization Structure & Membership 2022-03-11 10:23:59 -08:00
Quinn Casey
55a057307c Merge pull request #274 from paperless-ngx/add-code-of-conduct-1
Add `CODE_OF_CONDUCT.md`
2022-03-11 09:44:50 -08:00
Trenton Holmes
8a5176e593 Updates the documentation to include installation of the pre-commit hooks 2022-03-11 09:26:41 -08:00
Quinn Casey
a757778fba Create CODE_OF_CONDUCT.md 2022-03-11 09:09:48 -08:00
Viktor
1259911275 Added nav buttons in the document detail view
Sometimes, when you are looking for a document, you need to go into the document-detail view
to read the pdf. To view the next document in the detail view, normally you would go back and
then click on the next.

Here I added two buttons to the toolbar to traverse throught the documents easily.
2022-03-11 17:35:38 +01:00
Michael Shamoon
4e4035a867 Fix enter key was prevented 2022-03-11 08:11:35 -08:00
shamoon
9bd87e78dc Merge pull request #263 from paperless-ngx/fix-dropdown-count
Fix: Include excluded items in dropdown count
2022-03-11 08:08:54 -08:00
Trenton Holmes
12a1c4ccbf Ensures Pipfile and requirements are up to date 2022-03-11 07:07:28 -08:00
Trenton Holmes
888e17cb91 Removes flake8 ignored warnings and errors, as black formatting will take care of almost all of these 2022-03-11 07:07:28 -08:00
Trenton Holmes
0fa48cea2a Updates the beautysh hook to use tabs, as this reduces the diff of the output. Updates .editorconfig to use spaces in Markdown files to match prettier formatting 2022-03-11 07:07:27 -08:00
Trenton Holmes
9b7d393d5d Removes migrations exclusion from black formatting 2022-03-11 07:07:27 -08:00
Trenton Holmes
cc702cbdfa Adds commenting and a little organization to the hook configuration 2022-03-11 07:07:26 -08:00
Trenton Holmes
e8ddb0c427 Removes tslint which doesn't work. Adds exclusions of the migrations folder to Python related hooks 2022-03-11 07:07:26 -08:00
Trenton Holmes
feb677e656 Adds and configures pre-commit hooks for linting and formatting during development 2022-03-11 07:07:25 -08:00
Quinn Casey
c19dd81ecf Merge pull request #242 from stumpylog/resolve-test-warnings
Reduce warnings in test suite
2022-03-11 05:54:19 -08:00
shamoon
01a50a3a98 Merge pull request #262 from kpj/fix-install_url
Fix install url in docs
2022-03-11 01:27:18 -08:00
Michael Shamoon
8920a32c75 Include excluded items in dropdown count 2022-03-11 01:17:19 -08:00
Michael Shamoon
4773d0bb7f semicolons 2022-03-11 01:03:43 -08:00
Michael Shamoon
20a6c5e7b7 more code cleanup 2022-03-11 00:52:32 -08:00
Michael Shamoon
0826e0f96b code cleanup 2022-03-11 00:48:06 -08:00
Kim
bd374f4c36 Also update other occurrences of master branch to main 2022-03-11 09:45:44 +01:00
Kim
bac8849f2d Use main instead of master branch in install URL 2022-03-11 09:39:01 +01:00
Michael Shamoon
ad87c3c87d Fix dropdown inputs 2022-03-11 00:29:59 -08:00
Michael Shamoon
4c7eb34290 Move padding into date formatter 2022-03-11 00:28:06 -08:00
Michael Shamoon
a1fd9f7310 Limit date input field chars and length 2022-03-11 00:11:59 -08:00
Michael Shamoon
9433908218 Delineate -ngx from -ng in changelog 2022-03-10 23:15:12 -08:00
shamoon
8f1c4cd9c4 Merge pull request #243 from paperless-ngx/css-variables
Custom color theming
2022-03-10 19:26:15 -08:00
Trenton Holmes
85b210ebf6 Reduces number of warnings from testing from 165 to 128. In doing so, fixes a few minor things in the decrypt and export commands 2022-03-10 18:12:48 -08:00
Michael Shamoon
af7ffa3878 Allow date dropdowns to use new formatter 2022-03-10 16:48:03 -08:00
Michael Shamoon
96a84d16a6 Merge branch 'main' into dev 2022-03-10 16:40:38 -08:00
Michael Shamoon
0737ea30e8 fix comment 2022-03-10 15:27:02 -08:00
Michael Shamoon
1807811903 Allow formatting non-padded dates 2022-03-10 15:17:32 -08:00
Michael Shamoon
a33dce1948 Code formatting 2022-03-10 15:17:32 -08:00
Michael Shamoon
ef4dc1b49e strip all delimiters 2022-03-10 15:17:31 -08:00
Michael Shamoon
0f886be109 semicolon 2022-03-10 15:17:31 -08:00
shamoon
73a597855f Merge pull request #250 from GruberViktor/date_parser
Parse dates when entered without separators
2022-03-10 15:16:50 -08:00
Quinn Casey
86d9c94962 Fix failed docker run on multi-tags 2022-03-10 14:58:28 -08:00
Quinn Casey
21ec2dfa68 Merge pull request #251 from paperless-ngx/dependabot-label-fix
Make dependabot labels consistent
2022-03-10 14:06:28 -08:00
Quinn Casey
296d1d1b61 Make dependabot labels consistent 2022-03-10 14:01:58 -08:00
Michael Shamoon
af536dfefb Fix outline buttons become invisible in light mode 2022-03-10 13:59:31 -08:00
Michael Shamoon
7d7c5207d7 Fix changing theme incorrectly affects dark mode settings 2022-03-10 13:56:22 -08:00
Viktor
52f0a3dfb9 Parse dates when entered without separators
This adds date dividers if none are entered.
It also adds the current year if it wasn't entered.

This allows users to just enter 1003, 100322, 10032022 and
have it expanded to 10.03.2022, in the case of the German format.
(All other formats are also supported)

It also replaces commas with the date divider.
This allows quick entry of the date on the numpad.
2022-03-10 21:31:54 +01:00
Quinn Casey
4532bed7bc 1.6.0 2022-03-10 12:09:19 -08:00
shamoon
d3bccc049b 1.6.0
[skip ci]
2022-03-10 12:03:00 -08:00
shamoon
333321e600 Merge pull request #213 from paperless-ngx/beta
Merge 1.6.0 Release Candidate
2022-03-10 12:01:31 -08:00
Ingo Sigmund
081f11af40 Merge pull request #214 from isigmund/dev 2022-03-10 15:09:33 +01:00
Ingo Sigmund
9f0f458a02 Merge pull request #23 from flofeld/patch-1 2022-03-10 15:06:12 +01:00
Paperless Translation Bot
e74c716588 New Crowdin updates (#244)
* New translations django.po (Italian)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations django.po (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations django.po (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]
2022-03-09 16:21:06 -08:00
Florian Feldmann
89bd0791dc Apply suggestions from code review
Co-authored-by: Ingo Sigmund <Ingo.sigmund@web.de>
2022-03-10 01:11:23 +01:00
Michael Shamoon
a591614a39 Component methods arent really private 2022-03-09 15:43:06 -08:00
Michael Shamoon
0085c8351e Prevent overriding other settings 2022-03-09 15:40:04 -08:00
Michael Shamoon
4df7f92a56 Working conversion 2022-03-09 15:34:26 -08:00
Michael Shamoon
1841cefbd8 Converting colors experiment 2022-03-09 15:19:42 -08:00
Michael Shamoon
f13ae930a5 Allow non-hex color modes from color component 2022-03-09 14:12:39 -08:00
Michael Shamoon
dbe233f0ae Skeleton implementation of color setting 2022-03-09 14:12:28 -08:00
Michael Shamoon
17e5f6d76b refactor variable names 2022-03-09 11:13:58 -08:00
Michael Shamoon
f52d167da3 fix some missed focus styles 2022-03-09 11:10:26 -08:00
Michael Shamoon
63aa7128a7 Increase contrast for dark mode colored buttons 2022-03-08 16:48:31 -08:00
Michael Shamoon
d30a652fc1 Make correspondent links on cards buttons 2022-03-08 16:45:36 -08:00
Michael Shamoon
1cd0684f62 tweak dark mode bg coloring 2022-03-08 16:41:56 -08:00
Michael Shamoon
bc97a13a62 fix logo coloring, saved view widget link, card coloring 2022-03-08 16:41:49 -08:00
Michael Shamoon
db98eed392 fix some light mode stuff due to specificity 2022-03-08 16:28:58 -08:00
Michael Shamoon
76115d6a81 checkbox focus color 2022-03-08 16:05:21 -08:00
Michael Shamoon
9e2fd52434 tab switching styling 2022-03-08 16:03:32 -08:00
Michael Shamoon
7ca12c3dc4 toasts 2022-03-08 16:02:16 -08:00
Michael Shamoon
3dffa09977 fix some focus styling 2022-03-08 15:50:10 -08:00
Michael Shamoon
7c313eed33 unify some button colors 2022-03-08 15:38:16 -08:00
Michael Shamoon
383cf7f4d5 fix some buttons, focus shadow 2022-03-08 15:22:17 -08:00
Michael Shamoon
4babf0d102 Initial conversion to css variables 2022-03-08 14:49:40 -08:00
Quinn Casey
df4567f9e4 Merge pull request #236 from stumpylog/minimal-pipfile
Remove non-direct dependencies from Pipfile
2022-03-08 06:25:58 -08:00
Quinn Casey
db2bf66eee Merge pull request #235 from paperless-ngx/1.6.0-rc1-dependency-updates
Update @angular/common, @angular/forms, @angular/platform-browser, ts-node, @angular/router
2022-03-08 06:12:49 -08:00
Michael Shamoon
36eaafa52a Update @angular/common, @angular/forms, @angular/platform-browser, ts-node, @angular/router
Closes #228
Closes #229
Closes #230
Closes #231
Closes #232
2022-03-07 13:07:04 -08:00
Trenton Holmes
f4d09d46f4 Removes certain packages from the Pipfile 2022-03-07 12:15:16 -08:00
shamoon
01c1b42319 Merge pull request #226 from paperless-ngx/fix-issue-225-management-page-filtering
Fix issue #225 management page filtering, add esc clearing of filter field
2022-03-07 10:50:52 -08:00
Michael Shamoon
472a3a54ab Allow esc key clearing, autofocus on management lists 2022-03-07 09:45:58 -08:00
Michael Shamoon
9fbf9923dc Page parameter breaks filtering on mangement pages
Closes #225
2022-03-07 09:45:39 -08:00
Ingo Sigmund
9d3242c13e Merge branch 'dev' of https://github.com/isigmund/paperless-ngx into dev 2022-03-06 18:03:24 +01:00
Ingo Sigmund
08c6a21bbb Revert "remove logic to delete dangling volumes: node"
This reverts commit c2da0ce521.
2022-03-06 18:03:19 +01:00
Ingo Sigmund
7d18be9928 Merge branch 'paperless-ngx:dev' into dev 2022-03-06 17:43:57 +01:00
Quinn Casey
748fe3b89f Merge pull request #219 from paperless-ngx/1.6.0-rc1-frontend-fixes1
1.6.0 rc1 frontend fixes 1
2022-03-06 08:38:34 -08:00
Michael Shamoon
b383e7dd08 Reduce debounce to avoid title erasing
Closes #216
2022-03-05 20:12:17 -08:00
Michael Shamoon
33ab69e010 Clone tags array to prevent false dirty check
Closes #215
2022-03-05 20:12:17 -08:00
shamoon
c52070d554 Merge pull request #212 from paperless-ngx/l10n_dev
New Crowdin updates
2022-03-05 20:10:52 -08:00
Quinn Casey
1d67c32351 [skip ci] Add variable body to fix incorrect changelog 2022-03-05 14:49:52 -08:00
Paperless Translation Bot
23d6589a73 New translations messages.xlf (Spanish)
[ci skip]
2022-03-05 08:50:51 -08:00
Ingo Sigmund
3ae73e7df5 Merge branch 'paperless-ngx:dev' into dev 2022-03-05 12:12:42 +01:00
Paperless Translation Bot
8f3f60d249 New translations messages.xlf (Spanish)
[ci skip]
2022-03-05 03:09:56 -08:00
Ingo Sigmund
16664789d2 remove volume: if no named volumes are used 2022-03-05 12:07:52 +01:00
Paperless Translation Bot
f97aae1fd8 New translations django.po (Luxembourgish)
[ci skip]
2022-03-04 15:16:09 -08:00
Paperless Translation Bot
7e1bbecc9f New translations django.po (German)
[ci skip]
2022-03-04 15:16:08 -08:00
Paperless Translation Bot
376a56df26 New translations django.po (Luxembourgish)
[ci skip]
2022-03-04 14:17:33 -08:00
Quinn Casey
c41b86eb68 [skip ci] Add #24 to changelog 2022-03-04 13:17:24 -08:00
Quinn Casey
77cc7cebf9 Fix close paren 2022-03-04 12:29:34 -08:00
Quinn Casey
f61105c041 Ensure build isn't skipped on beta tag 2022-03-04 12:28:03 -08:00
Quinn Casey
b4dc073a48 Add additional translations 2022-03-04 12:01:19 -08:00
Quinn Casey
2324f91622 [skip ci] Changelog update
commit 7a12f84cace09f4c0503ef6475608eee68986305
Author: Quinn Casey <quinn@quinncasey.com>
Date:   Wed Mar 2 09:55:56 2022 -0800

    Update to PR 200

commit 689310678f2e53bc6600e49faeb49668449a5657
Author: Quinn Casey <quinn@quinncasey.com>
Date:   Tue Mar 1 14:51:27 2022 -0800

    Proper tense

commit f42ce25fe770609a4f0bea7342cb4b8b48c84a4d
Author: Quinn Casey <quinn@quinncasey.com>
Date:   Tue Mar 1 14:50:31 2022 -0800

    Add PR 168

commit 95cae8f7eabfa4623f1190bfe004056dccf51bfb
Author: Quinn Casey <quinn@quinncasey.com>
Date:   Tue Mar 1 14:47:27 2022 -0800

    Update to PR 192

commit 0cad422be33412a87cdfe0ca208db72fc75a9098
Author: Quinn Casey <quinn@quinncasey.com>
Date:   Tue Feb 22 09:21:46 2022 -0800

    Update to PR 131

commit 01eb86c242bbe6cc0768012b68e5bb55adcf84f9
Author: Quinn Casey <quinn@quinncasey.com>
Date:   Fri Feb 18 11:15:21 2022 -0800

    Added more people

commit 29c2d714747201daeb7191f54602d3a792194657
Author: Quinn Casey <quinn@quinncasey.com>
Date:   Fri Feb 18 10:50:11 2022 -0800

    Update changelog up to PR 91

commit f17f237b41ff0d6ff6746e0efe64a91d38b21f7a
Author: Quinn Casey <quinn@quinncasey.com>
Date:   Thu Feb 17 10:21:36 2022 -0800

    Remove trailing whitespace

commit 34f28195261846261849378b6839a075a926e28d
Author: Quinn Casey <quinn@quinncasey.com>
Date:   Thu Feb 17 10:07:10 2022 -0800

    Update changelog up to PR 77
2022-03-04 11:28:57 -08:00
Quinn Casey
6b5c89b6f8 Tag on beta to prerelease 2022-03-04 09:15:59 -08:00
Quinn Casey
e5e94ffb6d Move build-docker-image before release pipeline 2022-03-04 08:36:13 -08:00
Quinn Casey
e3584eb61e Add beta to docker build 2022-03-04 08:31:17 -08:00
Michael Shamoon
bb5d8497c9 1.6.0-rc1 version string 2022-03-04 08:30:03 -08:00
Quinn Casey
3ea6028c9f Merge pull request #209 from paperless-ngx/feature-ci-ngx-dirs
Update CI from -ng to -ngx
2022-03-04 08:28:01 -08:00
shamoon
6e901ff362 Merge pull request #206 from paperless-ngx/update-docs-migration-ng-to-ngx
Add information about switching from -ng to -ngx
2022-03-03 13:23:03 -08:00
shamoon
d1032e4d7d Fix the grammars in setup.rst 2022-03-03 13:20:29 -08:00
Michael Shamoon
67efda7cf4 Add migration line to readme 2022-03-03 13:02:58 -08:00
shamoon
0545d9bab7 More explicit instructions 2022-03-03 12:55:34 -08:00
shamoon
a233e5d404 Add note to pull new image 2022-03-03 11:07:48 -08:00
shamoon
2484563ac7 Add information about switching from -ng to -ngx
Closes #204
2022-03-03 10:11:58 -08:00
Paperless Translation Bot
4d4ed7bc7b New Crowdin updates (#202)
* New translations django.po (Danish)
[ci skip]

* New translations messages.xlf (Danish)
[ci skip]

* New translations messages.xlf (Danish)
[ci skip]

* New translations django.po (French)
[ci skip]

* New translations django.po (French)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations django.po (Danish)
[ci skip]

* New translations messages.xlf (French)
[ci skip]
2022-03-03 09:40:22 -08:00
Ingo Sigmund
e75ea257e8 Correct install script (stop creating unused named volumes) 2022-03-03 15:17:54 +01:00
Ingo Sigmund
ff9df4a6ed Merge pull request #173 from paperless-ngx/feature-fix-install-script
Install: Ask for database folder mount when using postgres
2022-03-03 10:16:47 +01:00
Paperless Translation Bot
fdc051114b New Crowdin updates (#201)
* New translations django.po (Romanian)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Greek)
[ci skip]

* New translations messages.xlf (Hebrew)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Korean)
[ci skip]

* New translations messages.xlf (Dutch)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Swedish)
[ci skip]

* New translations messages.xlf (Chinese Traditional)
[ci skip]

* New translations messages.xlf (Portuguese, Brazilian)
[ci skip]

* New translations messages.xlf (Khmer)
[ci skip]

* New translations messages.xlf (Luxembourgish)
[ci skip]

* New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]

* New translations django.po (Danish)
[ci skip]

* New translations messages.xlf (Czech)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations django.po (French)
[ci skip]

* New translations django.po (Polish)
[ci skip]

* New translations django.po (Spanish)
[ci skip]

* New translations django.po (Czech)
[ci skip]

* New translations django.po (German)
[ci skip]

* New translations django.po (Greek)
[ci skip]

* New translations django.po (Hebrew)
[ci skip]

* New translations django.po (Italian)
[ci skip]

* New translations django.po (Korean)
[ci skip]

* New translations django.po (Dutch)
[ci skip]

* New translations django.po (Portuguese)
[ci skip]

* New translations messages.xlf (Romanian)
[ci skip]

* New translations django.po (Russian)
[ci skip]

* New translations django.po (Slovenian)
[ci skip]

* New translations django.po (Swedish)
[ci skip]

* New translations django.po (Chinese Traditional)
[ci skip]

* New translations django.po (Portuguese, Brazilian)
[ci skip]

* New translations django.po (Khmer)
[ci skip]

* New translations django.po (Luxembourgish)
[ci skip]

* New translations django.po (Arabic, Saudi Arabia)
[ci skip]

* New translations messages.xlf (Danish)
[ci skip]
2022-03-02 14:42:46 -08:00
shamoon
7aa8dcb0e3 Merge pull request #195 from paperless-ngx/update-ngx-in-docs
Update remaining references to -ngx
2022-03-02 14:17:27 -08:00
Quinn Casey
37531ec5e0 Fix "incorrect type" YAML error 2022-03-02 12:18:29 -08:00
Marc Schaefer
f8991ca8e0 Switch ci.yml from ng to ngx 2022-03-02 21:00:43 +01:00
Michael Shamoon
cd9c46e88e Update django.po 2022-03-02 11:27:53 -08:00
Michael Shamoon
04c28d4105 Update Angular messages.xlf 2022-03-02 11:21:39 -08:00
Quinn Casey
59975087c5 Update paperless-ng to paperless-ngx 2022-03-02 11:18:17 -08:00
Michael Shamoon
0f804937f7 Update -ngx in django templates / urls 2022-03-02 11:05:34 -08:00
Michael Shamoon
f3cda7d551 Fix more -ngx references 2022-03-02 10:59:54 -08:00
shamoon
209dba6a4a Fix some -ngx references, -ngx community support 2022-03-02 10:04:27 -08:00
Quinn Casey
43bc42826b Add newline 2022-03-02 10:03:37 -08:00
Quinn Casey
004375b478 Add org.opencontainers.image labels 2022-03-02 10:03:37 -08:00
Quinn Casey
49a1c3f8c2 Update maintainer email 2022-03-02 10:03:37 -08:00
Quinn Casey
c748394ff0 Update docs, yml to -ngx 2022-03-02 10:03:37 -08:00
Quinn Casey
9d246b1ad4 Merge pull request #193 from tim-vogel/fix_191
fix document_export issue (#191)
2022-03-02 09:46:30 -08:00
shamoon
038dc21c78 Merge pull request #199 from jschpp/fix-upstream#1672
Switched to `flag()`
2022-03-02 09:39:04 -08:00
Tim Vogel
7c758c0750 fix document_export issue (#191) 2022-03-02 09:35:02 -08:00
Johannes Schöpp
0925c90047 Switched to flag()
Newer versions of imap_tools moved away from `seen()` in favour of
`flag()` and deprecated the former.

This fixes https://github.com/jonaswinkler/paperless-ng/issues/1672

I also remove the mocked `seen()` function and updated the `flag()` mock
2022-03-02 17:48:02 +01:00
shamoon
74b94bc66a Add documents screenshots w browser chrome 2022-03-02 15:49:50 +01:00
shamoon
65e2177964 Add fixpending label to prevent stale 2022-03-02 15:49:50 +01:00
shamoon
a48c6e5b43 Update stale.yml 2022-03-02 15:49:50 +01:00
shamoon
b00f3102a6 Create stale.yml 2022-03-02 15:49:50 +01:00
Stéphane Brunner
f8679a251e Use the image on ghcr.io (#104) 2022-03-02 15:49:50 +01:00
Johann Bauer
9484eb9f6b Enable dependabot for repository (#86) 2022-03-02 15:49:50 +01:00
shamoon
dd6c25be13 Merge pull request #196 from paperless-ngx/fix-angular13-bs5-fixes-2
Angular 13 Bootstrap 5 fixes #2
2022-03-02 01:00:38 -08:00
shamoon
4e917b249d Fix scroll always visible on filterable dropdowns 2022-03-02 00:48:36 -08:00
shamoon
a87f96d780 Fix date dropdown bs5 compatability 2022-03-02 00:48:20 -08:00
shamoon
b959455ff8 Merge pull request #192 from paperless-ngx/fix-angular13-bs5-fixes-1
Angular 13 / Bootstrap 5 Fixes no. 1

Closes #189 and closes #188
2022-03-01 13:41:47 -08:00
Quinn Casey
1e6c666df4 CI: Fix multi stage builds (#190)
* Try fixing build error

* --upgrade instead of --update

* Attempt to fix timeout

* Try build qpdf on arm64

* Revert "Try build qpdf on arm64"

This reverts commit 42823a4d28.

* Format

* Try with libqpdf-dev install

* Move libqpdf-dev install to else

* Try with correct uname

* Run docker container to extract frontend

Co-authored-by: Johann Bauer <bauerj@bauerj.eu>
2022-03-01 12:48:26 -08:00
Michael Shamoon
1fd0f45a02 fix filterable dropdown text color when open 2022-03-01 12:32:06 -08:00
Michael Shamoon
93487b1aeb Fix bs5 selects 2022-03-01 12:25:22 -08:00
Quinn Casey
0772231ac0 Merge pull request #185 from paperless-ngx/fix-build-prod-warning
Fix build --prod depreciated warning
2022-02-28 14:38:05 -08:00
shamoon
37a5627b40 Merge pull request #174 from paperless-ngx/22-02-deps-fix
Fix dependency conflicts, broken frontend build
2022-02-28 14:33:12 -08:00
Quinn Casey
a679a1966a Fix build --prod depreciated warning 2022-02-28 12:39:28 -08:00
Michael Shamoon
b21e8a77be Bump build-angular to 13.2.5 2022-02-28 12:26:29 -08:00
Quinn Casey
049a2dde96 Merge pull request #18 from benjaminfrank/systemd-socket-port-80
Enable non-root port 80 via systemd
2022-02-28 11:17:50 -08:00
Ingo Sigmund
78a4891dfc Merge pull request #159 from paperless-ngx/pipfile-update 2022-02-28 19:46:39 +01:00
Quinn Casey
5c9c10a6db Merge pull request #168 from kpj/feature-black
GitHub Actions workflow for black code formatting
2022-02-28 10:32:10 -08:00
Michael Shamoon
16cb3ee779 Dont downgrade tslib 2022-02-28 09:37:33 -08:00
Quinn Casey
5bfadc2147 Remove comment used for testing 2022-02-28 08:18:50 -08:00
Quinn Casey
80d05add03 Ask for database folder is using postgres 2022-02-28 08:07:57 -08:00
Quinn Casey
3493f4da7b Use $DATABASE_BACKEND to echo SQLite or not 2022-02-28 07:52:01 -08:00
Quinn Casey
374ce47fcd Swap Folder and Application config steps 2022-02-28 07:45:43 -08:00
Quinn Casey
bc58e459ea Merge branch 'dev' into feature-black 2022-02-28 07:31:52 -08:00
Quinn Casey
25c8fe5c0e Merge pull request #172 from paperless-ngx/l10n_dev
New Crowdin updates
2022-02-28 06:29:40 -08:00
Quinn Casey
dad9de3be3 Merge pull request #161 from stumpylog/multistep-build
Refactor: Do the npm compile as a Build step in docker (Multistep build)
2022-02-28 06:09:17 -08:00
Paperless Translation Bot
f8d1fc749c New translations messages.xlf (Chinese Traditional)
[ci skip]
2022-02-28 01:41:16 -08:00
kpj
bbd4da5a27 Revert "Update Pipfile.lock"
This reverts commit acc94dcde0.
2022-02-28 09:51:13 +01:00
kpj
acc94dcde0 Update Pipfile.lock 2022-02-28 09:42:44 +01:00
kpj
72685b0330 Add black to dev-packages section of Pipfile 2022-02-28 09:42:30 +01:00
Felix E
cffd59f9ba Merge pull request #170 from paperless-ngx/qcasey-patch-1
Fix typo in `extending.rst`
2022-02-28 08:54:30 +01:00
Michael Shamoon
c5e55be84a Update package-lock.json, add popper 2022-02-27 22:32:00 -08:00
Quinn Casey
03b48078df Decrement build-angular 2022-02-27 19:39:47 -08:00
Quinn Casey
f0908f3a58 Bump deps to fix TypeError, downgrade tslib for compat 2022-02-27 19:14:33 -08:00
Quinn Casey
49e6e54e0b Restructure README.md (#147)
* Restructure readme

* Fix line break

* Add Matrix badge

* Some grammar, removed comparison to Paperless

* Remove comparison to original paperless

* Updated documents screenshot (also dark / light)

* Reorganize a little, add demo

* fix link

* Demo note, fix TOC, add -ngx

* Make the logo smaller

For once its not 'make the logo bigger'

* Reorganizing, move more translation stuff into contributing.md

* fix 'community support' links

* https for demo

* Update autogenerated TOC

* Change GHCR.io to Github Packages

* Add curl install script

* Remove demo heading

* Remove trailing whitespace

Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
Co-authored-by: Felix Eckhofer <felix@eckhofer.com>
2022-02-27 17:55:33 -08:00
Quinn Casey
cbe4e698c5 Fix typo in extending.rst
```
unknown shorthand flag: 'r' in -restart
See 'docker run --help'.
```

I think this should be `--restart`
2022-02-27 17:02:00 -08:00
Quinn Casey
aa39abc41a Merge pull request #156 from paperless-ngx/docker-fix-ci
Fix Armv7 Docker Build
2022-02-27 16:54:22 -08:00
Quinn Casey
c0ce6e28d4 Add black to docs and CONTRIBUTING 2022-02-27 12:35:26 -08:00
kpj
9b42c0aa50 Make pycodestyle ignore E203
See https://github.com/psf/black/issues/315 for more details.
2022-02-27 15:46:12 +01:00
kpj
f7caad9af9 Run pycodestyle with --max-line-length=88 to match black's defaults 2022-02-27 15:42:26 +01:00
kpj
992406d5a0 Format remaining Python files 2022-02-27 15:37:20 +01:00
kpj
60ad0bb4e2 Run black on all files in project root 2022-02-27 15:36:16 +01:00
kpj
f23d53fe1a Remove --verbose parameter from black call 2022-02-27 15:33:10 +01:00
kpj
12fa3c7417 Fix wrong job name in CI dependency list 2022-02-27 15:30:49 +01:00
kpj
fc695896dd Format Python code with black 2022-02-27 15:26:41 +01:00
kpj
13885968e3 Add GitHub Actions workflow to check black formatting 2022-02-27 15:21:20 +01:00
shamoon
e331f23bb0 Merge pull request #165 from paperless-ngx/feature-logo-2022
New -ngx logo 2022
2022-02-27 06:09:51 -08:00
Ingo Sigmund
d89ac59004 Merge pull request #163 from paperless-ngx/bauerj-patch-1
Fix whitespace issue in scanners.rst
2022-02-27 08:42:21 +01:00
Paperless Translation Bot
5b365a15c5 New Crowdin updates (#154)
* New translations messages.xlf (Luxembourgish)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (Luxembourgish)
[ci skip]

* New translations messages.xlf (Portuguese, Brazilian)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (German)
[ci skip]
2022-02-26 20:48:43 -08:00
Michael Shamoon
d8617746eb New -ngx logo 2022
Cause why not
2022-02-26 20:14:24 -08:00
Johann Bauer
1a830eb555 Fix whitespace issue in scanners.rst 2022-02-26 23:21:25 +01:00
Gabriel Augendre
bb0e858dfe Update QuickScan name and add WebDAV capability
QuickScan is now named "OCR Scanner - QuickScan" as per the App Store listing.
It also supports WebDAV.
2022-02-26 22:52:18 +01:00
Johann Bauer
4377998232 Fix Armv7 Docker build 2022-02-26 13:43:48 +01:00
Trenton Holmes
6852127c33 Adds missing step to run npm install 2022-02-25 14:23:40 -08:00
Trenton Holmes
83e40f3e87 Updates node version to 16 for the builder image 2022-02-25 14:23:40 -08:00
Toxix
31d96ea85b Fix node version
From automatic codereview. We should use a specific node version.

We are using the same version that was used before in the github
pipeline.
2022-02-25 14:23:40 -08:00
Toxix
9f895fe65f Doc Update docs for frontend-compile
As frontend compile step is done now inside docker container, we do not
need to do it before. This is updating the documentation so it reflects
the code changes made.
2022-02-25 14:23:40 -08:00
Toxix
84f96d7a98 Feat adjust github pipeline for docker frontend artifacts
This should allow to use docker building the frontend artifacts and
reusing them in the bare metal release.
2022-02-25 14:23:40 -08:00
Toxix
a6144e9692 Refector: Do the npm compile as a Build step
This removes the requirement of npm on the host system and removes an
additional manual step during the building of the docker image.

Updated the documentation accordingly and fixed a typo.
2022-02-25 14:23:40 -08:00
Johann Bauer
88d5bdc8bf Enable GitHub CodeQL (#160) 2022-02-25 23:20:14 +01:00
Johann Bauer
c2fae07c11 Update dependencies 2022-02-25 22:38:31 +01:00
shamoon
630cdaf08f Add documents screenshots w browser chrome 2022-02-25 01:26:34 -08:00
shamoon
2309b12a31 Merge pull request #149 from paperless-ngx/fix-misc-frontend-fixes
Misc frontend fixes
2022-02-25 01:21:03 -08:00
Michael Shamoon
8dc57e8e87 fix position and bs5 underline of suggestion link 2022-02-25 01:17:05 -08:00
Michael Shamoon
da4c6e8fb6 force ng2-pdf-viewer page width 2022-02-25 01:10:26 -08:00
Michael Shamoon
a1a01870e6 card checkboxes werent clickable 2022-02-25 00:49:32 -08:00
Michael Shamoon
80d2f34ad0 Fix pdf border 2022-02-25 00:47:27 -08:00
Timo Heckel
b5b7cf67bf Update .env (#102)
added visual indicator that pipenv is active
2022-02-24 17:05:19 +01:00
Quinn Casey
ca87b6dbfd Merge pull request #144 from paperless-ngx/tags-ngx
Make CI build from tags starting with ngx-
2022-02-24 08:02:41 -08:00
Quinn Casey
7cfad2d7ef Merge pull request #145 from paperless-ngx/fix-docker-build
Fix `build-docker-image` CI step
2022-02-24 08:00:13 -08:00
dependabot[bot]
ae18b82282 Bump django-cors-headers from 3.8.0 to 3.11.0 (#95)
Bumps [django-cors-headers](https://github.com/adamchainz/django-cors-headers) from 3.8.0 to 3.11.0.
- [Release notes](https://github.com/adamchainz/django-cors-headers/releases)
- [Changelog](https://github.com/adamchainz/django-cors-headers/blob/main/HISTORY.rst)
- [Commits](https://github.com/adamchainz/django-cors-headers/compare/3.8.0...3.11.0)

---
updated-dependencies:
- dependency-name: django-cors-headers
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-24 16:48:56 +01:00
Johann Bauer
701506e569 Fix build-docker-image CI step 2022-02-24 16:43:57 +01:00
dependabot[bot]
2f04e0de85 Bump uvicorn from 0.15.0 to 0.17.5 (#92)
Bumps [uvicorn](https://github.com/encode/uvicorn) from 0.15.0 to 0.17.5.
- [Release notes](https://github.com/encode/uvicorn/releases)
- [Changelog](https://github.com/encode/uvicorn/blob/master/CHANGELOG.md)
- [Commits](https://github.com/encode/uvicorn/compare/0.15.0...0.17.5)

---
updated-dependencies:
- dependency-name: uvicorn
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-24 16:08:23 +01:00
dependabot[bot]
a561cfe808 Bump pikepdf from 2.16.1 to 5.0.1 (#143)
Bumps [pikepdf](https://github.com/pikepdf/pikepdf) from 2.16.1 to 5.0.1.
- [Release notes](https://github.com/pikepdf/pikepdf/releases)
- [Changelog](https://github.com/pikepdf/pikepdf/blob/master/docs/release_notes.rst)
- [Commits](https://github.com/pikepdf/pikepdf/compare/v2.16.1...v5.0.1)

---
updated-dependencies:
- dependency-name: pikepdf
  dependency-type: direct:production
  update-type: version-update:semver-major
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-24 15:40:46 +01:00
Johann Bauer
9ce3708647 Make CI build from tags starting with ngx- 2022-02-24 15:19:25 +01:00
Johann Bauer
9dcfda1f41 Drop support for Python 3.7 (#142) 2022-02-24 15:07:30 +01:00
Quinn Casey
e23859f776 Update project name, copyright (#55)
* Update project name, copyright

* Update copyright to 2015-2022

* Scrub README.md for references to paperless-ng

* Update badges

* Update instances of paperless-ngx

* Remove ansible role

Co-authored-by: Daniel Blittschau <d@dblitt.com>
2022-02-24 15:00:21 +01:00
Paperless Translation Bot
ae94b90fe4 New Crowdin updates (#135)
* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (Greek)
[ci skip]

* New translations messages.xlf (Hebrew)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Dutch)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Swedish)
[ci skip]

* New translations messages.xlf (Portuguese, Brazilian)
[ci skip]

* New translations messages.xlf (Luxembourgish)
[ci skip]

* New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]

* New translations messages.xlf (Czech)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations messages.xlf (Romanian)
[ci skip]

* New translations messages.xlf (Chinese Traditional)
[ci skip]

* New translations messages.xlf (Khmer)
[ci skip]

* New translations django.po (Portuguese)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Greek)
[ci skip]

* New translations messages.xlf (Hebrew)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Korean)
[ci skip]

* New translations messages.xlf (Dutch)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations messages.xlf (Slovenian)
[ci skip]

* New translations messages.xlf (Swedish)
[ci skip]

* New translations messages.xlf (Chinese Traditional)
[ci skip]

* New translations messages.xlf (Portuguese, Brazilian)
[ci skip]

* New translations messages.xlf (Khmer)
[ci skip]

* New translations messages.xlf (Luxembourgish)
[ci skip]

* New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]

* New translations messages.xlf (Czech)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations messages.xlf (Romanian)
[ci skip]

* New translations messages.xlf (Danish)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations messages.xlf (Czech)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations messages.xlf (Hebrew)
[ci skip]

* New translations messages.xlf (Dutch)
[ci skip]

* New translations messages.xlf (Polish)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations messages.xlf (Swedish)
[ci skip]

* New translations messages.xlf (Romanian)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations messages.xlf (Portuguese, Brazilian)
[ci skip]

* New translations messages.xlf (Luxembourgish)
[ci skip]

* New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]
2022-02-23 13:37:45 -08:00
shamoon
cbac6fc8d5 Merge pull request #138 from paperless-ngx/fix-angular-translation-source
Regenerate angular messages.xlf, see https://github.com/paperless-ngx/paperless-ngx/pull/135#issuecomment-1048970786
2022-02-23 13:13:13 -08:00
Michael Shamoon
5941c383b6 Remove strings from node_modules
See https://github.com/angular/angular-cli/issues/18885
2022-02-23 08:40:29 -08:00
Michael Shamoon
396c3fb554 Regenerate angular messages.xlf 2022-02-23 08:30:20 -08:00
Alexander Bauer
dbdd9b93f8 Merge pull request #133 from muellermartin/fix-png-alpha
Remove alpha layer from PNG files for img2pdf
2022-02-22 20:02:18 -05:00
Quinn Casey
84e7e74d00 Merge pull request #132 from paperless-ngx/named-volumes
Use a named volume for broker
2022-02-22 12:41:23 -08:00
Yannic Schröder
0103e6546f Merge pull request #124 from paperless-ngx/feature-configure-port
Allow specifying port through PAPERLESS_PORT environment variable
2022-02-22 21:37:53 +01:00
Felix Eckhofer
a1f09bdc4e Clarify description of PAPERLESS_PORT 2022-02-22 21:06:28 +01:00
Quinn Casey
ba561604f0 Add back line break (curse you gitlens) 2022-02-22 10:09:34 -08:00
Quinn Casey
bad4be4cbc Use a named volume for broker 2022-02-22 10:01:09 -08:00
Quinn Casey
2f7c351039 Merge pull request #109 from slankes/removeansible
chore: remove ansible playbooks and documentation
2022-02-22 07:53:04 -08:00
shamoon
4b05a18e3e Merge pull request #129 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/angular/platform-browser-dynamic-13.2.3
Bump @angular/platform-browser-dynamic from 13.2.2 to 13.2.3 in /src-ui
2022-02-21 21:26:13 -08:00
dependabot[bot]
b7352e255e Bump @angular/platform-browser-dynamic from 13.2.2 to 13.2.3 in /src-ui
Bumps [@angular/platform-browser-dynamic](https://github.com/angular/angular/tree/HEAD/packages/platform-browser-dynamic) from 13.2.2 to 13.2.3.
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/master/docs/RELEASE_SCHEDULE.md)
- [Commits](https://github.com/angular/angular/commits/13.2.3/packages/platform-browser-dynamic)

---
updated-dependencies:
- dependency-name: "@angular/platform-browser-dynamic"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-22 05:24:40 +00:00
shamoon
1408270fb1 Merge pull request #131 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/angular/localize-13.2.3
Bump @angular/localize from 13.2.2 to 13.2.3 in /src-ui
2022-02-21 21:24:01 -08:00
shamoon
cd46b7ae45 Merge pull request #126 from paperless-ngx/l10n_dev
New Crowdin updates
2022-02-21 21:21:37 -08:00
dependabot[bot]
6ad5d19cf8 Bump @angular/localize from 13.2.2 to 13.2.3 in /src-ui
Bumps [@angular/localize](https://github.com/angular/angular) from 13.2.2 to 13.2.3.
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/master/docs/RELEASE_SCHEDULE.md)
- [Commits](https://github.com/angular/angular/compare/13.2.2...13.2.3)

---
updated-dependencies:
- dependency-name: "@angular/localize"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-22 05:15:02 +00:00
shamoon
66bbf322c5 Merge pull request #128 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/angular/platform-browser-13.2.3
Bump @angular/platform-browser from 13.2.2 to 13.2.3 in /src-ui
2022-02-21 21:14:03 -08:00
dependabot[bot]
7bdd397c78 Bump @angular/platform-browser from 13.2.2 to 13.2.3 in /src-ui
Bumps [@angular/platform-browser](https://github.com/angular/angular/tree/HEAD/packages/platform-browser) from 13.2.2 to 13.2.3.
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/master/docs/RELEASE_SCHEDULE.md)
- [Commits](https://github.com/angular/angular/commits/13.2.3/packages/platform-browser)

---
updated-dependencies:
- dependency-name: "@angular/platform-browser"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-22 05:12:34 +00:00
shamoon
86069c291f Merge pull request #127 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/jasmine-core-4.0.1
Bump jasmine-core from 3.6.0 to 4.0.1 in /src-ui
2022-02-21 21:04:43 -08:00
shamoon
ba87146c61 Merge pull request #130 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/types/jasminewd2-2.0.10
Bump @types/jasminewd2 from 2.0.8 to 2.0.10 in /src-ui
2022-02-21 21:04:24 -08:00
dependabot[bot]
47e177a575 Bump @types/jasminewd2 from 2.0.8 to 2.0.10 in /src-ui
Bumps [@types/jasminewd2](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jasminewd2) from 2.0.8 to 2.0.10.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jasminewd2)

---
updated-dependencies:
- dependency-name: "@types/jasminewd2"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-22 04:59:24 +00:00
shamoon
b700b3d1f7 Merge pull request #121 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/angular/compiler-cli-13.2.3
Bump @angular/compiler-cli from 13.2.2 to 13.2.3 in /src-ui
2022-02-21 20:58:29 -08:00
dependabot[bot]
11a377b973 Bump jasmine-core from 3.6.0 to 4.0.1 in /src-ui
Bumps [jasmine-core](https://github.com/jasmine/jasmine) from 3.6.0 to 4.0.1.
- [Release notes](https://github.com/jasmine/jasmine/releases)
- [Changelog](https://github.com/jasmine/jasmine/blob/main/RELEASE.md)
- [Commits](https://github.com/jasmine/jasmine/compare/v3.6.0...v4.0.1)

---
updated-dependencies:
- dependency-name: jasmine-core
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-22 04:57:27 +00:00
dependabot[bot]
e889c2e54e Bump @angular/compiler-cli from 13.2.2 to 13.2.3 in /src-ui
Bumps [@angular/compiler-cli](https://github.com/angular/angular/tree/HEAD/packages/compiler-cli) from 13.2.2 to 13.2.3.
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/master/docs/RELEASE_SCHEDULE.md)
- [Commits](https://github.com/angular/angular/commits/13.2.3/packages/compiler-cli)

---
updated-dependencies:
- dependency-name: "@angular/compiler-cli"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-22 04:57:18 +00:00
shamoon
ab81439aac Merge pull request #119 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/ng2-pdf-viewer-8.0.1
Bump ng2-pdf-viewer from 8.0.0 to 8.0.1 in /src-ui
2022-02-21 20:56:26 -08:00
shamoon
75b4d46f4c Merge pull request #122 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/codelyzer-6.0.2
Bump codelyzer from 6.0.1 to 6.0.2 in /src-ui
2022-02-21 20:56:11 -08:00
shamoon
d680711ffc Merge pull request #120 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/jasmine-spec-reporter-7.0.0
Bump jasmine-spec-reporter from 5.0.2 to 7.0.0 in /src-ui
2022-02-21 20:55:55 -08:00
shamoon
ba38c2ad63 Merge pull request #123 from paperless-ngx/dependabot/npm_and_yarn/src-ui/dev/ts-node-10.5.0
Bump ts-node from 8.3.0 to 10.5.0 in /src-ui
2022-02-21 20:55:37 -08:00
shamoon
140b179607 Merge pull request #125 from paperless-ngx/stalebot
Add stale.yml
2022-02-21 18:17:36 -08:00
Paperless Translation Bot
49d7492e05 New translations django.po (German)
[ci skip]
2022-02-21 16:34:27 -08:00
shamoon
c8ad4e9bcd Add fixpending label to prevent stale 2022-02-21 16:11:22 -08:00
shamoon
49bc8f95f6 Update stale.yml 2022-02-21 16:05:21 -08:00
shamoon
50bab47f43 Create stale.yml 2022-02-21 14:43:33 -08:00
Martin Müller
1e288100a9 Remove unneded exception handler from has_alpha() 2022-02-21 22:58:19 +01:00
Yannic Schroeder
d13fdd0791 Allow specifying port through PAPERLESS_PORT environment variable 2022-02-21 22:46:02 +01:00
Martin Müller
73a8569d21 Modify test for PNG image with alpha 2022-02-21 22:38:25 +01:00
Martin Müller
2a47b3f1a1 Fix code style (line too long) 2022-02-21 22:34:34 +01:00
Martin Müller
41494ee689 Remove alpha layer from PNG files for img2pdf
Fixes issue #1254
2022-02-21 22:06:43 +01:00
Sven Lankes
8bf6fadf0e Merge branch 'dev' into removeansible 2022-02-21 21:45:03 +01:00
dependabot[bot]
13b2c438b9 Bump ts-node from 8.3.0 to 10.5.0 in /src-ui
Bumps [ts-node](https://github.com/TypeStrong/ts-node) from 8.3.0 to 10.5.0.
- [Release notes](https://github.com/TypeStrong/ts-node/releases)
- [Commits](https://github.com/TypeStrong/ts-node/compare/v8.3.0...v10.5.0)

---
updated-dependencies:
- dependency-name: ts-node
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-21 20:24:10 +00:00
dependabot[bot]
368f7ab0ed Bump codelyzer from 6.0.1 to 6.0.2 in /src-ui
Bumps [codelyzer](https://github.com/mgechev/codelyzer) from 6.0.1 to 6.0.2.
- [Release notes](https://github.com/mgechev/codelyzer/releases)
- [Changelog](https://github.com/mgechev/codelyzer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mgechev/codelyzer/commits)

---
updated-dependencies:
- dependency-name: codelyzer
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-21 20:23:27 +00:00
dependabot[bot]
8b23a5e4c1 Bump jasmine-spec-reporter from 5.0.2 to 7.0.0 in /src-ui
Bumps [jasmine-spec-reporter](https://github.com/bcaudan/jasmine-spec-reporter) from 5.0.2 to 7.0.0.
- [Release notes](https://github.com/bcaudan/jasmine-spec-reporter/releases)
- [Changelog](https://github.com/bcaudan/jasmine-spec-reporter/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bcaudan/jasmine-spec-reporter/compare/v5.0.2...v7.0.0)

---
updated-dependencies:
- dependency-name: jasmine-spec-reporter
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-21 20:22:41 +00:00
dependabot[bot]
60a87f1541 Bump ng2-pdf-viewer from 8.0.0 to 8.0.1 in /src-ui
Bumps [ng2-pdf-viewer](https://github.com/VadimDez/ng2-pdf-viewer) from 8.0.0 to 8.0.1.
- [Release notes](https://github.com/VadimDez/ng2-pdf-viewer/releases)
- [Changelog](https://github.com/VadimDez/ng2-pdf-viewer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/VadimDez/ng2-pdf-viewer/compare/8.0.0...8.0.1)

---
updated-dependencies:
- dependency-name: ng2-pdf-viewer
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-21 20:22:00 +00:00
Quinn Casey
0827553a69 Merge pull request #118 from paperless-ngx/feature-fix-pip-timeout
Increase default timeout of `pip install`
2022-02-21 11:46:13 -08:00
shamoon
1688af7a0d Merge pull request #24 from tribut/feature-trash
Add temporary "delete to trash" functionality
2022-02-21 11:19:57 -08:00
Sven Lankes
1412daf615 chore: remove ansible playbooks and documentation 2022-02-21 20:15:12 +01:00
shamoon
57db05f95b Merge pull request #117 from paperless-ngx/l10n_dev
New Crowdin updates
2022-02-21 10:43:18 -08:00
Paperless Translation Bot
1c1e7183e3 New translations messages.xlf (Danish)
[ci skip]
2022-02-21 10:29:34 -08:00
Paperless Translation Bot
ed48001fb2 New translations messages.xlf (Romanian)
[ci skip]
2022-02-21 10:29:27 -08:00
Paperless Translation Bot
d864734bc5 New translations messages.xlf (French)
[ci skip]
2022-02-21 10:29:20 -08:00
Paperless Translation Bot
150740766f New translations messages.xlf (Czech)
[ci skip]
2022-02-21 10:29:19 -08:00
Paperless Translation Bot
848f52688b New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]
2022-02-21 10:29:17 -08:00
Paperless Translation Bot
bcab0e8579 New translations messages.xlf (Luxembourgish)
[ci skip]
2022-02-21 10:29:16 -08:00
Paperless Translation Bot
e6cce4069e New translations messages.xlf (Portuguese, Brazilian)
[ci skip]
2022-02-21 10:29:14 -08:00
Paperless Translation Bot
ddfeeb6af7 New translations messages.xlf (Swedish)
[ci skip]
2022-02-21 10:29:13 -08:00
Paperless Translation Bot
5c2b524d07 New translations messages.xlf (Slovenian)
[ci skip]
2022-02-21 10:29:12 -08:00
Paperless Translation Bot
17d51a1cf6 New translations messages.xlf (Spanish)
[ci skip]
2022-02-21 10:29:11 -08:00
Paperless Translation Bot
01ce6c5f6f New translations messages.xlf (Russian)
[ci skip]
2022-02-21 10:29:10 -08:00
Paperless Translation Bot
79aa56c898 New translations messages.xlf (Polish)
[ci skip]
2022-02-21 10:29:09 -08:00
Paperless Translation Bot
93e8d49540 New translations messages.xlf (Dutch)
[ci skip]
2022-02-21 10:29:07 -08:00
Paperless Translation Bot
c5f31481b9 New translations messages.xlf (Italian)
[ci skip]
2022-02-21 10:29:06 -08:00
Paperless Translation Bot
56cdbc0c60 New translations messages.xlf (Hebrew)
[ci skip]
2022-02-21 10:29:05 -08:00
Paperless Translation Bot
d0a5160978 New translations messages.xlf (Greek)
[ci skip]
2022-02-21 10:29:03 -08:00
Paperless Translation Bot
106b55fc93 New translations messages.xlf (German)
[ci skip]
2022-02-21 10:29:02 -08:00
Paperless Translation Bot
573da8bd03 New translations messages.xlf (Portuguese)
[ci skip]
2022-02-21 10:29:01 -08:00
Quinn Casey
7845cece6b Add timeout to pip install
Attempt to fix `ConnectionResetError` seen [here](https://github.com/paperless-ngx/paperless-ngx/runs/5275984654?check_suite_focus=true) and [here](https://github.com/paperless-ngx/paperless-ngx/runs/5259904053?check_suite_focus=true)
2022-02-21 10:27:03 -08:00
shamoon
74dea42687 Merge pull request #65 from paperless-ngx/feature-angular-update
Update Angular to version 13, bootstrap to v5, other dependencies
2022-02-21 10:20:56 -08:00
Michael Shamoon
0d610e364c Use calc instead of sass math 2022-02-21 08:50:50 -08:00
Quinn Casey
0476c7204f Remove trailing whitespace 2022-02-21 06:46:42 -08:00
Felix E
e0683c19c8 Fix typo (#110) 2022-02-20 15:57:26 +01:00
Felix Eckhofer
a7e1c1c4d0 Catch exception during trash-move 2022-02-20 14:17:13 +01:00
Felix Eckhofer
335b8c63e0 Explain file-rename logic 2022-02-20 14:17:13 +01:00
Felix Eckhofer
f9bbb9a8c3 Remove stray newline 2022-02-20 14:17:06 +01:00
shamoon
fe5293ba36 Amend instructions to add a new language (#108)
Missing required editing of `src-ui/src/app/app.module.ts`
2022-02-20 10:36:31 +01:00
Michael Shamoon
3297596f2e fix layout columns in settings saved views 2022-02-20 01:32:24 -08:00
Michael Shamoon
5b5e8d7860 bs5: fix popover carat colors in dark mode 2022-02-20 01:25:31 -08:00
Michael Shamoon
7049d04d71 Reduce calls to isDirty for filterable dropdowns
And make disabled more visually obvious
2022-02-20 01:08:42 -08:00
Michael Shamoon
17ddf18a67 fix display of ng2-pdf-viewer 8.0.0 2022-02-20 00:37:42 -08:00
Michael Shamoon
e60bfda93f Bump tslib to 2.3.1
Replaces #90
2022-02-20 00:27:30 -08:00
Michael Shamoon
40dda1e0f7 Bump @types/jasmine to 3.10.3
Replaces #91
2022-02-20 00:26:53 -08:00
Michael Shamoon
3715afbb97 Bump rxjs to 6.6.7
Replaces #88
2022-02-20 00:26:05 -08:00
Michael Shamoon
6f22f720e9 Bump @angular/cli to 13.2.4
Replaces #87
2022-02-20 00:25:25 -08:00
Stéphane Brunner
785fcfb998 Use the image on ghcr.io (#104) 2022-02-20 09:23:18 +01:00
Michael Shamoon
ddce6e1f0a bs5: show single filterable dropdown without number 2022-02-20 00:19:44 -08:00
Michael Shamoon
199affb244 bs5: fix dark mode dashboard widget table display 2022-02-20 00:16:49 -08:00
Michael Shamoon
899e3eed1b bs5: upload widget dismissal button 2022-02-20 00:05:45 -08:00
Michael Shamoon
744a0f1c8c bs5: fix dark mode close button 2022-02-20 00:05:32 -08:00
Michael Shamoon
c6fc435869 bs5: fix color component display 2022-02-19 23:55:17 -08:00
Michael Shamoon
81ef51fd01 bs5: fix correspondent / tag / doctype management list display 2022-02-19 23:48:49 -08:00
Michael Shamoon
0eaa1e3385 bs5: fix settings display 2022-02-19 23:34:32 -08:00
Michael Shamoon
e9a3a53849 Import Czech and Danish locales
Fixes incorrect #83 and #84
2022-02-19 23:26:21 -08:00
Michael Shamoon
4ae4fb65e6 fix missing darkModeInvertThumbs form control 2022-02-19 23:14:39 -08:00
Michael Shamoon
95a4d7e8a9 bs5: fix user navbar dropdown menu placement 2022-02-19 23:10:13 -08:00
Michael Shamoon
bf30297829 bs5: fix document detail input group 2022-02-19 23:07:36 -08:00
Michael Shamoon
f5f6985e4e bs5: remove custom control scss 2022-02-19 23:05:52 -08:00
Michael Shamoon
efe5df3459 bs5: document list table checkboxes 2022-02-19 23:05:41 -08:00
Michael Shamoon
99409f258f bs5: fix card checkboxes no longer custom controls 2022-02-19 22:57:04 -08:00
Michael Shamoon
4400915e0c bs5: form input spacing, renamed controls 2022-02-19 22:40:27 -08:00
Michael Shamoon
37f6b249dc bs5: fix document list sort form toggle button 2022-02-19 22:25:06 -08:00
Michael Shamoon
4826c645cd bs5: fix search icon location 2022-02-19 22:23:56 -08:00
Michael Shamoon
545b8e2b6e bs5: fix filter editor spacing 2022-02-19 22:20:53 -08:00
Michael Shamoon
d6744f0996 bs5: dropdown toggle button fill color 2022-02-19 22:06:06 -08:00
Michael Shamoon
55b980991b bs5: fix color sass map 2022-02-19 22:05:10 -08:00
Michael Shamoon
add09db40a bs5: fix badges 2022-02-19 22:04:52 -08:00
Michael Shamoon
f08901c639 bs5: fix toggle buttons 2022-02-19 21:46:15 -08:00
Michael Shamoon
fd58096112 bs5: fix underline weirdness 2022-02-19 21:39:02 -08:00
Michael Shamoon
3a652a8941 bs5: fix reversed borders 2022-02-19 21:38:45 -08:00
Michael Shamoon
52e6b45580 bs5: fix small cards display 2022-02-19 21:38:29 -08:00
Michael Shamoon
7b7ba83a87 bs5: fix large card display 2022-02-19 21:38:07 -08:00
Yannic Schroeder
8ba282362d Migrate Bootstrap close buttons to v5
https://getbootstrap.com/docs/5.0/migration/#close-button
2022-02-20 01:43:31 +01:00
Yannic Schroeder
4451acbf0b Migrate Bootstrap utilities to v5
Names of utility classes have changed:
https://getbootstrap.com/docs/5.0/migration/#utilities
2022-02-20 01:25:57 +01:00
Yannic Schroeder
d257eeeabf Remove ngx-bootstrap dependency
This was not used anywhere.
2022-02-20 00:16:38 +01:00
Yannic Schroeder
9f062fa14b Update ng2-pdf-viewer
Now with ivy support!
2022-02-20 00:16:38 +01:00
Yannic Schroeder
ba1038b4a8 Update nodejs version in CI
Angular does not allow nodejs version 15.
2022-02-20 00:16:38 +01:00
Yannic Schroeder
ef1b971fca Update bootstrap 2022-02-20 00:16:38 +01:00
Yannic Schroeder
3444f9e5f2 Fix wrong migrations from update to Angular 13 2022-02-20 00:15:43 +01:00
Yannic Schroeder
af768b8d66 Bump dependency versions for security fixes 2022-02-20 00:15:43 +01:00
Yannic Schroeder
fbe0cdadd4 Update ngx-infinite-scroll 2022-02-20 00:15:43 +01:00
Yannic Schroeder
ff3d455f45 Update ngx-file-drop 2022-02-20 00:15:43 +01:00
Yannic Schroeder
2eba2942d0 Update ngx-color 2022-02-20 00:15:43 +01:00
Yannic Schroeder
556143a941 Update ngx-bootstrap 2022-02-20 00:15:43 +01:00
Yannic Schroeder
e82011a91d Update ng2-pdf-viewer 2022-02-20 00:15:43 +01:00
Yannic Schroeder
f2f80685a8 Update ng-select 2022-02-20 00:15:43 +01:00
Yannic Schroeder
7aa77eab07 Update ng-bootstrap 2022-02-20 00:14:35 +01:00
Yannic Schroeder
419fe7fc68 Update ngx-cookie-service 2022-02-20 00:14:35 +01:00
Yannic Schroeder
1d4b5e243c Update to Angular 13 2022-02-20 00:14:35 +01:00
Yannic Schroeder
d25604da81 Fix deprecated Sass syntax 2022-02-20 00:14:35 +01:00
Yannic Schroeder
17617b82c6 Disable legacy i18n IDs 2022-02-20 00:14:35 +01:00
Yannic Schroeder
3f89fdf300 Migrate legacy i18n IDs
Angular 12 introduced a new way of generating IDs. This migrates all
IDs to new format.

More info: https://angular.io/guide/migration-legacy-message-id
2022-02-20 00:14:35 +01:00
Yannic Schroeder
0cc9b7e357 Remove invalid option from angular.json 2022-02-20 00:09:35 +01:00
Yannic Schroeder
32e1188207 Update ngx-cookie-service
Old version is incompatible with Angular 12.
2022-02-20 00:09:35 +01:00
Yannic Schroeder
c634e6a801 Update to Angular 12 2022-02-20 00:09:35 +01:00
shamoon
d1a7557405 Merge pull request #107 from paperless-ngx/l10n_dev
New Crowdin updates
2022-02-19 15:08:51 -08:00
Paperless Translation Bot
b1a7c27d96 New translations messages.xlf (Swedish)
[ci skip]
2022-02-19 15:07:20 -08:00
Paperless Translation Bot
5ebf8534ba New translations messages.xlf (French)
[ci skip]
2022-02-19 15:05:58 -08:00
Paperless Translation Bot
65bb5d067a New translations messages.xlf (Czech)
[ci skip]
2022-02-19 15:01:56 -08:00
Paperless Translation Bot
0a5da90f84 New translations messages.xlf (Danish)
[ci skip]
2022-02-19 14:58:17 -08:00
Paperless Translation Bot
59827290dc New translations django.po (Khmer)
[ci skip]
2022-02-19 14:58:15 -08:00
Paperless Translation Bot
b0f8d15542 New translations messages.xlf (Romanian)
[ci skip]
2022-02-19 14:58:10 -08:00
Paperless Translation Bot
366ffec165 New translations messages.xlf (French)
[ci skip]
2022-02-19 14:58:02 -08:00
Paperless Translation Bot
0cd3059831 New translations messages.xlf (Czech)
[ci skip]
2022-02-19 14:57:59 -08:00
Paperless Translation Bot
db4da7092b New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]
2022-02-19 14:57:58 -08:00
Paperless Translation Bot
c6851c9f70 New translations messages.xlf (Luxembourgish)
[ci skip]
2022-02-19 14:57:57 -08:00
Paperless Translation Bot
7c4a098977 New translations messages.xlf (Portuguese, Brazilian)
[ci skip]
2022-02-19 14:57:55 -08:00
Paperless Translation Bot
cfb3db311c New translations messages.xlf (Swedish)
[ci skip]
2022-02-19 14:57:54 -08:00
Paperless Translation Bot
b049ad4f3a New translations messages.xlf (Spanish)
[ci skip]
2022-02-19 14:57:52 -08:00
Paperless Translation Bot
fd5a761c8c New translations messages.xlf (Russian)
[ci skip]
2022-02-19 14:57:51 -08:00
Paperless Translation Bot
e9befc44ec New translations messages.xlf (Polish)
[ci skip]
2022-02-19 14:57:50 -08:00
Paperless Translation Bot
180c82c694 New translations messages.xlf (Dutch)
[ci skip]
2022-02-19 14:57:49 -08:00
Paperless Translation Bot
36b041376c New translations messages.xlf (Italian)
[ci skip]
2022-02-19 14:57:47 -08:00
Paperless Translation Bot
387db5ffb6 New translations messages.xlf (German)
[ci skip]
2022-02-19 14:57:45 -08:00
Paperless Translation Bot
ee27e71e29 New translations messages.xlf (Portuguese)
[ci skip]
2022-02-19 14:57:44 -08:00
shamoon
189110ec09 Merge pull request #10 from shamoon/feature/any-all-filtering
Feature: any / all filtering with tags
2022-02-19 14:52:55 -08:00
Paperless Translation Bot
4fc44060ea New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]
2022-02-19 14:26:24 -08:00
Michael Shamoon
c945b90b64 Indicate disabled but active All button 2022-02-19 14:03:55 -08:00
Stéphane Brunner
7113a18f3b Hide the password field (#103) 2022-02-19 22:49:57 +01:00
Paperless Translation Bot
921000625e New translations messages.xlf (Danish)
[ci skip]
2022-02-19 13:17:03 -08:00
Paperless Translation Bot
b272d695e3 New translations messages.xlf (Spanish)
[ci skip]
2022-02-19 13:17:02 -08:00
Paperless Translation Bot
e93c85ba92 New translations messages.xlf (Czech)
[ci skip]
2022-02-19 13:16:59 -08:00
Paperless Translation Bot
6d58491d1c New translations messages.xlf (German)
[ci skip]
2022-02-19 13:16:58 -08:00
Paperless Translation Bot
413897639f New translations messages.xlf (Hebrew)
[ci skip]
2022-02-19 13:16:55 -08:00
Paperless Translation Bot
065d9bc1e3 New translations messages.xlf (Italian)
[ci skip]
2022-02-19 13:16:54 -08:00
Paperless Translation Bot
bb56254e88 New translations messages.xlf (Dutch)
[ci skip]
2022-02-19 13:16:52 -08:00
Paperless Translation Bot
8b01336d54 New translations messages.xlf (French)
[ci skip]
2022-02-19 13:16:51 -08:00
Paperless Translation Bot
4d5f1bd81a New translations messages.xlf (Polish)
[ci skip]
2022-02-19 13:16:50 -08:00
Paperless Translation Bot
78efd4961e New translations messages.xlf (Russian)
[ci skip]
2022-02-19 13:16:49 -08:00
Paperless Translation Bot
1ab157c2a9 New translations messages.xlf (Swedish)
[ci skip]
2022-02-19 13:16:47 -08:00
Paperless Translation Bot
10bde76494 New translations messages.xlf (Portuguese, Brazilian)
[ci skip]
2022-02-19 13:16:45 -08:00
Paperless Translation Bot
81499665d8 New translations messages.xlf (Luxembourgish)
[ci skip]
2022-02-19 13:16:43 -08:00
Paperless Translation Bot
8621546736 New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]
2022-02-19 13:16:42 -08:00
Paperless Translation Bot
abd27342b6 New translations messages.xlf (Portuguese)
[ci skip]
2022-02-19 13:16:41 -08:00
Paperless Translation Bot
f9a3a7f2c6 New translations messages.xlf (Romanian)
[ci skip]
2022-02-19 13:16:40 -08:00
Quinn Casey
165b476635 Merge pull request #106 from paperless-ngx/revert-79-ci-build-container-on-prs
Revert "CI: Build and tag container on PRs"
2022-02-19 13:09:17 -08:00
Quinn Casey
7448609ba7 Revert "CI: Build and tag container on PRs" 2022-02-19 12:44:53 -08:00
Yannic Schröder
7380e056cd Update frontend strings to Paperless-ngx (#105)
This also includes URLs to ressources.
2022-02-19 21:42:09 +01:00
Michael Shamoon
0b6c749b60 Hide double-click note on non-multiple dropdowns 2022-02-19 09:20:41 -08:00
Michael Shamoon
1ba1df2529 Change alt-click to second click 2022-02-18 19:35:02 -08:00
Johann Bauer
c7541cb516 Enable dependabot for repository (#86) 2022-02-18 16:06:56 +01:00
shamoon
8ef913b117 Merge pull request #13 from shamoon/feature/unsaved-changes
Warnings for unsaved changes, 'intelligent' buttons when editing
2022-02-18 06:58:09 -08:00
Quinn Casey
e1c29d09e7 Merge pull request #79 from paperless-ngx/ci-build-container-on-prs
CI: Build and tag container on PRs
2022-02-18 06:25:11 -08:00
Filip Kraus
1b7f1614b5 Update name in docs (#80)
* Update name in docs

Will document on #52 what's left do do.

* Update usage_overview.rst
2022-02-18 09:42:55 +01:00
shamoon
dcb8c17c75 Merge pull request #83 from mweimerskirch/additional-language-cs-cz
Enabled the Czech (cs-cz) translations
2022-02-18 00:41:22 -08:00
Michel Weimerskirch
f42811285d Enabled the Czech (cs-cz) translations 2022-02-18 09:39:06 +01:00
shamoon
f9aa40fb57 Merge pull request #84 from mweimerskirch/additional-language-da-dk
Enabled the Danish (da-dk) translations
2022-02-18 00:22:22 -08:00
shamoon
d3900536a1 Merge pull request #82 from mweimerskirch/contributing-translations
Detailed description on how to add new languages
2022-02-18 00:19:46 -08:00
Michel Weimerskirch
01c139ef2d Enabled the Danish (da-dk) translations 2022-02-18 09:18:04 +01:00
mweimerskirch
6442f1c572 Translation section in README: Added link to CONTRIBUTING.md
Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
2022-02-18 09:15:25 +01:00
Michel Weimerskirch
8b5a35cc70 Minor formatting and orthography changes to the Translation section in the README.md 2022-02-18 08:48:38 +01:00
Michel Weimerskirch
8d443f212a Added a paragraph on how to add a new language to CONTRIBUTING.md 2022-02-18 08:46:43 +01:00
shamoon
6ab2e881a3 Merge pull request #78 from mweimerskirch/fix/sort-languages
Sort languages
2022-02-17 23:15:31 -08:00
Michael Shamoon
c9baa76afd clear 'dirty' documents when closing all 2022-02-17 23:05:14 -08:00
Michael Shamoon
66b9a99e71 Correct runtime issue(s) with saveEditNext 2022-02-17 23:04:38 -08:00
Michel Weimerskirch
27a835a69c Sort languages by localized name at runtime 2022-02-18 08:02:03 +01:00
Michel Weimerskirch
1830cd856a Sort language lists by locale 2022-02-18 08:02:00 +01:00
Florian
c656610c93 tests: fix management_consumer test (#66)
this test failed due to a strict polling delay,
which caused the test to be interrupted by an async call,
which stated "Incomplete File READ FAILED"

see also https://github.com/NixOS/nixpkgs/pull/158118

Signed-off-by: florian on nixos (Florian Brandes) <florian.brandes@posteo.de>
2022-02-17 23:30:16 +01:00
Quinn Casey
e32f63d76e Build and tag container on PRs 2022-02-17 12:24:46 -08:00
shamoon
7eca68dfc0 Merge pull request #75 from paperless-ngx/l10n_dev
New Crowdin updates
2022-02-17 08:33:00 -08:00
Quinn Casey
75e3506046 Merge pull request #53 from paperless-ngx/contributing-prs
Merging Non-Trivial PRs
2022-02-17 08:05:56 -08:00
Quinn Casey
c839a5dd55 Merge pull request #77 from kpj/dev
Update `install-paperless-ngx.sh`
2022-02-17 07:59:08 -08:00
Paperless Translation Bot
7349ab063d New translations messages.xlf (Danish)
[ci skip]
2022-02-17 06:58:54 -08:00
Paperless Translation Bot
165f1d3341 New translations django.po (Danish)
[ci skip]
2022-02-17 06:58:53 -08:00
kpj
2a91a09835 Merge branch 'kpj-fix-install_script' into dev 2022-02-17 15:53:47 +01:00
kpj
8f20003687 Merge branch 'fix-install_script' of https://github.com/kpj/paperless-ngx into kpj-fix-install_script 2022-02-17 15:53:22 +01:00
Paperless Translation Bot
94e07fee96 New translations messages.xlf (Danish)
[ci skip]
2022-02-17 05:26:36 -08:00
Paperless Translation Bot
c6618b2cc0 New translations django.po (Danish)
[ci skip]
2022-02-17 05:26:34 -08:00
Paperless Translation Bot
7af291622f New translations messages.xlf (Danish)
[ci skip]
2022-02-17 04:31:26 -08:00
Paperless Translation Bot
e7603eff5f New translations django.po (Danish)
[ci skip]
2022-02-17 04:31:25 -08:00
Paperless Translation Bot
866f365e0b New translations messages.xlf (Danish)
[ci skip]
2022-02-17 03:32:07 -08:00
Paperless Translation Bot
eac40ccd26 New translations django.po (Danish)
[ci skip]
2022-02-17 03:32:06 -08:00
Paperless Translation Bot
1e6d9dda40 New translations messages.xlf (Dutch)
[ci skip]
2022-02-17 03:32:05 -08:00
Paperless Translation Bot
7ecf42d70f New translations django.po (Danish)
[ci skip]
2022-02-17 02:35:54 -08:00
Paperless Translation Bot
d92e48bc33 New translations django.po (Danish)
[ci skip]
2022-02-17 01:38:36 -08:00
Kim
51be0f07a5 Use command substitution instead of piping in easy-install docs 2022-02-17 09:18:01 +01:00
Paperless Translation Bot
6751ed33af New translations messages.xlf (Danish)
[ci skip]
2022-02-16 23:59:04 -08:00
Paperless Translation Bot
5313909cd8 New translations django.po (Danish)
[ci skip]
2022-02-16 23:59:03 -08:00
Paperless Translation Bot
a6e65583f2 New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]
2022-02-16 23:59:02 -08:00
Paperless Translation Bot
e17a33e110 New translations messages.xlf (Slovenian)
[ci skip]
2022-02-16 23:59:00 -08:00
Paperless Translation Bot
2a99765020 New translations messages.xlf (Hebrew)
[ci skip]
2022-02-16 23:58:59 -08:00
Paperless Translation Bot
98f2ba949c New translations messages.xlf (Greek)
[ci skip]
2022-02-16 23:58:58 -08:00
Paperless Translation Bot
66318b7e39 New translations messages.xlf (Czech)
[ci skip]
2022-02-16 23:58:56 -08:00
Paperless Translation Bot
eb91b02ebf New translations django.po (Arabic, Saudi Arabia)
[ci skip]
2022-02-16 23:58:55 -08:00
Paperless Translation Bot
c643c0fe36 New translations django.po (Slovenian)
[ci skip]
2022-02-16 23:58:53 -08:00
Paperless Translation Bot
285579822a New translations django.po (Hebrew)
[ci skip]
2022-02-16 23:58:52 -08:00
Paperless Translation Bot
adacb2ab92 New translations django.po (Greek)
[ci skip]
2022-02-16 23:58:51 -08:00
Paperless Translation Bot
e338274669 New translations django.po (Czech)
[ci skip]
2022-02-16 23:58:50 -08:00
shamoon
7ce65cbbaa Merge pull request #74 from paperless-ngx/l10n_dev
New Crowdin updates
2022-02-16 23:00:13 -08:00
shamoon
7e0345cda6 Merge branch 'dev' into l10n_dev 2022-02-16 22:59:27 -08:00
Paperless Translation Bot
c27a7ac60a New translations django.po (Arabic, Saudi Arabia)
[ci skip]
2022-02-16 22:54:13 -08:00
Paperless Translation Bot
0e7f03c595 New translations django.po (Slovenian)
[ci skip]
2022-02-16 22:54:09 -08:00
Paperless Translation Bot
6bc44fd93f New translations django.po (Greek)
[ci skip]
2022-02-16 22:54:05 -08:00
Paperless Translation Bot
074decc320 New translations django.po (Czech)
[ci skip]
2022-02-16 22:54:04 -08:00
Paperless Translation Bot
ccc99a45f9 New translations django.po (French)
[ci skip]
2022-02-16 22:54:02 -08:00
Paperless Translation Bot
dab8b6ac87 New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]
2022-02-16 22:53:59 -08:00
Paperless Translation Bot
a134ca098a New translations messages.xlf (Luxembourgish)
[ci skip]
2022-02-16 22:53:57 -08:00
Paperless Translation Bot
8d2a809df2 New translations messages.xlf (French)
[ci skip]
2022-02-16 22:53:53 -08:00
Paperless Translation Bot
0b8db1fec9 New translations messages.xlf (Slovenian)
[ci skip]
2022-02-16 22:53:52 -08:00
Paperless Translation Bot
791e6cf54f New translations messages.xlf (Hebrew)
[ci skip]
2022-02-16 22:53:48 -08:00
Paperless Translation Bot
14a117acfa New translations messages.xlf (Greek)
[ci skip]
2022-02-16 22:53:47 -08:00
Paperless Translation Bot
6eef72d524 New translations messages.xlf (Czech)
[ci skip]
2022-02-16 22:53:46 -08:00
shamoon
05543e5341 Merge pull request #73 from paperless-ngx/l10n_dev
New Crowdin updates
2022-02-16 22:50:23 -08:00
Paperless Translation Bot
4b64b80d86 New translations messages.xlf (Korean)
[ci skip]
2022-02-16 22:45:34 -08:00
Paperless Translation Bot
c20c1f96ca New translations django.po (Luxembourgish)
[ci skip]
2022-02-16 22:45:12 -08:00
Paperless Translation Bot
7194915bf3 New translations django.po (Korean)
[ci skip]
2022-02-16 22:44:55 -08:00
shamoon
8156580e4f Merge pull request #72 from paperless-ngx/revert-71-l10n_dev
Revert "New Crowdin updates"
2022-02-16 22:40:29 -08:00
shamoon
b63a01f527 Revert "New Crowdin updates" 2022-02-16 22:35:17 -08:00
Michael Shamoon
10b16dbcdf Merge pull request #70 from paperless-ngx/shamoon-patch-1
Add new Crowdin info to readme
2022-02-16 21:22:49 -08:00
Michael Shamoon
4d24f92914 Merge pull request #71 from paperless-ngx/l10n_dev
New Crowdin updates
2022-02-16 20:51:59 -08:00
Michael Shamoon
8db6d9cd34 Add notes about translation directly to readme 2022-02-16 20:49:52 -08:00
paperless-l10n
821398437f New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]
2022-02-16 20:33:43 -08:00
paperless-l10n
1a2213b1fb New translations messages.xlf (Slovenian)
[ci skip]
2022-02-16 20:33:40 -08:00
paperless-l10n
e49b4c137e New translations messages.xlf (Hebrew)
[ci skip]
2022-02-16 20:33:39 -08:00
paperless-l10n
cabb5cafca New translations messages.xlf (Greek)
[ci skip]
2022-02-16 20:33:38 -08:00
paperless-l10n
016f7d90dc New translations messages.xlf (Czech)
[ci skip]
2022-02-16 20:33:37 -08:00
paperless-l10n
934d5f7164 New translations django.po (Arabic, Egypt)
[ci skip]
2022-02-16 20:33:36 -08:00
paperless-l10n
a2c0d6d920 New translations django.po (Arabic, Yemen)
[ci skip]
2022-02-16 20:33:35 -08:00
paperless-l10n
7e1161db62 New translations django.po (Arabic, Saudi Arabia)
[ci skip]
2022-02-16 20:33:33 -08:00
paperless-l10n
4cfdb54a0e New translations django.po (Khmer)
[ci skip]
2022-02-16 20:33:32 -08:00
paperless-l10n
b35544a44d New translations django.po (Slovenian)
[ci skip]
2022-02-16 20:33:31 -08:00
paperless-l10n
46a4ec7dd0 New translations django.po (Hebrew)
[ci skip]
2022-02-16 20:33:30 -08:00
paperless-l10n
35202662f3 New translations django.po (Greek)
[ci skip]
2022-02-16 20:33:29 -08:00
paperless-l10n
d1267dc398 New translations django.po (Czech)
[ci skip]
2022-02-16 20:33:28 -08:00
paperless-l10n
37b1b9ae39 New translations django.po (Arabic, Bahrain)
[ci skip]
2022-02-16 20:33:25 -08:00
Michael Shamoon
31f9938d1b Update localized badge 2022-02-16 20:32:33 -08:00
Michael Shamoon
f8b5ec0f7d Merge pull request #69 from paperless-ngx/l10n_dev
New Crowdin updates
2022-02-16 20:29:41 -08:00
Michael Shamoon
1dc474d33d Add new Crowdin link to readme
Part of #64
2022-02-16 20:26:27 -08:00
paperless-l10n
1dfe86a069 New translations messages.xlf (Chinese Traditional)
[ci skip]
2022-02-16 20:19:11 -08:00
paperless-l10n
63778935b0 New translations django.po (Chinese Traditional)
[ci skip]
2022-02-16 20:18:59 -08:00
paperless-l10n
39f7f5e512 New translations django.po (Chinese Simplified)
[ci skip]
2022-02-16 20:18:57 -08:00
paperless-l10n
e320c32182 New translations messages.xlf (Chinese Simplified)
[ci skip]
2022-02-16 20:18:55 -08:00
paperless-l10n
cd8c524b19 New translations messages.xlf (Luxembourgish)
[ci skip]
2022-02-16 20:17:19 -08:00
paperless-l10n
f7554e7f33 New translations django.po (Spanish)
[ci skip]
2022-02-16 20:17:18 -08:00
paperless-l10n
6ae39361a5 New translations django.po (German)
[ci skip]
2022-02-16 20:17:17 -08:00
paperless-l10n
dfe88864ad New translations django.po (Italian)
[ci skip]
2022-02-16 20:17:16 -08:00
paperless-l10n
8c14d05494 New translations django.po (Dutch)
[ci skip]
2022-02-16 20:17:15 -08:00
paperless-l10n
bc77cbf956 New translations django.po (Polish)
[ci skip]
2022-02-16 20:17:14 -08:00
paperless-l10n
0bb9f47590 New translations django.po (Portuguese)
[ci skip]
2022-02-16 20:17:13 -08:00
paperless-l10n
effa3cd3a5 New translations django.po (Russian)
[ci skip]
2022-02-16 20:17:12 -08:00
paperless-l10n
fd811d68ff New translations django.po (Swedish)
[ci skip]
2022-02-16 20:17:11 -08:00
paperless-l10n
fda64e81a5 New translations django.po (English)
[ci skip]
2022-02-16 20:17:10 -08:00
paperless-l10n
3c598dfca9 New translations django.po (Portuguese, Brazilian)
[ci skip]
2022-02-16 20:17:09 -08:00
paperless-l10n
0c1e1b6b68 New translations django.po (English, United Kingdom)
[ci skip]
2022-02-16 20:17:08 -08:00
paperless-l10n
7f2f4c666e New translations django.po (Luxembourgish)
[ci skip]
2022-02-16 20:17:07 -08:00
paperless-l10n
94e6e36f26 New translations django.po (French)
[ci skip]
2022-02-16 20:17:06 -08:00
paperless-l10n
45a534e176 New translations messages.xlf (Romanian)
[ci skip]
2022-02-16 20:17:05 -08:00
paperless-l10n
3303ee1afc New translations messages.xlf (Spanish)
[ci skip]
2022-02-16 20:17:02 -08:00
paperless-l10n
337330a508 New translations messages.xlf (German)
[ci skip]
2022-02-16 20:17:01 -08:00
paperless-l10n
8b6001c328 New translations messages.xlf (Italian)
[ci skip]
2022-02-16 20:17:00 -08:00
paperless-l10n
9ebf3c270c New translations messages.xlf (Dutch)
[ci skip]
2022-02-16 20:16:58 -08:00
paperless-l10n
fbde0ce88f New translations messages.xlf (Polish)
[ci skip]
2022-02-16 20:16:57 -08:00
paperless-l10n
5009989a59 New translations messages.xlf (Portuguese)
[ci skip]
2022-02-16 20:16:56 -08:00
paperless-l10n
436368ad22 New translations messages.xlf (Russian)
[ci skip]
2022-02-16 20:16:55 -08:00
paperless-l10n
cc7bbeca97 New translations messages.xlf (Swedish)
[ci skip]
2022-02-16 20:16:54 -08:00
paperless-l10n
d608d6a441 New translations messages.xlf (English)
[ci skip]
2022-02-16 20:16:53 -08:00
paperless-l10n
cd80f7ddbe New translations messages.xlf (Portuguese, Brazilian)
[ci skip]
2022-02-16 20:16:51 -08:00
paperless-l10n
5bff97ec96 New translations messages.xlf (English, United Kingdom)
[ci skip]
2022-02-16 20:16:50 -08:00
paperless-l10n
23c1ea1b79 New translations messages.xlf (French)
[ci skip]
2022-02-16 20:16:49 -08:00
paperless-l10n
097d1a55fe New translations django.po (Romanian)
[ci skip]
2022-02-16 20:16:48 -08:00
Quinn Casey
13426d3c3f Merge pull request #62 from paperless-ngx/feature-docker-build-fix
CI: Use Github Container Registry for docker build step
2022-02-16 16:19:58 -08:00
kpj
e4859412bc Update installation url in setup docs to new repo 2022-02-17 00:46:03 +01:00
kpj
95309ad4ae Use paperless-ngx in install script 2022-02-17 00:42:47 +01:00
kpj
41bdf1bcc9 Rename script to paperless-ngx 2022-02-17 00:40:52 +01:00
Florian
04a4cd7d76 Merge pull request #63 from paperless-ngx/ansible-ci-fixes
CI: Ansible Test fix
2022-02-17 00:25:13 +01:00
Quinn Casey
582f7a9301 Merge pull request #51 from jonaswinkler/l10n_dev
New Crowdin updates
2022-02-16 14:37:48 -08:00
Michael Shamoon
9bc48fed73 Check for live changes on document detail title 2022-02-16 14:34:19 -08:00
Quinn Casey
3e7e7023fc update source repo 2022-02-16 14:01:16 -08:00
Michael Shamoon
8c853e56e4 Reset networkActive & error after switchmap pipes complete 2022-02-16 13:43:25 -08:00
Michael Shamoon
1941be8f53 fix conflict with mobile preview pane 2022-02-16 12:00:19 -08:00
Michael Shamoon
06253ed8f2 titleInput may be undefined if in a different tab 2022-02-16 11:36:22 -08:00
Quinn Casey
ec5416abfd Merge pull request #57 from Nicarim/fix-unicode-filename-issue-when-downloading-files
Provide UTF-8 encoded content-disposition field to address the issues in the firefox when downloading files
2022-02-16 11:11:26 -08:00
Marcin Gordziejewski
940d056657 Provide utf-8 encoded content-disposition field to address the issues in the firefox when downloading files
Fixes #56
2022-02-16 19:50:13 +01:00
Quinn Casey
a10d331296 Merge pull request #61 from paperless-ngx/revert-46-patch-1
Revert "Update setup.rst"
2022-02-16 09:09:39 -08:00
Quinn Casey
c2035b4324 Revert "Update setup.rst" 2022-02-16 09:07:54 -08:00
Quinn Casey
879a239bcd Merge branch 'RidaAyed-doc-docker-post-consumption' into dev 2022-02-16 09:04:30 -08:00
Quinn Casey
4d1e33af9e Merge pull request #36 from dblitt/patch-1
Update login.html to not autocapitalize username
2022-02-16 08:57:05 -08:00
Quinn Casey
64c7699a19 Merge pull request #44 from muued/pre_consume_script
Increase visibility of PAPERLESS_PRE_CONSUME_SCRIPT
2022-02-16 08:55:32 -08:00
Quinn Casey
0219aa97fe Merge pull request #28 from m0veax/patch-1
Added hint to use Management Utilities
2022-02-16 08:50:10 -08:00
Quinn Casey
657ed211c0 Merge pull request #46 from a-waider/patch-1
Update setup.rst
2022-02-16 08:36:32 -08:00
Quinn Casey
305666378b Fix image name 2022-02-16 08:24:12 -08:00
Quinn Casey
50102af229 Use github container registry 2022-02-16 07:15:22 -08:00
Quinn Casey
ff4fa4f164 Merge pull request #42 from s4nf4n/feature_fix_ansible_ci
add ansible role_name to fix ci
2022-02-16 06:35:27 -08:00
Michael Shamoon
3e35d9cd8c Rewrite nested subscriptions 2022-02-16 02:27:17 -08:00
Michael Shamoon
e1a36972b1 cleanup subscriptions 2022-02-16 01:06:22 -08:00
Michael Shamoon
250575acb9 Fix spelling error 2022-02-16 00:29:04 -08:00
Michael Shamoon
d9cd312d07 Cleanup subscriptions 2022-02-15 23:43:54 -08:00
Michael Shamoon
d733de9d9f Code cleanup 2022-02-15 23:43:02 -08:00
Quinn Casey
088cc9cd71 Merge pull request #58 from Nicarim/add-docs-note-on-python-version-for-development
Add docs note on python version for development
2022-02-15 15:39:26 -08:00
Marcin Gordziejewski
895781c5a3 Add a note in extending.rst on python version requirements and pyenv suggestion 2022-02-16 00:13:23 +01:00
Marcin Gordziejewski
f493bd539d Add .editorconfig entry for .rst files to enforce space indentation 2022-02-16 00:13:23 +01:00
Quinn Casey
de9fbd48df Typos and clarifications 2022-02-15 14:08:02 -08:00
Ingo Sigmund
1e58b0c43e Merge pull request #31 from denilsonsa/patch-4
Clarifying documentation on filename placeholders
2022-02-15 20:57:57 +01:00
Michael Shamoon
68cfde5b65 missed from merge 2022-02-15 11:41:56 -08:00
Michael Shamoon
99157b76b2 Update dirty check forms package 2022-02-15 11:39:03 -08:00
Johann Bauer
5f58a329d3 Make Worker Timeout Configurable (#37)
* Make Worker Timeout Configurable

- defaults to 1800 seconds
- can be configured through environment for systems with weaker CPUs
- description added to documentation

Co-authored-by: evilsidekick <>
2022-02-15 20:28:08 +01:00
Michael Shamoon
67b9977d57 Merge branch 'dev' into feature/unsaved-changes 2022-02-15 11:20:05 -08:00
Ingo Sigmund
b469937d4d Merge pull request #33 from sAksham-Ar/master 2022-02-15 20:14:03 +01:00
Quinn Casey
30b540045e Update header link 2022-02-15 11:03:10 -08:00
Quinn Casey
87af195862 Remove trailing whitespace 2022-02-15 11:01:15 -08:00
Quinn Casey
0ff001b4de Wow that's a rigid test, love it 2022-02-15 10:59:56 -08:00
Quinn Casey
d6280b7939 add PRs and Non-Trivial process 2022-02-15 10:50:03 -08:00
Quinn Casey
07f10d3907 minor typos and clarifications 2022-02-15 10:10:09 -08:00
Quinn Casey
9fb18802fc roadmap does not exist 2022-02-15 09:59:32 -08:00
Quinn Casey
0936a2c474 fix typo 2022-02-15 09:58:37 -08:00
Quinn Casey
edd21d1233 Merge pull request #40 from davemachado/master
Update documentation for grammar and additional clarity
2022-02-15 09:38:57 -08:00
Quinn Casey
86e4ec03dd Merge branch 'philpagel-scannertable' into dev 2022-02-15 09:35:29 -08:00
Quinn Casey
994d502c41 Merge branch 'scannertable' of https://github.com/philpagel/paperless-ng into philpagel-scannertable 2022-02-15 09:35:06 -08:00
Quinn Casey
3d3de5d0fe Merge branch 'fignew-patch-1' into dev 2022-02-15 09:24:22 -08:00
Quinn Casey
f303a1c423 Merge branch 'patch-1' of https://github.com/fignew/paperless-ng into fignew-patch-1 2022-02-15 09:21:04 -08:00
Johann Bauer
1fa814e6e5 Tell users about multiple OCR languages in the install script (#30)
This valuable piece of information was only mentioned in the docs: https://paperless-ng.readthedocs.io/en/latest/configuration.html#ocr-settings

It would be good to have it in the install script, because that's where/when the user is explicitly asked to choose a language.

Co-authored-by: Denilson Sá Maia <denilsonsa@gmail.com>
2022-02-15 17:13:43 +01:00
Michael Shamoon
0aed34cb71 Merge pull request #49 from jonaswinkler/dependabot/npm_and_yarn/src-ui/karma-6.3.14 2022-02-15 07:59:28 -08:00
Michael Shamoon
abddbb11c1 Merge pull request #50 from jonaswinkler/dependabot/npm_and_yarn/src-ui/follow-redirects-1.14.8 2022-02-15 07:58:57 -08:00
Felix E
a25ba99bfb Merge pull request #32 from amenk/patch-1
Fix: Search box overlays menu on mobile (jonaswinkler#1382)
2022-02-15 16:19:39 +01:00
Simon Siebert
512615631a Merge pull request #45 from 2600box/patch-1
Typo corrected
2022-02-15 15:16:35 +01:00
Simon Siebert
98086fd04b Merge pull request #29 from denilsonsa/patch-2
Fixing broken link to docker CLI basics
2022-02-15 15:12:03 +01:00
Simon Siebert
fe2aa2bbf3 Update README.md (#11)
Co-authored-by: Simon Siebert <simon.siebert@outlook.com>
2022-02-15 14:43:42 +01:00
Michael Shamoon
da361e9d64 Update filter-rule-type.ts 2022-02-14 22:23:39 -08:00
Michael Shamoon
f75d4ccc89 Merge branch 'dev' into feature/any-all-filtering 2022-02-14 22:23:31 -08:00
Michael Shamoon
c2621f4633 Merge pull request #9 from shamoon/fix/issue-1228
Add white background to plaintext documents
2022-02-14 22:14:36 -08:00
Michael Shamoon
e6602f1153 Merge pull request #2 from shamoon/pdf-viewer-mobile-improvements
Pdf viewer mobile improvements
2022-02-14 22:07:41 -08:00
Michael Shamoon
069e78881d Merge branch 'dev' into pdf-viewer-mobile-improvements 2022-02-14 22:00:39 -08:00
dependabot[bot]
e4e7ee8433 Bump follow-redirects from 1.13.0 to 1.14.8 in /src-ui
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.13.0 to 1.14.8.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.13.0...v1.14.8)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-15 00:50:56 +00:00
Michael Shamoon
ddb25ce281 Merge pull request #7 from isigmund/dev
Corrected layout of supported scanner table
2022-02-14 14:50:53 -08:00
Ingo Sigmund
b4863173bd Corrected layout of supported scanner table 2022-02-14 23:39:54 +01:00
Michael Shamoon
140dbe1686 Merge branch 'muued-patch-1' into dev 2022-02-14 14:19:28 -08:00
Michael Shamoon
f2f7b71367 Merge branch 'patch-1' of https://github.com/muued/paperless-ng into muued-patch-1 2022-02-14 14:17:52 -08:00
dependabot[bot]
10a57687a3 Bump karma from 6.3.3 to 6.3.14 in /src-ui
Bumps [karma](https://github.com/karma-runner/karma) from 6.3.3 to 6.3.14.
- [Release notes](https://github.com/karma-runner/karma/releases)
- [Changelog](https://github.com/karma-runner/karma/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma/compare/v6.3.3...v6.3.14)

---
updated-dependencies:
- dependency-name: karma
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-11 13:28:26 +00:00
Andreas
f84be89e49 Update setup.rst
In my installation environment the setup didn't work. I think running `docker exec` instead of `docker-compose run` is more error free. Or is there any specific reason why `docker-compose run` is used?
2022-01-31 10:09:57 +01:00
Jonas Winkler
fb6369f43c New translations django.po (Portuguese, Brazilian)
[ci skip]
2022-01-30 10:10:09 +01:00
Jonas Winkler
4b7c8c6157 New translations messages.xlf (Portuguese, Brazilian)
[ci skip]
2022-01-30 09:06:57 +01:00
Jonas Winkler
81e8317326 New translations django.po (Portuguese, Brazilian)
[ci skip]
2022-01-30 09:06:55 +01:00
2600box
3d6ca2cda3 Update usage_overview.rst
Corrected typo
2022-01-27 19:11:24 +01:00
Jonas Winkler
0740473ecc New translations django.po (German)
[ci skip]
2022-01-26 20:53:49 +01:00
Fabian Ohler
1bce697475 add visibility of PAPERLESS_PRE_CONSUME_SCRIPT 2022-01-26 10:48:05 +01:00
Jonas Winkler
baaae7f76c New translations django.po (English, United Kingdom)
[ci skip]
2022-01-23 18:06:40 +01:00
Jonas Winkler
bb19d4de9f New translations messages.xlf (Hebrew)
[ci skip]
2022-01-18 19:55:59 +01:00
Jonas Winkler
6880f72472 New translations messages.xlf (Slovenian)
[ci skip]
2022-01-16 18:11:53 +01:00
Jonas Winkler
89fda615f6 New translations django.po (Slovenian)
[ci skip]
2022-01-16 18:11:51 +01:00
s4nf4n
2c84d29050 add ansible role_name to fix ci 2022-01-16 17:49:05 +01:00
Michael Shamoon
85399cf99f Add white background to plaintext documents 2022-01-13 11:13:33 -08:00
Dave Machado
e655b40d3a Update documentation for grammar and additional clarity
Small tweaks to be consistent in oxford comma usage already at work in
the docs. More importantly, adding some clarification here and there
to try and make things even more dead simple to read :)
2022-01-07 21:51:08 -05:00
Phil
3e94f3c58c Remove duplicate line 2021-12-20 09:36:59 +01:00
Jonas Winkler
61a42f45ab New translations messages.xlf (Czech)
[ci skip]
2021-12-17 09:59:59 +01:00
Jonas Winkler
4e7863c27f New translations messages.xlf (Czech)
[ci skip]
2021-12-17 08:36:14 +01:00
Jonas Winkler
f9a5081438 New translations messages.xlf (Czech)
[ci skip]
2021-12-16 22:36:37 +01:00
Jonas Winkler
ea5d7ac6f0 New translations messages.xlf (Czech)
[ci skip]
2021-12-16 21:28:24 +01:00
Phil
b318c0ab04 Add two more scanner recommendations
* Brother ADS-2800W
* Brother MFC-8950DW
* Add column for SFTP
2021-12-16 15:56:12 +01:00
Jonas Winkler
3d0a7c73e9 New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]
2021-12-13 13:43:16 +01:00
Jonas Winkler
e98bf547e5 New translations django.po (Arabic, Saudi Arabia)
[ci skip]
2021-12-13 12:45:44 +01:00
Jonas Winkler
8cb2e588fb New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]
2021-12-13 12:45:42 +01:00
Jonas Winkler
e4f99de13d New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]
2021-12-13 11:31:04 +01:00
Daniel Blittschau
206d5be46c Update login.html to not autocapitalize username 2021-11-26 16:15:08 -06:00
Jonas Winkler
e0f80c4364 New translations messages.xlf (Arabic, Egypt)
[ci skip]
2021-11-23 19:07:26 +01:00
Jonas Winkler
86891323ea New translations django.po (Arabic, Egypt)
[ci skip]
2021-11-23 19:07:25 +01:00
Jonas Winkler
69e315ee8a New translations messages.xlf (Arabic, Yemen)
[ci skip]
2021-11-23 19:07:24 +01:00
Jonas Winkler
ced3aefc54 New translations django.po (Arabic, Yemen)
[ci skip]
2021-11-23 19:07:23 +01:00
Jonas Winkler
6abf26bd99 New translations messages.xlf (Arabic, Saudi Arabia)
[ci skip]
2021-11-23 19:07:22 +01:00
Jonas Winkler
4667a7a6a2 New translations django.po (Arabic, Saudi Arabia)
[ci skip]
2021-11-23 19:07:21 +01:00
Jonas Winkler
6eb5f3a518 New translations messages.xlf (Arabic, Bahrain)
[ci skip]
2021-11-23 19:07:20 +01:00
Jonas Winkler
6f87b7830d New translations django.po (Arabic, Bahrain)
[ci skip]
2021-11-23 19:07:19 +01:00
Jonas Winkler
ccf974b1b7 New translations messages.xlf (Slovenian)
[ci skip]
2021-11-23 19:07:18 +01:00
Jonas Winkler
d9016ed619 New translations django.po (Slovenian)
[ci skip]
2021-11-23 19:07:16 +01:00
Jonas Winkler
bd2eade33d New translations messages.xlf (Khmer)
[ci skip]
2021-11-01 19:47:02 +01:00
Jonas Winkler
11e8ea471d New translations django.po (Khmer)
[ci skip]
2021-11-01 19:47:01 +01:00
Jonas Winkler
992bef1553 New translations messages.xlf (Greek)
[ci skip]
2021-10-31 23:52:21 +01:00
Jonas Winkler
396235be3e New translations django.po (Greek)
[ci skip]
2021-10-31 23:52:19 +01:00
Jonas Winkler
9662463510 New translations messages.xlf (Greek)
[ci skip]
2021-10-31 22:48:03 +01:00
Jonas Winkler
64e1590d9e New translations django.po (Greek)
[ci skip]
2021-10-31 22:48:02 +01:00
Saksham Arya
c751690e79 fixed setup command 2021-11-01 00:08:36 +05:30
Alexander Menk
f76915117b #1382 Fix: Search box overlays menu on mobile
Fix Z-index problem
2021-10-31 12:34:22 +01:00
Jonas Winkler
ba915844a4 New translations messages.xlf (Greek)
[ci skip]
2021-10-30 21:49:45 +02:00
Jonas Winkler
59d96d170e New translations django.po (Greek)
[ci skip]
2021-10-30 21:49:44 +02:00
Denilson Sá Maia
a9a27eda51 Clarifying documentation on filename placeholders
The documentation text now better describes what the code does. It is now clear that the time is not included, and that all date placeholders are either zero-padded or ISO-formatted.

05c36f91cf/src/documents/file_handling.py (L164-L171)
2021-10-15 15:14:06 +02:00
Jonas Winkler
249de7ec6d New translations messages.xlf (Czech)
[ci skip]
2021-10-13 21:07:55 +02:00
Jonas Winkler
8aabf4805a New translations django.po (Czech)
[ci skip]
2021-10-13 21:07:54 +02:00
Jonas Winkler
2ab06d7294 New translations messages.xlf (Czech)
[ci skip]
2021-10-13 20:07:40 +02:00
Jonas Winkler
e71f38deea New translations django.po (Czech)
[ci skip]
2021-10-13 20:07:39 +02:00
Denilson Sá Maia
0d70925abe Fixing broken link to docker CLI basics
The old post is still archived: https://web.archive.org/web/20210218064256/https://sehn.tech/post/devops-with-docker/

The content seems to have moved to a new URL: https://www.sehn.tech/refs/devops-with-docker/
2021-10-11 01:34:18 +02:00
Patrick Kilter
89bb73aa25 typo fixed 2021-10-07 21:59:35 +02:00
Patrick Kilter
1c93f26034 Added hint to use Management Utilities
Enable User to find the Management Utiltities Docs
2021-10-07 21:49:12 +02:00
Jonas Winkler
86e44da695 New translations django.po (Chinese Simplified)
[ci skip]
2021-09-26 14:38:30 +02:00
Jonas Winkler
530ad72e18 New translations messages.xlf (Portuguese)
[ci skip]
2021-09-21 13:59:29 +02:00
Jonas Winkler
ae185a1848 New translations messages.xlf (Portuguese)
[ci skip]
2021-09-21 13:00:15 +02:00
Jonas Winkler
e3682b69f7 New translations messages.xlf (Portuguese)
[ci skip]
2021-09-21 12:03:15 +02:00
Jonas Winkler
fe72fc173d New translations messages.xlf (Chinese Traditional)
[ci skip]
2021-09-21 06:54:50 +02:00
Jonas Winkler
3b4663639d New translations django.po (Chinese Traditional)
[ci skip]
2021-09-21 06:54:49 +02:00
Jonas Winkler
51b20a6e17 New translations messages.xlf (Chinese Simplified)
[ci skip]
2021-09-21 06:54:48 +02:00
Jonas Winkler
ad9122cd4f New translations messages.xlf (Chinese Simplified)
[ci skip]
2021-09-20 20:37:38 +02:00
Jonas Winkler
7d8bf75e44 New translations django.po (Chinese Simplified)
[ci skip]
2021-09-20 20:35:39 +02:00
Jonas Winkler
e36e4f61b3 New translations django.po (Chinese Simplified)
[ci skip]
2021-09-20 19:38:04 +02:00
Jonas Winkler
5612ad08dd New Crowdin updates (#1305) 2021-09-14 21:34:53 +02:00
Jonas Winkler
7bc8325df9 Merge pull request #1311 from mattlamb99/patch-1
Incorrect path to docker-compose files
2021-09-14 21:34:36 +02:00
Matt Lamb
2aca64bfcd Incorrect path to docker-compose files 2021-09-13 16:33:46 +12:00
Jonas Winkler
e9956234a3 Merge pull request #1297 from shamoon/feature/issue-1260
Add loading indicator when document list reloading
2021-09-10 20:37:37 +02:00
Jonas Winkler
d656de8883 Merge pull request #1258 from tribut/logout-url
Add PAPERLESS_LOGOUT_REDIRECT_URL
2021-09-10 20:36:21 +02:00
Jonas Winkler
32f0ebaac3 Merge pull request #1270 from ajkavanagh/fix-ansible-role-gotenberg-endpoint
Fix PAPERLESS_TIKA_GOTENBERG_ENDPOINT in a/t/main.yml
2021-09-10 20:35:35 +02:00
Jonas Winkler
73700437e4 New Crowdin updates (#1276) 2021-09-10 20:34:33 +02:00
Michael Shamoon
14d96350c3 Add i18n 2021-09-10 11:28:49 -07:00
Jonas Winkler
4e9c4ebd02 Merge pull request #1274 from padraigkitterick/patch-1
Updated docker instructions re webserver port
2021-09-10 20:28:47 +02:00
Michael Shamoon
097fe424c2 Show loading with spinner on document list reloading 2021-09-08 21:12:44 -07:00
Pádraig Kitterick
12abb592be Updated docker instructions re webserver port
Clarified exactly what to change to modify the default webserver port (issue #1273)
2021-08-31 14:36:55 +01:00
Alex Kavanagh
4f0951402a Fix PAPERLESS_TIKA_GOTENBERG_ENDPOINT in a/t/main.yml
This fixes the ansible role for installing paperless-ng where the config
item PAPERLESS_TIKA_GOTENBERG_ENDPOINT derived from the wrong ansible
variable "paperlessng_tika_endpoint".  This patch corrects that to
"paperlessng_tika_gotenberg_endpoint".
2021-08-30 18:01:33 +01:00
Jonas Winkler
b555b3664f Merge pull request #1262 from Tooa/fix-issue-1250
fix(tika): adapt to Gotenberg 7 API
2021-08-28 13:57:23 +02:00
Uli Fahrer
2dcacaee14 fix(tika): adapt to Gotenberg 7 API
This commit adapts to the latest breaking changes from Gotenberg 7.
It also freezes the usage of the Gotenberg server to v7.x. Doing
this prevents further breaking changes leaking in our code base.

* refs #1250
2021-08-27 08:32:16 +02:00
Felix Eckhofer
bf2cdae3b1 Add PAPERLESS_LOGOUT_REDIRECT_URL
When set, the user is redirected to this URL after a logout. Especially
useful in conjunction with PAPERLESS_ENABLE_HTTP_REMOTE_USER and SSO.
2021-08-26 18:40:12 +02:00
Felix Eckhofer
64304c5121 Add PAPERLESS_TRASH_DIR
When set, original files are moved here instead of being permanently
removed when a document is deleted.
2021-08-24 12:50:13 +02:00
jonaswinkler
cd43bc1f66 changelog 2021-08-22 17:15:14 +02:00
jonaswinkler
1b24136590 version bump 2021-08-22 17:11:36 +02:00
jonaswinkler
e8d5b549de documentation 2021-08-22 17:10:10 +02:00
jonaswinkler
3866a77d68 Merge branch 'master' into dev 2021-08-22 17:03:58 +02:00
jonaswinkler
360fe68f92 fix whitespace 2021-08-22 17:03:45 +02:00
Jonas Winkler
c9229f9c80 Merge pull request #1066 from holzhannes/patch-3
Info for The input device is not a TTY Errors
2021-08-22 17:02:08 +02:00
Jonas Winkler
e5b92d895d Update docs/administration.rst
Co-authored-by: Stéphane Brunner <stephane.brunner@camptocamp.com>
2021-08-22 17:00:36 +02:00
jonaswinkler
a7643c1c29 Merge branch 'master' into dev 2021-08-22 16:27:59 +02:00
jonaswinkler
45fd4e8565 fix whitespace 2021-08-22 16:27:44 +02:00
jonaswinkler
211a9d720a changelog 2021-08-22 16:26:58 +02:00
Jonas Winkler
da9c2735b4 Merge pull request #1201 from pewter77/patch-1
update configuration docs for languages
2021-08-22 16:26:27 +02:00
jonaswinkler
d31baca442 downgrade numpy due to armv7 issues 2021-08-19 16:18:49 +02:00
jonaswinkler
499d6f79aa Merge remote-tracking branch 'origin/master' into dev 2021-08-19 00:06:47 +02:00
jonaswinkler
49e049f1c5 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-08-19 00:06:37 +02:00
jonaswinkler
7411d7c1e2 update dependencies 2021-08-19 00:06:23 +02:00
Jonas Winkler
3f5d3d15fd Merge pull request #1209 from Unkn0wnCat/patch-1
Add Doxie Q to scanners.rst
2021-08-18 23:53:14 +02:00
Jonas Winkler
68fb85ceca Merge pull request #1221 from AlD/master
Make ignores configurable
2021-08-18 22:41:27 +02:00
Daniel Albers
3ebe6d5aef Make ignores configurable
Adds config file setting PAPERLESS_CONSUMER_IGNORE_PATTERNS.
2021-08-18 22:23:18 +02:00
jonaswinkler
566b3ed53d Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-08-18 22:03:31 +02:00
Jonas Winkler
a688c747d7 New Crowdin updates (#1198) 2021-08-18 21:56:59 +02:00
jonaswinkler
83b90e1416 install required dependency for building paperless-ng on GitHub CI 2021-08-18 18:40:27 +02:00
jonaswinkler
23c6f849d6 fix bug with DPI calculation 2021-08-18 18:33:33 +02:00
jonaswinkler
ba6843df83 update python dependencies 2021-08-18 18:21:41 +02:00
jonaswinkler
0b90e69119 update dockerfile 2021-08-18 18:21:31 +02:00
jonaswinkler
dbe820323e switch to python 3.9 2021-08-18 17:47:53 +02:00
Florian Feldmann
7680bf7c0d Added a sentence about python-dotenv format
Something like this would have helped me to get the configuration right without debugging
2021-08-09 12:15:01 +02:00
Kevin Kandlbinder
47d95d5b0a Add Doxie Q to scanners.rst
The Doxie Q / Q2 is a budget-scanner I've been using for my paperless-usage. It has POST-Support to a custom endpoint like paperless over WiFi and has a rather open API (See https://help.getdoxie.com/doxieq/wifi/api/).
2021-08-04 15:23:12 +02:00
fignew
757507e634 Add Epson ES-580W recommendation and organize table 2021-07-31 14:32:36 -04:00
pewter77
971192f6f3 update configuration docs for languages
Due to tesseract naming scheme, packages use '-' but the internal OCR uses '_' . This is to clarify in the documentation that this is the case for new users.
2021-07-30 23:21:22 +08:00
Fabian Ohler
07d3f47978 recommend Brother MFC-L2750DW 2021-07-23 10:27:31 +02:00
Jonas Winkler
fbfc7df593 Merge pull request #1173 from mweimerskirch/feature/l10n-lb_LU
Added support for Luxembourgish (lb_LU) as an interface language
2021-07-18 21:42:58 +02:00
Jonas Winkler
3c7644ce79 Merge pull request #1153 from jonaswinkler/l10n_dev
New Crowdin updates
2021-07-18 17:36:14 +02:00
Jonas Winkler
4e4a8bcca8 New translations messages.xlf (Luxembourgish)
[ci skip]
2021-07-16 17:20:14 +02:00
Michel Weimerskirch
dc5586b16d Added support for Luxembourgish (lb_LU) as an interface language 2021-07-16 16:43:55 +02:00
Jonas Winkler
1d87b48471 New translations messages.xlf (Luxembourgish)
[ci skip]
2021-07-16 16:22:10 +02:00
Jonas Winkler
353a3432df New translations django.po (Luxembourgish)
[ci skip]
2021-07-16 16:22:08 +02:00
Jonas Winkler
efe94bbf18 New translations messages.xlf (Luxembourgish)
[ci skip]
2021-07-16 15:01:08 +02:00
Jonas Winkler
cea6ec09bc New translations django.po (Luxembourgish)
[ci skip]
2021-07-16 15:01:07 +02:00
Jonas Winkler
4a3276f69c New translations messages.xlf (Luxembourgish)
[ci skip]
2021-07-16 13:47:43 +02:00
Jonas Winkler
f164def2ed New translations django.po (Luxembourgish)
[ci skip]
2021-07-16 13:47:42 +02:00
Jonas Winkler
511c76ae7a New translations messages.xlf (Luxembourgish)
[ci skip]
2021-07-15 10:58:18 +02:00
Jonas Winkler
bfa6dda0de New translations django.po (Luxembourgish)
[ci skip]
2021-07-15 10:58:16 +02:00
Jonas Winkler
54af734971 New translations django.po (Luxembourgish)
[ci skip]
2021-07-15 09:42:47 +02:00
Jonas Winkler
5b9763ecb4 New translations messages.xlf (Luxembourgish)
[ci skip]
2021-07-14 18:00:31 +02:00
Jonas Winkler
438bad23e8 New translations django.po (Luxembourgish)
[ci skip]
2021-07-14 18:00:29 +02:00
Jonas Winkler
ae5a205ba3 New translations django.po (Luxembourgish)
[ci skip]
2021-07-14 10:42:55 +02:00
Jonas Winkler
19b683e7b0 New translations messages.xlf (Luxembourgish)
[ci skip]
2021-07-13 23:45:12 +02:00
Jonas Winkler
0c92027414 New translations django.po (Luxembourgish)
[ci skip]
2021-07-13 23:45:11 +02:00
Jonas Winkler
c4e3b2ca2f New translations messages.xlf (Luxembourgish)
[ci skip]
2021-07-13 22:18:15 +02:00
Jonas Winkler
ba67b89db7 New translations django.po (Luxembourgish)
[ci skip]
2021-07-13 22:18:14 +02:00
Jonas Winkler
06f308ede3 New translations messages.xlf (Spanish)
[ci skip]
2021-07-11 12:20:36 +02:00
Jonas Winkler
214fb8204b New translations messages.xlf (Spanish)
[ci skip]
2021-07-11 10:29:21 +02:00
Jonas Winkler
2a2d7be9f9 New translations django.po (Spanish)
[ci skip]
2021-07-11 10:29:20 +02:00
Jonas Winkler
23304c3746 New translations django.po (Spanish)
[ci skip]
2021-07-11 09:21:44 +02:00
Jonas Winkler
20829c90b2 New translations django.po (German)
[ci skip]
2021-07-05 13:17:50 +02:00
Jonas Winkler
33cc3ce7e0 Merge pull request #1127 from jonaswinkler/l10n_dev
New Crowdin updates
2021-07-04 12:47:07 +02:00
Jonas Winkler
3487b23e88 New translations django.po (English, United Kingdom)
[ci skip]
2021-06-19 23:20:13 +02:00
benjaminfrank
ec707bd02a formatting 2021-06-16 23:04:39 +02:00
benjaminfrank
3cc463b2c3 add section 2021-06-16 23:03:28 +02:00
benjaminfrank
99e5cf0cdc remove whitespaces 2021-06-16 23:02:49 +02:00
benjaminfrank
ab0ec0d5a5 documentation
I have no clue why it looks funny though
2021-06-16 22:56:51 +02:00
benjaminfrank
e0a2af3d98 Create paperless-webserver.socket 2021-06-16 22:42:54 +02:00
benjaminfrank
524bc2722f Update paperless-webserver.service 2021-06-16 22:40:26 +02:00
Jonas Winkler
4718fe13c2 Merge pull request #1116 from ytzelf/patch-1
Update scanners.rst
2021-06-14 18:18:57 +02:00
ytzelf
8592acf6b8 Update scanners.rst
Added ADS-1100w which has FTP (and only FTP) capabilities but is quite cheap
2021-06-14 18:11:06 +02:00
jonaswinkler
88042d7072 fix wording 2021-06-13 21:30:20 +02:00
jonaswinkler
bf92e52d5c update dependencies 2021-06-13 21:21:56 +02:00
jonaswinkler
419580b3be changelog, versions 2021-06-13 19:17:29 +02:00
jonaswinkler
5ee1f6b82b Merge branch 'normalize-whitespace' into dev 2021-06-13 19:06:08 +02:00
Michael Lynch
410bb6a84e Fix trailing newlines in configuration.rst 2021-06-13 10:57:58 -04:00
Michael Lynch
af2b5fef13 Add checkout step to whitespace CI job 2021-06-13 10:57:40 -04:00
Michael Lynch
372ac3a40c Normalize whitespace in source files
Ensure that no source files have trailing whitespace at end of lines and ensure that all files end with a single trailing newline.

This also adds Github Actions to enforce whitespace conventions.
2021-06-13 10:57:40 -04:00
jonaswinkler
a1507d6079 update django-q 2021-06-13 16:36:05 +02:00
jonaswinkler
9242a8901a update django-q 2021-06-13 15:43:32 +02:00
jonaswinkler
1d4f25f930 update datepipe implementation due to interface change 2021-06-13 15:27:04 +02:00
jonaswinkler
7323ec8d16 update angular devkit 2021-06-13 15:18:23 +02:00
jonaswinkler
39d45367d0 replace ng-bootstrap with ngx-bootstrap 2021-06-13 15:12:56 +02:00
jonaswinkler
a6521952b0 update to Angular 11 2021-06-13 15:08:56 +02:00
jonaswinkler
7148c10f1b update docker entrypoint 2021-06-13 12:54:24 +02:00
jonaswinkler
4a1a66248d update requirements.txt 2021-06-13 12:40:28 +02:00
Jonas Winkler
67d0773231 Merge pull request #933 from sbrunner/suggest
Add suggest
2021-06-13 12:20:34 +02:00
jonaswinkler
ff370172b5 fix pycodestyle 2021-06-13 12:18:21 +02:00
jonaswinkler
1f707e86cc fix logging getting spammed with pdfminer warnings on JPG files 2021-06-13 12:09:16 +02:00
jonaswinkler
a3dae02cfb write classifier model to temporary file before copying to final location 2021-06-13 12:03:20 +02:00
jonaswinkler
3eae8a2210 update dependencies 2021-06-13 12:02:49 +02:00
Jonas Winkler
0f18fe1853 Merge pull request #1107 from MJWcodr/patch-1
Update setup.rst
2021-06-13 11:34:03 +02:00
Jonas Winkler
513c61eb79 Merge pull request #1113 from magnetic6/master
Document specification of the expected creation date order
2021-06-13 11:33:43 +02:00
Peter M
4031233fd4 Document specification of the expected creation date order 2021-06-12 10:15:51 -04:00
Matthias J. Wünsch
76ff6100a3 Update setup.rst 2021-06-09 16:46:53 +02:00
Jonas Winkler
05c36f91cf Merge pull request #1105 from mtlynch/single-install-cmd
Simplify installation command
2021-06-07 00:48:29 +02:00
Michael Lynch
6625f8962a Simplify installation command
The installation for docker is currently three separate commands, but it can be a single command if the user simply pipes to the sh interpreter directly. I know there are some who object to piping to sh from a URL, but the current method has no security benefit over piping directly to sh.
2021-06-06 18:02:23 -04:00
Jonas Winkler
63402b70d2 Merge pull request #1057 from muued/patch-6
adjust ansible README to installation instructions
2021-06-03 15:14:36 +02:00
Stéphane Brunner
2ae4a7806d Add suggest 2021-05-30 14:50:29 +02:00
Jonas Winkler
fcc4ecd007 Merge pull request #1068 from servusoft/dev
Solving issue with search criteria 'maximum age' for some mail server
2021-05-29 19:13:10 +02:00
Jonas Winkler
45497250cd Merge pull request #1074 from sbrunner/scan-to-paperless
Add Scan to Paperless as affiliated project
2021-05-29 19:12:46 +02:00
Stéphane Brunner
7dd957140e Add Scan to Paperless as affiliated project 2021-05-29 16:38:16 +02:00
servusoft
4cd772a39e Solving issue with search criteria maximum age for some mail server
Some mail servers (mail.ru) do not support search criteria for the maximum age. By setting the maximum age to 0, it is possible to hide the search criteria. This PR solves that problem.
2021-05-27 18:30:57 +02:00
HolzHannes
b3906e7bc1 Corrected position of info 2021-05-27 10:01:30 +02:00
HolzHannes
e5009b4cd2 Info for The input device is not a TTY Errors 2021-05-27 08:30:21 +02:00
Fabian Ohler
10bf9fd1f8 Adjusted paperlessng_version variable explanation 2021-05-26 08:30:17 +02:00
Jonas Winkler
bd8e68692e New translations django.po (Dutch) (#1048) 2021-05-25 00:01:38 +02:00
Jonas Winkler
b8386a1531 Merge pull request #1052 from muued/patch-5
Use ansible-galaxy during updates
2021-05-25 00:01:20 +02:00
Fabian Ohler
61534fb29d Apply suggestions from code review
Co-authored-by: Fabian Koller <C0nsultant@users.noreply.github.com>
2021-05-24 15:27:11 +02:00
Fabian Ohler
9ad81be38c adjust ansible README to installation instructions
and fix some typos
2021-05-24 15:10:41 +02:00
Fabian Ohler
cf7048e336 Use ansible-galaxy during updates
This mechanism is already used for the installation process.
2021-05-22 23:29:44 +02:00
jonaswinkler
a6105b3ad3 update frontend dependencies 2021-05-21 15:27:10 +02:00
jonaswinkler
a262a82cad Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-05-19 23:11:43 +02:00
jonaswinkler
635c96accf better exception handling 2021-05-19 23:11:24 +02:00
Jonas Winkler
5c174a69c2 New Crowdin updates (#1043) 2021-05-19 23:00:51 +02:00
jonaswinkler
de08d17835 changelog 2021-05-19 23:00:03 +02:00
jonaswinkler
ca1e838c52 catch another exception regarding classifier loading 2021-05-19 22:57:52 +02:00
jonaswinkler
3b73146ecd changelog and version bump 2021-05-19 22:40:56 +02:00
jonaswinkler
8e3822f8e6 Merge remote-tracking branch 'origin/master' into dev 2021-05-19 22:37:01 +02:00
jonaswinkler
3b912a0de1 improved docker startup time 2021-05-19 22:26:51 +02:00
jonaswinkler
c72791bd21 Fix file permissions 2021-05-19 22:05:23 +02:00
jonaswinkler
80ba5b561f codestyle 2021-05-19 20:26:12 +02:00
jonaswinkler
f9f4d4c937 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-05-19 20:03:05 +02:00
jonaswinkler
0419c52d35 fix file permissions 2021-05-19 20:02:56 +02:00
jonaswinkler
93a79be1e2 delete macOS specific files 2021-05-19 20:02:47 +02:00
jonaswinkler
f8afbae2cd ignore macOS specific files 2021-05-19 19:56:01 +02:00
jonaswinkler
4a52d346f9 remove dead code 2021-05-19 19:55:35 +02:00
Jonas Winkler
7d59d11725 New Crowdin updates (#1026) 2021-05-18 14:46:12 +02:00
Jonas Winkler
5886348188 Merge pull request #1034 from steviehs/patch-1
Update setup.rst
2021-05-18 14:45:52 +02:00
steviehs
a8135528b1 Update setup.rst
Added hint to upgrade pip first.
2021-05-17 09:07:31 +02:00
jonaswinkler
df6b991161 File permissions 2021-05-16 23:01:41 +02:00
Jonas Winkler
3f33f66387 New Crowdin updates (#1023) 2021-05-16 13:13:54 +02:00
jonaswinkler
870808f3c2 add support for configuring mail server character set per server. fixes #548 2021-05-16 11:58:32 +02:00
Jonas Winkler
b12fcca20d Merge remote-tracking branch 'origin/dev' into dev 2021-05-16 01:23:07 +02:00
Jonas Winkler
61b47e358f correct file mode 2021-05-16 01:22:51 +02:00
Jonas Winkler
40a2fb7936 New Crowdin updates (#1022) 2021-05-15 21:14:03 +02:00
jonaswinkler
9afc8ba43d Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-05-15 19:21:34 +02:00
jonaswinkler
b122a05c71 changelog and version bump 2021-05-15 19:21:15 +02:00
Jonas Winkler
f568a9fdfa Merge pull request #934 from sbrunner/no-progress
Add --no-progress-bar option to commands
2021-05-15 19:06:50 +02:00
jonaswinkler
a350bb3086 add translation hint 2021-05-15 18:58:23 +02:00
jonaswinkler
8ae4b7560b added some missing strings 2021-05-15 18:53:55 +02:00
jonaswinkler
96f4924911 frontend support for fulltext sorting 2021-05-15 18:48:39 +02:00
jonaswinkler
f3703fc6e3 only show score when sorting by score 2021-05-15 17:25:49 +02:00
jonaswinkler
0d5fd229bf disable reverse sorting by score 2021-05-15 17:11:26 +02:00
jonaswinkler
1519e66550 fix pycodestyle 2021-05-15 15:14:22 +02:00
Jonas Winkler
fcae461430 Merge pull request #1003 from puuu/baseurl
Fix sub path support
2021-05-15 15:12:00 +02:00
jonaswinkler
039d797dfc Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-05-15 15:00:39 +02:00
Jonas Winkler
4f61868b28 New Crowdin updates (#989) 2021-05-15 15:00:00 +02:00
jonaswinkler
9efbc55fd6 update dependencies 2021-05-15 14:59:35 +02:00
Jonas Winkler
2e4e88114e Merge pull request #1019 from amenk/feature/print-css-for-doc-list
Add print css for document list
2021-05-15 14:35:02 +02:00
jonaswinkler
8ee2e8b23d sorting for full text queries 2021-05-15 13:58:11 +02:00
Alexander Menk
37287c3e7e Add print css for document list
Allow printing of the document list in a clean way

* Hide sidebar, filter
* Use full width
2021-05-15 12:26:04 +02:00
jonaswinkler
814d90745b Workaround for all PDFminer.six issues. 2021-05-15 12:15:32 +02:00
jonaswinkler
48e8076e34 Merge branch 'master' into dev 2021-05-15 12:04:45 +02:00
Jonas Winkler
edb9d934b2 Merge pull request #1017 from muued/patch-3
fix description of paperless-scheduler.service
2021-05-14 21:14:14 +02:00
Fabian Ohler
ed44f0cb04 fix description of paperless-scheduler.service 2021-05-14 13:43:39 +02:00
puuu
1c2f3cf9af Fix serving static files under root_path 2021-05-14 18:14:59 +09:00
puuu
13afd25690 Update documentation about PAPERLESS_FORCE_SCRIPT_NAME 2021-05-14 15:39:20 +09:00
puuu
f9b6374685 use {% url %} template to refere to root path 2021-05-14 14:44:13 +09:00
puuu
56c9b578e3 Make redirections respect root_path or STATIC_URL, name IndexView 2021-05-14 14:44:13 +09:00
puuu
e792a00feb Introduce BASE_URL, make LOGIN_URL and STATIC_URL work with subpath 2021-05-14 14:44:13 +09:00
puuu
c35c4eade9 Introduce ConfigurableWorker to make uvicorn respect FORCE_SCRIPT_NAME 2021-05-14 14:44:13 +09:00
puuu
5bf725546b use baseURI for websocket and api calls 2021-05-14 14:44:13 +09:00
puuu
6b6862705e make all links relative 2021-05-14 14:44:13 +09:00
jonaswinkler
b89b51b121 Merge branch 'master' into dev 2021-05-09 16:22:21 +02:00
Jonas Winkler
1b31388232 Merge pull request #995 from cmer/prevent-robot-indexing
Tell web crawlers to not index Paperless
2021-05-07 22:30:49 +02:00
Jonas Winkler
8256e73f04 Merge pull request #994 from shamoon/fix/issue-985
Respect user dark mode setting on login page
2021-05-07 22:30:03 +02:00
Carl Mercier
fc4e59ec00 Tell web crawlers to not index Paperless 2021-05-07 14:02:11 -04:00
Michael Shamoon
428e00ba23 Respect user dark mode setting on login page 2021-05-07 10:50:08 -07:00
Jonas Winkler
2ccbb08c3f Merge pull request #992 from muued/patch-2
Mention lacking support for ARM in ansible setup
2021-05-06 20:58:59 +02:00
Jonas Winkler
eefc026a17 Merge pull request #991 from muued/patch-1
Use ansible-galaxy for ansible setup
2021-05-06 17:51:21 +02:00
Fabian Ohler
d89022a280 Mention lacking support for ARM in ansible setup
Since the jbig2enc dependency is pulled from a repository that only provides i386 and amd64 packages, the installation will fail on arm hosts.
2021-05-06 14:15:12 +02:00
Fabian Ohler
93bd24c9d2 Update setup.rst
use ansible-galaxy to fetch the ansible scripts to have a role called paperless-ng instead of ansible
2021-05-06 14:08:49 +02:00
Jonas Winkler
197aec2945 New Crowdin updates (#988)
* New translations django.po (French)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations django.po (Portuguese)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]
2021-05-05 22:36:22 +02:00
Jonas Winkler
e16d58cff5 New Crowdin updates (#986) 2021-05-05 14:49:08 +02:00
Jonas Winkler
92667009be add swedish locale 2021-05-04 17:01:39 +02:00
Jonas Winkler
c93657f40e New Crowdin updates (#976) 2021-05-04 15:28:10 +02:00
Jonas Winkler
16658f5939 Merge pull request #965 from jovandeginste/add-rtf
Add support for rtf
2021-04-30 19:11:07 +02:00
Jo Vandeginste
ec0af59596 Add support for rtf
Signed-off-by: Jo Vandeginste <Jo.Vandeginste@kuleuven.be>
2021-04-30 13:19:12 +02:00
Jonas Winkler
9e1f9d6d9d Merge pull request #960 from shamoon/fix/issue-65-2
Remove PDF type attribute to fix macOS Safari native PDF viewer crashing
2021-04-28 16:45:22 +02:00
Michael Shamoon
e652b927ce Remove type attribute of pdf object in document detail 2021-04-28 07:32:18 -07:00
Jonas Winkler
5a97f3f94b update libseccomp2 2021-04-28 02:12:55 +02:00
Jonas Winkler
9494c243a4 changelog, version bump 2021-04-27 22:52:50 +02:00
Jonas Winkler
c0a1be4325 Merge pull request #956 from WhiteHatTux/bugfix/879
Use gosu as it is less complicated than sudo
2021-04-27 09:59:05 +02:00
Jonas Winkler
70fda8e2f8 New Crowdin updates (#932) 2021-04-27 09:52:30 +02:00
Christopher Timm
5765893f69 Use gosu instead of sudo for easier configuration
#879
2021-04-26 19:06:30 -05:00
Stéphane Brunner
dc26c9b7cc Add --no-progress-bar option to commands 2021-04-18 16:16:11 +02:00
jonaswinkler
17b9d7eb42 Merge branch 'master' into dev 2021-04-18 12:41:52 +02:00
jonaswinkler
0a897cae32 bugfix 2021-04-18 11:29:12 +02:00
jonaswinkler
37f56e824a Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-04-18 11:25:21 +02:00
jonaswinkler
a8e7ec0e96 changelog, version bump 2021-04-18 11:25:11 +02:00
Jonas Winkler
b86d853cf1 New Crowdin updates (#931) 2021-04-18 10:49:22 +02:00
Jonas Winkler
da0c94c9a1 New Crowdin updates (#930) 2021-04-17 22:33:42 +02:00
jonaswinkler
0547fd2760 fix minor issue 2021-04-17 22:33:06 +02:00
jonaswinkler
e0a6df8435 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-04-17 22:30:45 +02:00
jonaswinkler
c2d4ca7566 lets hope this works 2021-04-17 22:29:54 +02:00
jonaswinkler
56ce278bbd update FAQ 2021-04-17 22:29:24 +02:00
Jonas Winkler
e112541f5b New Crowdin updates (#929) 2021-04-17 20:34:57 +02:00
jonaswinkler
17c7b0840b changes for django 3.2 2021-04-17 16:00:29 +02:00
jonaswinkler
68658bd407 update dependencies 2021-04-17 14:56:25 +02:00
Jonas Winkler
9184845a9d Merge pull request #890 from what-name/feature/superuser-manager
Create initial Paperless user automatically
2021-04-17 14:44:01 +02:00
Jonas Winkler
8ddb2fb305 New Crowdin updates (#928) 2021-04-17 14:37:31 +02:00
jonaswinkler
96f53986b7 pycodestyle 2021-04-17 14:36:04 +02:00
jonaswinkler
8566682209 add test case, update password if changed 2021-04-17 14:33:07 +02:00
jonaswinkler
4f9ae17059 Merge branch 'dev' into feature/superuser-manager
# Conflicts:
#	docker/docker-entrypoint.sh
2021-04-17 14:10:56 +02:00
jonaswinkler
7f9f805c5f Merge branch 'dev' into feature/superuser-manager 2021-04-17 14:01:42 +02:00
Jonas Winkler
5208e81715 Merge pull request #856 from sbrl/patch-1
docker-entrypoint.sh: don't crash on chown errors
2021-04-17 13:57:14 +02:00
Jonas Winkler
01a786c117 Merge pull request #894 from lknop/master
add single compose file for usage in portainer environments
2021-04-17 13:50:11 +02:00
Jonas Winkler
8bf4f31954 Merge pull request #918 from shamoon/fix/issue-907
"Sticky" filter editor and bulk editor
2021-04-17 13:48:54 +02:00
jonaswinkler
07ab3e98ed add pl-PL locale 2021-04-17 13:41:26 +02:00
Jonas Winkler
ba5899de7b New Crowdin updates (#874) 2021-04-17 13:34:42 +02:00
Michael Shamoon
a4fef056ed Fix breakpoint
File missing from last commit
2021-04-14 13:24:03 -07:00
Michael Shamoon
c266cd6aae Spacing tweaks, mobile breakpoint 2021-04-14 09:34:39 -07:00
Michael Shamoon
43d05b2e6d Hide visible underlying shadows on filter / bulk editor 2021-04-14 09:00:57 -07:00
Michael Shamoon
6f0c14cc07 Make filter editor / bulk editor 'sticky' on scroll 2021-04-14 09:00:30 -07:00
Lukasz Knop
2eac8fa91c disabled unnecessary overrides, copied variable comments 2021-04-11 21:48:50 +02:00
Lukasz Knop
31f5e178b3 add single compose file for usage in portainer environments 2021-04-11 15:16:04 +02:00
Chris Nagy
c3d7088168 Fix code guidelines 2021-04-10 16:10:45 +02:00
Chris Nagy
a9e11b1cb7 Add newline end of file 2021-04-10 16:02:48 +02:00
Chris Nagy
ee51a0be13 Minor docs change 2021-04-10 15:08:33 +02:00
jonaswinkler
1091387f48 better logging for the retagger 2021-04-10 14:38:39 +02:00
jonaswinkler
4db75537cb install sudo from stable 2021-04-10 14:38:19 +02:00
Chris Nagy
cb4e738a0f Fix env variable in docker entrypoint 2021-04-10 13:50:52 +02:00
Chris Nagy
0cc32e7ed7 Extend docs with superuser 2021-04-10 13:47:31 +02:00
Jonas Winkler
94f90e1e81 Merge pull request #887 from alexpovel/master
Fix typo
2021-04-10 00:21:45 +02:00
Alex Povel
ce8f315747 Fix typo
See also a3c4e4c6b6/docker/compose/docker-compose.env (L30)
2021-04-09 22:14:09 +02:00
Starbeamrainbowlabs
b761a549c0 docker-prepare.sh: remove rogue instances of sudo
This is being done by calling the script as the correct user in the 
first place.
2021-04-08 03:06:01 +01:00
Starbeamrainbowlabs
dd7c5da256 docker-entrypoint.sh: split non-root tasks into docker-prepare.sh 2021-04-08 00:03:55 +01:00
Starbeamrainbowlabs
02dd7ec615 docker: mark scripts as executable 2021-04-07 23:19:20 +01:00
Jonas Winkler
b7b448b870 Merge pull request #875 from shamoon/fix/large-card-info-layout
Fix alignment of card info on large cards
2021-04-06 23:41:03 +02:00
Michael Shamoon
b7326afe5a Fix alignment of card info on large cards 2021-04-06 14:25:59 -07:00
jonaswinkler
a3c4e4c6b6 install script: configure time zone 2021-04-06 21:46:18 +02:00
jonaswinkler
645297d68c documentation 2021-04-06 21:46:16 +02:00
Jonas Winkler
6d8782f771 Merge pull request #860 from shamoon/feature/issue-858
Suppport search term PDF open parameter
2021-04-06 20:28:53 +02:00
Jonas Winkler
2728183eee New Crowdin updates (#871) 2021-04-06 20:23:18 +02:00
Michael Shamoon
3d0891c73b Updated to work with new unified search interface 2021-04-05 16:35:15 -07:00
Michael Shamoon
8226a8793e Merge remote-tracking branch 'upstream/dev' into feature/issue-858 2021-04-05 13:59:21 -07:00
jonaswinkler
d01477b337 changelog 2021-04-05 22:23:11 +02:00
jonaswinkler
6bb07c72ab API search documentation 2021-04-05 22:19:42 +02:00
jonaswinkler
a009462b80 update messages 2021-04-05 22:05:26 +02:00
jonaswinkler
9111b130e4 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-04-05 21:53:39 +02:00
jonaswinkler
1dbd7b9bb4 fix some issues with the search index 2021-04-05 21:53:07 +02:00
Jonas Winkler
2f95dfc0e7 New Crowdin updates (#855) 2021-04-05 21:44:14 +02:00
Jonas Winkler
acc317ddfd Merge pull request #818 from shamoon/fix/issue-817
Support passing current term from tag / document type / correspondent search field to 'create new' dialog
2021-04-05 21:43:50 +02:00
jonaswinkler
1fbd3935ea focus text filter input automatically 2021-04-05 21:43:20 +02:00
jonaswinkler
ca2bf962e9 force update of search index if out of date 2021-04-05 21:33:17 +02:00
jonaswinkler
1d27a3a14b fixed the write permission check 2021-04-05 21:33:04 +02:00
jonaswinkler
8e1a9dde05 bugfix 2021-04-05 21:05:32 +02:00
Michael Shamoon
8eabf8c77a Refactor unneeded ngIf 2021-04-04 19:57:16 -07:00
Michael Shamoon
ec4ec41552 Add back plus button which retains filter text 2021-04-04 17:05:27 -07:00
jonaswinkler
8960b0300f changelog and version bump 2021-04-05 00:36:44 +02:00
jonaswinkler
d6a2672cab Merge branch 'feature-unified-search' into dev 2021-04-05 00:25:10 +02:00
jonaswinkler
4b281ca89d logging before executing pre and post consume scripts 2021-04-05 00:22:11 +02:00
jonaswinkler
808b507b0f fix migration 2021-04-05 00:16:50 +02:00
jonaswinkler
ab47d03e1a update messages 2021-04-04 20:46:25 +02:00
jonaswinkler
aca999090b Merge branch 'dev' into feature-unified-search 2021-04-04 20:41:29 +02:00
jonaswinkler
1322aaf4da add migration to fix null characters in document contents 2021-04-04 20:41:08 +02:00
jonaswinkler
c49471fb3b bugfix 2021-04-04 01:25:54 +02:00
jonaswinkler
d13baab0a6 more testing 2021-04-04 01:19:07 +02:00
jonaswinkler
359b46c15b fixed the test cases 2021-04-04 00:29:40 +02:00
jonaswinkler
3b83e9a43d pycodestyle 2021-04-04 00:04:00 +02:00
jonaswinkler
ab7a499e8f refactor filter reset 2021-04-04 00:03:51 +02:00
jonaswinkler
fffe4f694f reset page when doing full text search 2021-04-03 22:19:12 +02:00
Michael Shamoon
18c028cafd Suppport search term PDF open parameter 2021-04-03 13:10:39 -07:00
jonaswinkler
4e289c7dab rename search 2021-04-03 21:56:33 +02:00
jonaswinkler
3dfe5c9262 fix page out of range with full text 2021-04-03 21:50:23 +02:00
jonaswinkler
be87caf7f6 fix search scores 2021-04-03 21:50:05 +02:00
jonaswinkler
b7063b199a disable sorting for now 2021-04-03 21:49:31 +02:00
jonaswinkler
1ed9c245f5 fixed more like this 2021-04-03 21:07:36 +02:00
jonaswinkler
fb1e9fe66a error messages for invalid search queries 2021-04-03 21:02:33 +02:00
jonaswinkler
38a386d5ae fix date filtering for full text search 2021-04-03 21:02:13 +02:00
jonaswinkler
726114575e Merge branch 'dev' into feature-unified-search 2021-04-03 20:31:16 +02:00
Michael Shamoon
026c213ea4 Refactor to use ng-select addTag function 2021-04-03 09:30:29 -07:00
jonaswinkler
cd85d4e86a update tooltips and messages 2021-04-02 14:59:02 +02:00
jonaswinkler
e906bf58f0 Save list view state across sessions 2021-04-02 14:46:45 +02:00
jonaswinkler
87d2209e6d update dependencies 2021-04-02 14:26:20 +02:00
jonaswinkler
704f8ea680 update dependencies 2021-04-02 14:21:05 +02:00
Jonas Winkler
1e101fb3db Merge pull request #842 from Bart1909/master
Implements #807
2021-04-02 14:08:01 +02:00
Jonas Winkler
a16643ee29 New Crowdin updates (#847) 2021-04-02 10:47:11 +02:00
Tobi
b783e0e211 refactoring 2021-03-30 20:51:49 +02:00
Tobi
1ec4570c8d renames document-asn component 2021-03-30 19:26:20 +02:00
Tobi
434194d290 Merge remote-tracking branch 'origin/master' 2021-03-30 19:07:44 +02:00
Tobi
f62e64357b implements #807 2021-03-30 19:07:29 +02:00
Jonas Winkler
b9f49c5eca Merge pull request #834 from benjaminfrank/patch-1
New android scanner app recommendation
2021-03-30 00:42:28 +02:00
Jonas Winkler
13a839de57 New Crowdin updates (#837) 2021-03-30 00:42:06 +02:00
benjaminfrank
7eb4253c00 Update scanners.rst 2021-03-27 14:40:13 +01:00
Jonas Winkler
dab210a183 Merge pull request #819 from shamoon/fix/issue-293-2
Remove all rem units on SVG elements
2021-03-26 23:13:06 +01:00
Jonas Winkler
5319d4782a New translations django.po (Italian) (#813) 2021-03-26 23:12:36 +01:00
Michael Shamoon
0463c3fe54 1.3em not 1.5em 2021-03-24 16:21:08 -07:00
Michael Shamoon
fe84430679 Remove all rem units on SVG elements
See https://bugzilla.mozilla.org/show_bug.cgi?id=1231147
2021-03-24 16:17:40 -07:00
Michael Shamoon
9514e79bfb Not needed, clearing will be done by timeout 2021-03-24 12:42:14 -07:00
Michael Shamoon
b6756595d9 Clear last search term when clear button clicked 2021-03-24 12:37:26 -07:00
Michael Shamoon
8ddb3e80b7 Add timeout for clearing last search term on select blur 2021-03-24 12:21:51 -07:00
Michael Shamoon
52bc1a62e1 Support passing current term from input-select search to create dialog e.g. for doc type / correspondent 2021-03-24 12:21:13 -07:00
Michael Shamoon
cd72ed2cec Support passing current term from tag search to create dialog 2021-03-24 12:13:37 -07:00
Jonas Winkler
ccaee4ce62 Update README.md 2021-03-24 10:31:05 +01:00
jonaswinkler
0e596bd1fc also apply \0 removal to sidecar contents 2021-03-22 23:08:34 +01:00
Jonas Winkler
21fafd3255 Update README.md 2021-03-22 23:03:01 +01:00
jonaswinkler
fda2bfbea7 better exception logging 2021-03-22 23:00:15 +01:00
jonaswinkler
d26c46e034 fixes #794 2021-03-22 22:46:35 +01:00
jonaswinkler
27cb243a2f fix dependencies 2021-03-21 13:50:48 +01:00
jonaswinkler
d3514fc5f9 update dependencies 2021-03-21 12:20:10 +01:00
jonaswinkler
4954851b68 Revert "update requirements"
This reverts commit 8f6e1360
2021-03-21 11:43:16 +01:00
Jonas Winkler
6bcb12ddc9 Merge pull request #796 from holzhannes/patch-2
Three new scanners, one iOS App and column for SMTP Support
2021-03-20 12:15:33 +01:00
HolzHannes
126a4ec21f Update scanners.rst
Some new scanners and a new Support column SMTP for Scanner which can directly send mails via SMTP. Also one iOS App to scan documents
2021-03-20 11:10:05 +01:00
Jonas Winkler
0aa084c792 New Crowdin updates (#790) 2021-03-18 23:50:54 +01:00
jonaswinkler
8f6e1360e1 update requirements 2021-03-18 23:49:49 +01:00
jonaswinkler
b7e570aba0 Merge branch 'dev' 2021-03-18 19:41:45 +01:00
jonaswinkler
ce2bae12af changelog and version bump 2021-03-18 19:13:45 +01:00
Jonas Winkler
b6111d8da6 New Crowdin updates (#788) 2021-03-18 16:22:45 +01:00
jonaswinkler
2fb1132b69 fix test case 2021-03-17 23:08:19 +01:00
jonaswinkler
9a04bc1beb fixes #771 2021-03-17 22:57:37 +01:00
jonaswinkler
b39c3f7866 fixes #668 (see https://github.com/the-paperless-project/paperless/pull/571) 2021-03-17 22:44:18 +01:00
jonaswinkler
740237a8fa add migration 2021-03-17 22:33:00 +01:00
jonaswinkler
391db73ea8 added pt-pt locale 2021-03-17 22:32:39 +01:00
jonaswinkler
b6ff88645b lots of changes for the new unified search 2021-03-17 22:25:22 +01:00
Jonas Winkler
4cd1672094 New Crowdin updates (#787) 2021-03-17 02:14:43 +01:00
jonaswinkler
630cd814e2 Merge branch 'dev' into feature-unified-search 2021-03-16 20:48:05 +01:00
jonaswinkler
6606d7572c API refactoring 2021-03-16 20:47:45 +01:00
Jonas Winkler
b331e3388f Merge pull request #778 from shamoon/fix/issue-774-775
Fix extra scrollbar on log container, auto scroll logs to bottom
2021-03-16 17:29:07 +01:00
Jonas Winkler
b6428aa85f Merge pull request #785 from isaacsando/master
update advanced_usage.rst to remove wording regarding filename parsing
2021-03-16 17:28:29 +01:00
isaacsando
fa6d554d1f update advanced_usage.rst to remove wording regarding filename parsing 2021-03-16 11:16:48 -05:00
Michael Shamoon
816871eed3 Redundant call to scroll 2021-03-16 03:08:48 -07:00
Michael Shamoon
ee04a9226b Don’t remove OnInit 2021-03-16 03:06:20 -07:00
Jonas Winkler
6b15093c43 New Crowdin updates (#776) 2021-03-16 10:40:38 +01:00
Michael Shamoon
b9d0954924 Automatically scroll log ouput 2021-03-15 09:56:17 -07:00
Michael Shamoon
a94a81d839 Revert "Reverse log order"
This reverts commit 2e21fbf619.
2021-03-15 08:45:33 -07:00
Michael Shamoon
46be3924e4 Revert "Side effecting"
This reverts commit 316a2469b8.
2021-03-15 08:45:30 -07:00
Michael Shamoon
316a2469b8 Side effecting 2021-03-15 08:42:10 -07:00
Michael Shamoon
2e21fbf619 Reverse log order 2021-03-15 08:38:55 -07:00
Michael Shamoon
e1254a053a Fix log container taller than viewport 2021-03-15 08:38:47 -07:00
Jonas Winkler
50bcd3daf1 New Crowdin updates (#764) 2021-03-15 10:48:25 +01:00
Chris Nagy
e3ba968fef Add superuser management script 2021-03-14 19:43:22 +01:00
Jonas Winkler
7725973b62 Merge pull request #766 from shamoon/fix/additional-card-info-icons-fix
Fix additional card info icons sometimes cut off in certain browsers
2021-03-14 18:44:48 +01:00
Michael Shamoon
30bf7418f5 Dont change size overall 2021-03-14 09:35:53 -07:00
Michael Shamoon
eb611b2c41 Fix icons sometimes cut off in certain browsers 2021-03-14 09:33:57 -07:00
jonaswinkler
e4909c3133 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-03-14 15:22:34 +01:00
jonaswinkler
2216330118 bump version 2021-03-14 15:22:25 +01:00
Jonas Winkler
ca090aa2fa New Crowdin updates (#763) 2021-03-14 15:12:10 +01:00
jonaswinkler
ec7ca2c352 changelog 2021-03-14 14:49:38 +01:00
jonaswinkler
2eb5e289ce optimized default thumbnail 2021-03-14 14:45:29 +01:00
jonaswinkler
40ce38254b fixes #631 2021-03-14 14:42:48 +01:00
jonaswinkler
0ad2b05455 fixes #745 2021-03-14 14:17:21 +01:00
jonaswinkler
c74d261f6a Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-03-14 14:06:27 +01:00
Jonas Winkler
68fe18fe36 Merge pull request #748 from shamoon/feature/additional-card-info
Additional / organized card info
2021-03-14 14:06:08 +01:00
jonaswinkler
47313db2c7 changelog 2021-03-14 14:01:43 +01:00
jonaswinkler
127129fbeb Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-03-14 13:34:31 +01:00
jonaswinkler
f43a8d6f2e Add spanish locale 2021-03-14 13:34:14 +01:00
Jonas Winkler
7cde850d98 New Crowdin updates (#757)
* New translations django.po (Spanish)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]
2021-03-14 13:28:12 +01:00
Jonas Winkler
1bcfc5b54d New Crowdin updates (#752) 2021-03-13 23:19:03 +01:00
Michael Shamoon
7a8494da4d Small card tooltip tweaks, medium date 2021-03-12 20:15:18 -08:00
Michael Shamoon
65733863b1 tooltip placement 2021-03-12 20:12:05 -08:00
Michael Shamoon
e62ecefcd7 dark mode background color 2021-03-12 20:12:00 -08:00
Michael Shamoon
0aacebf783 Display date & ASN on one line if fits 2021-03-12 20:00:23 -08:00
Michael Shamoon
43b1700e91 hover color for card footer buttons 2021-03-12 19:59:45 -08:00
Michael Shamoon
9b4625b4a5 Fix pager color in dark mode 2021-03-12 19:52:31 -08:00
Michael Shamoon
27998df6e4 div instead of li 2021-03-12 19:35:25 -08:00
Michael Shamoon
eb5eabf3c6 fix text not visible in light mode on large card 2021-03-12 09:17:49 -08:00
Michael Shamoon
76cee78408 Visual tweaks for responsive 2021-03-12 08:12:36 -08:00
Michael Shamoon
0ba35a6eb5 More semantically correct elements 2021-03-12 07:58:37 -08:00
Michael Shamoon
6a58bd30ad Fix incomplete doc type clicking for large cards 2021-03-12 07:21:00 -08:00
Michael Shamoon
e71d055ef2 Tooltip consistency 2021-03-12 07:19:14 -08:00
Michael Shamoon
cb2eff47cc Refactor 2021-03-12 07:15:00 -08:00
Michael Shamoon
4696f9896b Support large cards 2021-03-12 06:54:22 -08:00
Jonas Winkler
424835880d New Crowdin updates (#738) 2021-03-12 15:53:37 +01:00
Jonas Winkler
e0e0ee4a77 Merge pull request #744 from shamoon/fix/miscellaneous-css-fixes
Fixes for mobile logger cut off & dark mode hidden "logged in as"
2021-03-12 15:48:16 +01:00
Michael Shamoon
5eca0ce554 Light mode fixes 2021-03-12 06:30:03 -08:00
Michael Shamoon
f5a06ac0dd Slightly shorter thumbnail 2021-03-12 06:11:53 -08:00
Michael Shamoon
81ea8873e0 Use medium date 2021-03-12 06:02:39 -08:00
Michael Shamoon
63b4ccacde Fix log lines hidden on narrow screens 2021-03-11 16:03:17 -08:00
Michael Shamoon
ccc39e0e55 Fix illegible logged in as in dark mode 2021-03-11 16:03:00 -08:00
Michael Shamoon
d264df1504 Additional metadata for small cards 2021-03-11 15:54:30 -08:00
jonaswinkler
9b7bc16b3e keep the ng2-pdf-viewer; this might come in handy for splitting documents at specific pages #706 2021-03-10 22:38:33 +01:00
jonaswinkler
f7f51f4f73 Merge branch 'dev' into feature/popover-previews 2021-03-10 22:32:37 +01:00
jonaswinkler
143ae1092c changelog 2021-03-10 22:31:49 +01:00
jonaswinkler
6470a443ac fix #735 2021-03-10 18:32:57 +01:00
jonaswinkler
7795baf989 change ISO date to always display 4 digit years #736 2021-03-10 18:15:23 +01:00
Jonas Winkler
5ab717c6be New Crowdin updates (#727) 2021-03-10 13:55:03 +01:00
Jonas Winkler
fac265486a Merge pull request #726 from darmiel/feature/664-filter-by-asn
Implemented 'Filter by: ASN'
2021-03-08 21:00:58 +01:00
darmiel
707efff644 Updated messages.xlf 2021-03-08 20:40:18 +01:00
Jonas Winkler
15291fd659 New Crowdin updates (#725) 2021-03-08 19:41:25 +01:00
darmiel
6535a20b21 Implemented 'Filter by: ASN' 2021-03-08 17:11:25 +01:00
Jonas Winkler
8c922dbffc Merge pull request #715 from rost314/fix_nfs_write_check
fix writable check for NFS mounts
2021-03-08 12:34:37 +01:00
Jonas Winkler
874f5fd2ca New Crowdin updates (#722) 2021-03-08 12:31:37 +01:00
Jonas Winkler
50864b10dd New Crowdin updates (#719)
New translations
2021-03-08 10:04:03 +01:00
Robert
57a5df1fce fix writable check for NFS mounts
For some reason, os.access(directory, os.W_OK | os.X_OK) does not work correctly on NFS mounts.
After some research, found out that the only secure and portable way to check for write access, is to touch a file.
2021-03-07 23:46:29 +01:00
Jonas Winkler
14828b15d8 New Crowdin updates (#718)
* New translations messages.xlf (English, United Kingdom)
[ci skip]

* New translations django.po (Romanian)
[ci skip]

* New translations messages.xlf (Dutch)
[ci skip]

* New translations django.po (Xhosa)
[ci skip]

* New translations messages.xlf (English, United Kingdom)
[ci skip]

* New translations django.po (English, United Kingdom)
[ci skip]

* New translations messages.xlf (Portuguese, Brazilian)
[ci skip]

* New translations django.po (Portuguese, Brazilian)
[ci skip]

* New translations messages.xlf (Chinese Simplified)
[ci skip]

* New translations django.po (Chinese Simplified)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations django.po (Russian)
[ci skip]

* New translations messages.xlf (Portuguese)
[ci skip]

* New translations django.po (Portuguese)
[ci skip]

* New translations django.po (Dutch)
[ci skip]

* New translations messages.xlf (Romanian)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations django.po (Italian)
[ci skip]

* New translations messages.xlf (Hungarian)
[ci skip]

* New translations django.po (Hungarian)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations django.po (German)
[ci skip]

* New translations messages.xlf (Czech)
[ci skip]

* New translations django.po (Czech)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations django.po (Spanish)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations django.po (French)
[ci skip]

* New translations messages.xlf (Xhosa)
[ci skip]

* New translations django.po (Romanian)
[ci skip]

* New translations messages.xlf (Dutch)
[ci skip]

* New translations messages.xlf (English, United Kingdom)
[ci skip]

* New translations django.po (English, United Kingdom)
[ci skip]

* New translations messages.xlf (Portuguese, Brazilian)
[ci skip]

* New translations django.po (Portuguese, Brazilian)
[ci skip]

* New translations messages.xlf (Russian)
[ci skip]

* New translations django.po (Russian)
[ci skip]

* New translations django.po (Dutch)
[ci skip]

* New translations messages.xlf (Romanian)
[ci skip]

* New translations messages.xlf (Italian)
[ci skip]

* New translations django.po (Italian)
[ci skip]

* New translations messages.xlf (German)
[ci skip]

* New translations django.po (German)
[ci skip]

* New translations messages.xlf (Spanish)
[ci skip]

* New translations django.po (Spanish)
[ci skip]

* New translations messages.xlf (French)
[ci skip]

* New translations django.po (French)
[ci skip]
2021-03-07 22:37:04 +01:00
jonaswinkler
5f03e9e4cc Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-03-07 21:35:04 +01:00
jonaswinkler
c2b82fa063 fix up some messages 2021-03-07 21:34:55 +01:00
Jonas Winkler
40c4cfda75 Merge pull request #713 from jonaswinkler/l10n_dev
New Crowdin updates
2021-03-07 18:19:17 +01:00
Jonas Winkler
5c5ce6eedb New translations messages.xlf (Italian)
[ci skip]
2021-03-07 14:09:28 +01:00
jonaswinkler
f9263ddb62 some initial attempts to merge search and document list 2021-03-07 13:16:23 +01:00
Jonas Winkler
2fd1074729 New translations messages.xlf (Dutch)
[ci skip]
2021-03-07 13:11:07 +01:00
Jonas Winkler
2e379ad422 Merge pull request #712 from jonaswinkler/l10n_dev
New Crowdin updates
2021-03-07 12:27:43 +01:00
Jonas Winkler
c1cecb3e0e New translations messages.xlf (Dutch)
[ci skip]
2021-03-07 11:08:33 +01:00
Jonas Winkler
b0d13bed72 New translations messages.xlf (German)
[ci skip]
2021-03-07 11:08:32 +01:00
Jonas Winkler
d23a0d230c New translations django.po (German)
[ci skip]
2021-03-07 11:08:30 +01:00
Jonas Winkler
91b87f4e2c Merge pull request #711 from jonaswinkler/l10n_dev
New Crowdin updates
2021-03-07 11:06:08 +01:00
Jonas Winkler
a77c1f3ad1 New translations messages.xlf (Xhosa)
[ci skip]
2021-03-07 10:14:00 +01:00
Jonas Winkler
4c3cdaab0e New translations messages.xlf (French)
[ci skip]
2021-03-07 10:13:57 +01:00
Jonas Winkler
3e86c3d0d0 New translations messages.xlf (Spanish)
[ci skip]
2021-03-07 10:13:55 +01:00
Jonas Winkler
5a40d3c6fe New translations messages.xlf (Czech)
[ci skip]
2021-03-07 10:13:52 +01:00
Jonas Winkler
f79c1e0bcc New translations messages.xlf (German)
[ci skip]
2021-03-07 10:13:50 +01:00
Jonas Winkler
8f14ff7210 New translations messages.xlf (Hungarian)
[ci skip]
2021-03-07 10:13:48 +01:00
Jonas Winkler
90732d6a2f New translations messages.xlf (Italian)
[ci skip]
2021-03-07 10:13:46 +01:00
Jonas Winkler
f179ff9da4 New translations messages.xlf (Romanian)
[ci skip]
2021-03-07 10:13:44 +01:00
Jonas Winkler
90fd999220 New translations messages.xlf (Dutch)
[ci skip]
2021-03-07 10:13:43 +01:00
Jonas Winkler
04afbdd938 New translations messages.xlf (Portuguese)
[ci skip]
2021-03-07 10:13:41 +01:00
Jonas Winkler
5d3ef3d338 New translations messages.xlf (Russian)
[ci skip]
2021-03-07 10:13:39 +01:00
Jonas Winkler
4477d083e8 New translations messages.xlf (Chinese Simplified)
[ci skip]
2021-03-07 10:13:37 +01:00
Jonas Winkler
b7b3f54617 New translations messages.xlf (Portuguese, Brazilian)
[ci skip]
2021-03-07 10:13:35 +01:00
Jonas Winkler
5fc9f3f4da New translations messages.xlf (Thai)
[ci skip]
2021-03-07 10:13:32 +01:00
Jonas Winkler
c4b31f2f72 New translations messages.xlf (English, United Kingdom)
[ci skip]
2021-03-07 10:13:30 +01:00
Jonas Winkler
6c6b0511a6 New translations messages.xlf (Latin)
[ci skip]
2021-03-07 10:13:28 +01:00
jonaswinkler
6d20fc14ab updates messages 2021-03-07 10:08:45 +01:00
jonaswinkler
895c10600d add ru-ru locale 2021-03-07 10:07:42 +01:00
Jonas Winkler
c024efa578 Merge pull request #710 from jonaswinkler/l10n_dev
New Crowdin updates
2021-03-07 10:00:08 +01:00
Jonas Winkler
0022588b02 New translations messages.xlf (Russian)
[ci skip]
2021-03-07 02:58:09 +01:00
Jonas Winkler
47ec3d9149 New translations django.po (Russian)
[ci skip]
2021-03-07 02:58:08 +01:00
Jonas Winkler
811b82181d New translations messages.xlf (Russian)
[ci skip]
2021-03-07 01:59:13 +01:00
Jonas Winkler
32318ddbf6 Merge pull request #707 from jonaswinkler/l10n_dev
New Crowdin updates
2021-03-06 23:59:22 +01:00
Jonas Winkler
65a416fdae New translations django.po (French)
[ci skip]
2021-03-06 23:56:37 +01:00
Jonas Winkler
58d1f98368 New translations messages.xlf (French)
[ci skip]
2021-03-06 23:56:36 +01:00
Jonas Winkler
4cd7bf7123 New translations django.po (Spanish)
[ci skip]
2021-03-06 23:56:35 +01:00
Jonas Winkler
d4dea13eee New translations messages.xlf (Spanish)
[ci skip]
2021-03-06 23:56:34 +01:00
Jonas Winkler
507cdca757 New translations django.po (Czech)
[ci skip]
2021-03-06 23:56:33 +01:00
Jonas Winkler
27bfb2d3b0 New translations messages.xlf (Czech)
[ci skip]
2021-03-06 23:56:32 +01:00
Jonas Winkler
43118a1ffd New translations django.po (German)
[ci skip]
2021-03-06 23:56:30 +01:00
Jonas Winkler
729b305860 New translations messages.xlf (German)
[ci skip]
2021-03-06 23:56:29 +01:00
Jonas Winkler
72950d7872 New translations django.po (Hungarian)
[ci skip]
2021-03-06 23:56:28 +01:00
Jonas Winkler
364ffe8f38 New translations messages.xlf (Hungarian)
[ci skip]
2021-03-06 23:56:27 +01:00
Jonas Winkler
84d822b497 New translations django.po (Italian)
[ci skip]
2021-03-06 23:56:26 +01:00
Jonas Winkler
df99035c93 New translations messages.xlf (Italian)
[ci skip]
2021-03-06 23:56:25 +01:00
Jonas Winkler
63fc68cf83 New translations django.po (Dutch)
[ci skip]
2021-03-06 23:56:23 +01:00
Jonas Winkler
9c742fbf08 New translations messages.xlf (Romanian)
[ci skip]
2021-03-06 23:56:23 +01:00
Jonas Winkler
9965c35d2f New translations messages.xlf (Dutch)
[ci skip]
2021-03-06 23:56:21 +01:00
Jonas Winkler
0af567bc72 New translations messages.xlf (Portuguese)
[ci skip]
2021-03-06 23:56:20 +01:00
Jonas Winkler
0959a4e915 New translations django.po (Russian)
[ci skip]
2021-03-06 23:56:19 +01:00
Jonas Winkler
83be71f622 New translations messages.xlf (Russian)
[ci skip]
2021-03-06 23:56:18 +01:00
Jonas Winkler
9c985b36b3 New translations django.po (Chinese Simplified)
[ci skip]
2021-03-06 23:56:16 +01:00
Jonas Winkler
4ef0e20b5c New translations messages.xlf (Chinese Simplified)
[ci skip]
2021-03-06 23:56:15 +01:00
Jonas Winkler
d1cef044e5 New translations django.po (Portuguese, Brazilian)
[ci skip]
2021-03-06 23:56:14 +01:00
Jonas Winkler
f1d4860c79 New translations messages.xlf (Portuguese, Brazilian)
[ci skip]
2021-03-06 23:56:13 +01:00
Jonas Winkler
f1d6dd7d36 New translations django.po (English, United Kingdom)
[ci skip]
2021-03-06 23:56:08 +01:00
Jonas Winkler
46ae7f16dd New translations messages.xlf (English, United Kingdom)
[ci skip]
2021-03-06 23:56:07 +01:00
Jonas Winkler
5da441a001 New translations django.po (Portuguese)
[ci skip]
2021-03-06 23:56:05 +01:00
Jonas Winkler
d495bfab51 New translations django.po (Romanian)
[ci skip]
2021-03-06 23:56:03 +01:00
Michael Shamoon
4b4f3e76cc Re-merging this branch with Reverted dev 2021-03-06 14:50:38 -08:00
Michael Shamoon
ab0e97c1a0 Merge remote-tracking branch 'upstream/dev' into feature/popover-previews 2021-03-06 14:47:10 -08:00
jonaswinkler
381af329bd fix language codes 2021-03-06 23:40:29 +01:00
Michael Shamoon
4a0d17fc57 Merge branch 'feature/popover-previews' of https://github.com/shamoon/paperless-ng into feature/popover-previews 2021-03-06 14:39:53 -08:00
Michael Shamoon
e61f042547 Remove metadata API calls 2021-03-06 14:38:47 -08:00
Michael Shamoon
77815af5fb Update angular.json 2021-03-06 14:29:24 -08:00
jonaswinkler
e9cdb21164 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-03-06 23:25:07 +01:00
Jonas Winkler
59bc467c50 Update README.md 2021-03-06 22:52:52 +01:00
Jonas Winkler
254dc62ca6 Update README.md 2021-03-06 22:50:35 +01:00
Jonas Winkler
253bde4e25 Merge pull request #705 from jonaswinkler/l10n_dev
New Crowdin updates
2021-03-06 22:47:27 +01:00
jonaswinkler
ea9e852216 fix a failing test case 2021-03-06 22:41:35 +01:00
Jonas Winkler
89150e99bf New translations messages.xlf (Xhosa)
[ci skip]
2021-03-06 22:40:29 +01:00
Jonas Winkler
5fd05f3d20 New translations django.po (French)
[ci skip]
2021-03-06 22:40:27 +01:00
Jonas Winkler
6c1a5f1a98 New translations messages.xlf (French)
[ci skip]
2021-03-06 22:40:26 +01:00
Jonas Winkler
7815a011af New translations django.po (Spanish)
[ci skip]
2021-03-06 22:40:25 +01:00
Jonas Winkler
efca0083bf New translations messages.xlf (Spanish)
[ci skip]
2021-03-06 22:40:24 +01:00
Jonas Winkler
4c983b0e25 New translations django.po (Czech)
[ci skip]
2021-03-06 22:40:23 +01:00
Jonas Winkler
d81f64ec06 New translations messages.xlf (Czech)
[ci skip]
2021-03-06 22:40:22 +01:00
Jonas Winkler
5735313392 New translations django.po (German)
[ci skip]
2021-03-06 22:40:20 +01:00
Jonas Winkler
259b2fe429 New translations messages.xlf (German)
[ci skip]
2021-03-06 22:40:19 +01:00
Jonas Winkler
bb739a55a5 New translations django.po (Hungarian)
[ci skip]
2021-03-06 22:40:18 +01:00
Jonas Winkler
7436b75566 New translations messages.xlf (Hungarian)
[ci skip]
2021-03-06 22:40:17 +01:00
Jonas Winkler
573ac882f5 New translations django.po (Italian)
[ci skip]
2021-03-06 22:40:15 +01:00
Jonas Winkler
7f70a886d5 New translations messages.xlf (Italian)
[ci skip]
2021-03-06 22:40:14 +01:00
Jonas Winkler
4a1c0c2971 New translations django.po (Dutch)
[ci skip]
2021-03-06 22:40:13 +01:00
Jonas Winkler
ad37ccd76d New translations messages.xlf (Dutch)
[ci skip]
2021-03-06 22:40:12 +01:00
Jonas Winkler
d3a4b17d59 New translations messages.xlf (Romanian)
[ci skip]
2021-03-06 22:40:10 +01:00
Jonas Winkler
4233d73569 New translations django.po (Portuguese)
[ci skip]
2021-03-06 22:40:09 +01:00
Jonas Winkler
6d9a0162b2 New translations django.po (Russian)
[ci skip]
2021-03-06 22:40:08 +01:00
Jonas Winkler
72f89de994 New translations messages.xlf (Russian)
[ci skip]
2021-03-06 22:40:07 +01:00
Jonas Winkler
bf01799d57 New translations django.po (Chinese Simplified)
[ci skip]
2021-03-06 22:40:05 +01:00
Jonas Winkler
6b63d3855b New translations messages.xlf (Chinese Simplified)
[ci skip]
2021-03-06 22:40:04 +01:00
Jonas Winkler
f0e0e780c5 New translations django.po (Portuguese, Brazilian)
[ci skip]
2021-03-06 22:40:03 +01:00
Jonas Winkler
646803b93e New translations messages.xlf (Portuguese, Brazilian)
[ci skip]
2021-03-06 22:40:02 +01:00
Jonas Winkler
3026b59af4 New translations django.po (Thai)
[ci skip]
2021-03-06 22:40:00 +01:00
Jonas Winkler
5adee00ca1 New translations messages.xlf (Thai)
[ci skip]
2021-03-06 22:39:59 +01:00
Jonas Winkler
47e887dac5 New translations django.po (English, United Kingdom)
[ci skip]
2021-03-06 22:39:58 +01:00
Jonas Winkler
70395a035c New translations messages.xlf (English, United Kingdom)
[ci skip]
2021-03-06 22:39:57 +01:00
Jonas Winkler
2f63dcb3b5 New translations django.po (Latin)
[ci skip]
2021-03-06 22:39:55 +01:00
Jonas Winkler
468ea09965 New translations messages.xlf (Latin)
[ci skip]
2021-03-06 22:39:54 +01:00
Jonas Winkler
b6a94d33b8 New translations django.po (Xhosa)
[ci skip]
2021-03-06 22:39:53 +01:00
Jonas Winkler
40c89a8a38 New translations messages.xlf (Portuguese)
[ci skip]
2021-03-06 22:39:52 +01:00
Jonas Winkler
92a61902b5 New translations django.po (Romanian)
[ci skip]
2021-03-06 22:39:51 +01:00
jonaswinkler
23ee01b1ce Merge branch 'crowdin-test' of github.com:jonaswinkler/paperless-ng into crowdin-test 2021-03-06 22:20:30 +01:00
jonaswinkler
fc727e0472 fix up language file locations 2021-03-06 22:20:06 +01:00
Jonas Winkler
9427c70b10 Update Crowdin configuration file 2021-03-06 22:13:12 +01:00
jonaswinkler
cba71ed8e0 fix config 2021-03-06 22:12:44 +01:00
jonaswinkler
728778bdf4 update crowdin.yml 2021-03-06 22:09:03 +01:00
Jonas Winkler
30a92e25c1 Merge pull request #703 from darmiel/patch-1
Installation Script: Check for Docker permissions on startup
2021-03-06 16:44:44 +01:00
Daniel
4862eb5e84 Use -e switch after docker permission check 2021-03-06 15:40:19 +01:00
Daniel
42fd62ecfd Changed spaces to tabs 2021-03-06 15:30:16 +01:00
Daniel
67437f7b9c Check if the user has permissions for Docker 2021-03-06 15:27:55 +01:00
jonaswinkler
6c961dfad9 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-03-06 12:59:29 +01:00
Jonas Winkler
b0b5f9e0a1 Merge pull request #702 from auanasgheps/patch-1
Update Italian Translation
2021-03-06 12:58:49 +01:00
Oliver Cervera
69df7f8ef6 Update Italian Translation
Minor change to Italian translation.
Manual PR since Transifex doesn't do it.
2021-03-06 12:55:24 +01:00
jonaswinkler
0bb0fc5a19 changelog 2021-03-06 12:42:07 +01:00
jonaswinkler
be15e86458 added a test case for title_content filter 2021-03-06 12:41:59 +01:00
jonaswinkler
24eff6b02b documentation 2021-03-06 12:28:41 +01:00
jonaswinkler
ddb96829ca fix typo 2021-03-06 12:08:52 +01:00
jonaswinkler
4290f38e81 fix closing all documents from sidebar 2021-03-06 12:00:58 +01:00
jonaswinkler
ee4a5d53ad instructions on building the docker image 2021-03-06 11:47:11 +01:00
jonaswinkler
1f4d2e76d7 dark mode for color picker 2021-03-05 23:36:09 +01:00
jonaswinkler
9816efb816 Revert "Merge pull request #628 from shamoon/feature/popover-previews"
This reverts commit 8da1521508, reversing
changes made to a7846925b1.
2021-03-05 23:19:44 +01:00
Jonas Winkler
8da1521508 Merge pull request #628 from shamoon/feature/popover-previews
Feature: popover document previews
2021-03-05 21:34:19 +01:00
Jonas Winkler
a7846925b1 Merge pull request #699 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_en_GB
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'en_GB'
2021-03-05 09:36:52 +01:00
Jonas Winkler
d678bd71e8 Merge pull request #700 from jonaswinkler/translations_src-ui-messages-xlf--dev_en_GB
Translate '/src-ui/messages.xlf' in 'en_GB'
2021-03-05 09:36:39 +01:00
transifex-integration[bot]
67754efd36 Translate /src-ui/messages.xlf in en_GB
translation completed for the source file '/src-ui/messages.xlf'
on the 'en_GB' language.
2021-03-05 08:36:32 +00:00
transifex-integration[bot]
80e0fc21cc Apply translations in en_GB
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'en_GB' language.
2021-03-05 08:36:30 +00:00
Jonas Winkler
1025f6ccb5 Merge pull request #698 from siancu/dev
Postgres won't run without a password.
2021-03-04 16:44:49 +01:00
Stelian Iancu
ede06f4fd4 Postgres won't run without a password. 2021-03-04 16:26:03 +01:00
Jonas Winkler
6dd0de0201 Merge pull request #694 from jonaswinkler/translations_src-ui-messages-xlf--dev_nl_NL
Translate '/src-ui/messages.xlf' in 'nl_NL'
2021-03-04 11:32:56 +01:00
transifex-integration[bot]
7f01ead374 Translate /src-ui/messages.xlf in nl_NL
translation completed for the source file '/src-ui/messages.xlf'
on the 'nl_NL' language.
2021-03-04 10:25:24 +00:00
Michael Shamoon
cba507258d Merge remote-tracking branch 'upstream/dev' into feature/popover-previews 2021-03-03 21:19:51 -08:00
Michael Shamoon
ae93999f6a Simplify preview tooltip since its delayed 2021-03-03 21:14:24 -08:00
Michael Shamoon
1ff7a89a35 Larger popover preview size 2021-03-03 20:49:14 -08:00
Michael Shamoon
31cd32406c Refactor popover css to single file 2021-03-03 20:49:02 -08:00
Michael Shamoon
e5f750dcbe Fix double scrollbar, I think 2021-03-03 20:42:50 -08:00
jonaswinkler
59ecff8701 test case for the migration 2021-03-04 00:16:24 +01:00
jonaswinkler
80e91cde70 changelog 2021-03-04 00:10:15 +01:00
jonaswinkler
b1c2c79d80 update docs 2021-03-03 23:58:53 +01:00
jonaswinkler
5b2576ace4 remove test cases #677 2021-03-03 23:55:25 +01:00
Jonas Winkler
da9f370924 Merge pull request #677 from skuzzle/dev
Add the possibility to customize the remote user header name
2021-03-03 23:54:33 +01:00
jonaswinkler
e56daf07d4 Merge branch 'master' into dev 2021-03-03 23:46:37 +01:00
jonaswinkler
9e3caa57ec fix quoting 2021-03-03 23:44:43 +01:00
jonaswinkler
4fd7b9ef1f Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-03-03 23:44:15 +01:00
jonaswinkler
12235cc853 fixes #689 2021-03-03 23:35:26 +01:00
Jonas Winkler
56e4264394 Merge pull request #680 from jonaswinkler/translations_src-ui-messages-xlf--dev_it
Translate '/src-ui/messages.xlf' in 'it'
2021-03-03 09:39:50 +01:00
Jonas Winkler
baf8203b80 Merge pull request #681 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_it
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'it'
2021-03-03 09:39:39 +01:00
transifex-integration[bot]
41d966895f Apply translations in it
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'it' language.
2021-03-03 07:30:59 +00:00
transifex-integration[bot]
551792274f Translate /src-ui/messages.xlf in it
translation completed for the source file '/src-ui/messages.xlf'
on the 'it' language.
2021-03-03 07:30:31 +00:00
jonaswinkler
c7abdb61e8 added remote user auth test 2021-03-02 23:19:06 +01:00
Simon Taddiken
72ebe7df58 Improve documentation 2021-03-02 10:21:50 +01:00
Simon Taddiken
97f3c214e8 Add the possibility to customize the remote user header name
Inspired by the discussion here https://github.com/jonaswinkler/paperless-ng/discussions/639#discussion-3242017 it is worthwhile to be able to customize the header name that is used for authentication as its name is not really standardized.
2021-03-02 09:07:42 +01:00
Jonas Winkler
47842bac1c Merge pull request #665 from holzhannes/patch-1
Update to status of affiliateded projects
2021-03-02 00:39:13 +01:00
Jonas Winkler
ede498fa52 Merge pull request #671 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_nl_NL
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'nl_NL'
2021-03-01 16:37:53 +01:00
transifex-integration[bot]
c8a06416e7 Apply translations in nl_NL
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'nl_NL' language.
2021-03-01 15:30:27 +00:00
Jonas Winkler
5fea7f2bc4 Merge pull request #666 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_de
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'de'
2021-02-28 21:48:20 +01:00
Jonas Winkler
15420137fa Merge pull request #667 from jonaswinkler/translations_src-ui-messages-xlf--dev_de
Translate '/src-ui/messages.xlf' in 'de'
2021-02-28 21:48:10 +01:00
transifex-integration[bot]
73791e0e50 Translate /src-ui/messages.xlf in de
translation completed for the source file '/src-ui/messages.xlf'
on the 'de' language.
2021-02-28 20:47:42 +00:00
transifex-integration[bot]
7af0f12e6b Apply translations in de
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'de' language.
2021-02-28 20:47:14 +00:00
HolzHannes
895f9c911b Update to status of affiliateded projects 2021-02-28 20:23:38 +01:00
Jonas Winkler
204f47265b Merge pull request #663 from jonaswinkler/translations_src-ui-messages-xlf--dev_ro
Translate '/src-ui/messages.xlf' in 'ro'
2021-02-28 19:54:45 +01:00
transifex-integration[bot]
b240b4821a Translate /src-ui/messages.xlf in ro
translation completed for the source file '/src-ui/messages.xlf'
on the 'ro' language.
2021-02-28 18:04:39 +00:00
Jonas Winkler
249f6e4f27 Merge pull request #661 from jonaswinkler/translations_src-ui-messages-xlf--dev_pt_BR
Translate '/src-ui/messages.xlf' in 'pt_BR'
2021-02-28 18:02:10 +01:00
Jonas Winkler
32facd2877 Merge pull request #662 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_pt_BR
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'pt_BR'
2021-02-28 18:01:23 +01:00
transifex-integration[bot]
fd3cb6e2ca Apply translations in pt_BR
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'pt_BR' language.
2021-02-28 16:59:47 +00:00
transifex-integration[bot]
1df6d857e5 Translate /src-ui/messages.xlf in pt_BR
translation completed for the source file '/src-ui/messages.xlf'
on the 'pt_BR' language.
2021-02-28 16:59:35 +00:00
Jonas Winkler
3b9c2fd4d2 Merge pull request #660 from jonaswinkler/translations_src-ui-messages-xlf--dev_fr
Translate '/src-ui/messages.xlf' in 'fr'
2021-02-28 17:38:14 +01:00
Jonas Winkler
baa130e646 Merge pull request #659 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_fr
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'fr'
2021-02-28 17:38:04 +01:00
transifex-integration[bot]
c3ec40189f Translate /src-ui/messages.xlf in fr
translation completed for the source file '/src-ui/messages.xlf'
on the 'fr' language.
2021-02-28 16:36:24 +00:00
transifex-integration[bot]
686ae5b213 Apply translations in fr
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'fr' language.
2021-02-28 16:35:20 +00:00
jonaswinkler
5c19a8bb70 improved color generation logic 2021-02-28 16:35:02 +01:00
jonaswinkler
efa7b7b0b5 filter by title or title+content fixes #636 2021-02-28 16:19:41 +01:00
jonaswinkler
e466c31bb3 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-02-28 13:39:17 +01:00
Jonas Winkler
942acf5940 Merge pull request #658 from jonaswinkler/translations_src-ui-messages-xlf--dev_ro
Translate '/src-ui/messages.xlf' in 'ro'
2021-02-28 13:39:01 +01:00
Jonas Winkler
b38d8d8640 Merge pull request #657 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_ro
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'ro'
2021-02-28 13:38:35 +01:00
transifex-integration[bot]
c4c8a96f25 Translate /src-ui/messages.xlf in ro
translation completed for the source file '/src-ui/messages.xlf'
on the 'ro' language.
2021-02-28 12:36:01 +00:00
transifex-integration[bot]
65377d881c Apply translations in ro
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'ro' language.
2021-02-28 12:35:21 +00:00
jonaswinkler
b847e0c65e changelog, documentation, version bump 2021-02-28 13:20:31 +01:00
jonaswinkler
6ab884a95c update dependencies 2021-02-28 13:01:26 +01:00
jonaswinkler
4b17a485ae update messages and typo fix 2021-02-28 12:42:46 +01:00
jonaswinkler
e5a4715161 add Romanian locale configuration 2021-02-28 12:40:25 +01:00
Jonas Winkler
53b7b14467 Merge pull request #656 from jonaswinkler/translations_src-ui-messages-xlf--dev_ro
Translate '/src-ui/messages.xlf' in 'ro'
2021-02-28 12:02:42 +01:00
transifex-integration[bot]
5eeb012557 Translate /src-ui/messages.xlf in ro
translation completed for the source file '/src-ui/messages.xlf'
on the 'ro' language.
2021-02-28 11:02:26 +00:00
Jonas Winkler
cf9884aaba Merge pull request #655 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_ro
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'ro'
2021-02-28 11:47:35 +01:00
transifex-integration[bot]
d811cab57e Apply translations in ro
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'ro' language.
2021-02-28 10:33:26 +00:00
jonaswinkler
d5a3443076 Merge branch 'fix/issue-603' into dev 2021-02-27 11:25:21 +01:00
jonaswinkler
bd11d3a34f small changes 2021-02-27 11:24:58 +01:00
jonaswinkler
5f6a202d65 Merge remote-tracking branch 'shamoon/fix/issue-603' into fix/issue-603 2021-02-27 11:13:21 +01:00
jonaswinkler
6db3f7023f remove unused files 2021-02-26 23:24:13 +01:00
Michael Shamoon
8a64898798 TypeScript fixes 2021-02-26 14:16:31 -08:00
Michael Shamoon
6ad14d63d6 Consistency please 2021-02-26 14:11:25 -08:00
Michael Shamoon
a26150ca40 Hover state for close x button 2021-02-26 14:08:13 -08:00
Michael Shamoon
57c9066f81 Closing should only navigate if closing current document 2021-02-26 14:08:04 -08:00
jonaswinkler
fe3c3b8946 Merge branch 'dev' into fix/issue-603 2021-02-26 22:25:33 +01:00
Jonas Winkler
76686c22fc Merge pull request #648 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_nl_NL
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'nl_NL'
2021-02-26 22:24:23 +01:00
Jonas Winkler
bba4057616 Merge pull request #647 from jonaswinkler/translations_src-ui-messages-xlf--dev_nl_NL
Translate '/src-ui/messages.xlf' in 'nl_NL'
2021-02-26 22:24:11 +01:00
transifex-integration[bot]
10a1f34164 Apply translations in nl_NL
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'nl_NL' language.
2021-02-26 21:07:13 +00:00
transifex-integration[bot]
4516a5def5 Translate /src-ui/messages.xlf in nl_NL
translation completed for the source file '/src-ui/messages.xlf'
on the 'nl_NL' language.
2021-02-26 21:06:40 +00:00
Jonas Winkler
4ef4af452a Merge pull request #646 from C0nsultant/ansible-CI-stability
Ansible - Fix GitHub actions
2021-02-26 21:28:43 +01:00
Fabian Koller
8f1e95a0ce Fix GitHub actions
Follow-up to #630.
The check for the target git sha can does not work in the molecule step.
Instead expose the sha through an env variable in GitHub actions.
2021-02-26 19:39:44 +01:00
Jonas Winkler
824aea0c7b Merge pull request #645 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_en_GB
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'en_GB'
2021-02-26 15:42:54 +01:00
Jonas Winkler
7d54f0e336 Merge pull request #644 from jonaswinkler/translations_src-ui-messages-xlf--dev_en_GB
Translate '/src-ui/messages.xlf' in 'en_GB'
2021-02-26 15:42:42 +01:00
transifex-integration[bot]
961b47239b Apply translations in en_GB
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'en_GB' language.
2021-02-26 14:36:09 +00:00
transifex-integration[bot]
248f19a550 Translate /src-ui/messages.xlf in en_GB
translation completed for the source file '/src-ui/messages.xlf'
on the 'en_GB' language.
2021-02-26 14:36:04 +00:00
jonaswinkler
29e6529884 Merge branch 'master' into dev 2021-02-26 15:29:58 +01:00
jonaswinkler
cb4f822a19 documentation changes 2021-02-26 15:29:33 +01:00
jonaswinkler
2159fefc87 Merge branch 'master' into dev 2021-02-26 14:54:47 +01:00
jonaswinkler
d341bf14ff Merge branch 'feature-invert-thumb-option' into dev 2021-02-26 14:31:18 +01:00
Jonas Winkler
c793ac9c6c Merge pull request #638 from smaktacular/fix-dev-setup-docs
Added First-Time Step-by-Step procedure for Dev Env and CopyPaste lists of depen…
2021-02-26 14:08:43 +01:00
jonaswinkler
289589654b tests for API versioning 2021-02-26 13:21:33 +01:00
jonaswinkler
8cb9c9faf9 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-02-26 13:09:14 +01:00
jonaswinkler
1c0069e95e fix pycodestyle 2021-02-26 13:09:02 +01:00
Jonas Winkler
8f23642e7d Merge pull request #643 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_de
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'de'
2021-02-26 12:59:56 +01:00
Jonas Winkler
b59758379e Merge pull request #642 from jonaswinkler/translations_src-ui-messages-xlf--dev_de
Translate '/src-ui/messages.xlf' in 'de'
2021-02-26 12:59:47 +01:00
transifex-integration[bot]
d91267ee91 Apply translations in de
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'de' language.
2021-02-26 11:59:26 +00:00
transifex-integration[bot]
6196bc7b2e Translate /src-ui/messages.xlf in de
translation completed for the source file '/src-ui/messages.xlf'
on the 'de' language.
2021-02-26 11:59:16 +00:00
jonaswinkler
adfe5c123c update messages 2021-02-26 12:57:36 +01:00
jonaswinkler
573726d0b2 add Italian locale 2021-02-26 12:55:39 +01:00
Sebastian König
5cb95b6e55 Minor changes 2021-02-26 12:50:12 +01:00
Jonas Winkler
4ce79955f8 Merge pull request #640 from jonaswinkler/translations_src-ui-messages-xlf--dev_it
Translate '/src-ui/messages.xlf' in 'it'
2021-02-26 12:35:17 +01:00
Jonas Winkler
3d320b4e61 Merge pull request #641 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_it
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'it'
2021-02-26 12:34:58 +01:00
Bolko Schreiber
420feb3a52 lowered thumb brightness in non-inverted mode 2021-02-26 12:26:23 +01:00
transifex-integration[bot]
4d425cf7b8 Apply translations in it
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'it' language.
2021-02-26 11:24:55 +00:00
transifex-integration[bot]
f716300152 Translate /src-ui/messages.xlf in it
translation completed for the source file '/src-ui/messages.xlf'
on the 'it' language.
2021-02-26 11:02:24 +00:00
jonaswinkler
fea625e443 Merge branch 'dev' into fix/issue-603 2021-02-26 11:27:53 +01:00
jonaswinkler
068fdbd3f9 added versioning headers to the API 2021-02-26 11:13:28 +01:00
Sebastian König
fd2cbc13ff Added First-Time Step-by-Step procedure and CopyPaste lists of depeendencies to the docs 2021-02-26 09:49:36 +01:00
jonaswinkler
6a70b9c4b4 Merge branch 'feature-autocolor' into dev 2021-02-25 23:46:27 +01:00
jonaswinkler
4ee7d16d3e fix #600 2021-02-25 23:23:26 +01:00
jonaswinkler
6fd25da80d API documentation 2021-02-25 23:04:37 +01:00
jonaswinkler
2fb286cd43 shadows 2021-02-25 22:49:47 +01:00
jonaswinkler
3a75b2571a increase luminance threshold for better readability 2021-02-25 22:49:38 +01:00
jonaswinkler
66fe821b04 color picker fixes, random default color 2021-02-25 22:43:45 +01:00
jonaswinkler
ba478c6cbb tests 2021-02-25 22:17:18 +01:00
jonaswinkler
7b1145c75e bugfixes 2021-02-25 22:16:31 +01:00
jonaswinkler
b45630080b Merge branch 'dev' into feature-autocolor 2021-02-25 18:54:40 +01:00
jonaswinkler
170ddbc76f Merge branch 'dev' 2021-02-25 17:53:17 +01:00
Jonas Winkler
91b364f531 Merge pull request #630 from C0nsultant/ansible-CI-stability
Ansible - Improve CI stability
2021-02-25 17:50:40 +01:00
Michael Shamoon
aadcc85e73 fix forgot to remove class when nested nav-link-additional scss block 2021-02-25 07:48:48 -08:00
Michael Shamoon
548b1ea7ec Allow closing individual documents from sidebar 2021-02-25 07:43:02 -08:00
jonaswinkler
463696e6a8 changelog 2021-02-25 16:42:06 +01:00
Michael Shamoon
66f7ae3773 Remove redundant openDocuments and unused subscription 2021-02-25 07:29:51 -08:00
jonaswinkler
cc2b836646 fix date input error display 2021-02-25 16:29:49 +01:00
jonaswinkler
816a4c1887 fix an issue with the pt-br translation 2021-02-25 16:24:24 +01:00
jonaswinkler
604da64f52 fixed a regression in the date pipe 2021-02-25 16:22:50 +01:00
jonaswinkler
247edc89f0 fix default api version 2021-02-25 16:04:45 +01:00
Bolko Schreiber
6a1f5fb4cd cleanup css 2021-02-25 15:35:15 +01:00
Jonas Winkler
01c11f9fa0 Merge pull request #634 from chriscn/patch-1
Fixed typo of scripts
2021-02-25 15:32:59 +01:00
Christopher Nethercott
9434851c54 Fixed typo of scripts 2021-02-25 14:16:22 +00:00
Bolko Schreiber
a331e4b49c Set default value of DARK_MODE_THUMB_INVERTED to true 2021-02-25 14:52:55 +01:00
Bolko Schreiber
772f5cb1a8 Added option to invert thumbnails in dark mode 2021-02-25 13:57:45 +01:00
jonaswinkler
0fa9d71da8 fix duplicate IDs 2021-02-25 11:42:38 +01:00
jonaswinkler
3872c3c49b fixes #603 2021-02-25 11:42:21 +01:00
jonaswinkler
018b53db1b fix pt-br calendar 2021-02-25 11:37:39 +01:00
jonaswinkler
33ed2c8851 adjust frontend to use the new tag color api 2021-02-25 11:32:22 +01:00
jonaswinkler
c75e30fd28 validate hex color strings 2021-02-25 11:30:49 +01:00
jonaswinkler
7cc940a16c add text color generation based on luminance 2021-02-25 11:30:36 +01:00
Fabian Koller
ba853be00d Use local HEAD hash as installation target
GitHub actions' GITHUB_SHA provides unexpected hashes for manually
re-run pipelines. Instead rely on the commit as seen from the current
git history.
2021-02-25 06:59:27 +01:00
Fabian Koller
a720ed6a77 Do not require molecule teardown for success
CI failures should not be caused by intermittently failing docker
communication furing test teardown.
2021-02-25 06:22:59 +01:00
jonaswinkler
d84ca511d4 versioning for the tags API 2021-02-24 23:54:19 +01:00
jonaswinkler
95fe803bf6 remove colorhash (this will be done client side) 2021-02-24 23:52:52 +01:00
jonaswinkler
87c364a104 adjust migration 2021-02-24 23:52:25 +01:00
jonaswinkler
7233695824 Merge branch 'dev' into feature-autocolor 2021-02-24 23:10:59 +01:00
jonaswinkler
3d3300ac32 add versioning support to the API 2021-02-24 22:27:43 +01:00
Michael Shamoon
ef7775b658 Remove object tag contents 2021-02-24 13:08:39 -08:00
Michael Shamoon
a8776603c3 Fix removed setting 2021-02-24 13:08:31 -08:00
Michael Shamoon
ee92ab1136 Support large cards 2021-02-24 13:02:26 -08:00
Michael Shamoon
83c88ca472 Unused settings 2021-02-24 12:48:58 -08:00
Michael Shamoon
6f22297158 Merge remote-tracking branch 'upstream/dev' into feature/popover-previews 2021-02-24 12:41:44 -08:00
Jonas Winkler
df87599f1b Merge pull request #625 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_fr
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'fr'
2021-02-24 20:53:25 +01:00
Jonas Winkler
367b5e73cb Merge pull request #626 from jonaswinkler/translations_src-ui-messages-xlf--dev_fr
Translate '/src-ui/messages.xlf' in 'fr'
2021-02-24 20:53:13 +01:00
transifex-integration[bot]
d6cbea97f9 Translate /src-ui/messages.xlf in fr
translation completed for the source file '/src-ui/messages.xlf'
on the 'fr' language.
2021-02-24 19:30:01 +00:00
transifex-integration[bot]
e43ab23a45 Apply translations in fr
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'fr' language.
2021-02-24 19:29:33 +00:00
Michael Shamoon
706b1f4622 Remove ng2-pdf-viewer and use only native viewer 2021-02-24 11:26:39 -08:00
jonaswinkler
5b75321a31 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-02-24 20:02:10 +01:00
Michael Shamoon
2f2b5b90ea Dark mode compatibility 2021-02-24 19:58:51 +01:00
Jonas Winkler
cf3dedf4bb Merge pull request #622 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_en_GB
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'en_GB'
2021-02-24 19:43:59 +01:00
Jonas Winkler
d874145f52 Merge pull request #623 from jonaswinkler/translations_src-ui-messages-xlf--dev_en_GB
Translate '/src-ui/messages.xlf' in 'en_GB'
2021-02-24 19:43:51 +01:00
transifex-integration[bot]
800f4deb90 Translate /src-ui/messages.xlf in en_GB
translation completed for the source file '/src-ui/messages.xlf'
on the 'en_GB' language.
2021-02-24 18:43:40 +00:00
transifex-integration[bot]
c22af0a782 Apply translations in en_GB
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'en_GB' language.
2021-02-24 18:43:39 +00:00
Jonas Winkler
8465b8cfca Update README.md 2021-02-24 19:27:16 +01:00
jonaswinkler
6ae65e0ab4 changelog 2021-02-24 19:21:15 +01:00
jonaswinkler
6a64bf6fc1 changelog 2021-02-24 19:05:06 +01:00
jonaswinkler
f038bb90bb fixes for #600 2021-02-24 19:03:21 +01:00
jonaswinkler
a5ba14e446 version bump 2021-02-24 19:03:03 +01:00
Jonas Winkler
70f657beff Merge pull request #602 from C0nsultant/ansible-newocrvars
Ansible - Update exposed configuration variables
2021-02-24 18:56:20 +01:00
jonaswinkler
b1085c36ff Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-02-24 18:45:16 +01:00
jonaswinkler
1896aa7da1 use new date inputs for the date filter as well 2021-02-24 18:45:05 +01:00
Jonas Winkler
087856c535 Merge pull request #621 from jonaswinkler/translations_src-ui-messages-xlf--dev_pt_BR
Translate '/src-ui/messages.xlf' in 'pt_BR'
2021-02-24 18:26:55 +01:00
Jonas Winkler
27f1364caa Merge pull request #620 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_pt_BR
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'pt_BR'
2021-02-24 18:26:33 +01:00
transifex-integration[bot]
bec5365ac9 Translate /src-ui/messages.xlf in pt_BR
translation completed for the source file '/src-ui/messages.xlf'
on the 'pt_BR' language.
2021-02-24 17:18:26 +00:00
transifex-integration[bot]
0db14d6f74 Apply translations in pt_BR
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'pt_BR' language.
2021-02-24 17:18:07 +00:00
Jonas Winkler
ccb44e1bd1 Merge pull request #618 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_de
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'de'
2021-02-24 18:11:48 +01:00
Jonas Winkler
8c3db627e4 Merge pull request #619 from jonaswinkler/translations_src-ui-messages-xlf--dev_de
Translate '/src-ui/messages.xlf' in 'de'
2021-02-24 18:11:36 +01:00
transifex-integration[bot]
56204f8497 Translate /src-ui/messages.xlf in de
translation completed for the source file '/src-ui/messages.xlf'
on the 'de' language.
2021-02-24 17:10:24 +00:00
transifex-integration[bot]
fc75e88cb7 Apply translations in de
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'de' language.
2021-02-24 17:10:20 +00:00
jonaswinkler
d2719b5309 added a missing string 2021-02-24 18:08:55 +01:00
jonaswinkler
e5254abfcd Merge remote-tracking branch 'origin/master' into dev 2021-02-24 18:07:57 +01:00
jonaswinkler
96b8d35a00 update dependencies 2021-02-24 18:00:35 +01:00
jonaswinkler
035b0a449b use ng-bootstrap date selector, with proper formatting/parsing according to the current locale #177 2021-02-24 18:00:26 +01:00
jonaswinkler
6b20177b09 update README.md 2021-02-24 17:41:32 +01:00
jonaswinkler
15861ea41a add translation strings for portuguese 2021-02-24 16:50:05 +01:00
jonaswinkler
d836756e19 fix up quoting (hope this gets pushed into transifex 2021-02-24 16:43:55 +01:00
jonaswinkler
191d9a7b2b add configuration for pt-br 2021-02-24 16:39:41 +01:00
Jonas Winkler
0394cd7631 Merge pull request #617 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_pt_BR
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'pt_BR'
2021-02-24 16:19:00 +01:00
transifex-integration[bot]
c1ddff4ee5 Apply translations in pt_BR
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'pt_BR' language.
2021-02-24 15:00:14 +00:00
Jonas Winkler
55cc428cd3 Merge pull request #616 from jonaswinkler/translations_src-ui-messages-xlf--dev_pt_BR
Translate '/src-ui/messages.xlf' in 'pt_BR'
2021-02-24 15:03:51 +01:00
transifex-integration[bot]
39505c9764 Translate /src-ui/messages.xlf in pt_BR
translation completed for the source file '/src-ui/messages.xlf'
on the 'pt_BR' language.
2021-02-24 13:33:41 +00:00
Jonas Winkler
887a2f9be1 Merge pull request #615 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_de
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'de'
2021-02-24 12:53:22 +01:00
transifex-integration[bot]
1328fa9e5e Apply translations in de
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'de' language.
2021-02-24 11:52:24 +00:00
Jonas Winkler
513830f319 Merge pull request #612 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_fr
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'fr'
2021-02-24 11:13:36 +01:00
transifex-integration[bot]
440abcda7c Apply translations in fr
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'fr' language.
2021-02-24 09:09:47 +00:00
Jonas Winkler
6f3fdbecea Merge pull request #611 from bish0polis/patch-1
Update README.md
2021-02-24 09:40:50 +01:00
Bishop Clark
3a46cc33ee Update README.md
Like 'stuff' and 'traffic', 'mail' gets no 's'.
2021-02-23 22:09:12 -08:00
Jonas Winkler
ae3eb84e01 Merge pull request #600 from joelnordell/apple-touch-icon
Add apple-touch-icon for iOS devices "Add to Home Screen"
2021-02-23 16:18:56 +01:00
jonaswinkler
7a73e18596 fix pycodestyle and messages 2021-02-23 13:21:11 +01:00
jonaswinkler
c89779e8fc Merge branch 'master' into dev 2021-02-23 13:17:23 +01:00
jonaswinkler
5ca8d10d04 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-02-23 13:17:20 +01:00
jonaswinkler
1ce6aef57c Merge branch 'master' of github.com:jonaswinkler/paperless-ng 2021-02-23 13:17:08 +01:00
jonaswinkler
49b23aafa3 documentation typos 2021-02-23 13:16:56 +01:00
jonaswinkler
f888647b12 front end support for displaying error messages about regular expressions. 2021-02-23 13:13:38 +01:00
jonaswinkler
065ff6eaf5 rename some steps 2021-02-23 13:13:12 +01:00
Jonas Winkler
bf976fe188 Merge pull request #608 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_de
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'de'
2021-02-23 13:12:29 +01:00
transifex-integration[bot]
5ce73574c8 Apply translations in de
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'de' language.
2021-02-23 12:12:00 +00:00
jonaswinkler
5d94a983d2 move codestyle checks into separate job 2021-02-23 13:09:41 +01:00
Jonas Winkler
25366af4bb Update CONTRIBUTING.md 2021-02-23 13:03:20 +01:00
jonaswinkler
f397c5472c validation for regular expressions on matching models #605 2021-02-23 12:35:24 +01:00
Fabian Koller
6273eb0061 Handle OCR languages with hyphens
See https://github.com/jonaswinkler/paperless-ng/issues/584#issuecomment-782830878
2021-02-23 08:48:46 +01:00
Fabian Koller
734fd7c0fc Update exposed configuration variables
Include the newly added OCR clean and deskew parameters
2021-02-23 08:35:10 +01:00
Joel Nordell
8797a58efc Add apple-touch-icon for iOS devices "Add to Home Screen" 2021-02-22 22:25:10 -06:00
Jonas Winkler
8da85d3609 Update ci.yml 2021-02-22 13:25:21 +01:00
jonaswinkler
127d30918d lets hope this works! 2021-02-22 12:03:07 +01:00
jonaswinkler
3b553f6455 changelog 2021-02-22 11:53:13 +01:00
jonaswinkler
6d934da5dd Revert "associate error messages with documents"
This reverts commit aa3d91a3
2021-02-22 11:52:54 +01:00
jonaswinkler
aa3d91a338 associate error messages with documents 2021-02-22 11:38:16 +01:00
jonaswinkler
d64818b46c fixes #591 2021-02-22 11:11:04 +01:00
jonaswinkler
99a18516b2 tests 2021-02-22 00:17:16 +01:00
jonaswinkler
30b0a30146 dropdown menu shadows 2021-02-22 00:04:44 +01:00
jonaswinkler
cb10617979 enable deskewing and rotation by default 2021-02-21 23:40:26 +01:00
jonaswinkler
265432f2a5 fix up the ocrmypdf parameter construction for clean-final and redo 2021-02-21 23:39:19 +01:00
jonaswinkler
a13e9f23b1 use archived file for thumbnail, if available 2021-02-21 23:30:14 +01:00
jonaswinkler
65b37f61ca update thumbnail in archiver, since page rotation might have changed 2021-02-21 23:29:52 +01:00
jonaswinkler
7751755399 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-02-21 22:27:58 +01:00
jonaswinkler
14e2ad7bc4 more parameter checking 2021-02-21 22:19:24 +01:00
jonaswinkler
dfc23a2b38 bugfix for tika parser 2021-02-21 21:36:43 +01:00
Jonas Winkler
d2fc840293 Merge pull request #587 from jonaswinkler/translations_src-ui-messages-xlf--dev_fr
Translate '/src-ui/messages.xlf' in 'fr'
2021-02-21 16:01:53 +01:00
Jonas Winkler
37fe6fb9c3 Merge pull request #586 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_fr
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'fr'
2021-02-21 16:01:41 +01:00
transifex-integration[bot]
a21ec76997 Translate /src-ui/messages.xlf in fr
translation completed for the source file '/src-ui/messages.xlf'
on the 'fr' language.
2021-02-21 14:16:49 +00:00
transifex-integration[bot]
501d8d9683 Apply translations in fr
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'fr' language.
2021-02-21 14:15:43 +00:00
jonaswinkler
8562ca9a77 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-02-21 13:44:15 +01:00
jonaswinkler
29641e5d66 Merge branch 'master' into dev 2021-02-21 13:44:07 +01:00
jonaswinkler
ee7308be2d documentation on how to build the documentation 2021-02-21 13:43:54 +01:00
jonaswinkler
ef4009e94f documentation 2021-02-21 13:35:47 +01:00
Jonas Winkler
27d2ae6976 Merge pull request #585 from jonaswinkler/translations_src-ui-messages-xlf--dev_en_GB
Translate '/src-ui/messages.xlf' in 'en_GB'
2021-02-21 13:12:31 +01:00
transifex-integration[bot]
0f9675f9d6 Translate /src-ui/messages.xlf in en_GB
translation completed for the source file '/src-ui/messages.xlf'
on the 'en_GB' language.
2021-02-21 12:12:19 +00:00
jonaswinkler
bac4a63cc8 run the polling file change checks on individual threads to speed up queueing of new files 2021-02-21 12:43:55 +01:00
jonaswinkler
0453787d38 increased default delay when waiting for file changes with polling 2021-02-21 12:14:54 +01:00
jonaswinkler
afc3e41f13 changelog 2021-02-21 01:48:14 +01:00
jonaswinkler
86d6316cc9 version bump 2021-02-21 01:30:03 +01:00
jonaswinkler
7b2c1f82f5 documentation 2021-02-21 01:29:55 +01:00
jonaswinkler
e2a932d744 update dependencies 2021-02-21 00:24:33 +01:00
jonaswinkler
b978994525 documentation for the new configuration options 2021-02-21 00:23:01 +01:00
jonaswinkler
6da237dd9e pycodestyle 2021-02-21 00:21:43 +01:00
jonaswinkler
50c1978d36 tests 2021-02-21 00:18:34 +01:00
jonaswinkler
fdb310c497 changelog 2021-02-21 00:17:12 +01:00
jonaswinkler
ce121a261d completely reworked the OCRmyPDF parser. 2021-02-21 00:16:57 +01:00
jonaswinkler
ebdfd4241a Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-02-21 00:13:17 +01:00
jonaswinkler
9cbb1c5726 add some test files 2021-02-21 00:13:08 +01:00
Jonas Winkler
85dabccbe7 Merge pull request #579 from jonaswinkler/translations_src-ui-messages-xlf--dev_nl_NL
Translate '/src-ui/messages.xlf' in 'nl_NL'
2021-02-20 19:01:08 +01:00
transifex-integration[bot]
a9a8189d4b Translate /src-ui/messages.xlf in nl_NL
translation completed for the source file '/src-ui/messages.xlf'
on the 'nl_NL' language.
2021-02-20 17:45:27 +00:00
Jonas Winkler
30579112d2 Merge pull request #578 from jonaswinkler/translations_src-ui-messages-xlf--dev_de
Translate '/src-ui/messages.xlf' in 'de'
2021-02-20 16:45:20 +01:00
transifex-integration[bot]
ccfd009c1a Translate /src-ui/messages.xlf in de
translation completed for the source file '/src-ui/messages.xlf'
on the 'de' language.
2021-02-20 15:44:19 +00:00
jonaswinkler
044a939623 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-02-20 16:11:25 +01:00
jonaswinkler
203bc162cd front end support for downloading multiple documents 2021-02-20 16:10:50 +01:00
jonaswinkler
31f03ef1d3 API support for downloading compressed archives of multiple documents 2021-02-20 16:09:29 +01:00
Jonas Winkler
4d3552dc64 Merge pull request #570 from jonaswinkler/translations_src-ui-messages-xlf--dev_en_GB
Translate '/src-ui/messages.xlf' in 'en_GB'
2021-02-19 12:18:46 +01:00
Jonas Winkler
ea8a52404f Merge pull request #569 from jonaswinkler/translations_src-ui-messages-xlf--dev_de
Translate '/src-ui/messages.xlf' in 'de'
2021-02-19 12:18:35 +01:00
Jonas Winkler
0ae9aecdef Update README.md 2021-02-19 11:51:59 +01:00
jonaswinkler
4de4789605 this took way too much time 2021-02-19 11:34:51 +01:00
jonaswinkler
950bb46827 version bump 2021-02-19 11:31:14 +01:00
Jonas Winkler
44936dc5f0 Update README.md 2021-02-19 11:24:21 +01:00
Jonas Winkler
1140a878b4 Update README.md 2021-02-19 11:22:43 +01:00
transifex-integration[bot]
efb49af7ac Translate /src-ui/messages.xlf in en_GB
translation completed for the source file '/src-ui/messages.xlf'
on the 'en_GB' language.
2021-02-18 16:44:55 +00:00
transifex-integration[bot]
b5a8106a6a Translate /src-ui/messages.xlf in de
translation completed for the source file '/src-ui/messages.xlf'
on the 'de' language.
2021-02-18 16:43:41 +00:00
jonaswinkler
0f80eee54e refactored most of the list view; fixes #147, much snappier UX when switching between views 2021-02-18 17:29:21 +01:00
jonaswinkler
0e237fa459 messages 2021-02-18 17:11:47 +01:00
Jonas Winkler
702b985ceb Merge pull request #558 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_de
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'de'
2021-02-17 14:46:25 +01:00
Jonas Winkler
7d87bcbb98 Merge pull request #560 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_en_GB
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'en_GB'
2021-02-17 14:46:14 +01:00
Jonas Winkler
340521aa0d Merge pull request #559 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_nl_NL
Translate '/src/locale/en_US/LC_MESSAGES/django.po' in 'nl_NL'
2021-02-17 14:46:03 +01:00
transifex-integration[bot]
7bc557a999 Apply translations in en_GB
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'en_GB' language.
2021-02-17 13:36:15 +00:00
jonaswinkler
dfa7cdf47e Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-02-17 14:26:26 +01:00
jonaswinkler
0d78e58d77 fixed paperless not properly selecting en-gb 2021-02-17 14:26:06 +01:00
transifex-integration[bot]
58df3d5767 Apply translations in nl_NL
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'nl_NL' language.
2021-02-17 12:57:48 +00:00
Jonas Winkler
4e4d6e806c Update Crowdin configuration file 2021-02-17 13:22:45 +01:00
Jonas Winkler
6ff99945f3 Update Crowdin configuration file 2021-02-17 13:18:19 +01:00
transifex-integration[bot]
b7f1b9f8ad Apply translations in de
translation completed for the source file '/src/locale/en_US/LC_MESSAGES/django.po'
on the 'de' language.
2021-02-17 11:50:01 +00:00
jonaswinkler
08a44cf468 changelog and version 2021-02-17 12:31:19 +01:00
jonaswinkler
a1162d6d5a update requirements 2021-02-17 12:25:34 +01:00
jonaswinkler
1c81d88013 add support for iso 8601 date display 2021-02-17 12:15:22 +01:00
jonaswinkler
1e4ec7e29e added en-GB language 2021-02-16 14:54:18 +01:00
jonaswinkler
2c4e34dd0c changelog 2021-02-15 23:44:48 +01:00
jonaswinkler
cb308fae7b only show inbox statistics if inbox tags are defined 2021-02-15 23:14:54 +01:00
jonaswinkler
3f03d51b24 version bump 2021-02-15 16:52:45 +01:00
jonaswinkler
831db6ab87 note regarding Python 3.6 2021-02-15 16:46:06 +01:00
jonaswinkler
43fdf634f2 added a note regarding python 3.6 2021-02-15 16:37:44 +01:00
jonaswinkler
f07a6b4586 PAPERLESS_WEBSERVER_WORKERS option 2021-02-15 16:27:35 +01:00
jonaswinkler
2fcf484229 bugfix dismissing wrong status messages 2021-02-15 14:52:47 +01:00
jonaswinkler
8bf4241b16 some search index optimizations 2021-02-15 13:26:36 +01:00
jonaswinkler
56bd966c02 local import of ocrmypdf so that the webserver does not load that 2021-02-15 12:18:10 +01:00
jonaswinkler
416101d557 only import dateparser when required 2021-02-15 11:52:46 +01:00
jonaswinkler
c330cca2c9 remove unused imports 2021-02-15 11:26:13 +01:00
jonaswinkler
7e88085377 load sklearn modules only when training data has changed 2021-02-15 11:25:25 +01:00
jonaswinkler
5e669534f2 reorganized test case 2021-02-14 17:24:31 +01:00
jonaswinkler
98b147b622 better sanity checker that logs messages in the log files and does not fail on warnings. 2021-02-14 17:08:29 +01:00
jonaswinkler
df6c59bc4f update dependencies 2021-02-14 15:38:47 +01:00
jonaswinkler
6e48da41e5 changelog 2021-02-14 14:05:42 +01:00
Jonas Winkler
5c8a01a6e8 Merge pull request #538 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_cs
Translate '/src/locale/en-us/LC_MESSAGES/django.po' in 'cs'
2021-02-14 13:41:33 +01:00
jonaswinkler
3d0a52c25f only load channels app if DEBUG is enabled; its only purpose is to monkey-patch the runserver command. 2021-02-14 12:50:30 +01:00
jonaswinkler
43c729568b release worker memory after tasks are done. 2021-02-14 12:29:55 +01:00
transifex-integration[bot]
62caeed283 Apply translations in cs
translation completed for the source file '/src/locale/en-us/LC_MESSAGES/django.po'
on the 'cs' language.
2021-02-14 07:05:05 +00:00
jonaswinkler
12836d4c68 revert django-q configuration 2021-02-13 20:25:52 +01:00
jonaswinkler
b48e67d714 revert a faulty change that caused memory usage to explode #537 2021-02-13 19:51:04 +01:00
jonaswinkler
f91f4d71bb Merge branch 'master' into dev 2021-02-13 18:09:14 +01:00
jonaswinkler
0a1f264c71 Gotenberg troubleshooting 2021-02-13 18:09:00 +01:00
jonaswinkler
64d61ae2fa version bump 2021-02-13 18:01:19 +01:00
jonaswinkler
5f0e800f6e metadata tab not showing anything if files are missing #534 2021-02-13 16:41:03 +01:00
jonaswinkler
8b2965d55b added sanity checker management command for manual execution #534 2021-02-13 16:39:29 +01:00
jonaswinkler
ed478a1d73 change thumbnail display for extra wide images #433 2021-02-12 18:20:17 +01:00
jonaswinkler
13e91d8c95 changelog 2021-02-12 18:04:15 +01:00
jonaswinkler
6ac90181cb documentation and changelog 2021-02-12 16:54:00 +01:00
jonaswinkler
d6c3471909 reprganized docker file, less layers, new shortcuts for management commands 2021-02-12 16:53:51 +01:00
jonaswinkler
5b56fad9c7 fix test case 2021-02-12 01:31:50 +01:00
jonaswinkler
ed0b1fe115 better exception logging 2021-02-11 22:16:41 +01:00
jonaswinkler
4211153527 update file renaming logic 2021-02-11 13:47:17 +01:00
jonaswinkler
2f85461109 added some test cases that I still need to address 2021-02-10 23:53:48 +01:00
jonaswinkler
3fa7dcb0cb changes to the admin document list 2021-02-10 21:34:58 +01:00
jonaswinkler
857fe3a55c fix one incorrect use of archive_version 2021-02-10 21:34:39 +01:00
jonaswinkler
dd19ea46fe backup documentation 2021-02-10 20:14:55 +01:00
jonaswinkler
21740a9d87 changelog 2021-02-10 20:05:02 +01:00
jonaswinkler
658fb2f208 remove invalid test cases 2021-02-10 20:01:35 +01:00
jonaswinkler
252d4cb513 update document admin 2021-02-10 18:55:39 +01:00
jonaswinkler
5aed41223b Merge branch 'master' into dev 2021-02-10 18:44:02 +01:00
jonaswinkler
45dfbf3747 downgrades 2021-02-10 18:27:41 +01:00
jonaswinkler
e4fe5bebab requirements 2021-02-10 17:09:22 +01:00
jonaswinkler
04519ee623 more testing of the migration 2021-02-10 16:58:55 +01:00
jonaswinkler
6c8f010f7a retries for archive generation 2021-02-10 14:50:20 +01:00
jonaswinkler
ed84cf26e7 update dependencies 2021-02-10 14:31:17 +01:00
jonaswinkler
1bc961f0c0 update dependencies 2021-02-10 11:50:57 +01:00
jonaswinkler
77d745381f more testing 2021-02-10 01:31:15 +01:00
jonaswinkler
7082cb9c36 document renamer testing 2021-02-10 01:12:45 +01:00
jonaswinkler
34e84cc757 sanity checker testing 2021-02-10 00:52:18 +01:00
jonaswinkler
9246411610 better logging for the migration 2021-02-10 00:52:01 +01:00
jonaswinkler
8330b3598c changelog 2021-02-09 23:23:11 +01:00
jonaswinkler
1d002149dc added ASN to filename format #519 2021-02-09 23:03:07 +01:00
jonaswinkler
8d6071e977 fix a bug with thumbnail generation when TIKA was enabled 2021-02-09 22:12:43 +01:00
jonaswinkler
7d67766508 todo note #520 2021-02-09 21:53:10 +01:00
jonaswinkler
887dd122fe more info in the admin 2021-02-09 21:00:04 +01:00
jonaswinkler
a1293c77b9 fix migration and more tests 2021-02-09 20:54:02 +01:00
jonaswinkler
ee9a73aa95 codestyle 2021-02-09 20:46:41 +01:00
jonaswinkler
9df332b614 test resources 2021-02-09 19:51:25 +01:00
jonaswinkler
d13e86a892 update all test cases to address the archive filename changes 2021-02-09 19:51:16 +01:00
jonaswinkler
69d7f8c180 testing the updated migration 2021-02-09 19:49:29 +01:00
jonaswinkler
1ba89ddd09 refactor migration tests to allow testing for exceptions while migrating 2021-02-09 19:47:50 +01:00
jonaswinkler
0c40a28ad3 more sanity checks regarding archive versions 2021-02-09 19:46:59 +01:00
jonaswinkler
2b7424c42a imports 2021-02-09 19:46:42 +01:00
jonaswinkler
a9f1766d1c todo note 2021-02-09 19:46:32 +01:00
jonaswinkler
fca8576d80 archive filenames are now stored in the database and checked for collisions just as original filenames as well, unified method for archive version checking 2021-02-09 19:46:19 +01:00
jonaswinkler
05f59e7d5e another way to make the test case fail 2021-02-09 02:13:25 +01:00
jonaswinkler
c9511680b3 version push 2021-02-09 01:36:39 +01:00
jonaswinkler
0ed001c56e validate move before migration 2021-02-09 00:13:13 +01:00
jonaswinkler
1e5a418191 more testing #511 2021-02-09 00:01:11 +01:00
jonaswinkler
e05735bc0f fix some test cases 2021-02-09 00:00:46 +01:00
jonaswinkler
7621e10840 only move unaffected files, regenerate affected files 2021-02-08 23:54:07 +01:00
jonaswinkler
d90080f325 only move files if necessary 2021-02-08 22:49:01 +01:00
jonaswinkler
0c676b90f2 migration for #511 2021-02-08 20:59:14 +01:00
jonaswinkler
c2d8bda83c fix for #511 2021-02-08 19:59:14 +01:00
jonaswinkler
302ebf737e refactor migration test case 2021-02-08 13:18:39 +01:00
jonaswinkler
816c95a4ae code style 2021-02-08 13:18:08 +01:00
jonaswinkler
40106f6fcc updated documentation regarding execution of management commands with docker fixes #509 2021-02-08 00:10:52 +01:00
jonaswinkler
61143b3ad1 make the test case fail 2021-02-07 19:53:08 +01:00
jonaswinkler
9b64eebd10 revert commit 2021-02-07 18:26:03 +01:00
jonaswinkler
731418349f added a test case that replicates #511 2021-02-07 18:23:54 +01:00
Michael Shamoon
5306d58991 Dark mode + sizing tweaks 2021-02-07 08:19:00 -08:00
jonaswinkler
7728920670 Merge branch 'dev' 2021-02-07 01:22:04 +01:00
jonaswinkler
f555bb95ae possible fix for the ansible roles 2021-02-07 00:49:53 +01:00
jonaswinkler
bcee17c3ac github actions: build release tags 2021-02-07 00:14:24 +01:00
Michael Shamoon
dcb17f2f21 hide on card mouseleave 2021-02-06 14:54:36 -08:00
Michael Shamoon
37b3a30619 Better minimum size for native viewer 2021-02-06 14:30:44 -08:00
jonaswinkler
7bc16edfe2 Merge branch 'master' into dev 2021-02-06 23:28:39 +01:00
Michael Shamoon
b0fed61a01 Pre-load pdf contents 2021-02-06 14:28:26 -08:00
Jonas Winkler
40f3e8e45a Update README.md 2021-02-06 23:26:44 +01:00
Michael Shamoon
4a471138b2 Dark mode popover arrow fixes 2021-02-06 14:25:53 -08:00
jonaswinkler
656b4708ac update requirements.txt 2021-02-06 21:16:06 +01:00
jonaswinkler
7702f5012b classifier cache timeout 2021-02-06 21:03:32 +01:00
jonaswinkler
ffe96c8fff classifier caching 2021-02-06 20:54:58 +01:00
jonaswinkler
0024c2aae4 caching 2021-02-06 20:51:04 +01:00
jonaswinkler
ed39e9e15f update copyright #506 2021-02-06 20:48:23 +01:00
jonaswinkler
fd8c40fee7 increase worker timeout 2021-02-06 18:51:53 +01:00
jonaswinkler
0e76441684 fix log viewer for empty logs 2021-02-06 18:51:31 +01:00
jonaswinkler
d2c34fb9c7 update requirements.txt 2021-02-06 17:37:47 +01:00
jonaswinkler
d09ea8408c keep numpy below 1.20, since that breaks python 3.6 2021-02-06 17:36:31 +01:00
jonaswinkler
e8a1fde1c7 documentation 2021-02-06 17:22:05 +01:00
jonaswinkler
5ef6f2697e default settings 2021-02-06 17:21:40 +01:00
jonaswinkler
80b3fa75a5 pycodestyle 2021-02-06 17:21:32 +01:00
jonaswinkler
9993381cda rework of the log viewer 2021-02-06 17:07:25 +01:00
jonaswinkler
9fa3f91e8a update logging config 2021-02-06 17:05:07 +01:00
jonaswinkler
fe435f6653 update API access for logs 2021-02-06 17:02:00 +01:00
jonaswinkler
5696c02ac3 remove log admin 2021-02-06 17:00:06 +01:00
jonaswinkler
019dfeb3ee separate mail logging 2021-02-06 16:59:04 +01:00
jonaswinkler
e35723e7af fix some logging messages 2021-02-06 15:30:47 +01:00
jonaswinkler
1d50d017ac update bare metal instructions 2021-02-06 14:54:00 +01:00
jonaswinkler
9e5d1ad952 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-02-06 13:44:08 +01:00
Jonas Winkler
9faaf4b1e4 Merge pull request #504 from jonaswinkler/translations_src-ui-messages-xlf--dev_en_GB
Translate '/src-ui/messages.xlf' in 'en_GB'
2021-02-06 13:33:28 +01:00
Jonas Winkler
ac229ce004 Merge pull request #503 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_en_GB
Translate '/src/locale/en-us/LC_MESSAGES/django.po' in 'en_GB'
2021-02-06 13:32:59 +01:00
Michael Shamoon
41540a3a5f Document popover previews 2021-02-06 00:40:18 -08:00
transifex-integration[bot]
968614a289 Translate /src-ui/messages.xlf in en_GB
translation completed for the source file '/src-ui/messages.xlf'
on the 'en_GB' language.
2021-02-06 00:12:00 +00:00
transifex-integration[bot]
2f68f236bb Apply translations in en_GB
translation completed for the source file '/src/locale/en-us/LC_MESSAGES/django.po'
on the 'en_GB' language.
2021-02-06 00:09:49 +00:00
jonaswinkler
00903bd90c update statistics when new documents are added 2021-02-06 00:13:49 +01:00
jonaswinkler
96d7114fa7 lazy load fuzzy only when required 2021-02-05 01:11:03 +01:00
jonaswinkler
431d4fd8e4 rework most of the logging 2021-02-05 01:10:29 +01:00
jonaswinkler
0d3ab3aaf7 remove lots of unused code 2021-02-04 23:40:53 +01:00
jonaswinkler
138f38d1f3 fix lost messages when queuing many files 2021-02-04 23:32:11 +01:00
jonaswinkler
222fb48378 dismiss completed dismisses successful items only 2021-02-04 16:55:48 +01:00
jonaswinkler
5718f50c4f increase worker timeout for Raspberry Pi 2021-02-04 15:46:51 +01:00
jonaswinkler
d8e0ef257e don't load sklearn libraries unless needed 2021-02-04 15:15:11 +01:00
jonaswinkler
866c8fc848 websocket testing 2021-02-04 14:17:18 +01:00
Jonas Winkler
758631c53f Update README.md 2021-02-04 13:31:20 +01:00
jonaswinkler
8711a206a0 fix websocket test cases 2021-02-04 13:26:58 +01:00
jonaswinkler
44ec3a3d9c lazy loading for parsers 2021-02-04 13:17:24 +01:00
jonaswinkler
883a6b26a4 update gunicorn.conf 2021-02-04 00:17:23 +01:00
jonaswinkler
b9e1ed7d7e added test for web socket authentication 2021-02-03 23:18:28 +01:00
jonaswinkler
c51fa60172 close connection when not authenticated anymore. 2021-02-03 21:53:39 +01:00
jonaswinkler
e300ee0c92 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-02-03 20:44:37 +01:00
jonaswinkler
ba3c8308b3 websocket authentication 2021-02-03 20:44:10 +01:00
Jonas Winkler
63b11514c9 Merge pull request #501 from jonaswinkler/translations_src-ui-messages-xlf--dev_fr
Translate '/src-ui/messages.xlf' in 'fr'
2021-02-03 18:45:25 +01:00
transifex-integration[bot]
49d2084d8a Translate /src-ui/messages.xlf in fr
translation completed for the source file '/src-ui/messages.xlf'
on the 'fr' language.
2021-02-03 17:10:45 +00:00
jonaswinkler
c36fe577de Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-02-03 17:08:07 +01:00
jonaswinkler
28c79f1abb documentation 2021-02-03 17:07:37 +01:00
Jonas Winkler
a1f07417da Merge pull request #500 from jonaswinkler/translations_src-ui-messages-xlf--dev_nl_NL
Translate '/src-ui/messages.xlf' in 'nl_NL'
2021-02-03 16:32:52 +01:00
transifex-integration[bot]
611b4fe31b Translate /src-ui/messages.xlf in nl_NL
translation completed for the source file '/src-ui/messages.xlf'
on the 'nl_NL' language.
2021-02-03 15:25:14 +00:00
Jonas Winkler
697670ef97 Merge pull request #499 from jonaswinkler/translations_src-ui-messages-xlf--dev_de
Translate '/src-ui/messages.xlf' in 'de'
2021-02-03 16:13:43 +01:00
transifex-integration[bot]
ee487529fe Translate /src-ui/messages.xlf in de
translation completed for the source file '/src-ui/messages.xlf'
on the 'de' language.
2021-02-03 15:11:49 +00:00
jonaswinkler
2129cda38d display http errors 2021-02-03 16:01:32 +01:00
jonaswinkler
afb63f763a Merge branch 'master' into dev 2021-02-03 15:24:38 +01:00
jonaswinkler
a186d6fae2 bugfix 2021-02-03 15:22:20 +01:00
jonaswinkler
d17de45791 fix typo 2021-02-03 14:51:04 +01:00
Jonas Winkler
18980bbbe3 Merge pull request #498 from C0nsultant/ansible-varnames
Ansible - apply consistent name structure to vars
2021-02-03 11:49:53 +01:00
Fabian Koller
32c9369ba1 Apply consistent name structure to vars 2021-02-03 08:06:34 +01:00
jonaswinkler
bdc247ce49 code style 2021-02-02 23:58:25 +01:00
jonaswinkler
85f46424a8 fixes layout issues #482 2021-02-02 23:58:11 +01:00
jonaswinkler
d198a89f22 update dependencies 2021-02-02 20:43:07 +01:00
jonaswinkler
82730ab491 update dependencies 2021-02-02 20:31:25 +01:00
jonaswinkler
c78d54e71e update the easy install script and documentation 2021-02-02 19:54:56 +01:00
jonaswinkler
08d96a1b76 configure websocket endpoint for production 2021-02-02 16:22:36 +01:00
jonaswinkler
b2a744e880 version bump 2021-02-02 15:11:29 +01:00
jonaswinkler
3f421a4f64 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-02-02 14:52:07 +01:00
jonaswinkler
2624aec758 changelog 2021-02-02 14:51:54 +01:00
Jonas Winkler
f3a18c26f4 Merge pull request #494 from jonaswinkler/translations_src-ui-messages-xlf--dev_de
Translate '/src-ui/messages.xlf' in 'de'
2021-02-02 14:08:11 +01:00
jonaswinkler
47ea60372f disable CI for translation branches 2021-02-02 14:07:43 +01:00
transifex-integration[bot]
8efba4c57f Translate /src-ui/messages.xlf in de
translation completed for the source file '/src-ui/messages.xlf'
on the 'de' language.
2021-02-02 13:07:05 +00:00
jonaswinkler
060dcd71cd messages, reorganized settings 2021-02-02 14:06:16 +01:00
Jonas Winkler
fd6e727299 Merge pull request #492 from jonaswinkler/translations_src-ui-messages-xlf--dev_de
Translate '/src-ui/messages.xlf' in 'de'
2021-02-02 13:35:59 +01:00
Jonas Winkler
c4adb20eff Merge pull request #493 from jonaswinkler/translations_src-ui-messages-xlf--dev_fr
Translate '/src-ui/messages.xlf' in 'fr'
2021-02-02 13:35:47 +01:00
transifex-integration[bot]
e70af00321 Translate /src-ui/messages.xlf in fr
translation completed for the source file '/src-ui/messages.xlf'
on the 'fr' language.
2021-02-02 12:34:03 +00:00
transifex-integration[bot]
9ebe16d823 Translate /src-ui/messages.xlf in de
translated for the source file '/src-ui/messages.xlf'
on the 'de' language.
2021-02-02 12:30:13 +00:00
Jonas Winkler
fd05da96d5 Merge pull request #488 from jonaswinkler/translations_src-ui-messages-xlf--dev_de
Translate '/src-ui/messages.xlf' in 'de'
2021-02-02 13:27:55 +01:00
jonaswinkler
5f44ab5abc CI: ignore translation branches 2021-02-02 13:27:08 +01:00
transifex-integration[bot]
ffc82c17ba Translate /src-ui/messages.xlf in de
translation completed for the source file '/src-ui/messages.xlf'
on the 'de' language.
2021-02-02 12:17:25 +00:00
jonaswinkler
b33e25b1f7 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-02-02 13:14:11 +01:00
jonaswinkler
55c50e3ac2 more message changes 2021-02-02 13:10:51 +01:00
jonaswinkler
211a88129e removed dead files 2021-02-02 12:58:23 +01:00
jonaswinkler
2a629b81ce updates messages 2021-02-02 12:58:11 +01:00
Jonas Winkler
2efb99192a add pull to docker setup 2021-02-01 21:45:45 +01:00
Jonas Winkler
0a28ccf62f adjustments to setup 2021-02-01 21:43:50 +01:00
Jonas Winkler
48b042bfb0 troubleshooting for #216 2021-02-01 20:14:29 +01:00
Jonas Winkler
da08eec91f Merge pull request #482 from shamoon/feature/sidebar-info-2
Updates to sidebar "Misc" section
2021-02-01 12:42:26 +01:00
Jonas Winkler
684f91b2e3 Merge pull request #486 from jonaswinkler/translations_src-ui-messages-xlf--dev_nl_NL
Translate '/src-ui/messages.xlf' in 'nl_NL'
2021-02-01 12:42:05 +01:00
transifex-integration[bot]
689579c7f2 Translate /src-ui/messages.xlf in nl_NL
translation completed for the source file '/src-ui/messages.xlf'
on the 'nl_NL' language.
2021-02-01 09:31:34 +00:00
Michael Shamoon
4a549ccd33 additional link spacing 2021-01-31 19:24:37 -08:00
Michael Shamoon
32f0a2fdbc Yes, 2px margin on the svg icon 2021-01-31 19:20:00 -08:00
Michael Shamoon
abee54ebe3 Fix Safari overflow issue 2021-01-31 19:16:38 -08:00
Michael Shamoon
58ae14c364 space for info heading 2021-01-31 19:11:27 -08:00
Michael Shamoon
34104f0d42 These arent needed on h6s 2021-01-31 19:11:21 -08:00
Michael Shamoon
dabcdbad00 Prevent safari wrap 2021-01-31 19:09:31 -08:00
Michael Shamoon
4c314130f7 Use div containers 2021-01-31 17:16:39 -08:00
Michael Shamoon
53a71384b0 Merge remote-tracking branch 'upstream/dev' into feature/sidebar-info-2 2021-01-31 17:04:35 -08:00
Jonas Winkler
294a5ebec6 Merge pull request #480 from shamoon/feature/github-discussion-ideas
Encourage Discussion Ideas instead of Issues for [Feature Requests]
2021-02-01 01:52:30 +01:00
Michael Shamoon
6a4b31b354 Correct discussions category link 2021-01-31 16:33:39 -08:00
Michael Shamoon
76c9715748 Change "Misc" to "Info"
Also move to bottom of screen, add suggestions link, change GH icon
2021-01-31 16:31:32 -08:00
Michael Shamoon
e657ca7496 Revert "App 'submit an idea icon'"
This reverts commit 406ec17050.
2021-01-31 16:23:08 -08:00
Michael Shamoon
ddf01eef14 Update to use new feature-requests category of discussions 2021-01-31 16:22:41 -08:00
Jonas Winkler
3d093f2c08 Merge pull request #479 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_fr
Translate '/src/locale/en-us/LC_MESSAGES/django.po' in 'fr'
2021-02-01 00:09:01 +01:00
transifex-integration[bot]
004e3134fc Apply translations in fr
translation completed for the source file '/src/locale/en-us/LC_MESSAGES/django.po'
on the 'fr' language.
2021-01-31 22:33:04 +00:00
Michael Shamoon
85ee74f2d8 Remove feature request template, update others to point to Discussions 2021-01-31 14:32:09 -08:00
Michael Shamoon
406ec17050 App 'submit an idea icon' 2021-01-31 14:19:25 -08:00
jonaswinkler
7f85180264 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-01-31 22:28:41 +01:00
jonaswinkler
ad29fc23a6 added an easy install script 2021-01-31 22:28:26 +01:00
Michael Shamoon
b9690de9ab Add GH Ideas info to readme 2021-01-31 13:19:55 -08:00
Jonas Winkler
d4deefc81c Merge pull request #478 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_nl_NL
Translate '/src/locale/en-us/LC_MESSAGES/django.po' in 'nl_NL'
2021-01-31 17:00:39 +01:00
transifex-integration[bot]
32780472db Apply translations in nl_NL
translation completed for the source file '/src/locale/en-us/LC_MESSAGES/django.po'
on the 'nl_NL' language.
2021-01-31 15:45:35 +00:00
Jonas Winkler
b1f906461e Merge pull request #476 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_de
Translate '/src/locale/en-us/LC_MESSAGES/django.po' in 'de'
2021-01-31 15:50:57 +01:00
Jonas Winkler
7e449d661b Merge pull request #477 from jonaswinkler/translations_src-ui-messages-xlf--dev_de
Translate '/src-ui/messages.xlf' in 'de'
2021-01-31 15:50:48 +01:00
transifex-integration[bot]
24b3a03000 Translate /src-ui/messages.xlf in de
translation completed for the source file '/src-ui/messages.xlf'
on the 'de' language.
2021-01-31 14:45:58 +00:00
transifex-integration[bot]
cd28fbf563 Apply translations in de
translation completed for the source file '/src/locale/en-us/LC_MESSAGES/django.po'
on the 'de' language.
2021-01-31 14:45:43 +00:00
jonaswinkler
d7b2906977 fix typo 2021-01-31 15:37:09 +01:00
jonaswinkler
3180b38797 adjust ansible scripts to use gunicorn.conf.py 2021-01-31 15:36:52 +01:00
jonaswinkler
fd59def1bd Merge branch 'feature-websockets-status' into dev 2021-01-31 14:37:15 +01:00
jonaswinkler
8cd1dd71e8 Merge branch 'master' into dev 2021-01-31 14:03:44 +01:00
Jonas Winkler
48cfb64416 Merge pull request #474 from C0nsultant/ansible-GITHUB_SHA
Ansible - Switch CI target to sha instead of ref
2021-01-31 14:03:04 +01:00
jonaswinkler
adb76eafaf moved gunicorn.conf.py to a more appropriate place and reference that in the configuration scripts. 2021-01-31 13:52:21 +01:00
jonaswinkler
4e2efebaa7 addresses race condition between API and document consumer #472 2021-01-31 13:20:21 +01:00
Fabian Koller
eb6153c5aa Change CI ref from merge to head
At this time in the CI, merge is not accessible from tree
https://github.community/t/github-sha-but-how-to-get-the-latest-commit-reference-on-a-branch/17160
2021-01-31 12:00:41 +01:00
Fabian Koller
9c3b16c879 Switch CI target to sha instead of ref 2021-01-31 11:28:54 +01:00
jonaswinkler
ba637c8582 replace preview icon #471 2021-01-30 21:56:17 +01:00
jonaswinkler
46ea86a6d2 Merge branch 'dev' into feature-websockets-status 2021-01-30 16:08:50 +01:00
jonaswinkler
9d148c08ce Merge branch 'master' into dev 2021-01-30 16:06:42 +01:00
Jonas Winkler
ac459f7b05 Merge pull request #411 from C0nsultant/ansible-fromsource
Ansible - build release archive from source
2021-01-30 16:05:51 +01:00
jonaswinkler
35a4779cc0 fix typo 2021-01-30 15:44:23 +01:00
Jonas Winkler
ffa44f51cd Update README.md 2021-01-30 15:30:39 +01:00
jonaswinkler
682a9d2a09 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-01-30 15:23:03 +01:00
jonaswinkler
4c6a02aee7 pycodestyle 2021-01-30 15:22:51 +01:00
jonaswinkler
87a18eae2d centralized classifier loading, better error handling, no error messages when auto matching is not used 2021-01-30 14:22:23 +01:00
Fabian Koller
269673ce05 DEBUG - use very long txt file 2021-01-30 14:13:03 +01:00
Fabian Koller
d9e06958dc DEBUG - force flush 2nd try 2021-01-30 12:50:49 +01:00
Fabian Koller
063bfc245c DEBUG - force newline in .txt 2021-01-30 12:20:55 +01:00
Fabian Koller
21c501de28 force flush on temp file during consumption
file.write() does not guarantee that a file handle contains anything
without calling an accompanying file.flush()
For typical files that are larger than the OS-file buffer, this is no
problem
For small files (e.g. 64 characters in a .TXT), this race condition
leads to `inode/x-empty` because the file inode is created, but no
content is written to it
2021-01-30 11:51:43 +01:00
Jonas Winkler
d50d1bd2ea Merge pull request #470 from jonaswinkler/translations_src-ui-messages-xlf--dev_fr
Translate '/src-ui/messages.xlf' in 'fr'
2021-01-29 22:34:17 +01:00
transifex-integration[bot]
e4aa31a62d Translate /src-ui/messages.xlf in fr
translation completed for the source file '/src-ui/messages.xlf'
on the 'fr' language.
2021-01-29 19:57:40 +00:00
Jonas Winkler
fdf58bed6a Merge pull request #469 from jonaswinkler/translations_src-ui-messages-xlf--dev_de
Translate '/src-ui/messages.xlf' in 'de'
2021-01-29 19:59:09 +01:00
transifex-integration[bot]
a54784da11 Translate /src-ui/messages.xlf in de
translation completed for the source file '/src-ui/messages.xlf'
on the 'de' language.
2021-01-29 18:59:00 +00:00
jonaswinkler
a40e4fe3bc update messages 2021-01-29 16:57:00 +01:00
jonaswinkler
ea30fbf14f Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-01-29 16:49:07 +01:00
jonaswinkler
d22d9a023c frontend support for suggestions #264 2021-01-29 16:48:51 +01:00
jonaswinkler
ddcc0883eb add support for suggestions 2021-01-29 16:45:23 +01:00
Jonas Winkler
047a21eb48 Merge pull request #468 from jonaswinkler/translations_src-ui-messages-xlf--dev_fr
Translate '/src-ui/messages.xlf' in 'fr'
2021-01-29 14:01:46 +01:00
transifex-integration[bot]
439f06ccda Translate /src-ui/messages.xlf in fr
translation completed for the source file '/src-ui/messages.xlf'
on the 'fr' language.
2021-01-29 12:42:54 +00:00
jonaswinkler
05866da04b remove dead code 2021-01-29 12:54:54 +01:00
jonaswinkler
dcd350a30c not sure what happened with reportlab 3.5.60, maybe a bad release. 2021-01-29 00:26:17 +01:00
jonaswinkler
107cc2ca20 add missing quotes 2021-01-28 22:38:12 +01:00
jonaswinkler
f872221c49 filesystem permission checks now issue warnings instead of errors, improves NFS compatibility 2021-01-28 22:22:25 +01:00
jonaswinkler
2faa425caf localization for websockets 2021-01-28 22:06:02 +01:00
jonaswinkler
94be8781e9 test cases 2021-01-28 19:28:48 +01:00
jonaswinkler
47189342e4 update dependencies 2021-01-28 12:43:27 +01:00
jonaswinkler
fafe259e53 added a status summary line 2021-01-28 10:54:56 +01:00
jonaswinkler
41fe607157 documentation 2021-01-27 20:45:14 +01:00
jonaswinkler
062008269b prevent updates to scipy, since 1.6 is incompatible with python 3.6 2021-01-27 20:27:40 +01:00
jonaswinkler
29e1b51164 add python 3.9 for tests 2021-01-27 20:27:06 +01:00
jonaswinkler
d2a8bc5c4c fix redis configuration 2021-01-27 20:08:09 +01:00
jonaswinkler
7414b3d23a update configuration 2021-01-27 19:57:04 +01:00
jonaswinkler
a0a781a3d5 i18n 2021-01-27 19:11:50 +01:00
jonaswinkler
d9e6f6e07c add gunicorn again 2021-01-27 19:11:18 +01:00
jonaswinkler
9167357908 update list view when documents are added 2021-01-27 18:47:02 +01:00
jonaswinkler
3b541b22e8 improved the logic of the "dismiss completed" button 2021-01-27 18:34:59 +01:00
jonaswinkler
71d5af233d update messages 2021-01-27 17:57:16 +01:00
jonaswinkler
b0ed06003b better error messages 2021-01-27 17:56:06 +01:00
jonaswinkler
91f7c4e685 settings and localization 2021-01-27 17:28:11 +01:00
jonaswinkler
5a4cb5fe4a proper messages when uploading fails 2021-01-27 16:04:06 +01:00
jonaswinkler
cc74be9ccc better error messages 2021-01-27 15:50:37 +01:00
jonaswinkler
68a9dd7e05 fix an issue with upload status identification 2021-01-27 15:23:29 +01:00
jonaswinkler
682cf33c78 clarification for some steps in the migration guide 2021-01-27 12:05:30 +01:00
Jonas Winkler
763b780aa4 Update issue templates 2021-01-27 11:32:30 +01:00
Michael Shamoon
23d8305027 Prevent dirty check lost on document close & reopen 2021-01-26 22:43:46 -08:00
Michael Shamoon
1950f805b3 Implement warning for closeAll 2021-01-26 22:27:50 -08:00
Michael Shamoon
d275a75517 whitespace 2021-01-26 21:11:57 -08:00
Michael Shamoon
1576e07011 Dont warn on navigate for documents 2021-01-26 20:46:28 -08:00
Jonas Winkler
24313fe001 Merge pull request #452 from shamoon/feature/consumer-alerts
Updates to consumer status alerts
2021-01-27 00:36:33 +01:00
Michael Shamoon
51dc40ae73 Maximum limit of alerts 2021-01-26 14:48:39 -08:00
jonaswinkler
ab04817bea alter defaults for workers and threads to allow more parallel tasks #446 2021-01-26 22:10:43 +01:00
jonaswinkler
8dde7fa043 Merge branch 'master' of github.com:jonaswinkler/paperless-ng 2021-01-26 20:48:43 +01:00
jonaswinkler
edfebe18a2 removed all occurences of pipenv from the documentation 2021-01-26 20:48:32 +01:00
jonaswinkler
0b07c3bd8f more documentation 2021-01-26 20:37:36 +01:00
Jonas Winkler
1483f450ad Update issue templates 2021-01-26 20:32:35 +01:00
jonaswinkler
600c13204e added FAQ for #449 2021-01-26 20:13:29 +01:00
jonaswinkler
2073279473 documentation for #441 2021-01-26 19:53:56 +01:00
jonaswinkler
d126ecfa4d troubleshooting for #346 2021-01-26 19:42:06 +01:00
jonaswinkler
944aaf5438 documentation #444 2021-01-26 19:32:22 +01:00
Michael Shamoon
52f17a9ba6 Fix dark mode primary progress color 2021-01-26 10:17:58 -08:00
Michael Shamoon
44600961d8 Fix initial upload progress > 100% 2021-01-26 10:17:45 -08:00
Michael Shamoon
d60b532b8f Dark mode support 2021-01-26 10:09:13 -08:00
Michael Shamoon
55584a6a87 Fix alert resizing 2021-01-26 09:50:48 -08:00
jonaswinkler
7c02a8b414 requirements 2021-01-26 18:01:24 +01:00
jonaswinkler
18d105b4f8 pinned scikit learn version 2021-01-26 18:00:59 +01:00
jonaswinkler
f0d49a1382 enable docker image builds on feature branches 2021-01-26 15:55:47 +01:00
Jonas Winkler
277bf0eb83 Merge pull request #414 from tido-/documentation_changes
Documentation changes
2021-01-26 15:50:28 +01:00
jonaswinkler
3b5d55c428 pycodestyle 2021-01-26 15:43:07 +01:00
jonaswinkler
313f2886d7 fix test cases 2021-01-26 15:26:25 +01:00
jonaswinkler
868fd4155a bug fixes, test case fixes 2021-01-26 15:19:56 +01:00
jonaswinkler
4eeb5642f5 i18n, better error handling 2021-01-26 15:02:46 +01:00
Michael Shamoon
532a3d955c Dismiss all 2021-01-26 02:52:16 -08:00
Michael Shamoon
53309f017f Lovely file upload alerts 2021-01-26 02:32:45 -08:00
Michael Shamoon
5651a03b14 Drop over background color 2021-01-26 00:17:27 -08:00
Michael Shamoon
07faba3983 Confirm button text 2021-01-25 23:39:16 -08:00
Michael Shamoon
d9547e87af Merge remote-tracking branch 'upstream/dev' into feature/unsaved-changes 2021-01-25 23:36:39 -08:00
Michael Shamoon
d672455ad8 Cleanup 2021-01-25 23:32:02 -08:00
Michael Shamoon
96a572b7a6 Refactor, missed import 2021-01-25 23:29:16 -08:00
Michael Shamoon
2a7bb27a78 Merge remote-tracking branch 'upstream/dev' into feature/unsaved-changes 2021-01-25 23:16:18 -08:00
Michael Shamoon
3f73cd5bfc Change warning title 2021-01-25 23:16:11 -08:00
Michael Shamoon
9c427f202d Disable discard button also if not dirty 2021-01-25 23:09:56 -08:00
Michael Shamoon
bc02dc30b1 Prevent confirmation warning after save 2021-01-25 23:06:25 -08:00
Michael Shamoon
8080b7a119 Document detail dirty checking 2021-01-25 23:00:57 -08:00
Michael Shamoon
b0fa0f2319 Settings navigation warning dialog 2021-01-25 22:44:26 -08:00
Michael Shamoon
6c5f9bbabb Settings dirty check for saving 2021-01-25 19:23:03 -08:00
jonaswinkler
7dedb99dae fix status reports for consumption directory status messages 2021-01-26 01:15:27 +01:00
jonaswinkler
b581e42216 functions for combined upload progress bars 2021-01-26 01:10:39 +01:00
jonaswinkler
ede3bd1391 rework of the front end components 2021-01-26 00:51:45 +01:00
jonaswinkler
339e96b63c task ids 2021-01-26 00:51:20 +01:00
jonaswinkler
f31073a341 update dependencies 2021-01-26 00:50:29 +01:00
jonaswinkler
2fa78f7820 update Pipfile.lock 2021-01-26 00:35:07 +01:00
jonaswinkler
77b85b9e93 remove status widget 2021-01-26 00:34:36 +01:00
Fabian Koller
29ce2515ee Build source package in paperlessng_directory
Avoids permission problems in /tmp
2021-01-25 21:57:20 +01:00
Reto
d57c237980 fixed merge conflict 2021-01-24 20:12:38 +01:00
Reto
37ade0c6b2 fix my ignorance of idempotent 2021-01-24 20:00:09 +01:00
Reto
28a2479f24 fix my ignorance of idempotent 2021-01-24 19:37:46 +01:00
Fabian Koller
be2013975c Simplify building from source
Do not package app, instead copy directly into expected directory
2021-01-24 09:59:54 +01:00
Jonas Winkler
6e688a5b82 Update README.md 2021-01-24 00:00:46 +01:00
Fabian Koller
bfbdfe857f Simplify molecule tests
"Upgrade" path includes multiple paths anyway:
- installing the latest official release package
- builing the current PR from source
- upgrading between the two versions
2021-01-23 22:55:46 +01:00
Fabian Koller
0d19957d4b Fully prepare release package 2021-01-23 22:45:32 +01:00
jonaswinkler
05d69c0882 Merge branch 'dev' into feature-websockets-status 2021-01-23 22:22:17 +01:00
Michael Shamoon
a5edbcf9ef Shrink dropdown note font size to fit on one line 2021-01-23 11:52:05 -08:00
Reto
2104e65462 minor changes, like numbering 2021-01-23 13:14:31 +01:00
Reto
c0882e74e2 tried to fill the gaps and change wording where it felt necessary for better understanding 2021-01-23 12:55:50 +01:00
Jonas Winkler
ced6a61869 Update README.md 2021-01-22 17:22:02 +01:00
Fabian Koller
6c3b1db4dd Determine installed version by git commit hash 2021-01-22 16:28:13 +01:00
Jonas Winkler
25a0845efd Update README.md 2021-01-22 15:07:52 +01:00
Fabian Koller
8d62493774 Adapt github action to build PR version 2021-01-22 11:10:56 +01:00
Fabian Koller
eca1289ce2 Build release archive when version is not avail
Default ansible installation version to "latest" (pulls the latest
published release archive).
2021-01-22 10:49:59 +01:00
Michael Shamoon
a6bd118f5e Disable any / all toggle when excluded items 2021-01-21 14:42:05 -08:00
Michael Shamoon
a73ff4ffa6 return key works too 2021-01-21 14:41:11 -08:00
Michael Shamoon
14d04ff8d2 Merge branch 'fix/issue-401' into feature/any-all-filtering 2021-01-21 14:29:31 -08:00
Michael Shamoon
d7cefabe98 Fix unable to save ANY views 2021-01-21 14:25:50 -08:00
jonaswinkler
f95fd4ced2 Merge branch 'dev' 2021-01-21 22:55:10 +01:00
jonaswinkler
227f7b6946 revert a change 2021-01-21 22:29:47 +01:00
jonaswinkler
1a0b954397 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-01-21 21:32:21 +01:00
jonaswinkler
87ad2ce1d6 added a note regarding updates after 0.9.13 2021-01-21 21:32:08 +01:00
Jonas Winkler
63cd16e29e Merge pull request #407 from jonaswinkler/translations_src-ui-messages-xlf--dev_fr
Translate '/src-ui/messages.xlf' in 'fr'
2021-01-21 21:16:02 +01:00
Jonas Winkler
66fc9e9111 Merge pull request #408 from jonaswinkler/translations_src-ui-messages-xlf--dev_de
Translate '/src-ui/messages.xlf' in 'de'
2021-01-21 21:15:49 +01:00
Jonas Winkler
43bee38b3c Merge pull request #406 from jonaswinkler/translations_src-ui-messages-xlf--dev_nl_NL
Translate '/src-ui/messages.xlf' in 'nl_NL'
2021-01-21 21:15:32 +01:00
transifex-integration[bot]
18ebb58dc9 Translate /src-ui/messages.xlf in de
translation completed for the source file '/src-ui/messages.xlf'
on the 'de' language.
2021-01-21 20:08:58 +00:00
transifex-integration[bot]
099b84a66d Translate /src-ui/messages.xlf in fr
translation completed for the source file '/src-ui/messages.xlf'
on the 'fr' language.
2021-01-21 20:08:46 +00:00
transifex-integration[bot]
3b22d7131d Translate /src-ui/messages.xlf in nl_NL
translation completed for the source file '/src-ui/messages.xlf'
on the 'nl_NL' language.
2021-01-21 20:08:36 +00:00
jonaswinkler
11f9616411 improve locale selection options 2021-01-21 21:05:16 +01:00
Michael Shamoon
c926e0242a Add UI hint for option-click 2021-01-21 11:30:29 -08:00
Michael Shamoon
9ac19417e7 Prevent download when alt-click tags 2021-01-21 11:11:25 -08:00
Michael Shamoon
795dbc16d2 Prevent exclude click in editing (bulk editor) mode 2021-01-21 11:09:59 -08:00
Michael Shamoon
29a7737829 Support excluding tags 2021-01-21 10:59:53 -08:00
Jonas Winkler
10b53bdfd0 Update README.md 2021-01-21 13:49:12 +01:00
jonaswinkler
aeb10d3407 fixes duplicate documents with tags__id__in 2021-01-21 12:07:50 +01:00
Michael Shamoon
3e0c3c0bb2 refactor 2021-01-20 19:44:50 -08:00
Michael Shamoon
cde867c9c6 Clicking card tag/dt/corresp should always add that item, never remove it 2021-01-20 19:40:40 -08:00
Michael Shamoon
ff8eb7fbce Remove unused interface 2021-01-20 19:36:47 -08:00
Michael Shamoon
3766d8687f Disable any/all toggle when not needed 2021-01-20 19:33:54 -08:00
Michael Shamoon
8f08201633 Fix resetting any vs all 2021-01-20 18:38:49 -08:00
Michael Shamoon
893dcd9f28 Update API filters for "any" tag_id 2021-01-20 18:35:03 -08:00
Michael Shamoon
79059b9aa7 changed event for toggling operator 2021-01-20 16:21:12 -08:00
jonaswinkler
ddf386c4d4 add temporary directory during startup and ensure correct permissions 2021-01-21 01:02:41 +01:00
Michael Shamoon
861b2efb1d Add support for 'any' ('OR') of tags when filtering 2021-01-20 15:21:41 -08:00
jonaswinkler
9575b0fe32 fixes #397 2021-01-20 20:28:42 +01:00
jonaswinkler
6c7290bd34 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-01-20 15:25:33 +01:00
Jonas Winkler
19032fe433 Merge pull request #396 from jonaswinkler/translations_src-ui-messages-xlf--dev_de
Translate '/src-ui/messages.xlf' in 'de' [manual sync]
2021-01-20 14:46:46 +01:00
Jonas Winkler
8fce8d4677 Merge pull request #395 from jonaswinkler/translations_src-ui-messages-xlf--dev_fr
Translate '/src-ui/messages.xlf' in 'fr' [manual sync]
2021-01-20 14:45:53 +01:00
Jonas Winkler
2333ea9dc7 Merge pull request #394 from jonaswinkler/translations_src-ui-messages-xlf--dev_nl_NL
Translate '/src-ui/messages.xlf' in 'nl_NL' [manual sync]
2021-01-20 14:45:31 +01:00
transifex-integration[bot]
937cdaccad Translate /src-ui/messages.xlf in de
at least 99% translated for the source file '/src-ui/messages.xlf'
on the 'de' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2021-01-20 13:44:37 +00:00
transifex-integration[bot]
54916fec2e Translate /src-ui/messages.xlf in fr
at least 99% translated for the source file '/src-ui/messages.xlf'
on the 'fr' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2021-01-20 13:44:31 +00:00
transifex-integration[bot]
03e159f67c Translate /src-ui/messages.xlf in nl_NL
at least 99% translated for the source file '/src-ui/messages.xlf'
on the 'nl_NL' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2021-01-20 13:44:24 +00:00
jonaswinkler
482ef6313d changelog 2021-01-20 14:35:38 +01:00
jonaswinkler
43685baff3 fix tag clicking on document table list 2021-01-20 14:29:30 +01:00
jonaswinkler
f6a2cc74e8 clicking on small and large cards changed 2021-01-20 14:25:52 +01:00
jonaswinkler
9f1436a865 more test 2021-01-20 12:34:01 +01:00
jonaswinkler
020df6c8ea Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-01-20 11:56:27 +01:00
jonaswinkler
08046cb83f revert changes for #351 2021-01-20 11:56:09 +01:00
Jonas Winkler
f06edebbd8 Update Crowdin configuration file 2021-01-20 11:39:20 +01:00
Jonas Winkler
c808011b75 Update Crowdin configuration file 2021-01-20 11:37:32 +01:00
jonaswinkler
da60fc8150 Merge branch 'master' into dev 2021-01-19 16:55:18 +01:00
Jonas Winkler
04a0d01b21 Merge pull request #367 from C0nsultant/ansible-verifyupdates
Ansible - Verify that updates between versions work
2021-01-19 16:53:49 +01:00
Jonas Winkler
02a066f8f3 Update README.md 2021-01-19 16:43:12 +01:00
jonaswinkler
7834d369c6 txt preview #338 2021-01-19 16:23:49 +01:00
jonaswinkler
5e841531be more test 2021-01-19 16:14:28 +01:00
jonaswinkler
5355f2b027 fixes #351 2021-01-19 14:43:55 +01:00
jonaswinkler
e1533202fc Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-01-19 14:01:16 +01:00
jonaswinkler
0b949a14c0 add filtering to management pages #356 2021-01-19 14:00:15 +01:00
Jonas Winkler
5175206179 Merge pull request #384 from jonaswinkler/translations_src-ui-messages-xlf--dev_fr
Translate '/src-ui/messages.xlf' in 'fr'
2021-01-19 00:30:04 +01:00
transifex-integration[bot]
0af0dffeda Translate /src-ui/messages.xlf in fr
translation completed for the source file '/src-ui/messages.xlf'
on the 'fr' language.
2021-01-18 23:28:17 +00:00
Fabian Koller
74a1b36005 Update administration docs with ansible update 2021-01-18 23:19:16 +01:00
Fabian Koller
8884a4dfdf molecule scenario to test upgrading from releases
Provide a separate scenario to install the last release, then update to
the current one.
Also includes improved deployment verification (check if uploading a
.txt through the API works).
2021-01-18 22:51:40 +01:00
Fabian Koller
19f73f5782 Make update ansible role paths explicit 2021-01-18 22:51:40 +01:00
Fabian Koller
8e95310602 Fix ENV var name for user args in documentation
Follow-up to #214
2021-01-18 22:51:40 +01:00
Jonas Winkler
fe31b8d160 Merge pull request #382 from jonaswinkler/translations_src-ui-messages-xlf--dev_de
Translate '/src-ui/messages.xlf' in 'de'
2021-01-18 22:32:01 +01:00
Jonas Winkler
6515d1ae85 Merge pull request #383 from jonaswinkler/translations_src-ui-messages-xlf--dev_nl_NL
Translate '/src-ui/messages.xlf' in 'nl_NL'
2021-01-18 22:31:49 +01:00
transifex-integration[bot]
a8ec9f29cd Translate /src-ui/messages.xlf in nl_NL
translation completed for the source file '/src-ui/messages.xlf'
on the 'nl_NL' language.
2021-01-18 21:31:31 +00:00
transifex-integration[bot]
bab53838ec Translate /src-ui/messages.xlf in de
translation completed for the source file '/src-ui/messages.xlf'
on the 'de' language.
2021-01-18 21:30:59 +00:00
jonaswinkler
bf2e98527c updated messages 2021-01-18 22:30:06 +01:00
jonaswinkler
e1e11de2b5 mail tests 2021-01-18 22:23:53 +01:00
jonaswinkler
4fda8f3348 changelog 2021-01-18 22:23:19 +01:00
jonaswinkler
8427d58337 Merge branch 'master' into dev 2021-01-18 15:44:26 +01:00
jonaswinkler
385076cf28 documentation and changelog 2021-01-18 15:43:48 +01:00
jonaswinkler
b9725437d9 delete option for exporter, short options, tests 2021-01-18 15:33:05 +01:00
jonaswinkler
72616def4f locking for the document archiver 2021-01-18 15:18:03 +01:00
jonaswinkler
6c972bd08a more tests 2021-01-18 14:47:19 +01:00
jonaswinkler
a71a991084 fix some test cases due to renamed test files 2021-01-18 14:20:45 +01:00
jonaswinkler
0927f9d477 some bug fixes and tests 2021-01-18 14:16:32 +01:00
jonaswinkler
a68b858733 new exporter that updates the export in place, fixes #376 #343 #166 2021-01-18 01:15:39 +01:00
jonaswinkler
08199f09b6 fixes for #374 2021-01-17 12:14:19 +01:00
Jonas Winkler
5f8151282b Merge pull request #374 from shamoon/fix/issue-325-2
Allow "live" visualizing of date locale in settings
2021-01-17 12:10:28 +01:00
Jonas Winkler
efde4828d6 Merge pull request #375 from jonaswinkler/translations_src-ui-messages-xlf--dev_nl_NL
Translate '/src-ui/messages.xlf' in 'nl_NL'
2021-01-17 11:11:38 +01:00
transifex-integration[bot]
016c168404 Translate /src-ui/messages.xlf in nl_NL
translation completed for the source file '/src-ui/messages.xlf'
on the 'nl_NL' language.
2021-01-17 09:04:39 +00:00
Michael Shamoon
741ccfa280 Fix svg attribute error
Unrelated to the rest of this branch but not worth a separate PR
2021-01-16 21:39:13 -08:00
Michael Shamoon
31b74515b6 Allow "live" changing of date format 2021-01-16 20:49:12 -08:00
Jonas Winkler
b9a2f82ce0 Merge pull request #370 from shamoon/fix/issue-350
Prevent close button in modal dialogs 'stealing' focus
2021-01-17 01:32:21 +01:00
jonaswinkler
3c59d9b787 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-01-17 00:53:32 +01:00
jonaswinkler
f919ec0d57 version bump 2021-01-17 00:52:54 +01:00
Jonas Winkler
9c380f5aac Merge pull request #371 from jonaswinkler/translations_src-ui-messages-xlf--dev_de
Translate '/src-ui/messages.xlf' in 'de'
2021-01-17 00:30:08 +01:00
transifex-integration[bot]
fc5def157d Translate /src-ui/messages.xlf in de
translation completed for the source file '/src-ui/messages.xlf'
on the 'de' language.
2021-01-16 23:28:01 +00:00
jonaswinkler
d5eff386db update translation messages 2021-01-17 00:25:40 +01:00
jonaswinkler
864e421cd3 add configuration option for changing date display in paperless #325 2021-01-17 00:15:45 +01:00
Michael Shamoon
2c9825193b Comment typo 2021-01-16 14:14:05 -08:00
Michael Shamoon
98f3e99e2e Prevent close button 'stealing' focus from modal input fields 2021-01-16 14:09:23 -08:00
Jonas Winkler
961354aa8a Merge pull request #362 from shamoon/fix/issue-347
Allow shift-select in documents list
2021-01-16 20:58:34 +01:00
Jonas Winkler
fa27c895ed Merge pull request #355 from C0nsultant/ansible-documentation
Ansible - Provide documentation
2021-01-16 14:30:07 +01:00
Michael Shamoon
c31b6e63f5 Prevent text selection on table rows 2021-01-15 16:13:22 -08:00
Michael Shamoon
ef924e896b Fix reverting old selection in all cases by always doing it 2021-01-15 07:57:01 -08:00
Jonas Winkler
5b1619cba3 Merge pull request #364 from jonaswinkler/translations_src-ui-messages-xlf--dev_fr
Translate '/src-ui/messages.xlf' in 'fr'
2021-01-15 13:49:47 +01:00
transifex-integration[bot]
a3a9949ebc Translate /src-ui/messages.xlf in fr
translation completed for the source file '/src-ui/messages.xlf'
on the 'fr' language.
2021-01-15 12:42:26 +00:00
Jonas Winkler
ada8493838 Merge pull request #363 from jonaswinkler/translations_src-ui-messages-xlf--dev_de
Translate '/src-ui/messages.xlf' in 'de'
2021-01-15 12:53:53 +01:00
transifex-integration[bot]
cc06d528cb Translate /src-ui/messages.xlf in de
translation completed for the source file '/src-ui/messages.xlf'
on the 'de' language.
2021-01-15 11:52:06 +00:00
jonaswinkler
0926266663 add a language switcher fixes #352 2021-01-15 12:50:34 +01:00
Michael Shamoon
59008ea765 remove new line =/ 2021-01-15 02:22:10 -08:00
Michael Shamoon
01cd4c7546 Refactor variable names for clarity 2021-01-15 02:15:26 -08:00
Michael Shamoon
8d606b9f34 Handle shift-clicking orignal item 2021-01-15 02:13:21 -08:00
Michael Shamoon
86376c8c5f Fix repeat range selections were clashing 2021-01-15 02:09:13 -08:00
Michael Shamoon
48220ceeb8 Refactor selection functions to two separate ones for clarity 2021-01-15 01:59:29 -08:00
Michael Shamoon
f94da1cf27 Allow reversing selection range 2021-01-15 01:54:33 -08:00
Michael Shamoon
6d786f8987 remove log statement 2021-01-15 01:11:06 -08:00
Fabian Koller
8d433ac0de Update setup docs with ansible instructions 2021-01-15 10:10:36 +01:00
Michael Shamoon
4b42c97d0a Allow select anywhere in tr or card 2021-01-15 01:10:01 -08:00
Jonas Winkler
d8637ff4b1 Merge pull request #349 from C0nsultant/patch-4
Fix ENV var name for user args in documentation
2021-01-14 23:31:16 +01:00
Jonas Winkler
342e9c9734 Merge pull request #353 from C0nsultant/ansible-0.9.14
Ansible - Update to 0.9.14
2021-01-14 23:30:57 +01:00
Jonas Winkler
af1d084391 Merge pull request #354 from C0nsultant/patch-5
Only provide legal cors allowed hosts in example
2021-01-14 23:30:29 +01:00
Michael Shamoon
e6961d5287 Allow range selection with shift 2021-01-14 14:10:23 -08:00
jonaswinkler
7562bdb218 update the CI/CD scripts to not build and push docker images from master, update 'latest' version together with tagged releases. 2021-01-14 22:51:27 +01:00
Fabian Koller
cb94e15ba7 Update ansible README.md 2021-01-14 21:50:07 +01:00
Fabian Koller
c8b0674b93 Update to 0.9.14 2021-01-14 21:23:44 +01:00
Fabian Koller
4fa1779ef3 Only provide legal cors allowed hosts in example
Addresses that do not carry a scheme cause errors on database migration.


SystemCheckError: System check identified some issues:

ERRORS:
?: (corsheaders.E013) Origin 'example.com' in CORS_ALLOWED_ORIGINS is missing scheme or netloc
    HINT: Add a scheme (e.g. https://) or netloc (e.g. example.com).
2021-01-14 21:14:46 +01:00
Fabian Koller
db23a5cf37 Fix ENV var name for user args in documentation
Follow-up to #214
2021-01-14 20:21:34 +01:00
Michael Shamoon
7cc3c73994 Convert selection functions on cards to toggling, let service handle setting selected
Also because we need to capture mouseevents
2021-01-14 10:56:30 -08:00
jonaswinkler
014859185c fix up CI/CD: build docker image on tags, correct docker image version, correct release tag 2021-01-14 17:24:36 +01:00
jonaswinkler
6dae900d74 I hope this works! 2021-01-14 16:09:44 +01:00
jonaswinkler
a4187b2b70 fix a test case 2021-01-14 14:54:04 +01:00
jonaswinkler
556e4f7430 update readme 2021-01-14 14:38:08 +01:00
Jonas Winkler
02c2d388ed Merge pull request #340 from jonaswinkler/translations_src-ui-messages-xlf--dev_de
Translate '/src-ui/messages.xlf' in 'de'
2021-01-14 14:36:19 +01:00
transifex-integration[bot]
c0692f03a3 Translate /src-ui/messages.xlf in de
translation completed for the source file '/src-ui/messages.xlf'
on the 'de' language.
2021-01-14 13:33:42 +00:00
jonaswinkler
a2342d98d3 fix release CI 2021-01-14 14:08:48 +01:00
jonaswinkler
24c20e38ff changelog 2021-01-14 14:04:09 +01:00
jonaswinkler
cd12c1b300 dependencies 2021-01-14 13:36:45 +01:00
jonaswinkler
a008dff368 configuration option for type of PDF viewer fixes #337 2021-01-14 13:35:43 +01:00
jonaswinkler
769356733a update docker compose files and documentation #339 2021-01-14 12:59:39 +01:00
jonaswinkler
f5be2ac4bb a couple changes to the documentation 2021-01-14 02:09:06 +01:00
jonaswinkler
2824fcb497 changelog 2021-01-14 02:08:26 +01:00
jonaswinkler
2f42eab217 move compose files 2021-01-14 01:56:10 +01:00
jonaswinkler
338324d5b6 Merge remote-tracking branch 'origin/master' into dev 2021-01-14 01:05:29 +01:00
jonaswinkler
0628d10076 background color for dark mode logs 2021-01-14 00:47:54 +01:00
jonaswinkler
bc4017d54a inconsistent shadows 2021-01-13 20:09:37 +01:00
jonaswinkler
96dc7583bf add missing dependency back into the Dockerfile. 2021-01-13 19:58:32 +01:00
jonaswinkler
deb9698ff6 added some messages to the docker startup script 2021-01-13 19:58:09 +01:00
jonaswinkler
654c7fd2ac release: updated body 2021-01-13 19:56:23 +01:00
jonaswinkler
24e34e95cd changelog 2021-01-13 17:33:32 +01:00
jonaswinkler
d093c004fb fixes #161 2021-01-13 17:17:23 +01:00
jonaswinkler
ceb9426fd4 changelog 2021-01-13 16:21:54 +01:00
jonaswinkler
e4f2016678 DEBUG logging 2021-01-13 13:35:05 +01:00
jonaswinkler
40842689fd Better deal with non-existing documents when searching 2021-01-13 13:34:52 +01:00
jonaswinkler
59f955e08b adjusted the default configuration so that at least one cpu core remains free (except on single core machines) #332 2021-01-13 00:02:20 +01:00
Jonas Winkler
91e6503503 Update README.md 2021-01-12 22:12:07 +01:00
jonaswinkler
c7c98c623d try building without libatlas 2021-01-12 21:26:39 +01:00
jonaswinkler
80aa847457 always execute all tests even if tests for one python version fail 2021-01-12 20:25:58 +01:00
jonaswinkler
f1c981338c reorganize test CI, only upload coveralls once 2021-01-12 20:23:50 +01:00
jonaswinkler
d4225a459e fix CI for new coveralls version 2021-01-12 20:05:26 +01:00
jonaswinkler
75ae37d90f update dependencies (sklearn 0.24 has aarch64 wheels!) 2021-01-12 19:48:59 +01:00
jonaswinkler
2159115679 scanners 2021-01-12 18:02:29 +01:00
Hannah Swain
0384de9a3c Update scanners list to include mobile options
(cherry picked from commit cb30fb56db445ad196eaf0dbd5ba661605f58930)
2021-01-12 17:36:38 +01:00
jonaswinkler
ae2e1fc381 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-01-12 17:32:22 +01:00
jonaswinkler
d45993c905 remove unused code 2021-01-12 17:00:53 +01:00
Jonas Winkler
4e6c7b01b6 Update README.md 2021-01-12 14:29:32 +01:00
jonaswinkler
775ce56d2e Merge branch 'master' into dev 2021-01-12 14:14:06 +01:00
Jonas Winkler
d41c466f6e Merge pull request #171 from C0nsultant/ansible-role
Provide an ansible role for deployment and configuration
2021-01-12 14:11:09 +01:00
jonaswinkler
387135ffa5 update dockerfile 2021-01-12 14:01:15 +01:00
jonaswinkler
64b176103e fixes #201 2021-01-12 13:51:44 +01:00
jonaswinkler
7f88c7d70c update docker-compose.env 2021-01-12 13:51:29 +01:00
jonaswinkler
1a89ad95e0 changelog 2021-01-12 13:08:30 +01:00
jonaswinkler
376f991db5 remove travis branch condition 2021-01-12 13:06:21 +01:00
jonaswinkler
623893b528 fixes #331 2021-01-12 13:05:49 +01:00
jonaswinkler
890f6f35b5 fixes #330 2021-01-12 12:27:58 +01:00
jonaswinkler
ab4af350dd changelog 2021-01-12 12:25:50 +01:00
Jonas Winkler
95bfc4be9a Merge pull request #329 from shamoon/fix/mobile-button-group-improvements
Mobile button group improvements
2021-01-12 11:55:12 +01:00
Michael Shamoon
95d9c8fa2b Merge remote-tracking branch 'upstream/dev' into fix/mobile-button-group-improvements 2021-01-11 16:16:12 -08:00
Michael Shamoon
83dd5f51cd Move 'Filter by:' inline with title field, icon stuff 2021-01-11 16:15:55 -08:00
jonaswinkler
5d1dddfac8 unless-stopped in local dockerfiles 2021-01-12 00:40:49 +01:00
jonaswinkler
50ba88231f documentation 2021-01-12 00:29:05 +01:00
jonaswinkler
221cf12184 only restart docker unless stopped 2021-01-12 00:21:05 +01:00
jonaswinkler
681b769a71 copy files into place 2021-01-12 00:15:20 +01:00
Michael Shamoon
27517c15ca Make bulk editor a little more compact 2021-01-11 15:01:40 -08:00
Michael Shamoon
56f566e13a select icon hidden on larger screens 2021-01-11 14:54:48 -08:00
Michael Shamoon
6131a40c31 Fix right menus getting cut off 2021-01-11 14:53:16 -08:00
jonaswinkler
040e652e6a remove obsolete steps from the documentation 2021-01-11 23:07:47 +01:00
jonaswinkler
caf0e1d15b Merge branch 'dev' into travis-multiarch-builds 2021-01-11 22:11:34 +01:00
jonaswinkler
9dd8b7cd88 fix test case 2021-01-11 22:11:01 +01:00
Michael Shamoon
8702a739b0 Change dark mode dropdown menu color for visibility 2021-01-11 12:58:59 -08:00
jonaswinkler
8104851c08 Merge branch 'dev' into travis-multiarch-builds 2021-01-11 21:57:28 +01:00
jonaswinkler
0e03c48beb pin pillow dependency 2021-01-11 21:56:50 +01:00
jonaswinkler
3fbf24a1c2 don't use dependencies from testing 2021-01-11 21:55:06 +01:00
Michael Shamoon
64a966c9a5 Fill document list buttons, show select icon because its not obvious, make some menus right 2021-01-11 12:52:42 -08:00
Michael Shamoon
18a128b917 On second thought lets make filter editor buttons fill 2021-01-11 12:22:35 -08:00
Michael Shamoon
cfd263da90 Hide page count on mobile since document is out of view anyway 2021-01-11 11:49:27 -08:00
Michael Shamoon
0f4a7f0a04 Combine sort & sort order fields to better accomodate mobile, button bar full width 2021-01-11 11:46:40 -08:00
Michael Shamoon
ae5dd62105 Hide button text in favor of icons on mobile like filter editor does 2021-01-11 11:46:07 -08:00
Michael Shamoon
b73ff095e6 Distribute filter editor buttons equally to full width on mobile 2021-01-11 11:45:23 -08:00
jonaswinkler
4503be110a try building this with updated dependencies 2021-01-11 17:13:56 +01:00
jonaswinkler
7fef27e6de fixes #305 2021-01-11 16:16:39 +01:00
jonaswinkler
d8eabd66ea lost some changes in a merge 2021-01-11 16:05:29 +01:00
jonaswinkler
a62e5f32b8 Merge branch 'master' into dev 2021-01-11 16:02:25 +01:00
Jonas Winkler
24fe5bb838 Merge pull request #323 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_de
Translate '/src/locale/en-us/LC_MESSAGES/django.po' in 'de'
2021-01-11 16:00:00 +01:00
transifex-integration[bot]
5217acc471 Apply translations in de
translation completed for the source file '/src/locale/en-us/LC_MESSAGES/django.po'
on the 'de' language.
2021-01-11 14:59:29 +00:00
jonaswinkler
f96d97a637 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-01-11 15:38:57 +01:00
jonaswinkler
de38f46a53 fixes #307 2021-01-11 15:38:45 +01:00
jonaswinkler
8f94607409 a couple fixes to the ci script 2021-01-11 13:19:29 +01:00
Jonas Winkler
88ee3694f7 Merge pull request #320 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_fr
Translate '/src/locale/en-us/LC_MESSAGES/django.po' in 'fr'
2021-01-11 12:02:20 +01:00
transifex-integration[bot]
584307dc54 Apply translations in fr
translation completed for the source file '/src/locale/en-us/LC_MESSAGES/django.po'
on the 'fr' language.
2021-01-11 09:12:58 +00:00
Jonas Winkler
62fd32afbc Merge pull request #318 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_nl_NL
Translate '/src/locale/en-us/LC_MESSAGES/django.po' in 'nl_NL'
2021-01-11 02:20:51 +01:00
transifex-integration[bot]
bfcfcde71a Apply translations in nl_NL
translation completed for the source file '/src/locale/en-us/LC_MESSAGES/django.po'
on the 'nl_NL' language.
2021-01-10 23:51:27 +00:00
jonaswinkler
6ce0945aeb enable multiarch builds, release only with ng- tags 2021-01-11 00:08:56 +01:00
jonaswinkler
f701479d77 fix upload-release-asset path 2021-01-10 23:57:20 +01:00
jonaswinkler
4e93d92e46 Merge branch 'dev' into travis-multiarch-builds 2021-01-10 23:46:31 +01:00
jonaswinkler
ebcdcc6a1e github.ref instead of GITHUB_REF 2021-01-10 23:46:19 +01:00
jonaswinkler
b5cd713e16 maybe this 2021-01-10 23:43:59 +01:00
jonaswinkler
0adb8cea91 I have no idea what I am doing 2021-01-10 23:17:53 +01:00
jonaswinkler
bce79189e5 maybe this is better? 2021-01-10 23:09:09 +01:00
jonaswinkler
8927e0185b maybe this is better? 2021-01-10 22:57:56 +01:00
jonaswinkler
df95fad9be update release name 2021-01-10 22:56:10 +01:00
jonaswinkler
e96809a08e translation for login/logout pages #212 2021-01-10 22:47:24 +01:00
jonaswinkler
7ebc1351fe updated documentation #316 2021-01-10 22:40:13 +01:00
jonaswinkler
ee31249d65 reorganized the Dockerfile 2021-01-10 22:28:46 +01:00
jonaswinkler
a9d6e7f402 add a publish release step 2021-01-10 22:22:23 +01:00
jonaswinkler
296be9135a Merge branch 'dev' into travis-multiarch-builds 2021-01-10 21:55:05 +01:00
jonaswinkler
f24640dec2 some small fixes 2021-01-10 21:53:18 +01:00
jonaswinkler
64d6e6eded wrong path to release 2021-01-10 21:35:43 +01:00
jonaswinkler
587cd80055 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-01-10 21:28:54 +01:00
jonaswinkler
527b7bee3f forgot a dependency 2021-01-10 21:27:41 +01:00
jonaswinkler
e1f52d706f fix wrong directory 2021-01-10 21:20:55 +01:00
jonaswinkler
2e2e69f07c more release archive 2021-01-10 21:17:01 +01:00
jonaswinkler
6a3e4f0857 add release archive action 2021-01-10 21:03:50 +01:00
jonaswinkler
ff3bdd7f5a fix script name 2021-01-10 20:00:11 +01:00
jonaswinkler
1e185d1502 don't build front end with docker 2021-01-10 19:59:05 +01:00
jonaswinkler
8f9aab407d Merge branch 'dev' into travis-multiarch-builds 2021-01-10 19:27:10 +01:00
jonaswinkler
4cf0ce1b06 version push 2021-01-10 19:26:38 +01:00
jonaswinkler
8430aa75da enable the other architectures 2021-01-10 17:46:43 +01:00
Jonas Winkler
f5a47de1d6 Merge pull request #315 from shamoon/fix/issue-314
Fix log colors in dark mode
2021-01-10 17:45:13 +01:00
Michael Shamoon
1fe322bbac Fix log colors in dark mode 2021-01-10 08:36:20 -08:00
jonaswinkler
f6da608154 disable tests until this is working 2021-01-10 17:19:00 +01:00
jonaswinkler
22fc16f4a3 revert to python:3.7-slim base image since ubuntu:20.04 is clearly not working for arm 2021-01-10 17:18:35 +01:00
jonaswinkler
def85a3d37 maybe use requirements instead? 2021-01-10 15:51:40 +01:00
Jonas Winkler
f638079361 Merge pull request #306 from shamoon/fix/large-card-mobile-fixes
Fixes for large cards / search results on mobile
2021-01-10 12:21:51 +01:00
Jonas Winkler
e87ab91d0e Merge pull request #310 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_de
Translate '/src/locale/en-us/LC_MESSAGES/django.po' in 'de'
2021-01-10 12:21:13 +01:00
Jonas Winkler
fb56602081 Merge pull request #311 from jonaswinkler/translations_src-ui-messages-xlf--dev_nl_NL
Translate '/src-ui/messages.xlf' in 'nl_NL'
2021-01-10 12:20:57 +01:00
Jonas Winkler
2c1d9f2d7b Merge pull request #312 from jonaswinkler/translations_src-ui-messages-xlf--dev_fr
Translate '/src-ui/messages.xlf' in 'fr'
2021-01-10 12:20:43 +01:00
Jonas Winkler
49385959b8 Merge pull request #308 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_nl_NL
Translate '/src/locale/en-us/LC_MESSAGES/django.po' in 'nl_NL'
2021-01-10 12:19:32 +01:00
transifex-integration[bot]
3511c86abd Translate /src-ui/messages.xlf in fr
translated for the source file '/src-ui/messages.xlf'
on the 'fr' language.
2021-01-10 11:19:21 +00:00
transifex-integration[bot]
9908580409 Translate /src-ui/messages.xlf in nl_NL
translated for the source file '/src-ui/messages.xlf'
on the 'nl_NL' language.
2021-01-10 11:19:16 +00:00
transifex-integration[bot]
5bad23d7be Apply translations in de
translated for the source file '/src/locale/en-us/LC_MESSAGES/django.po'
on the 'de' language.
2021-01-10 11:19:10 +00:00
transifex-integration[bot]
8cde2cd4b2 Apply translations in nl_NL
translated for the source file '/src/locale/en-us/LC_MESSAGES/django.po'
on the 'nl_NL' language.
2021-01-10 11:19:00 +00:00
jonaswinkler
74db555f78 fix cryphtography for armv7 2021-01-10 11:39:30 +01:00
jonaswinkler
a1a415a5d1 fix up pipfile for arm/v7 2021-01-10 11:26:14 +01:00
Michael Shamoon
49053b6ad2 Prevent long title overflow on mobile 2021-01-09 19:53:18 -08:00
Michael Shamoon
fbfdd95958 Fix large card layout on mobile 2021-01-09 19:52:31 -08:00
jonaswinkler
2c065da987 fixes #292 2021-01-10 01:59:47 +01:00
jonaswinkler
6c7281ae88 add sslmode configuration option fixes #298 2021-01-10 01:35:56 +01:00
jonaswinkler
4bb0da397a dependencies 2021-01-10 00:58:14 +01:00
jonaswinkler
6a355b8dff install pipenv 2021-01-10 00:54:48 +01:00
jonaswinkler
aa1fb63714 documentation action 2021-01-10 00:53:30 +01:00
jonaswinkler
c9ce69c1c1 documentation action 2021-01-10 00:50:06 +01:00
jonaswinkler
06ee41226d no need to run commands in pipenv when using --system 2021-01-10 00:41:11 +01:00
jonaswinkler
bf634eee66 fix python action 2021-01-10 00:32:47 +01:00
jonaswinkler
e606ae5097 try new python setup action 2021-01-10 00:28:33 +01:00
jonaswinkler
ecc40d022d test updated Pipfile 2021-01-10 00:09:10 +01:00
jonaswinkler
262e8ee999 add arm64 2021-01-09 22:53:45 +01:00
jonaswinkler
141315cf42 Revert "try separate build / push"
This reverts commit 6fa0d00b
2021-01-09 22:38:05 +01:00
jonaswinkler
6fa0d00b8f try separate build / push 2021-01-09 22:33:07 +01:00
jonaswinkler
47339c84b3 test include this branch 2021-01-09 22:03:38 +01:00
jonaswinkler
692a5081c7 rename workflow 2021-01-09 21:55:03 +01:00
jonaswinkler
28c3f8d614 fix condition 2021-01-09 21:53:13 +01:00
jonaswinkler
fb5d35e43e fix condition 2021-01-09 21:50:53 +01:00
jonaswinkler
a4bff61e5b move everything into a single file so that the docker image build can depend on the tests being successful 2021-01-09 21:49:43 +01:00
jonaswinkler
2c4bbf8a00 use correct version of cache action 2021-01-09 21:23:04 +01:00
jonaswinkler
d2ec38d5fd use correct version 2021-01-09 21:21:50 +01:00
jonaswinkler
517e037724 always update cache 2021-01-09 20:51:46 +01:00
jonaswinkler
0051d9f76e undo removing a required library 2021-01-09 20:29:29 +01:00
jonaswinkler
c0915a3dee add arm 2021-01-09 20:06:53 +01:00
jonaswinkler
4363d4c9ed simplify some things 2021-01-09 19:50:11 +01:00
jonaswinkler
d7095f7ee1 tags? 2021-01-09 19:31:41 +01:00
Jonas Winkler
ebc5f1a01d Update docker.yml 2021-01-09 19:10:09 +01:00
Jonas Winkler
d6ad41ab3a Update docker.yml 2021-01-09 19:06:00 +01:00
Jonas Winkler
9c2e55407f Update docker.yml 2021-01-09 19:02:07 +01:00
jonaswinkler
7c70659212 disable some steps 2021-01-09 18:49:21 +01:00
jonaswinkler
5822273c8d duplicate platform specification 2021-01-09 18:33:58 +01:00
jonaswinkler
001cd83ef8 new buildx setup action 2021-01-09 18:25:56 +01:00
jonaswinkler
b48c290e9c arm 2021-01-09 18:02:36 +01:00
jonaswinkler
327f00e312 now with cache? 2021-01-09 17:54:56 +01:00
jonaswinkler
b1ae8d1332 enable docker builds on this branch 2021-01-09 15:11:58 +01:00
jonaswinkler
38cb8201a1 Merge branch 'travis-multiarch-builds' of https://github.com/MarkSchmitt/paperless into travis-multiarch-builds 2021-01-09 14:59:41 +01:00
jonaswinkler
e3478edeeb Merge branch 'dev' into travis-multiarch-builds 2021-01-09 14:48:51 +01:00
Fabian Koller
69f1931f4f Update to 0.9.13 2021-01-09 11:52:39 +01:00
Jonas Winkler
6eb8908a16 Merge pull request #303 from C0nsultant/patch-4
Add gettext to  Bare Metal Route dependencies
2021-01-09 11:45:29 +01:00
Fabian Koller
88dcd889fa Add gettext to Bare Metal Route dependencies
In theory, this package is optional since not everybody wants to compile translations.
Without other changes to step 5. (i.e. making it explicit that `python3 manage.py compilemessages` is not mandatory), not installing `gettext` results in an error when blindly copy-pasting the steps.
2021-01-09 11:27:35 +01:00
Fabian Koller
9cd6235947 Disable ansible-galaxy import
Repository structure not compatible (galaxy expects the role to be at
the root of the repository, not in a subfolder).
2021-01-09 10:46:38 +01:00
Jonas Winkler
bcb2853150 Merge pull request #302 from shamoon/fix/large-card-dark-mode-buttons
Fix dark mode button display on large cards in certain browsers
2021-01-09 10:13:21 +01:00
Mark Schmitt
ad241f12a3 Run tests, documentation and frontend build also on pull_request 2021-01-09 08:06:55 +01:00
Michael Shamoon
b29627c92b Fix dark mode button display on large cards in certain browsers 2021-01-08 22:09:15 -08:00
jonaswinkler
8518d583d9 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-01-09 01:55:05 +01:00
jonaswinkler
81dee38e4a fixes #300 2021-01-09 01:54:51 +01:00
Jonas Winkler
fa6cc9692e Merge pull request #297 from shamoon/fix/issue-293
Fix logo size issues in certain browsers
2021-01-08 21:15:07 +01:00
Jonas Winkler
c3a92d659e Merge pull request #296 from jonaswinkler/revert-295-fix/issue-293
Revert "Fix logo size issues in certain browsers"
2021-01-08 20:59:51 +01:00
Jonas Winkler
ffed65533b Revert "Fix logo size issues in certain browsers" 2021-01-08 20:59:40 +01:00
Jonas Winkler
5a393569f0 Merge pull request #295 from shamoon/fix/issue-293
Fix logo size issues in certain browsers
2021-01-08 20:59:17 +01:00
Michael Shamoon
6cf20a93d0 Set explicit svg height, hide on mobile 2021-01-08 11:55:50 -08:00
Mark Schmitt
a2b5fb8374 Fix name of documentation workflow 2021-01-08 20:42:17 +01:00
Mark Schmitt
f4f9200fba Fix typo in yaml 2021-01-08 20:39:20 +01:00
Mark Schmitt
52640f08d2 github action improved tagging 2021-01-08 20:37:25 +01:00
Jonas Winkler
bbb5783b4f Merge pull request #289 from shamoon/fix/safari-flex-transition
Miscellaneous CSS fixes
2021-01-08 18:56:37 +01:00
Michael Shamoon
cde937a9eb Fix dark theme highlighting of ng-select dropdowns on keyboard navigation 2021-01-08 09:37:25 -08:00
Michael Shamoon
a4ee4e9b17 Prevent dashboard overflow on mobile 2021-01-08 09:33:45 -08:00
jonaswinkler
34a06435cf changelog and version 2021-01-08 13:39:12 +01:00
jonaswinkler
fad6e7284a fixes #290 2021-01-08 13:27:57 +01:00
Mark Schmitt
29f73b2dbb Give the frontend workflow a name 2021-01-08 11:34:04 +01:00
Mark Schmitt
968725f09f Separate github action into separete workflow files 2021-01-08 11:33:08 +01:00
Mark Schmitt
42064df3e0 Testing excluding docker builds if not specific ref is selected 2021-01-08 11:23:17 +01:00
Michael Shamoon
c980a52244 Fix transition for Safari 2021-01-07 19:23:59 -08:00
jonaswinkler
ed5c50db7d Merge branch 'master' into dev 2021-01-08 02:16:59 +01:00
jonaswinkler
b463428a40 tika documentation 2021-01-08 02:15:42 +01:00
jonaswinkler
38f279fd2a update installation instructions 2021-01-07 21:16:16 +01:00
Jonas Winkler
d3ab4d2f11 Update README.md 2021-01-07 19:33:27 +01:00
jonaswinkler
1170827f3d update docker ignore 2021-01-07 18:42:46 +01:00
jonaswinkler
838631b057 Merge branch 'dev' into travis-multiarch-builds 2021-01-07 17:41:44 +01:00
jonaswinkler
0a469cfdd1 test case for localized index view 2021-01-07 16:58:38 +01:00
jonaswinkler
fc82121604 update tests, remove dead code 2021-01-07 15:20:00 +01:00
Jonas Winkler
25444034ab Update README.md 2021-01-07 15:04:15 +01:00
Jonas Winkler
eec1dbe0a0 Merge pull request #286 from jonaswinkler/translations_src-ui-messages-xlf--dev_nl_NL
Translate '/src-ui/messages.xlf' in 'nl_NL'
2021-01-07 10:53:24 +01:00
Jonas Winkler
47e8bdb752 Merge pull request #287 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_nl_NL
Translate '/src/locale/en-us/LC_MESSAGES/django.po' in 'nl_NL'
2021-01-07 10:52:48 +01:00
transifex-integration[bot]
75fc373b51 Apply translations in nl_NL
translation completed for the source file '/src/locale/en-us/LC_MESSAGES/django.po'
on the 'nl_NL' language.
2021-01-07 09:32:19 +00:00
transifex-integration[bot]
8a397034fd Translate /src-ui/messages.xlf in nl_NL
translation completed for the source file '/src-ui/messages.xlf'
on the 'nl_NL' language.
2021-01-07 09:04:51 +00:00
Mark Schmitt
89476e4479 Try to use pip cache and install dependnecies like in tests 2021-01-07 09:02:29 +01:00
Mark Schmitt
1b61765df8 Install pip 2021-01-07 08:56:48 +01:00
Mark Schmitt
40da245d8d Try to insall sphinx from pipfile 2021-01-07 08:50:04 +01:00
Mark Schmitt
1238d8b994 Add pip cache
Try to be a good citizen and use caches instead of hitting the repos all the time
2021-01-07 08:44:05 +01:00
Mark Schmitt
460d202eb0 Use pip to install sphinx
Not sure why pipenv install doesn't do the trick .. let's try this way first
2021-01-07 08:37:25 +01:00
Mark Schmitt
248e4e5eb9 Try installing sphinx simply with apt 2021-01-07 07:57:12 +01:00
Mark Schmitt
08299fb808 Simplify node build 2021-01-07 07:48:32 +01:00
Mark Schmitt
c06f6145a1 ALso install python before using pip in the documentation job 2021-01-07 07:47:42 +01:00
Mark Schmitt
6101f42ae3 ADd documentation and frontend to dependency for docker build 2021-01-07 07:45:17 +01:00
Mark Schmitt
9ffd9027fa Add missing runs-on 2021-01-07 07:44:36 +01:00
Mark Schmitt
10995788d1 Fix identation 2021-01-07 07:43:45 +01:00
Mark Schmitt
98bc51a3ec Adding documentation and frontend steps from travis build 2021-01-07 07:42:25 +01:00
Mark Schmitt
cc9f9b6e8b Docker build step depends on tests 2021-01-07 07:32:43 +01:00
jonaswinkler
7f0f48ddac bugfixes 2021-01-07 01:01:01 +01:00
jonaswinkler
e92046a265 bugfix 2021-01-07 00:21:47 +01:00
jonaswinkler
fe00dffb70 version push 2021-01-07 00:10:14 +01:00
jonaswinkler
a02ddeb722 fix release script 2021-01-07 00:08:42 +01:00
jonaswinkler
9b3bc62132 fix broken webmanifest 2021-01-07 00:08:34 +01:00
Mark Schmitt
d7b3e7bd69 Use 3.8.6 2021-01-06 23:11:54 +01:00
Jonas Winkler
d3fda57b6d Merge pull request #284 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_fr
Translate '/src/locale/en-us/LC_MESSAGES/django.po' in 'fr'
2021-01-06 23:10:06 +01:00
Mark Schmitt
257ebb88f0 Looks like we need to specify the exact version 2021-01-06 23:10:06 +01:00
Mark Schmitt
9257cdac8f Remove debugging line and specify release versions 2021-01-06 23:06:40 +01:00
transifex-integration[bot]
19fddc8da8 Apply translations in fr
translation completed for the source file '/src/locale/en-us/LC_MESSAGES/django.po'
on the 'fr' language.
2021-01-06 22:04:46 +00:00
Mark Schmitt
44da3fd195 Fix yaml: indentation was wrong 2021-01-06 22:57:34 +01:00
Jonas Winkler
e452c161ba Merge pull request #283 from jonaswinkler/translations_src-ui-messages-xlf--dev_fr
Translate '/src-ui/messages.xlf' in 'fr'
2021-01-06 22:56:28 +01:00
Mark Schmitt
c7c167a058 Update to a possibly working version of pyenv-action
According to https://github.com/gabrielfalcao/pyenv-action/issues/136 this
version should work
2021-01-06 22:55:41 +01:00
Mark Schmitt
6f3cdbc165 Quote command 2021-01-06 22:54:11 +01:00
Mark Schmitt
5b4a3e4288 Remove comment 2021-01-06 22:53:32 +01:00
transifex-integration[bot]
e783494022 Translate /src-ui/messages.xlf in fr
translation completed for the source file '/src-ui/messages.xlf'
on the 'fr' language.
2021-01-06 21:53:12 +00:00
Mark Schmitt
b7ff94900f Specify exact version 2021-01-06 22:52:40 +01:00
Mark Schmitt
e761cc76fa List python versions differently so the pyenv action might light it better 2021-01-06 22:50:11 +01:00
Mark Schmitt
96da61f4e4 Trying to use pyenv action step 2021-01-06 22:48:03 +01:00
jonaswinkler
ca3d62f377 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-01-06 22:35:23 +01:00
Jonas Winkler
0584ceb157 Merge pull request #280 from jonaswinkler/translations_src-ui-messages-xlf--dev_de
Translate '/src-ui/messages.xlf' in 'de'
2021-01-06 21:11:02 +01:00
Jonas Winkler
633b0dd928 Merge pull request #281 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_de
Translate '/src/locale/en-us/LC_MESSAGES/django.po' in 'de'
2021-01-06 21:10:44 +01:00
jonaswinkler
cad2f77490 update dependencies 2021-01-06 21:09:28 +01:00
transifex-integration[bot]
a40448a350 Apply translations in de
translation completed for the source file '/src/locale/en-us/LC_MESSAGES/django.po'
on the 'de' language.
2021-01-06 20:04:15 +00:00
transifex-integration[bot]
01df596dc7 Translate /src-ui/messages.xlf in de
translation completed for the source file '/src-ui/messages.xlf'
on the 'de' language.
2021-01-06 19:58:38 +00:00
jonaswinkler
176b0416cd last translation updates before the next version. 2021-01-06 20:51:56 +01:00
jonaswinkler
b0449d59da changelog 2021-01-06 20:44:06 +01:00
Jonas Winkler
804222d68a Merge pull request #270 from shamoon/fix/issue-267
Allow 'reset' filters on saved views
2021-01-06 20:39:32 +01:00
Michael Shamoon
858bca0f7d More efficient rule equivalency checking 2021-01-06 11:12:43 -08:00
Michael Shamoon
ac459b84c6 Same thing, wait for promise to return =/ 2021-01-06 11:12:13 -08:00
Michael Shamoon
716005fbd2 restore function was lost in merge 2021-01-06 10:57:13 -08:00
Michael Shamoon
086dccc177 Move back list reload for network action 2021-01-06 07:59:46 -08:00
Michael Shamoon
e13dbe4881 Move variable 2021-01-06 07:57:33 -08:00
Michael Shamoon
6a16bdf5fd Merge remote-tracking branch 'upstream/dev' into fix/issue-267 2021-01-06 07:55:19 -08:00
jonaswinkler
f3b46f50bf move settings 2021-01-06 16:53:58 +01:00
Michael Shamoon
14a2ad2b0d Change detection of modified filter rules to wait for filter editor changes only 2021-01-06 07:53:48 -08:00
jonaswinkler
fb539865e0 add ASN in brackets on small cards #268 2021-01-06 16:46:39 +01:00
jonaswinkler
7d92caccf0 dependency update 2021-01-06 16:46:18 +01:00
jonaswinkler
2e71eee7b4 downgrade OCRmyPDF until file handle issues are fixed 2021-01-06 16:46:01 +01:00
Michael Shamoon
507085ee7b Move list reload after network action completes 2021-01-06 07:30:53 -08:00
jonaswinkler
4690b273cc changelog 2021-01-06 14:33:35 +01:00
jonaswinkler
335bdb820f Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-01-06 14:27:59 +01:00
Jonas Winkler
b17d9f850e Merge pull request #260 from shamoon/feature/remote-user
Feature: authentication via HTTP_REMOTE_USER
2021-01-06 14:27:14 +01:00
jonaswinkler
7f8ba75d90 update build scripts 2021-01-06 14:19:46 +01:00
jonaswinkler
842b951549 add settings menu item 2021-01-06 14:13:52 +01:00
jonaswinkler
f373211281 tests for pre and post consume script 2021-01-06 14:08:44 +01:00
jonaswinkler
c5500db9ef changelog 2021-01-06 14:08:05 +01:00
Mark Schmitt
729d2da764 Remove command - should be unnecessary 2021-01-06 10:22:24 +01:00
Mark Schmitt
2587d7fec8 Remove comment from yaml 2021-01-06 10:20:31 +01:00
Mark Schmitt
a6c6f64453 Use another python action instead 2021-01-06 09:10:45 +01:00
Mark Schmitt
b31bfeebd7 Try to make pip and pipenv use the installed python version 2021-01-06 09:05:14 +01:00
jonaswinkler
e107d5df6f fixes #153, adds option for inline attachments and filename filters 2021-01-06 02:40:08 +01:00
jonaswinkler
6e84668884 fix login/logout pages 2021-01-06 01:16:16 +01:00
jonaswinkler
63d2dcc1f7 fix some translations 2021-01-05 23:36:31 +01:00
jonaswinkler
0ee6426eb5 fixes #278 2021-01-05 22:11:42 +01:00
jonaswinkler
ac2cac6edc fix missing translation. 2021-01-05 14:57:56 +01:00
jonaswinkler
73682d22d6 test cases 2021-01-05 13:50:27 +01:00
Jonas Winkler
bef80037da Merge pull request #277 from shamoon/fix/issue-276
Fix more dark mode inconsistencies
2021-01-05 12:33:36 +01:00
Michael Shamoon
056b9638ab Fix some inconsistent elements for dark mode 2021-01-04 19:31:18 -08:00
Jonas Winkler
be94a8e49a Merge pull request #251 from jayme-github/ignore-date
Add option to ignore certain dates in parse_date
2021-01-05 00:19:13 +01:00
jonaswinkler
d153672f0d some changes 2021-01-04 23:05:16 +01:00
jonaswinkler
9f9581e1f8 Merge branch 'dev' into feature-websockets-status 2021-01-04 22:45:56 +01:00
jonaswinkler
7587150f96 gitignore 2021-01-04 18:40:24 +01:00
jonaswinkler
e97b06674c changelog 2021-01-04 18:40:09 +01:00
jonaswinkler
e82700a826 update dependencies 2021-01-04 18:40:02 +01:00
jonaswinkler
05c16e1539 more changes for #118 2021-01-04 17:42:42 +01:00
jonaswinkler
50fa69aca4 clarify polling / inotify #118 2021-01-04 17:36:32 +01:00
jonaswinkler
cb3001ac3b bugfix 2021-01-04 17:31:35 +01:00
jonaswinkler
9bbcb9319c fixes #128 2021-01-04 17:08:52 +01:00
jonaswinkler
32f371fcb6 better sorting directive 2021-01-04 15:58:26 +01:00
jonaswinkler
16559e83f5 bugfix 2021-01-04 15:58:04 +01:00
jonaswinkler
052c8c5372 fix sort field order 2021-01-04 15:57:52 +01:00
Mark Schmitt
b0588321e0 Fix yaml 2021-01-04 15:45:12 +01:00
Mark Schmitt
574ab7d696 Add GITHUB_TOKEN to python tests 2021-01-04 15:44:02 +01:00
Mark Schmitt
336b908e8f Only build for 3.6 2021-01-04 15:28:47 +01:00
Mark Schmitt
b41dd2780e Print the env 2021-01-04 15:19:00 +01:00
Mark Schmitt
7e99d7515f Try manually replacing the python-version 2021-01-04 15:17:13 +01:00
Mark Schmitt
c9de592832 Try to reproduce exactly what's done in the travis build to test 2021-01-04 15:10:16 +01:00
Mark Schmitt
69ac7b9bcf Revert python version in Pipfile to 3.6 2021-01-04 15:00:35 +01:00
jonaswinkler
8268607a56 add french to paperless 2021-01-04 14:15:34 +01:00
jonaswinkler
c33e9245bf Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-01-04 13:59:14 +01:00
Jonas Winkler
4d5166d568 Merge pull request #272 from jonaswinkler/translations_src-ui-messages-xlf--dev_fr
Translate '/src-ui/messages.xlf' in 'fr'
2021-01-04 12:44:00 +01:00
Jonas Winkler
fdc8060071 Merge pull request #273 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_fr
Translate '/src/locale/en-us/LC_MESSAGES/django.po' in 'fr'
2021-01-04 12:43:36 +01:00
transifex-integration[bot]
e139ce77ee Apply translations in fr
translation completed for the source file '/src/locale/en-us/LC_MESSAGES/django.po'
on the 'fr' language.
2021-01-04 11:39:33 +00:00
transifex-integration[bot]
ed6f2e40cf Translate /src-ui/messages.xlf in fr
translation completed for the source file '/src-ui/messages.xlf'
on the 'fr' language.
2021-01-04 11:36:18 +00:00
Mark Schmitt
05f57249d6 Only build python 3.7 and say so in the Pipfile too 2021-01-04 12:24:48 +01:00
Mark Schmitt
e91befabc0 Revert job strategy matrix change 2021-01-04 12:22:35 +01:00
Mark Schmitt
2e641b0e30 Explicitly set ubuntu-20.04 as OS and install dev dependencies 2021-01-04 12:18:56 +01:00
Michael Shamoon
7e36986a26 Clearing filters on saved views should reset them to initial rules 2021-01-04 00:20:10 -08:00
Fabian Koller
586db3bc5e Deploy role to ansible galaxy
Happens only when a new tag is pushed
2021-01-04 06:42:34 +01:00
Fabian Koller
51fd19c315 Switch to github actions 2021-01-04 06:42:34 +01:00
Michael Shamoon
426ad30a52 Refactor to extend RemoteUserMiddleware & add authentication for Django 2021-01-03 21:21:39 -08:00
jonaswinkler
111ed38cce fixes #121 2021-01-04 00:38:29 +01:00
jonaswinkler
e07128a145 don't run post-consume script inside transaction #259 2021-01-04 00:03:31 +01:00
jonaswinkler
610fa075f6 fixed missing (filtered) text 2021-01-03 23:56:13 +01:00
jonaswinkler
5e75d84920 add dutch language 2021-01-03 22:25:12 +01:00
Jonas Winkler
4d97a825d9 Merge pull request #261 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_nl_NL
Translate '/src/locale/en-us/LC_MESSAGES/django.po' in 'nl_NL'
2021-01-03 21:45:31 +01:00
Jonas Winkler
bac739a6d9 Merge pull request #262 from jonaswinkler/translations_src-ui-messages-xlf--dev_nl_NL
Translate '/src-ui/messages.xlf' in 'nl_NL'
2021-01-03 21:45:22 +01:00
jonaswinkler
d935dcd350 fixes #98 2021-01-03 21:44:53 +01:00
jayme-github
be2061b74d Add PAPERLESS_IGNORE_DATES to docs 2021-01-03 14:47:04 +01:00
jayme-github
2aa2086dfb Add missing config options to example file 2021-01-03 14:35:28 +01:00
transifex-integration[bot]
a89d4ee434 Translate /src-ui/messages.xlf in nl_NL
translation completed for the source file '/src-ui/messages.xlf'
on the 'nl_NL' language.
2021-01-03 12:28:10 +00:00
transifex-integration[bot]
cd5d762cbc Apply translations in nl_NL
translation completed for the source file '/src/locale/en-us/LC_MESSAGES/django.po'
on the 'nl_NL' language.
2021-01-03 12:23:57 +00:00
jonaswinkler
a96ab9a9a4 form field validation (much better error messages) 2021-01-03 13:09:16 +01:00
Michael Shamoon
f0a1aed029 Merge remote-tracking branch 'upstream/dev' into feature/remote-user 2021-01-03 00:38:10 -08:00
Michael Shamoon
7b56ad9dad Allow authentication via HTTP_REMOTE_USER 2021-01-03 00:37:19 -08:00
jonaswinkler
e05f365e6a fix "ng serve" 2021-01-03 01:25:35 +01:00
jonaswinkler
c15e94f759 bugfix 2021-01-03 01:25:26 +01:00
transifex-integration[bot]
d93ec0d5c7 Translate /src-ui/messages.xlf in de
at least 80% translated for the source file '/src-ui/messages.xlf'
on the 'de' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2021-01-02 23:58:23 +00:00
transifex-integration[bot]
74cf5373b9 Apply translations in de
at least 80% translated for the source file '/src/locale/en-us/LC_MESSAGES/django.po'
on the 'de' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2021-01-02 23:58:17 +00:00
transifex-integration[bot]
4ddc034e9c Apply translations in nl_NL
at least 80% translated for the source file '/src/locale/en-us/LC_MESSAGES/django.po'
on the 'nl_NL' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2021-01-02 23:58:13 +00:00
Jonas Winkler
061dc04755 Merge pull request #248 from shamoon/fix/issue-164
Hide matching pattern if algorithm is auto
2021-01-02 16:51:34 +01:00
Michael Shamoon
0e4597131b Also hide case insensitive checkbox for auto matching algorithm 2021-01-02 07:24:48 -08:00
jonaswinkler
57f77c4657 fix test case 2021-01-02 15:52:02 +01:00
jonaswinkler
89d6e422f5 fix bugs and test cases 2021-01-02 15:37:27 +01:00
jonaswinkler
520f92503f Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-01-02 15:31:08 +01:00
jonaswinkler
4cef4adc7e config file 2021-01-02 15:30:52 +01:00
jonaswinkler
e97ff3d671 code style 2021-01-02 15:26:09 +01:00
jonaswinkler
97e96d02f2 test cases 2021-01-02 15:25:13 +01:00
jayme-github
654ee4e62e Add option to ignore certain dates in parse_date
PAPERLESS_IGNORE_DATES allows to specify a comma separated list of dates
to ignore during date parsing (from filename and content). This can be
used so specify dates that do appear often in documents but are usually
not the documents creation date (like your date of birth).
2021-01-02 15:20:49 +01:00
Jonas Winkler
87fe1be1ed Merge pull request #250 from jonaswinkler/translations_src-ui-messages-xlf--dev_de
Translate '/src-ui/messages.xlf' in 'de'
2021-01-02 14:45:43 +01:00
transifex-integration[bot]
4d7d3afc7d Translate /src-ui/messages.xlf in de
translation completed for the source file '/src-ui/messages.xlf'
on the 'de' language.
2021-01-02 13:19:36 +00:00
jonaswinkler
7bca5bf40e Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-01-02 14:19:02 +01:00
jonaswinkler
158e83c425 fixed quotes 2021-01-02 14:18:20 +01:00
Jonas Winkler
fa0ccff5b2 Merge pull request #249 from jonaswinkler/translations_src-ui-messages-xlf--dev_de
Translate '/src-ui/messages.xlf' in 'de'
2021-01-02 12:57:59 +01:00
transifex-integration[bot]
a0505aa8e9 Translate /src-ui/messages.xlf in de
translation completed for the source file '/src-ui/messages.xlf'
on the 'de' language.
2021-01-02 11:56:20 +00:00
jonaswinkler
86677ee6b4 messages updates 2021-01-02 12:54:25 +01:00
jonaswinkler
eb91ac0c3c cleared up some plural forms 2021-01-02 12:52:10 +01:00
Mark Schmitt
a21fb36cd2 github-actions: readding previously removed "-n auto"
possibly this is fixed by the wheel dependency that was missing before.
2021-01-02 11:33:56 +01:00
Mark Schmitt
28209bb474 github-actions: also install wheel
There's an error about pip wheel not being available and falling back
to some legacy version. Let's see if this helps.
2021-01-02 11:30:12 +01:00
Mark Schmitt
376efcde27 github-actions: removing unsupported parameter
I don't understand what the "-n auto" parameter does, pytest doesn't either
(in the version installed) - so removing it to see if that produces something
usable.
2021-01-02 11:27:38 +01:00
Mark Schmitt
4684d19953 github-actions: readding explicit install
explicitly install pytest, pytest-cov and coveralls.
I think travis already did that and we need to explicitly do so now.
removed installing dev-dependencies, do it explicitly.
(just trying to reproduce the travis-ci build)
2021-01-02 11:23:30 +01:00
Mark Schmitt
4bea504690 Try o make pipenv also install dev dependencies 2021-01-02 09:44:08 +01:00
Mark Schmitt
90f4ccfb94 Remove cache to see if that helps with pytest-cov issues 2021-01-02 09:41:21 +01:00
Mark Schmitt
d292f71007 Add pytest-cov to install 2021-01-02 09:31:20 +01:00
Mark Schmitt
4a45a77753 Add pytest to install step 2021-01-02 09:23:49 +01:00
Mark Schmitt
ef28ae8117 Move sphinx step below tests step as it used to be 2021-01-02 09:19:58 +01:00
Mark Schmitt
b8b0b61e67 Execute pip commands one after the other to find issue 2021-01-02 09:15:10 +01:00
Mark Schmitt
41c1b711c2 Use sudo for apt 2021-01-02 09:08:19 +01:00
Mark Schmitt
8ab251c5f7 Execute python tests 2021-01-02 09:07:05 +01:00
Michael Shamoon
659c7cdbd8 Hide matching pattern if algorithm is auto 2021-01-01 20:57:57 -08:00
jonaswinkler
ef9d8c64fc layout fix 2021-01-02 02:01:07 +01:00
jonaswinkler
e6927a196f Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-01-02 01:57:40 +01:00
jonaswinkler
729e5ee0e1 compile messages build step 2021-01-02 01:57:26 +01:00
Jonas Winkler
a3f214b6ba Merge pull request #245 from jonaswinkler/translations_src-locale-en-us-lc-messages-django-po--dev_de
Translate '/src/locale/en-us/LC_MESSAGES/django.po' in 'de'
2021-01-02 01:31:05 +01:00
transifex-integration[bot]
a2f0a9687d Apply translations in de
translation completed for the source file '/src/locale/en-us/LC_MESSAGES/django.po'
on the 'de' language.
2021-01-02 00:30:20 +00:00
jonaswinkler
820920839d update some messages 2021-01-02 01:26:34 +01:00
jonaswinkler
0d5d8f7c80 add missing migrations 2021-01-02 01:21:44 +01:00
jonaswinkler
bf198f37db fix locale discovery by django app 2021-01-02 01:19:06 +01:00
jonaswinkler
c6af2044ce bugfix 2021-01-02 01:18:32 +01:00
jonaswinkler
a9b331c5fd missed a translation string 2021-01-02 01:13:34 +01:00
jonaswinkler
cb88ffff79 Merge branch 'dev' into feature-localization 2021-01-02 00:46:35 +01:00
jonaswinkler
bcf17bfdc0 fix some translation issues 2021-01-02 00:45:23 +01:00
jonaswinkler
110ef17ed8 fix angular language mapping 2021-01-02 00:44:14 +01:00
Jonas Winkler
348d07757b Merge pull request #244 from jonaswinkler/translations_src-ui-messages-xlf--dev_de
Translate '/src-ui/messages.xlf' in 'de'
2021-01-02 00:43:09 +01:00
transifex-integration[bot]
eaeda47690 Translate /src-ui/messages.xlf in de
translation completed for the source file '/src-ui/messages.xlf'
on the 'de' language.
2021-01-01 23:42:43 +00:00
jonaswinkler
fdf330276e Merge branch 'dev' into feature-localization 2021-01-02 00:15:03 +01:00
Jonas Winkler
dace3dc803 Merge pull request #243 from jonaswinkler/translations_src-ui-messages-xlf--dev_de_DE
Translate '/src-ui/messages.xlf' in 'de_DE'
2021-01-02 00:11:42 +01:00
transifex-integration[bot]
70d48b39f3 Translate /src-ui/messages.xlf in de_DE
translation completed for the source file '/src-ui/messages.xlf'
on the 'de_DE' language.
2021-01-01 23:11:08 +00:00
jonaswinkler
d9f5bc7681 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-01-02 00:10:36 +01:00
jonaswinkler
52aa78acab fix some messages 2021-01-02 00:10:22 +01:00
Jonas Winkler
b73ec76146 Merge pull request #242 from jonaswinkler/translations_src-ui-messages-xlf--dev_de_DE
Translate '/src-ui/messages.xlf' in 'de_DE'
2021-01-02 00:07:59 +01:00
transifex-integration[bot]
70e49a61fa Translate /src-ui/messages.xlf in de_DE
translation completed for the source file '/src-ui/messages.xlf'
on the 'de_DE' language.
2021-01-01 23:06:19 +00:00
jonaswinkler
7904a3efb7 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-01-02 00:00:42 +01:00
Jonas Winkler
717a4951fd Merge pull request #241 from shamoon/fix/dark-mode-fixes
Visual fixes to dark mode elements
2021-01-01 23:59:58 +01:00
Michael Shamoon
a3b4349b1c Increase contrast of text, fix large card anchor color
Increased brightness of dark-mode primary + danger, use darker bg for tables, fix some button hover/active states
2021-01-01 14:50:25 -08:00
jonaswinkler
4b74cd5677 fix #236 2021-01-01 23:27:55 +01:00
jonaswinkler
6d554bace1 fix #238 2021-01-01 23:09:10 +01:00
jonaswinkler
c4367818b7 better matching algorithm descriptions 2021-01-01 23:08:02 +01:00
jonaswinkler
ebdddc4fe4 fix metadata column 2021-01-01 22:44:10 +01:00
jonaswinkler
bac0dbb70b messages 2021-01-01 22:38:33 +01:00
jonaswinkler
0a7412424d refactored app-view service 2021-01-01 22:38:26 +01:00
jonaswinkler
d5601b7ec0 remove active class from user menu 2021-01-01 22:29:25 +01:00
jonaswinkler
b79d88d5ef Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2021-01-01 22:26:54 +01:00
Jonas Winkler
851d9cc313 Merge pull request #240 from shamoon/feature/updated-nav-bar
Feature: updated main navbar
2021-01-01 22:26:25 +01:00
jonaswinkler
40ef375c15 supply file_name for tika parser 2021-01-01 22:19:43 +01:00
jonaswinkler
de32addf76 fix up the tika parser 2021-01-01 21:59:21 +01:00
Michael Shamoon
1e541b688d brand width rem 2021-01-01 12:52:35 -08:00
jonaswinkler
c05bfb894a remove duplicate code 2021-01-01 21:50:45 +01:00
jonaswinkler
279e269a66 update start_services.sh script 2021-01-01 21:50:32 +01:00
jonaswinkler
8490b65bcc update lockfile 2021-01-01 21:50:23 +01:00
Michael Shamoon
1234634ba3 Not sure why Typescript complained about this 2021-01-01 12:49:48 -08:00
Michael Shamoon
3d2d9cb3a2 Remove unused line 2021-01-01 12:43:19 -08:00
Michael Shamoon
7740961697 Spaces 2021-01-01 12:42:58 -08:00
Michael Shamoon
22c77e7be5 Merge remote-tracking branch 'upstream/dev' into feature/updated-nav-bar 2021-01-01 12:42:01 -08:00
Michael Shamoon
6566e36141 Mistakenly overwritten files from merge of dev branch 2021-01-01 12:41:05 -08:00
Michael Shamoon
a4e5d36a02 Linting 2021-01-01 12:36:19 -08:00
Michael Shamoon
54a0da8151 Dark mode compatability 2021-01-01 12:29:52 -08:00
Michael Shamoon
dc525783ee search icon position 2021-01-01 12:25:16 -08:00
Michael Shamoon
a5ae056c9b Merge remote-tracking branch 'upstream/dev' into feature/updated-nav-bar 2021-01-01 12:16:55 -08:00
Jonas Winkler
e0c87fc556 Merge pull request #235 from sisao/dev
self serve pdf.worker.min.js
2021-01-01 21:13:59 +01:00
Jonas Winkler
fb38aacde4 Merge branch 'dev' into dev 2021-01-01 21:13:49 +01:00
jonaswinkler
564f3b9170 fix some messages 2021-01-01 20:23:32 +01:00
Jonas Winkler
9cb14e2815 Merge pull request #204 from jovandeginste/paperless_tika
WIP: Add the new paperless_tika parser
2021-01-01 20:21:18 +01:00
Jonas Winkler
54c023523f Merge pull request #203 from shamoon/feature/dark-mode
Feature: dark mode
2021-01-01 20:18:39 +01:00
Mark Schmitt
97d068c3bb Removed separate build step
It looks like part of the build step is repeated in the push step
due to bad caching possibly.
2021-01-01 12:53:16 +01:00
Michael Shamoon
f090537ef4 tweak username display, dropdown size + spacing 2020-12-31 16:23:08 -08:00
Mark Schmitt
3f01a9e1e2 Update docker-publish.yml 2020-12-31 19:32:04 +01:00
Michael Shamoon
be7bf5288b Fix alignment 2020-12-31 07:52:14 -08:00
jonaswinkler
71d7aa3fb2 update message file 2020-12-31 16:00:24 +01:00
jonaswinkler
1b8c4bb1a5 Merge branch 'dev' into feature-localization 2020-12-31 15:59:47 +01:00
jonaswinkler
fddda75f75 more translation 2020-12-31 15:59:12 +01:00
Stefan
aa7e2594e2 self serve pdf.worker.min.js 2020-12-31 15:07:35 +01:00
Jo Vandeginste
5236f4e58d Refactor after feedback:
- rename PAPERLESS_TIKA to PAPERLESS_TIKA_ENABLED
- all other env params now start with PAPERLESS_TIKA
- convert_to_pdf as class instance method
- smaller details

Signed-off-by: Jo Vandeginste <Jo.Vandeginste@kuleuven.be>
2020-12-31 14:41:47 +01:00
Mark Schmitt
916ea79e57 Experimenting with github actions 2020-12-31 13:27:22 +01:00
Mark Schmitt
b855222ee1 Removing travis in favor of github actions 2020-12-31 13:24:57 +01:00
Fabian Koller
fc31195fa0 Update to 0.9.11 2020-12-31 11:47:54 +01:00
jonaswinkler
70cb27bf0a bump versions 2020-12-31 11:23:03 +01:00
jonaswinkler
2a744a3a83 roll back changes #184 #227 2020-12-31 11:12:46 +01:00
Fabian Koller
be56707a8a Change default OCRmyPDF args
Clean is hardcoded as True, anyway
Deskew breaks tesseract redo
2020-12-31 10:01:57 +01:00
Fabian Koller
a74404170d Update to 0.9.10 2020-12-31 09:53:29 +01:00
Michael Shamoon
2e544326e5 Toggle caret tweaks 2020-12-31 00:35:54 -08:00
Michael Shamoon
d42c13a9c6 Reorganized navbar
Updated search field, new user menu
2020-12-30 23:39:07 -08:00
Michael Shamoon
020696fb17 Fix overflowing document titles on homepage mobile view 2020-12-30 23:16:30 -08:00
Michael Shamoon
06bf3e27d3 Merge remote-tracking branch 'upstream/dev' into feature/dark-mode 2020-12-30 19:50:29 -08:00
jonaswinkler
3b17f9d6ec changelog 2020-12-31 02:40:43 +01:00
jonaswinkler
9c8b43f602 Merge branch 'dev' 2020-12-31 02:27:45 +01:00
jonaswinkler
70f052cb5c changelog 2020-12-31 02:15:16 +01:00
jonaswinkler
e5c10fcd93 Merge branch 'master' into dev 2020-12-31 02:15:01 +01:00
jonaswinkler
9eb377703e fix hover for check boxes 2020-12-31 01:58:32 +01:00
jonaswinkler
4c63dad309 fix sorting for "not assigned" 2020-12-31 01:43:04 +01:00
jonaswinkler
45e52aa985 add the manifest to the frontend entry page #219 2020-12-31 01:20:38 +01:00
jonaswinkler
6066d00c5e intelligent sorting of the bulk edit drop downs 2020-12-31 01:07:28 +01:00
jonaswinkler
59a10a8127 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2020-12-31 01:07:07 +01:00
Jonas Winkler
6dc8edea88 Merge pull request #219 from zjean/feature/add-to-home
Improve mobile add to homes screen support
2020-12-31 01:02:05 +01:00
jonaswinkler
ef1ee8e0c0 fixes a bug with invisible selection 2020-12-30 23:34:50 +01:00
jonaswinkler
1428b26703 this immensely improves resposibility 2020-12-30 23:34:21 +01:00
jonaswinkler
63b841c496 fixes #224 2020-12-30 23:01:34 +01:00
jonaswinkler
208f4291d6 fixes #222 2020-12-30 21:54:36 +01:00
jonaswinkler
750d08ec01 add more translation 2020-12-30 21:48:34 +01:00
jonaswinkler
8d665aeac4 Merge branch 'dev' into feature-localization 2020-12-30 19:52:07 +01:00
jonaswinkler
a0f983f05d codestyle 2020-12-30 17:20:03 +01:00
jonaswinkler
1df922ef16 Do file renaming first, since this is the important step, and indexing takes a while. 2020-12-30 17:18:27 +01:00
jonaswinkler
beed820602 improve file renaming speed. 2020-12-30 17:17:36 +01:00
jonaswinkler
b6722fdd84 update angular messages 2020-12-30 17:14:08 +01:00
transifex-integration[bot]
eb47fb5501 Translate /src-ui/messages.xlf in de_DE
at least 50% translated for the source file '/src-ui/messages.xlf'
on the 'de_DE' language.

 Manual sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format
2020-12-30 15:35:33 +00:00
jonaswinkler
aacf7ba275 language fixes 2020-12-30 16:29:45 +01:00
jonaswinkler
400392655e adds a command to regenerate thumbnails #218 2020-12-30 15:46:56 +01:00
jonaswinkler
713985f259 fixes #218 2020-12-30 15:12:16 +01:00
Jan Wiebe
664280ccce Add newline to end of file 2020-12-30 14:56:18 +01:00
Jan Wiebe
9fe6c5c3a9 Fix indentation 2020-12-30 14:55:49 +01:00
Jan Wiebe
ab5098a036 Fix indentation of angular.json 2020-12-30 14:52:20 +01:00
Jan Wiebe
b092bb6848 Add manifest file to add to home screen and launch in full screen mode. 2020-12-30 14:45:15 +01:00
jonaswinkler
17ded12375 bugfix 2020-12-30 12:21:13 +01:00
jonaswinkler
118149c539 more translation work 2020-12-30 11:33:56 +01:00
Jonas Winkler
57da323cea Update README.md 2020-12-30 03:39:25 +01:00
Michael Shamoon
ebe2ba401d Consistent settings screen 2020-12-29 16:58:19 -08:00
Michael Shamoon
a67443c195 Compatability with new settings service 2020-12-29 16:53:42 -08:00
Michael Shamoon
2e0d36c4d9 Merge remote-tracking branch 'upstream/dev' into feature/dark-mode 2020-12-29 16:53:31 -08:00
jonaswinkler
db4b621631 angular message file 2020-12-30 01:48:06 +01:00
jonaswinkler
a91958bfe1 add translation support to the backend #215 2020-12-30 01:39:06 +01:00
jonaswinkler
5395208b00 add initial localization support for the front end #215 2020-12-30 00:26:06 +01:00
jonaswinkler
d909010f08 angular message file 2020-12-30 00:24:42 +01:00
Jonas Winkler
5c7b65163e Merge pull request #214 from C0nsultant/patch-2
Fix ENV var name for user args in example config
2020-12-30 00:00:11 +01:00
Fabian Koller
e4e4efcba7 Fix creation of user arg
json.loads is picky in that is expects true json, not yaml from ansible
2020-12-29 23:54:22 +01:00
Fabian Koller
9f18d0ad45 Fix ENV var name for user args in example config
The actual string used when looking up the user arguments ends with an S: `PAPERLESS_OCR_USER_ARGS`
2020-12-29 23:52:27 +01:00
jonaswinkler
2de3894d67 more localization tags 2020-12-29 23:41:59 +01:00
jonaswinkler
03c6a4e18e more localization #123 2020-12-29 23:37:33 +01:00
jonaswinkler
f9ab8d3b35 more localization tags #123 2020-12-29 23:34:04 +01:00
Fabian Koller
14f87f5aee Harden systemd service files, drop perms further 2020-12-29 23:30:59 +01:00
Fabian Koller
bb569b4e78 Integrate OCRmyPDF args into ansible config 2020-12-29 22:43:52 +01:00
jonaswinkler
ef63ec40d9 changelog 2020-12-29 22:02:03 +01:00
jonaswinkler
761a6a4264 plural form fix 2020-12-29 22:01:56 +01:00
jonaswinkler
8139ecfd39 version bump 2020-12-29 22:01:37 +01:00
jonaswinkler
fb09f67899 bugfixes 2020-12-29 22:01:18 +01:00
Fabian Koller
f075384b44 Move paperless.conf to /etc, drop permissions 2020-12-29 21:55:59 +01:00
Jo Vandeginste
b8e8bf3dd4 Add the new paperless_tika parser
This parser will use an external Tika and Gotenberg server to parse
"Office" documents (.doc, .xls, .odt, etc.)

Signed-off-by: Jo Vandeginste <Jo.Vandeginste@kuleuven.be>
2020-12-29 21:51:21 +01:00
jonaswinkler
d690b34ee0 added invalid PDF document with BOM marker 2020-12-29 21:02:45 +01:00
jonaswinkler
e24b40de29 more tests 2020-12-29 21:01:18 +01:00
Fabian Koller
bf3ffc29a9 Make role compatible with ansible 2.7
Recursive remote copy is supported starting with 2.8 only
Indentation behaviour in literal yaml strings seems to have changed
Regex logic for ImageMagic was flawed (no idea why this worked before)
2020-12-29 20:59:49 +01:00
jonaswinkler
6581cff8dc more tests 2020-12-29 20:55:27 +01:00
jonaswinkler
5c3ae44021 fix up gunicorn conf 2020-12-29 18:23:08 +01:00
jonaswinkler
2b341afcae fix some bugs with the filter editor 2020-12-29 17:32:56 +01:00
jonaswinkler
7f4cfc0b76 fix a couple issues with the bulk editor 2020-12-29 17:20:45 +01:00
jonaswinkler
b2327d6fde more settings 2020-12-29 17:09:07 +01:00
jonaswinkler
f964dd5935 added configuration option for the font #197 #207 2020-12-29 12:26:41 +01:00
Michael Shamoon
4ecd5ada06 Semantic correction 2020-12-28 19:07:12 -08:00
Michael Shamoon
f770f0444a Fix hidden ng-select contents on focus 2020-12-28 17:49:10 -08:00
jonaswinkler
39d1c051cf use the actual name of the package #205 2020-12-29 02:25:39 +01:00
Jonas Winkler
5622e13802 Merge pull request #206 from MarcoBuster/fix-missing-libxslt-dev
Add missing libxslt-dev
2020-12-29 02:24:15 +01:00
Marco Aceti
d6285cc851 Add libxslt-dev library to Dockerfile build 2020-12-29 01:57:46 +01:00
Michael Shamoon
777d8b4609 Fix bg color on large cards 2020-12-28 16:52:51 -08:00
Michael Shamoon
edb9264d78 Many small fixes to theme & inline logo 2020-12-28 16:46:08 -08:00
jonaswinkler
6b708c5ed3 Merge branch 'patch-2' of https://github.com/jovandeginste/paperless-ng into jovandeginste-patch-2 2020-12-29 01:08:46 +01:00
jonaswinkler
1dd2386fa5 messed up, restore functionality 2020-12-28 23:53:18 +01:00
Michael Shamoon
e6164eb1ab Merge branch 'dev' into feature/dark-mode 2020-12-28 14:28:53 -08:00
jonaswinkler
bd01b821ec possible fix for #201 2020-12-28 23:24:08 +01:00
Michael Shamoon
b44ca770a5 Fix some white partial pixels around borders 2020-12-28 14:20:00 -08:00
jonaswinkler
9093ac5901 more localization tags #123 2020-12-28 22:54:49 +01:00
Jo Vandeginste
755da317ea Update settings.py 2020-12-28 22:37:53 +01:00
Jo Vandeginste
6834c70bae Allow extending INSTALLED_APPS via environment
This allows a user to add "apps" (aka parsers) through the environment.

Especially useful when using Docker, and adding a test-parser.

Usage:

```yaml
services:
  webserver:
    environment:
      PAPERLESS_APPS: paperless_tika.apps.PaperlessTikaConfig
```

You can add more by separating them with a `,`:

```yaml
PAPERLESS_APPS: app1,app2
```
2020-12-28 22:19:30 +01:00
Michael Shamoon
1297c0911c Theme tweaks
See https://github.com/jonaswinkler/paperless-ng/issues/194
2020-12-28 12:56:00 -08:00
Michael Shamoon
ebcf4e2d81 Set on init 2020-12-28 12:54:00 -08:00
jonaswinkler
bd3a2306d6 better toasts 2020-12-28 21:52:09 +01:00
jonaswinkler
27666da4e9 more translation tags #123 2020-12-28 21:29:28 +01:00
Michael Shamoon
70f7b614e6 Merge branch 'dev' into feature/dark-mode 2020-12-28 10:26:33 -08:00
jonaswinkler
9bf4ce25b2 Merge branch 'dev' into travis-multiarch-builds 2020-12-28 17:54:48 +01:00
jonaswinkler
d51848cdc0 Merge branch 'travis-multiarch-builds' of github.com:jonaswinkler/paperless-ng into travis-multiarch-builds 2020-12-28 17:54:42 +01:00
jonaswinkler
7d86ee32af Merge branch 'master' into dev 2020-12-28 17:25:00 +01:00
jonaswinkler
70c02a1c82 fixes #185 2020-12-28 17:20:07 +01:00
jonaswinkler
39637fc4aa fixes #175 2020-12-28 17:09:19 +01:00
jonaswinkler
1de7a490b4 #186 allow filtering for documents with no correspondents / tags / types 2020-12-28 17:04:53 +01:00
jonaswinkler
6d4aa76405 fixes #196 2020-12-28 15:59:06 +01:00
jonaswinkler
27ae4f6b1e fixes #197 2020-12-28 15:48:35 +01:00
jonaswinkler
d6e733c56f add more localization tags #123 2020-12-28 15:39:53 +01:00
Jonas Winkler
7497e0f6b9 Merge pull request #198 from MarkSchmitt/travis-multiarch-builds
Travis multi-arch builds: only build and push docker containers on special branches and tags
2020-12-28 13:36:33 +01:00
jonaswinkler
aa6e96e54d fix pycodestyle 2020-12-28 13:33:58 +01:00
jonaswinkler
3d173a13ab move the two post bulk edit tasks into one 2020-12-28 13:31:22 +01:00
Fabian Koller
bdf2e29843 Verify role for Ubuntu 20.04 2020-12-28 12:51:49 +01:00
jonaswinkler
7beb8a0929 fix enter select 2020-12-28 12:51:09 +01:00
jonaswinkler
8af0259671 rework the bulk editor 2020-12-28 12:36:26 +01:00
jonaswinkler
67953c98a9 remove some non-required stuff 2020-12-28 12:32:36 +01:00
jonaswinkler
527c533958 improve performance of the toggle dropdown button 2020-12-28 12:32:21 +01:00
jonaswinkler
544ca8d008 add ability to manually clear the cache on matching models 2020-12-28 12:31:50 +01:00
jonaswinkler
bd02c78966 fix the filter pipe 2020-12-28 12:31:30 +01:00
jonaswinkler
9e311241b3 rename some stuff 2020-12-28 12:31:14 +01:00
jonaswinkler
e228e18f04 it must have been late when I tried to do this 2020-12-28 12:29:53 +01:00
jonaswinkler
e2bea3aee3 add missing index task 2020-12-28 12:29:34 +01:00
Mark Schmitt
ba9b5c50d2 Add stage definitions of test jobs and add test to list of stages
Defining the stages instead of having travis guess them and implicitly build an order
ensures that the test stage is executed before the docker images are built.
2020-12-28 12:24:39 +01:00
Mark Schmitt
61834581d5 Move build condition into separate stages list 2020-12-28 12:22:35 +01:00
Jonas Winkler
08beaf81d5 Update README.md 2020-12-28 12:03:30 +01:00
Fabian Koller
1276419ec6 Add molecule test for role
Only test default installation with jbig2enc and sqlite
2020-12-28 11:28:19 +01:00
Fabian Koller
ef9631ae24 Drop all permissions to paperlessng user
Also make role idempotent
2020-12-28 11:18:24 +01:00
Michael Shamoon
86079a936e Initial theme SCSS 2020-12-27 23:05:52 -08:00
Michael Shamoon
c6acf2f7f6 Prevent FOIT 2020-12-27 23:05:42 -08:00
Michael Shamoon
28b7c3c208 Logo svg inline 2020-12-27 23:05:34 -08:00
Michael Shamoon
75c8cd9967 Dark mode settings logic 2020-12-27 23:05:19 -08:00
jonaswinkler
4fb5dce5e7 selection model 2020-12-28 00:52:28 +01:00
jonaswinkler
b8e7506de4 partial selection model implementation 2020-12-27 23:55:19 +01:00
Mark Schmitt
0560ac2a95 Use conditions to prevent builds on branches / tags other than master, dev and ng-* 2020-12-27 20:01:21 +01:00
Jonas Winkler
131ebf0480 Update README.md 2020-12-27 17:07:33 +01:00
jonaswinkler
80420a99f5 Merge branch 'dev' into feature-bulk-edit 2020-12-27 17:06:17 +01:00
jonaswinkler
6a70369a77 update index after bulk edit operations #195 2020-12-27 17:05:35 +01:00
jonaswinkler
fb83069975 fix test case. 2020-12-27 14:50:57 +01:00
jonaswinkler
f61ecadf76 Merge branch 'dev' of github.com:jonaswinkler/paperless-ng into dev 2020-12-27 14:47:40 +01:00
Jonas Winkler
f040c4e593 Merge pull request #192 from shamoon/fix/ios-safari-input-zoom
Avoid ios safari input zoom
2020-12-27 14:46:20 +01:00
jonaswinkler
c2a47ca4b1 remove "selectionSpansPages" 2020-12-27 13:34:54 +01:00
jonaswinkler
a283b815ef refactor 2020-12-27 13:34:36 +01:00
jonaswinkler
3dd4583ea8 always show count badges 2020-12-27 13:23:11 +01:00
jonaswinkler
bf79b252ad remove "Remove All" 2020-12-27 13:16:37 +01:00
jonaswinkler
a2ad62b310 typing 2020-12-27 13:10:43 +01:00
jonaswinkler
4b9a8f3409 move document count into matching model 2020-12-27 13:07:58 +01:00
jonaswinkler
802bd7fb0d client support for selection data 2020-12-27 12:54:47 +01:00
jonaswinkler
320298e3ff add api method to get selection data 2020-12-27 12:43:05 +01:00
Michael Shamoon
5e5059b2e7 Prevent iOS input zoom 2020-12-26 21:16:12 -08:00
Jonas Winkler
d6d7528668 Merge branch 'growse-patch-2' into dev 2020-12-27 01:49:12 +01:00
Andrew Rowson
3f8c74c4af Updated bind param gunicorn config file to listen on ipv6 2020-12-26 11:53:29 +00:00
jonaswinkler
0a1b810da7 Merge branch 'dev' into feature-bulk-edit 2020-12-26 01:09:12 +01:00
jonaswinkler
25fb9fb185 better selection 2020-12-26 01:08:54 +01:00
jonaswinkler
c547128238 Merge branch 'dev' into feature-bulk-edit 2020-12-25 22:19:10 +01:00
jonaswinkler
99b5e25731 clarify error messages #176 2020-12-25 19:26:27 +01:00
jonaswinkler
20e724da46 fixes #182 2020-12-25 19:24:39 +01:00
jonaswinkler
03838421bc not sure when that got in here 2020-12-25 19:23:53 +01:00
jonaswinkler
b9cf517cd1 front end client support for filtering for no correspondent/document type 2020-12-25 19:06:12 +01:00
jonaswinkler
f7f78d80b7 added isnull filters for document types and correspondents 2020-12-25 19:01:46 +01:00
Jonas Winkler
e63b820c07 Merge pull request #189 from shamoon/feature-bulk-editor
Refactored bulk editor
2020-12-25 16:11:31 +01:00
Michael Shamoon
2ac6a02e31 More simplification 2020-12-25 01:14:56 -08:00
Michael Shamoon
6e79b771ec Refactor bulk editor to be self-contained
See https://github.com/jonaswinkler/paperless-ng/pull/162#issuecomment-750425915
2020-12-25 00:58:17 -08:00
Andrew Rowson
37caf6a64a Gunicorn should bind to both ipv4 and ipv6
As per https://docs.gunicorn.org/en/stable/settings.html#bind
2020-12-24 11:53:20 +00:00
jonaswinkler
198354d07d a couple small changes 2020-12-23 22:45:54 +01:00
jonaswinkler
eec9716ffa more translation markers 2020-12-23 22:34:30 +01:00
jonaswinkler
64d0c7fae6 silence compiler warnings 2020-12-23 18:07:37 +01:00
jonaswinkler
02e81f7ab5 update Dockerfile 2020-12-23 17:03:00 +01:00
jonaswinkler
85cf931d0a Merge branch 'dev' into travis-multiarch-builds 2020-12-23 16:15:46 +01:00
Jonas Winkler
c54d26ed19 Update README.md 2020-12-23 16:09:13 +01:00
jonaswinkler
cffe9fa354 debug log mime type #176 2020-12-23 15:22:28 +01:00
jonaswinkler
46b0776714 fix typo #176 2020-12-23 15:14:24 +01:00
jonaswinkler
929b25a969 add api support for adding and removing many tags simultaneously 2020-12-23 15:13:55 +01:00
jonaswinkler
3c2fac3d28 Merge branch 'feature-bulk-edit' of github.com:jonaswinkler/paperless-ng into feature-bulk-edit 2020-12-23 15:12:50 +01:00
jonaswinkler
9a165e87fd Merge branch 'master' into dev 2020-12-23 15:09:58 +01:00
jonaswinkler
95c4e77ae4 added many localization markers to the front end #123 2020-12-23 15:09:39 +01:00
Jonas Winkler
ba3696566f Merge pull request #162 from shamoon/feature-bulk-editor
Bulk editing UI
2020-12-23 14:42:20 +01:00
Jonas Winkler
6907b91420 Merge pull request #178 from MarkSchmitt/travis-multiarch-builds
Automatic CI/CD multiarch docker builds
2020-12-23 14:35:47 +01:00
Fabian Koller
227934a7f0 Do not clear static files on every run
Django collectstatic knows when files change.
2020-12-23 14:05:35 +01:00
Fabian Koller
089a8c0498 Fix fresh installation
We can't backup a nonexistent folder.
2020-12-23 13:39:16 +01:00
Fabian Koller
92fa978735 Allow running role on all Debian releases
Dynamically template current release string where required.
2020-12-23 13:31:30 +01:00
Mark Schmitt
8135de49f0 Re-enable test steps 2020-12-23 12:13:12 +01:00
Mark Schmitt
ccfa14b9b7 Remove arm32v6 from docker manifest , it is not getting created 2020-12-23 09:14:40 +01:00
Jonas Winkler
6589369e1b Update README.md 2020-12-23 02:29:58 +01:00
Jonas Winkler
9c2c74ad2b Update README.md 2020-12-23 01:51:38 +01:00
jonaswinkler
b7c118afa3 more tests 2020-12-22 21:08:54 +01:00
jonaswinkler
e9b5f8d9f8 api validation, more tests 2020-12-22 20:28:41 +01:00
Fabian Koller
e48294a74b Update to 0.9.9 2020-12-22 19:30:53 +01:00
Fabian Koller
50c5a23de8 add basic ansible role for debian deployment
Currently only Debian 10 buster is supported.
Other Debian versions, Ubuntu and derivates should be easy to integrate.
Database deployment is considered out-of-scope and deferred to the user.
Provides basic upgrade support between releases.
2020-12-22 18:47:02 +01:00
Jonas Winkler
7d676a75a8 Update README.md 2020-12-22 17:26:07 +01:00
jonaswinkler
544e8db722 error in test case 2020-12-22 17:08:30 +01:00
Michael Shamoon
ba066af664 Merge branch 'feature-bulk-edit' into feature-bulk-editor 2020-12-22 07:43:51 -08:00
Jonas Winkler
c4286d0a48 Update README.md 2020-12-22 16:33:41 +01:00
jonaswinkler
1c535e6ff1 Merge branch 'master' of github.com:jonaswinkler/paperless-ng 2020-12-22 15:58:24 +01:00
Mark Schmitt
1f62b6d0d4 arm64-graviton2 build requires group:edge 2020-12-22 14:18:11 +01:00
Mark Schmitt
c751fe7520 Switching back to virt: vm as there seems to be a prob with the lxc ones 2020-12-22 14:15:06 +01:00
Mark Schmitt
46ecdefde8 Remove steps not necessary to build docker images 2020-12-22 13:43:51 +01:00
Mark Schmitt
e8ea373eb2 Enable manifests support 2020-12-22 13:42:21 +01:00
Mark Schmitt
162626209c Tell me, what kind of arm64 is it that produces amd64 docker images?
It's weird
2020-12-22 13:27:19 +01:00
Mark Schmitt
bf3b110804 Remove accidentially added quote 2020-12-22 12:58:35 +01:00
Mark Schmitt
7d1f931234 Use arm64-gravis instead of regular arm64. See if that is fast enough. 2020-12-22 12:49:36 +01:00
Michael Shamoon
406f8daa12 TODO comment 2020-12-22 03:32:51 -08:00
Michael Shamoon
0a4a06b991 Singular items dont need removal logic since dropdowns dont support this (yet?) 2020-12-22 03:13:57 -08:00
Michael Shamoon
41e842a9e6 Unify bulk operations logic, working tags assignment and removal 2020-12-22 02:58:20 -08:00
Michael Shamoon
1fb3316436 Fix remove all operations 2020-12-22 02:18:05 -08:00
Michael Shamoon
2f26d07480 Only pass one item to bulk methods for correspondents/doctypes 2020-12-22 02:14:37 -08:00
Michael Shamoon
360fc081bb Completely rewrite change detection, add back remove operations 2020-12-22 02:08:36 -08:00
Michael Shamoon
4cae338479 Merge branch 'feature-bulk-edit' into feature-bulk-editor 2020-12-22 00:19:35 -08:00
jonaswinkler
ade951a600 Adds jbig2 to the build, fixes #93 2020-12-21 23:02:26 +01:00
Mark Schmitt
48b59c8e24 Use qemu also for arm64v8 build - something might be causing trouble on the native hosts 2020-12-21 21:53:39 +01:00
jonaswinkler
b3a13cec17 Merge branch 'dev' into travis-multiarch-builds 2020-12-21 21:29:45 +01:00
Michael Shamoon
48d83e166b use ngIf for editor components to maybe help performance 2020-12-21 11:12:48 -08:00
Michael Shamoon
29e9d7d793 Some changes from #141 were lost 2020-12-21 09:53:43 -08:00
Michael Shamoon
dcbc0ea2e5 Revert "Fix list small card layout"
This reverts commit 0e93f7eba5.
2020-12-21 09:52:55 -08:00
Michael Shamoon
0e93f7eba5 Fix list small card layout
Some changes from #141 were lost
2020-12-21 08:14:06 -08:00
Mark Schmitt
7817315f8b Adding some echos to bette runderstand where the build hangs 2020-12-21 17:08:01 +01:00
Mark Schmitt
ba18258750 Add libxslt-dev to dependencies.
At least one arm based image does not pull in dependencies the same way
the amd64 one does, resulting in a missing libxslt shared lib.
2020-12-21 16:19:24 +01:00
Mark Schmitt
23381f7d17 Added multi arch docker builds to travis ci 2020-12-21 13:14:16 +01:00
Michael Shamoon
d9e3895f34 Fix 2px difference between two editors =) 2020-12-20 08:07:19 -08:00
Michael Shamoon
f06e2c1089 Merge remote-tracking branch 'upstream/dev' into feature-bulk-editor 2020-12-20 07:49:27 -08:00
jonaswinkler
dd6aa2f775 added missing file 2020-12-20 16:01:16 +01:00
jonaswinkler
5b344963b9 reorganized docker build. 2020-12-20 15:58:29 +01:00
Michael Shamoon
fa7b90a584 Add apply button to dropdowns 2020-12-20 01:04:54 -08:00
Michael Shamoon
37c2051e01 Typos & code fixes 2020-12-20 00:37:37 -08:00
Michael Shamoon
3561935e1b Fix some TS syntax errors 2020-12-20 00:12:40 -08:00
Michael Shamoon
7669679fb1 Mobile fixes 2020-12-19 23:49:20 -08:00
Michael Shamoon
2e44c18cdb Show 's' when needed instead of (s) on document list 2020-12-19 23:44:33 -08:00
Michael Shamoon
86da578774 Hide toggled state & counts when selection spans documents not in view 2020-12-19 23:42:08 -08:00
Michael Shamoon
46f778111c Live filter badges when editing & hide badges when active filter items in dropdown 2020-12-19 22:54:37 -08:00
Michael Shamoon
7dfcc7f47b Refactor dropdown button component 2020-12-19 22:31:14 -08:00
Michael Shamoon
39b35c090b Hide filter / bulk editor for better switching 2020-12-19 22:14:52 -08:00
Michael Shamoon
ee4e026ba2 rework toolbar 2020-12-19 22:06:17 -08:00
Michael Shamoon
de6ba3489a Cleanup dropdown button component 2020-12-19 21:56:31 -08:00
Michael Shamoon
6381093386 Refactor SlectableItem to ToggleableItem 2020-12-19 21:52:45 -08:00
Michael Shamoon
fd6bfd02ce SelectableItem dropdowns refactoring 2020-12-19 21:45:53 -08:00
Michael Shamoon
1da652ba4d Only apply edits when something has changed 2020-12-19 21:42:19 -08:00
Michael Shamoon
9a4190bedf Rename dropdown type enum & add pass as variable to use like an Enum 2020-12-19 20:19:37 -08:00
Michael Shamoon
561db8607a Unused bulk tag functions 2020-12-19 15:20:07 -08:00
Michael Shamoon
d91fa99e77 Handler for bulk set tags (awaiting API endpoint) 2020-12-19 14:26:26 -08:00
Michael Shamoon
400da7bbc5 Minor refactoring 2020-12-19 07:49:32 -08:00
Jonas Winkler
1041504cb1 Merge pull request #159 from Skylinar/master
Add 'Epson WF-7710DWF' to scanner.rst
2020-12-19 13:49:17 +01:00
Jonas Winkler
26b40e06f8 Merge branch 'master' into master 2020-12-19 13:49:01 +01:00
Skylinar
df8235de13 Update scanners.rst
typo
2020-12-19 13:36:10 +01:00
Skylinar
12e45624db Add 'Epson WF-7710DWF' to scanner.rst 2020-12-19 13:32:31 +01:00
Michael Shamoon
da3695e3a4 Working to backend except tags 2020-12-19 02:26:41 -08:00
Michael Shamoon
24c53e78a7 Working bulk editor component 2020-12-19 02:08:33 -08:00
Michael Shamoon
275bd96ba8 Refactor filterable dropdowns to allow intermediate state 2020-12-19 00:13:08 -08:00
Michael Shamoon
01d448ecde Bulk editor component skeleton 2020-12-18 21:19:49 -08:00
Michael Shamoon
55a6dca373 Refactor editor and filterable dropdowns to be common components in anticipation of bulk editor 2020-12-18 16:03:52 -08:00
Michael Shamoon
fbb2da42dc Merge branch 'dev' into feature-bulk-editor 2020-12-18 14:55:21 -08:00
Michael Shamoon
cbf844e7db Typescript syntax fix 2020-12-17 07:33:20 -08:00
Michael Shamoon
88b39faa7e Select first tab when switching out of mobile display 2020-12-17 00:50:59 -08:00
Michael Shamoon
08495deebb Hide mobile preview when switching from mobile to desktop 2020-12-17 00:50:40 -08:00
Michael Shamoon
fb9d750684 Delete button margin-left 2020-12-15 14:19:40 -08:00
Michael Shamoon
b8469946a8 Smaller editor, cleaned up responsive flow 2020-12-15 11:09:25 -08:00
Michael Shamoon
03f071fd27 Styled, organized button UI 2020-12-15 00:57:31 -08:00
Michael Shamoon
34c42c4339 Better svgs 2020-12-14 23:39:10 -08:00
Michael Shamoon
b45bd66573 Basic bulk editor component 2020-12-14 23:14:19 -08:00
Michael Shamoon
3b2bc292d8 Tweak checkbox 2020-12-14 23:14:04 -08:00
Michael Shamoon
05b9af6195 Add preview tab for mobile & hide larger preview 2020-12-13 02:28:02 -08:00
jonaswinkler
e2456f4b3f changes 2020-12-07 12:44:23 +01:00
jonaswinkler
fcaaf7ce03 pipfile fix 2020-12-06 22:54:11 +01:00
jonaswinkler
522ada88ea Merge branch 'dev' into feature-websockets-status 2020-12-06 22:53:54 +01:00
jayme-github
26784a5325 Add automatic coloring of tags
Please see this as proposal on how to implement automatic/random colors
for tags while keeping the current set of hard coded colors in place (at
least in the frontend).

Bear with me as I have even less Angular knowledge than Django and just
tried to get away with as few changes as possible. :-) AIUI you want to
change to a color picking system anyways in the future, which could also
play well with this.

fixes #51
2020-12-04 10:05:47 +01:00
Jonas Winkler
6cf0b851b7 post-merge changes 2020-11-22 23:12:24 +01:00
Jonas Winkler
d252a1dcda Merge branch 'dev' into celery-tasks 2020-11-22 22:49:37 +01:00
Jonas Winkler
391020a2b0 small changes 2020-11-20 10:58:17 +01:00
Jonas Winkler
cb2340539d updated pipenv 2020-11-19 22:14:11 +01:00
Jonas Winkler
17430210a1 Merge branch 'dev' into celery-tasks 2020-11-19 22:10:57 +01:00
Jonas Winkler
9e81c82452 Pipfile update 2020-11-10 01:26:27 +01:00
Jonas Winkler
b3126934b3 Merge branch 'dev' into celery-tasks 2020-11-10 00:16:59 +01:00
Jonas Winkler
37bd4a7d0e added broker to compose file 2020-11-07 12:56:26 +01:00
Jonas Winkler
ae8a048ea6 fixed up the docker 2020-11-07 12:47:17 +01:00
Jonas Winkler
b0465e65c3 nicer status 2020-11-07 12:10:53 +01:00
Jonas Winkler
036f11acaa better toasts, better dashboard, first implementation of consumer status 2020-11-07 12:05:15 +01:00
Jonas Winkler
572e40ca27 backend that supports asgi and status update sockets with channels 2020-11-07 11:31:04 +01:00
747 changed files with 243500 additions and 23879 deletions

9
.build-config.json Normal file
View File

@@ -0,0 +1,9 @@
{
"qpdf": {
"version": "10.6.3"
},
"jbig2enc": {
"version": "0.29",
"git_tag": "0.29"
}
}

View File

@@ -1,3 +1,4 @@
**/__pycache__
/src-ui/.vscode
/src-ui/node_modules
/src-ui/dist
@@ -10,3 +11,11 @@
.pytest_cache
/dist
/scripts
/resources
**/tests
**/*.spec.ts
**/htmlcov
/src/.pytest_cache
.idea
.venv/
.vscode/

View File

@@ -18,7 +18,16 @@ max_line_length = off
indent_size = 4
indent_style = space
[*.yml]
[*.{yml,yaml}]
indent_style = space
[*.rst]
indent_style = space
[*.md]
indent_style = space
[Pipfile.lock]
indent_style = space
# Tests don't get a line width restriction. It's still a good idea to follow
@@ -26,3 +35,6 @@ indent_style = space
# violate it.
[**/test_*.py]
max_line_length = off
[Dockerfile*]
indent_style = space

3
.env
View File

@@ -1 +1,2 @@
COMPOSE_PROJECT_NAME=paperless
COMPOSE_PROJECT_NAME=paperless
export PROMPT="(pipenv-projectname)$P$G"

88
.github/ISSUE_TEMPLATE/bug-report.yml vendored Normal file
View File

@@ -0,0 +1,88 @@
name: Bug report
description: Something is not working
title: "[BUG] Concise description of the issue"
labels: ["bug", "unconfirmed"]
body:
- type: markdown
attributes:
value: |
Have a question? 👉 [Start a new discussion](https://github.com/paperless-ngx/paperless-ngx/discussions/new) or [ask in chat](https://matrix.to/#/#paperless:adnidor.de).
Before opening an issue, please double check:
- [The troubleshooting documentation](https://paperless-ngx.readthedocs.io/en/latest/troubleshooting.html).
- [The installation instructions](https://paperless-ngx.readthedocs.io/en/latest/setup.html#installation).
- [Existing issues and discussions](https://github.com/paperless-ngx/paperless-ngx/search?q=&type=issues).
If you encounter issues while installing or configuring Paperless-ngx, please post in the ["Support" section of the discussions](https://github.com/paperless-ngx/paperless-ngx/discussions/new?category=support).
- type: textarea
id: description
attributes:
label: Description
description: A clear and concise description of what the bug is. If applicable, add screenshots to help explain your problem.
placeholder: |
Currently Paperless does not work when...
[Screenshot if applicable]
validations:
required: true
- type: textarea
id: reproduction
attributes:
label: Steps to reproduce
description: Steps to reproduce the behavior.
placeholder: |
1. Go to '...'
2. Click on '....'
3. See error
validations:
required: true
- type: textarea
id: logs
attributes:
label: Webserver logs
description: If available, post any logs from the web server related to your issue.
render: bash
- type: input
id: version
attributes:
label: Paperless-ngx version
placeholder: e.g. 1.6.0
validations:
required: true
- type: input
id: host-os
attributes:
label: Host OS
description: Host OS of the machine running paperless-ngx. Please add the architecture (uname -m) if applicable.
placeholder: e.g. Archlinux / Ubuntu 20.04 / Raspberry Pi `arm64`
validations:
required: true
- type: dropdown
id: install-method
attributes:
label: Installation method
options:
- Docker - official image
- Docker - linuxserver.io image
- Bare metal
- Other (please describe above)
description: Note there are significant differences from the official image and linuxserver.io, please check if your issue is specific to the third-party image.
validations:
required: true
- type: input
id: browser
attributes:
label: Browser
description: Which browser you are using, if relevant.
placeholder: e.g. Chrome, Safari
- type: input
id: config-changes
attributes:
label: Configuration changes
description: Any configuration changes you made in `docker-compose.yml`, `docker-compose.env` or `paperless.conf`.
- type: input
id: other
attributes:
label: Other
description: Any other relevant details.

11
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@@ -0,0 +1,11 @@
blank_issues_enabled: false
contact_links:
- name: 🤔 Questions and Help
url: https://github.com/paperless-ngx/paperless-ngx/discussions
about: This issue tracker is not for support questions. Please refer to our Discussions.
- name: 💬 Chat
url: https://matrix.to/#/#paperless:adnidor.de
about: Want to discuss Paperless-ngx with others? Check out our chat.
- name: 🚀 Feature Request
url: https://github.com/paperless-ngx/paperless-ngx/discussions/new?category=feature-requests
about: Remember to search for existing feature requests and "up-vote" any you like

32
.github/PULL_REQUEST_TEMPLATE.md vendored Normal file
View File

@@ -0,0 +1,32 @@
<!--
Note: All PRs with code changes should be targeted to the `dev` branch, pure documentation changes can target `main`
-->
## Proposed change
<!--
Please include a summary of the change and which issue is fixed (if any) and any relevant motivation / context. List any dependencies that are required for this change. If appropriate, please include an explanation of how your proposed change can be tested. Screenshots and / or videos can also be helpful if appropriate.
-->
Fixes # (issue)
## Type of change
<!--
What type of change does your PR introduce to Paperless-ngx?
NOTE: Please check only one box!
-->
- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
- [ ] Other (please explain)
## Checklist:
- [ ] I have read & agree with the [contributing guidelines](https://github.com/paperless-ngx/paperless-ngx/blob/main/CONTRIBUTING.md).
- [ ] If applicable, I have tested my code for new features & regressions on both mobile & desktop devices, using the latest version of major browsers.
- [ ] If applicable, I have checked that all tests pass, see [documentation](https://paperless-ngx.readthedocs.io/en/latest/extending.html#back-end-development).
- [ ] I have run all `pre-commit` hooks, see [documentation](https://paperless-ngx.readthedocs.io/en/latest/extending.html#code-formatting-with-pre-commit-hooks).
- [ ] I have made corresponding changes to the documentation as needed.
- [ ] I have checked my modifications for any breaking changes.

48
.github/dependabot.yml vendored Normal file
View File

@@ -0,0 +1,48 @@
# https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically/configuration-options-for-dependency-updates#package-ecosystem
version: 2
updates:
# Enable version updates for npm
- package-ecosystem: "npm"
target-branch: "dev"
# Look for `package.json` and `lock` files in the `/src-ui` directory
directory: "/src-ui"
# Check the npm registry for updates every month
schedule:
interval: "monthly"
labels:
- "frontend"
- "dependencies"
# Add reviewers
reviewers:
- "paperless-ngx/frontend"
# Enable version updates for Python
- package-ecosystem: "pip"
target-branch: "dev"
# Look for a `Pipfile` in the `root` directory
directory: "/"
# Check for updates once a week
schedule:
interval: "weekly"
labels:
- "backend"
- "dependencies"
# Add reviewers
reviewers:
- "paperless-ngx/backend"
# Enable updates for Github Actions
- package-ecosystem: "github-actions"
target-branch: "dev"
directory: "/"
schedule:
# Check for updates to GitHub Actions every month
interval: "monthly"
labels:
- "ci-cd"
- "dependencies"
# Add reviewers
reviewers:
- "paperless-ngx/ci-cd"

55
.github/release-drafter.yml vendored Normal file
View File

@@ -0,0 +1,55 @@
autolabeler:
- label: "bug"
branch:
- '/^fix/'
title:
- "/^fix/i"
- label: "enhancement"
branch:
- '/^feature/'
title:
- "/^feature/i"
categories:
- title: 'Breaking Changes'
labels:
- 'breaking-change'
- title: 'Features'
labels:
- 'enhancement'
- title: 'Bug Fixes'
labels:
- 'bug'
- title: 'Documentation'
label: 'documentation'
- title: 'Maintenance'
labels:
- 'chore'
- 'deployment'
- 'translation'
- 'ci-cd'
- title: 'Dependencies'
collapse-after: 3
label: 'dependencies'
- title: 'All App Changes'
labels:
- 'frontend'
- 'backend'
collapse-after: 0
include-labels:
- 'enhancement'
- 'bug'
- 'chore'
- 'deployment'
- 'translation'
- 'dependencies'
- 'documentation'
- 'frontend'
- 'backend'
- 'ci-cd'
category-template: '### $TITLE'
change-template: '- $TITLE @$AUTHOR ([#$NUMBER]($URL))'
change-title-escapes: '\<*_&#@'
template: |
## paperless-ngx $RESOLVED_VERSION
$CHANGES

290
.github/scripts/cleanup-tags.py vendored Normal file
View File

@@ -0,0 +1,290 @@
#!/usr/bin/env python3
import json
import logging
import os
import shutil
import subprocess
from argparse import ArgumentParser
from typing import Dict
from typing import Final
from typing import List
from common import get_log_level
from github import ContainerPackage
from github import GithubBranchApi
from github import GithubContainerRegistryApi
logger = logging.getLogger("cleanup-tags")
class DockerManifest2:
"""
Data class wrapping the Docker Image Manifest Version 2.
See https://docs.docker.com/registry/spec/manifest-v2-2/
"""
def __init__(self, data: Dict) -> None:
self._data = data
# This is the sha256: digest string. Corresponds to Github API name
# if the package is an untagged package
self.digest = self._data["digest"]
platform_data_os = self._data["platform"]["os"]
platform_arch = self._data["platform"]["architecture"]
platform_variant = self._data["platform"].get(
"variant",
"",
)
self.platform = f"{platform_data_os}/{platform_arch}{platform_variant}"
def _main():
parser = ArgumentParser(
description="Using the GitHub API locate and optionally delete container"
" tags which no longer have an associated feature branch",
)
# Requires an affirmative command to actually do a delete
parser.add_argument(
"--delete",
action="store_true",
default=False,
help="If provided, actually delete the container tags",
)
# When a tagged image is updated, the previous version remains, but it no longer tagged
# Add this option to remove them as well
parser.add_argument(
"--untagged",
action="store_true",
default=False,
help="If provided, delete untagged containers as well",
)
# If given, the package is assumed to be a multi-arch manifest. Cache packages are
# not multi-arch, all other types are
parser.add_argument(
"--is-manifest",
action="store_true",
default=False,
help="If provided, the package is assumed to be a multi-arch manifest following schema v2",
)
# Allows configuration of log level for debugging
parser.add_argument(
"--loglevel",
default="info",
help="Configures the logging level",
)
# Get the name of the package being processed this round
parser.add_argument(
"package",
help="The package to process",
)
args = parser.parse_args()
logging.basicConfig(
level=get_log_level(args),
datefmt="%Y-%m-%d %H:%M:%S",
format="%(asctime)s %(levelname)-8s %(message)s",
)
# Must be provided in the environment
repo_owner: Final[str] = os.environ["GITHUB_REPOSITORY_OWNER"]
repo: Final[str] = os.environ["GITHUB_REPOSITORY"]
gh_token: Final[str] = os.environ["TOKEN"]
# Find all branches named feature-*
# Note: Only relevant to the main application, but simpler to
# leave in for all packages
with GithubBranchApi(gh_token) as branch_api:
feature_branches = {}
for branch in branch_api.get_branches(
repo=repo,
):
if branch.name.startswith("feature-"):
logger.debug(f"Found feature branch {branch.name}")
feature_branches[branch.name] = branch
logger.info(f"Located {len(feature_branches)} feature branches")
with GithubContainerRegistryApi(gh_token, repo_owner) as container_api:
# Get the information about all versions of the given package
all_package_versions: List[
ContainerPackage
] = container_api.get_package_versions(args.package)
all_pkgs_tags_to_version: Dict[str, ContainerPackage] = {}
for pkg in all_package_versions:
for tag in pkg.tags:
all_pkgs_tags_to_version[tag] = pkg
logger.info(
f"Located {len(all_package_versions)} versions of package {args.package}",
)
# Filter to packages which are tagged with feature-*
packages_tagged_feature: List[ContainerPackage] = []
for package in all_package_versions:
if package.tag_matches("feature-"):
packages_tagged_feature.append(package)
feature_pkgs_tags_to_versions: Dict[str, ContainerPackage] = {}
for pkg in packages_tagged_feature:
for tag in pkg.tags:
feature_pkgs_tags_to_versions[tag] = pkg
logger.info(
f'Located {len(feature_pkgs_tags_to_versions)} versions of package {args.package} tagged "feature-"',
)
# All the feature tags minus all the feature branches leaves us feature tags
# with no corresponding branch
tags_to_delete = list(
set(feature_pkgs_tags_to_versions.keys()) - set(feature_branches.keys()),
)
# All the tags minus the set of going to be deleted tags leaves us the
# tags which will be kept around
tags_to_keep = list(
set(all_pkgs_tags_to_version.keys()) - set(tags_to_delete),
)
logger.info(
f"Located {len(tags_to_delete)} versions of package {args.package} to delete",
)
# Delete certain package versions for which no branch existed
for tag_to_delete in tags_to_delete:
package_version_info = feature_pkgs_tags_to_versions[tag_to_delete]
if args.delete:
logger.info(
f"Deleting {tag_to_delete} (id {package_version_info.id})",
)
container_api.delete_package_version(
package_version_info,
)
else:
logger.info(
f"Would delete {tag_to_delete} (id {package_version_info.id})",
)
# Deal with untagged package versions
if args.untagged:
logger.info("Handling untagged image packages")
if not args.is_manifest:
# If the package is not a multi-arch manifest, images without tags are safe to delete.
# They are not referred to by anything. This will leave all with at least 1 tag
for package in all_package_versions:
if package.untagged:
if args.delete:
logger.info(
f"Deleting id {package.id} named {package.name}",
)
container_api.delete_package_version(
package,
)
else:
logger.info(
f"Would delete {package.name} (id {package.id})",
)
else:
logger.info(
f"Not deleting tag {package.tags[0]} of package {args.package}",
)
else:
"""
Ok, bear with me, these are annoying.
Our images are multi-arch, so the manifest is more like a pointer to a sha256 digest.
These images are untagged, but pointed to, and so should not be removed (or every pull fails).
So for each image getting kept, parse the manifest to find the digest(s) it points to. Then
remove those from the list of untagged images. The final result is the untagged, not pointed to
version which should be safe to remove.
Example:
Tag: ghcr.io/paperless-ngx/paperless-ngx:1.7.1 refers to
amd64: sha256:b9ed4f8753bbf5146547671052d7e91f68cdfc9ef049d06690b2bc866fec2690
armv7: sha256:81605222df4ba4605a2ba4893276e5d08c511231ead1d5da061410e1bbec05c3
arm64: sha256:374cd68db40734b844705bfc38faae84cc4182371de4bebd533a9a365d5e8f3b
each of which appears as untagged image, but isn't really.
So from the list of untagged packages, remove those digests. Once all tags which
are being kept are checked, the remaining untagged packages are actually untagged
with no referrals in a manifest to them.
"""
# Simplify the untagged data, mapping name (which is a digest) to the version
untagged_versions = {}
for x in all_package_versions:
if x.untagged:
untagged_versions[x.name] = x
skips = 0
# Extra security to not delete on an unexpected error
actually_delete = True
# Parse manifests to locate digests pointed to
for tag in sorted(tags_to_keep):
full_name = f"ghcr.io/{repo_owner}/{args.package}:{tag}"
logger.info(f"Checking manifest for {full_name}")
try:
proc = subprocess.run(
[
shutil.which("docker"),
"manifest",
"inspect",
full_name,
],
capture_output=True,
)
manifest_list = json.loads(proc.stdout)
for manifest_data in manifest_list["manifests"]:
manifest = DockerManifest2(manifest_data)
if manifest.digest in untagged_versions:
logger.debug(
f"Skipping deletion of {manifest.digest}, referred to by {full_name} for {manifest.platform}",
)
del untagged_versions[manifest.digest]
skips += 1
except Exception as err:
actually_delete = False
logger.exception(err)
logger.info(
f"Skipping deletion of {skips} packages referred to by a manifest",
)
# Step 3.3 - Delete the untagged and not pointed at packages
logger.info(f"Deleting untagged packages of {args.package}")
for to_delete_name in untagged_versions:
to_delete_version = untagged_versions[to_delete_name]
if args.delete and actually_delete:
logger.info(
f"Deleting id {to_delete_version.id} named {to_delete_version.name}",
)
container_api.delete_package_version(
to_delete_version,
)
else:
logger.info(
f"Would delete {to_delete_name} (id {to_delete_version.id})",
)
else:
logger.info("Leaving untagged images untouched")
if __name__ == "__main__":
_main()

43
.github/scripts/common.py vendored Normal file
View File

@@ -0,0 +1,43 @@
#!/usr/bin/env python3
import logging
def get_image_tag(
repo_name: str,
pkg_name: str,
pkg_version: str,
) -> str:
"""
Returns a string representing the normal image for a given package
"""
return f"ghcr.io/{repo_name.lower()}/builder/{pkg_name}:{pkg_version}"
def get_cache_image_tag(
repo_name: str,
pkg_name: str,
pkg_version: str,
branch_name: str,
) -> str:
"""
Returns a string representing the expected image cache tag for a given package
Registry type caching is utilized for the builder images, to allow fast
rebuilds, generally almost instant for the same version
"""
return f"ghcr.io/{repo_name.lower()}/builder/cache/{pkg_name}:{pkg_version}"
def get_log_level(args) -> int:
levels = {
"critical": logging.CRITICAL,
"error": logging.ERROR,
"warn": logging.WARNING,
"warning": logging.WARNING,
"info": logging.INFO,
"debug": logging.DEBUG,
}
level = levels.get(args.loglevel.lower())
if level is None:
level = logging.INFO
return level

92
.github/scripts/get-build-json.py vendored Executable file
View File

@@ -0,0 +1,92 @@
#!/usr/bin/env python3
"""
This is a helper script for the mutli-stage Docker image builder.
It provides a single point of configuration for package version control.
The output JSON object is used by the CI workflow to determine what versions
to build and pull into the final Docker image.
Python package information is obtained from the Pipfile.lock. As this is
kept updated by dependabot, it usually will need no further configuration.
The sole exception currently is pikepdf, which has a dependency on qpdf,
and is configured here to use the latest version of qpdf built by the workflow.
Other package version information is configured directly below, generally by
setting the version and Git information, if any.
"""
import argparse
import json
import os
from pathlib import Path
from typing import Final
from common import get_cache_image_tag
from common import get_image_tag
def _main():
parser = argparse.ArgumentParser(
description="Generate a JSON object of information required to build the given package, based on the Pipfile.lock",
)
parser.add_argument(
"package",
help="The name of the package to generate JSON for",
)
PIPFILE_LOCK_PATH: Final[Path] = Path("Pipfile.lock")
BUILD_CONFIG_PATH: Final[Path] = Path(".build-config.json")
# Read the main config file
build_json: Final = json.loads(BUILD_CONFIG_PATH.read_text())
# Read Pipfile.lock file
pipfile_data: Final = json.loads(PIPFILE_LOCK_PATH.read_text())
args: Final = parser.parse_args()
# Read from environment variables set by GitHub Actions
repo_name: Final[str] = os.environ["GITHUB_REPOSITORY"]
branch_name: Final[str] = os.environ["GITHUB_REF_NAME"]
# Default output values
version = None
extra_config = {}
if args.package in pipfile_data["default"]:
# Read the version from Pipfile.lock
pkg_data = pipfile_data["default"][args.package]
pkg_version = pkg_data["version"].split("==")[-1]
version = pkg_version
# Any extra/special values needed
if args.package == "pikepdf":
extra_config["qpdf_version"] = build_json["qpdf"]["version"]
elif args.package in build_json:
version = build_json[args.package]["version"]
else:
raise NotImplementedError(args.package)
# The JSON object we'll output
output = {
"name": args.package,
"version": version,
"image_tag": get_image_tag(repo_name, args.package, version),
"cache_tag": get_cache_image_tag(
repo_name,
args.package,
version,
branch_name,
),
}
# Add anything special a package may need
output.update(extra_config)
# Output the JSON info to stdout
print(json.dumps(output))
if __name__ == "__main__":
_main()

227
.github/scripts/github.py vendored Normal file
View File

@@ -0,0 +1,227 @@
#!/usr/bin/env python3
"""
This module contains some useful classes for interacting with the Github API.
The full documentation for the API can be found here: https://docs.github.com/en/rest
Mostly, this focusses on two areas, repo branches and repo packages, as the use case
is cleaning up container images which are no longer referred to.
"""
import functools
import logging
import re
import urllib.parse
from typing import Dict
from typing import List
from typing import Optional
import requests
logger = logging.getLogger("github-api")
class _GithubApiBase:
"""
A base class for interacting with the Github API. It
will handle the session and setting authorization headers.
"""
def __init__(self, token: str) -> None:
self._token = token
self._session: Optional[requests.Session] = None
def __enter__(self) -> "_GithubApiBase":
"""
Sets up the required headers for auth and response
type from the API
"""
self._session = requests.Session()
self._session.headers.update(
{
"Accept": "application/vnd.github.v3+json",
"Authorization": f"token {self._token}",
},
)
return self
def __exit__(self, exc_type, exc_val, exc_tb):
"""
Ensures the authorization token is cleaned up no matter
the reason for the exit
"""
if "Accept" in self._session.headers:
del self._session.headers["Accept"]
if "Authorization" in self._session.headers:
del self._session.headers["Authorization"]
# Close the session as well
self._session.close()
self._session = None
def _read_all_pages(self, endpoint):
"""
Helper function to read all pages of an endpoint, utilizing the
next.url until exhausted. Assumes the endpoint returns a list
"""
internal_data = []
while True:
resp = self._session.get(endpoint)
if resp.status_code == 200:
internal_data += resp.json()
if "next" in resp.links:
endpoint = resp.links["next"]["url"]
else:
logger.debug("Exiting pagination loop")
break
else:
logger.warning(f"Request to {endpoint} return HTTP {resp.status_code}")
break
return internal_data
class _EndpointResponse:
"""
For all endpoint JSON responses, store the full
response data, for ease of extending later, if need be.
"""
def __init__(self, data: Dict) -> None:
self._data = data
class GithubBranch(_EndpointResponse):
"""
Simple wrapper for a repository branch, only extracts name information
for now.
"""
def __init__(self, data: Dict) -> None:
super().__init__(data)
self.name = self._data["name"]
class GithubBranchApi(_GithubApiBase):
"""
Wrapper around branch API.
See https://docs.github.com/en/rest/branches/branches
"""
def __init__(self, token: str) -> None:
super().__init__(token)
self._ENDPOINT = "https://api.github.com/repos/{REPO}/branches"
def get_branches(self, repo: str) -> List[GithubBranch]:
"""
Returns all current branches of the given repository owned by the given
owner or organization.
"""
endpoint = self._ENDPOINT.format(REPO=repo)
internal_data = self._read_all_pages(endpoint)
return [GithubBranch(branch) for branch in internal_data]
class ContainerPackage(_EndpointResponse):
"""
Data class wrapping the JSON response from the package related
endpoints
"""
def __init__(self, data: Dict):
super().__init__(data)
# This is a numerical ID, required for interactions with this
# specific package, including deletion of it or restoration
self.id: int = self._data["id"]
# A string name. This might be an actual name or it could be a
# digest string like "sha256:"
self.name: str = self._data["name"]
# URL to the package, including its ID, can be used for deletion
# or restoration without needing to build up a URL ourselves
self.url: str = self._data["url"]
# The list of tags applied to this image. Maybe an empty list
self.tags: List[str] = self._data["metadata"]["container"]["tags"]
@functools.cached_property
def untagged(self) -> bool:
"""
Returns True if the image has no tags applied to it, False otherwise
"""
return len(self.tags) == 0
@functools.cache
def tag_matches(self, pattern: str) -> bool:
"""
Returns True if the image has at least one tag which matches the given regex,
False otherwise
"""
for tag in self.tags:
if re.match(pattern, tag) is not None:
return True
return False
def __repr__(self):
return f"Package {self.name}"
class GithubContainerRegistryApi(_GithubApiBase):
"""
Class wrapper to deal with the Github packages API. This class only deals with
container type packages, the only type published by paperless-ngx.
"""
def __init__(self, token: str, owner_or_org: str) -> None:
super().__init__(token)
self._owner_or_org = owner_or_org
if self._owner_or_org == "paperless-ngx":
# https://docs.github.com/en/rest/packages#get-all-package-versions-for-a-package-owned-by-an-organization
self._PACKAGES_VERSIONS_ENDPOINT = "https://api.github.com/orgs/{ORG}/packages/{PACKAGE_TYPE}/{PACKAGE_NAME}/versions"
# https://docs.github.com/en/rest/packages#delete-package-version-for-an-organization
self._PACKAGE_VERSION_DELETE_ENDPOINT = "https://api.github.com/orgs/{ORG}/packages/{PACKAGE_TYPE}/{PACKAGE_NAME}/versions/{PACKAGE_VERSION_ID}"
else:
# https://docs.github.com/en/rest/packages#get-all-package-versions-for-a-package-owned-by-the-authenticated-user
self._PACKAGES_VERSIONS_ENDPOINT = "https://api.github.com/user/packages/{PACKAGE_TYPE}/{PACKAGE_NAME}/versions"
# https://docs.github.com/en/rest/packages#delete-a-package-version-for-the-authenticated-user
self._PACKAGE_VERSION_DELETE_ENDPOINT = "https://api.github.com/user/packages/{PACKAGE_TYPE}/{PACKAGE_NAME}/versions/{PACKAGE_VERSION_ID}"
def get_package_versions(
self,
package_name: str,
) -> List[ContainerPackage]:
"""
Returns all the versions of a given package (container images) from
the API
"""
package_type: str = "container"
# Need to quote this for slashes in the name
package_name = urllib.parse.quote(package_name, safe="")
endpoint = self._PACKAGES_VERSIONS_ENDPOINT.format(
ORG=self._owner_or_org,
PACKAGE_TYPE=package_type,
PACKAGE_NAME=package_name,
)
pkgs = []
for data in self._read_all_pages(endpoint):
pkgs.append(ContainerPackage(data))
return pkgs
def delete_package_version(self, package_data: ContainerPackage):
"""
Deletes the given package version from the GHCR
"""
resp = self._session.delete(package_data.url)
if resp.status_code != 204:
logger.warning(
f"Request to delete {package_data.url} returned HTTP {resp.status_code}",
)

23
.github/stale.yml vendored Normal file
View File

@@ -0,0 +1,23 @@
# Number of days of inactivity before an issue becomes stale
daysUntilStale: 30
# Number of days of inactivity before a stale issue is closed
daysUntilClose: 7
# Only issues or pull requests with all of these labels are check if stale. Defaults to `[]` (disabled)
onlyLabels: [cant-reproduce]
# Label to use when marking an issue as stale
staleLabel: stale
# Comment to post when marking an issue as stale. Set to `false` to disable
markComment: >
This issue has been automatically marked as stale because it has not had
recent activity. It will be closed if no further activity occurs. Thank you
for your contributions.
# Comment to post when closing a stale issue. Set to `false` to disable
closeComment: false
# See https://github.com/marketplace/stale for more info on the app
# and https://github.com/probot/stale for the configuration docs

523
.github/workflows/ci.yml vendored Normal file
View File

@@ -0,0 +1,523 @@
name: ci
on:
push:
tags:
# https://semver.org/#spec-item-2
- 'v[0-9]+.[0-9]+.[0-9]+'
# https://semver.org/#spec-item-9
- 'v[0-9]+.[0-9]+.[0-9]+-beta.rc[0-9]+'
branches-ignore:
- 'translations**'
pull_request:
branches-ignore:
- 'translations**'
jobs:
pre-commit:
name: Linting Checks
runs-on: ubuntu-latest
steps:
-
name: Checkout repository
uses: actions/checkout@v3
-
name: Install tools
uses: actions/setup-python@v4
with:
python-version: "3.9"
-
name: Check files
uses: pre-commit/action@v3.0.0
documentation:
name: "Build Documentation"
runs-on: ubuntu-20.04
needs:
- pre-commit
steps:
-
name: Checkout
uses: actions/checkout@v3
-
name: Install pipenv
run: |
pipx install pipenv==2022.8.5
pipenv --version
-
name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.9
cache: "pipenv"
cache-dependency-path: 'Pipfile.lock'
-
name: Install dependencies
run: |
pipenv sync --dev
-
name: List installed Python dependencies
run: |
pipenv run pip list
-
name: Make documentation
run: |
cd docs/
pipenv run make html
-
name: Upload artifact
uses: actions/upload-artifact@v3
with:
name: documentation
path: docs/_build/html/
tests-backend:
name: "Tests (${{ matrix.python-version }})"
runs-on: ubuntu-20.04
needs:
- pre-commit
strategy:
matrix:
python-version: ['3.8', '3.9', '3.10']
fail-fast: false
steps:
-
name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 2
-
name: Install pipenv
run: |
pipx install pipenv==2022.8.5
pipenv --version
-
name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "${{ matrix.python-version }}"
cache: "pipenv"
cache-dependency-path: 'Pipfile.lock'
-
name: Install system dependencies
run: |
sudo apt-get update -qq
sudo apt-get install -qq --no-install-recommends unpaper tesseract-ocr imagemagick ghostscript libzbar0 poppler-utils
-
name: Install Python dependencies
run: |
pipenv sync --dev
-
name: List installed Python dependencies
run: |
pipenv run pip list
-
name: Tests
run: |
cd src/
pipenv run pytest
-
name: Get changed files
id: changed-files-specific
uses: tj-actions/changed-files@v29.0.2
with:
files: |
src/**
-
name: List all changed files
run: |
for file in ${{ steps.changed-files-specific.outputs.all_changed_files }}; do
echo "${file} was changed"
done
-
name: Publish coverage results
if: matrix.python-version == '3.9' && steps.changed-files-specific.outputs.any_changed == 'true'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# https://github.com/coveralls-clients/coveralls-python/issues/251
run: |
cd src/
pipenv run coveralls --service=github
tests-frontend:
name: "Tests Frontend"
runs-on: ubuntu-20.04
needs:
- pre-commit
strategy:
matrix:
node-version: [16.x]
steps:
- uses: actions/checkout@v3
-
name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- run: cd src-ui && npm ci
- run: cd src-ui && npm run test
- run: cd src-ui && npm run e2e:ci
prepare-docker-build:
name: Prepare Docker Pipeline Data
if: github.event_name == 'push' && (startsWith(github.ref, 'refs/heads/feature-') || github.ref == 'refs/heads/dev' || github.ref == 'refs/heads/beta' || contains(github.ref, 'beta.rc') || startsWith(github.ref, 'refs/tags/v'))
runs-on: ubuntu-20.04
# If the push triggered the installer library workflow, wait for it to
# complete here. This ensures the required versions for the final
# image have been built, while not waiting at all if the versions haven't changed
concurrency:
group: build-installer-library
cancel-in-progress: false
needs:
- documentation
- tests-backend
- tests-frontend
steps:
-
name: Set ghcr repository name
id: set-ghcr-repository
run: |
ghcr_name=$(echo "${GITHUB_REPOSITORY}" | awk '{ print tolower($0) }')
echo ::set-output name=repository::${ghcr_name}
-
name: Checkout
uses: actions/checkout@v3
-
name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.9"
-
name: Setup qpdf image
id: qpdf-setup
run: |
build_json=$(python ${GITHUB_WORKSPACE}/.github/scripts/get-build-json.py qpdf)
echo ${build_json}
echo ::set-output name=qpdf-json::${build_json}
-
name: Setup psycopg2 image
id: psycopg2-setup
run: |
build_json=$(python ${GITHUB_WORKSPACE}/.github/scripts/get-build-json.py psycopg2)
echo ${build_json}
echo ::set-output name=psycopg2-json::${build_json}
-
name: Setup pikepdf image
id: pikepdf-setup
run: |
build_json=$(python ${GITHUB_WORKSPACE}/.github/scripts/get-build-json.py pikepdf)
echo ${build_json}
echo ::set-output name=pikepdf-json::${build_json}
-
name: Setup jbig2enc image
id: jbig2enc-setup
run: |
build_json=$(python ${GITHUB_WORKSPACE}/.github/scripts/get-build-json.py jbig2enc)
echo ${build_json}
echo ::set-output name=jbig2enc-json::${build_json}
outputs:
ghcr-repository: ${{ steps.set-ghcr-repository.outputs.repository }}
qpdf-json: ${{ steps.qpdf-setup.outputs.qpdf-json }}
pikepdf-json: ${{ steps.pikepdf-setup.outputs.pikepdf-json }}
psycopg2-json: ${{ steps.psycopg2-setup.outputs.psycopg2-json }}
jbig2enc-json: ${{ steps.jbig2enc-setup.outputs.jbig2enc-json}}
# build and push image to docker hub.
build-docker-image:
runs-on: ubuntu-20.04
concurrency:
group: ${{ github.workflow }}-build-docker-image-${{ github.ref_name }}
cancel-in-progress: true
needs:
- prepare-docker-build
steps:
-
name: Check pushing to Docker Hub
id: docker-hub
# Only push to Dockerhub from the main repo AND the ref is either:
# main
# dev
# beta
# a tag
# Otherwise forks would require a Docker Hub account and secrets setup
run: |
if [[ ${{ needs.prepare-docker-build.outputs.ghcr-repository }} == "paperless-ngx/paperless-ngx" && ( ${{ github.ref_name }} == "main" || ${{ github.ref_name }} == "dev" || ${{ github.ref_name }} == "beta" || ${{ startsWith(github.ref, 'refs/tags/v') }} == "true" ) ]] ; then
echo "Enabling DockerHub image push"
echo ::set-output name=enable::"true"
else
echo "Not pushing to DockerHub"
echo ::set-output name=enable::"false"
fi
-
name: Gather Docker metadata
id: docker-meta
uses: docker/metadata-action@v4
with:
images: |
ghcr.io/${{ needs.prepare-docker-build.outputs.ghcr-repository }}
name=paperlessngx/paperless-ngx,enable=${{ steps.docker-hub.outputs.enable }}
tags: |
# Tag branches with branch name
type=ref,event=branch
# Process semver tags
# For a tag x.y.z or vX.Y.Z, output an x.y.z and x.y image tag
type=semver,pattern={{version}}
type=semver,pattern={{major}}.{{minor}}
-
name: Checkout
uses: actions/checkout@v3
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
-
name: Set up QEMU
uses: docker/setup-qemu-action@v2
-
name: Login to Github Container Registry
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
-
name: Login to Docker Hub
uses: docker/login-action@v2
# Don't attempt to login is not pushing to Docker Hub
if: steps.docker-hub.outputs.enable == 'true'
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
-
name: Build and push
uses: docker/build-push-action@v3
with:
context: .
file: ./Dockerfile
platforms: linux/amd64,linux/arm/v7,linux/arm64
push: ${{ github.event_name != 'pull_request' }}
tags: ${{ steps.docker-meta.outputs.tags }}
labels: ${{ steps.docker-meta.outputs.labels }}
build-args: |
JBIG2ENC_VERSION=${{ fromJSON(needs.prepare-docker-build.outputs.jbig2enc-json).version }}
QPDF_VERSION=${{ fromJSON(needs.prepare-docker-build.outputs.qpdf-json).version }}
PIKEPDF_VERSION=${{ fromJSON(needs.prepare-docker-build.outputs.pikepdf-json).version }}
PSYCOPG2_VERSION=${{ fromJSON(needs.prepare-docker-build.outputs.psycopg2-json).version }}
# Get cache layers from this branch, then dev, then main
# This allows new branches to get at least some cache benefits, generally from dev
cache-from: |
type=registry,ref=ghcr.io/${{ needs.prepare-docker-build.outputs.ghcr-repository }}/builder/cache/app:${{ github.ref_name }}
type=registry,ref=ghcr.io/${{ needs.prepare-docker-build.outputs.ghcr-repository }}/builder/cache/app:dev
type=registry,ref=ghcr.io/${{ needs.prepare-docker-build.outputs.ghcr-repository }}/builder/cache/app:main
cache-to: |
type=registry,mode=max,ref=ghcr.io/${{ needs.prepare-docker-build.outputs.ghcr-repository }}/builder/cache/app:${{ github.ref_name }}
-
name: Inspect image
run: |
docker buildx imagetools inspect ${{ fromJSON(steps.docker-meta.outputs.json).tags[0] }}
-
name: Export frontend artifact from docker
run: |
docker create --name frontend-extract ${{ fromJSON(steps.docker-meta.outputs.json).tags[0] }}
docker cp frontend-extract:/usr/src/paperless/src/documents/static/frontend src/documents/static/frontend/
-
name: Upload frontend artifact
uses: actions/upload-artifact@v3
with:
name: frontend-compiled
path: src/documents/static/frontend/
build-release:
needs:
- build-docker-image
runs-on: ubuntu-20.04
steps:
-
name: Checkout
uses: actions/checkout@v3
-
name: Install pipenv
run: |
pip3 install --upgrade pip setuptools wheel pipx
pipx install pipenv
-
name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.9
cache: "pipenv"
cache-dependency-path: 'Pipfile.lock'
-
name: Install Python dependencies
run: |
pipenv sync --dev
-
name: Install system dependencies
run: |
sudo apt-get update -qq
sudo apt-get install -qq --no-install-recommends gettext liblept5
-
name: Download frontend artifact
uses: actions/download-artifact@v3
with:
name: frontend-compiled
path: src/documents/static/frontend/
-
name: Download documentation artifact
uses: actions/download-artifact@v3
with:
name: documentation
path: docs/_build/html/
-
name: Generate requirements file
run: |
pipenv requirements > requirements.txt
-
name: Compile messages
run: |
cd src/
pipenv run python3 manage.py compilemessages
-
name: Collect static files
run: |
cd src/
pipenv run python3 manage.py collectstatic --no-input
-
name: Move files
run: |
mkdir dist
mkdir dist/paperless-ngx
mkdir dist/paperless-ngx/scripts
cp .dockerignore .env Dockerfile Pipfile Pipfile.lock requirements.txt LICENSE README.md dist/paperless-ngx/
cp paperless.conf.example dist/paperless-ngx/paperless.conf
cp gunicorn.conf.py dist/paperless-ngx/gunicorn.conf.py
cp -r docker/ dist/paperless-ngx/docker
cp scripts/*.service scripts/*.sh dist/paperless-ngx/scripts/
cp -r src/ dist/paperless-ngx/src
cp -r docs/_build/html/ dist/paperless-ngx/docs
mv static dist/paperless-ngx
-
name: Make release package
run: |
cd dist
tar -cJf paperless-ngx.tar.xz paperless-ngx/
-
name: Upload release artifact
uses: actions/upload-artifact@v3
with:
name: release
path: dist/paperless-ngx.tar.xz
publish-release:
runs-on: ubuntu-20.04
outputs:
prerelease: ${{ steps.get_version.outputs.prerelease }}
changelog: ${{ steps.create-release.outputs.body }}
version: ${{ steps.get_version.outputs.version }}
needs:
- build-release
if: github.ref_type == 'tag' && (startsWith(github.ref_name, 'v') || contains(github.ref_name, '-beta.rc'))
steps:
-
name: Download release artifact
uses: actions/download-artifact@v3
with:
name: release
path: ./
-
name: Get version
id: get_version
run: |
echo ::set-output name=version::${{ github.ref_name }}
if [[ ${{ contains(github.ref_name, '-beta.rc') }} == 'true' ]]; then
echo ::set-output name=prerelease::true
else
echo ::set-output name=prerelease::false
fi
-
name: Create Release and Changelog
id: create-release
uses: paperless-ngx/release-drafter@master
with:
name: Paperless-ngx ${{ steps.get_version.outputs.version }}
tag: ${{ steps.get_version.outputs.version }}
version: ${{ steps.get_version.outputs.version }}
prerelease: ${{ steps.get_version.outputs.prerelease }}
publish: true # ensures release is not marked as draft
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
-
name: Upload release archive
id: upload-release-asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create-release.outputs.upload_url }}
asset_path: ./paperless-ngx.tar.xz
asset_name: paperless-ngx-${{ steps.get_version.outputs.version }}.tar.xz
asset_content_type: application/x-xz
append-changelog:
runs-on: ubuntu-20.04
needs:
- publish-release
if: needs.publish-release.outputs.prerelease == 'false'
steps:
-
name: Checkout
uses: actions/checkout@v3
with:
ref: main
-
name: Append Changelog to docs
id: append-Changelog
working-directory: docs
run: |
git branch ${{ needs.publish-release.outputs.version }}-changelog
git checkout ${{ needs.publish-release.outputs.version }}-changelog
echo -e "# Changelog\n\n${{ needs.publish-release.outputs.changelog }}\n" > changelog-new.md
echo "Manually linking usernames"
sed -i -r 's|@(.+?) \(\[#|[@\1](https://github.com/\1) ([#|ig' changelog-new.md
CURRENT_CHANGELOG=`tail --lines +2 changelog.md`
echo -e "$CURRENT_CHANGELOG" >> changelog-new.md
mv changelog-new.md changelog.md
git config --global user.name "github-actions"
git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
git commit -am "Changelog ${{ steps.get_version.outputs.version }} - GHA"
git push origin ${{ needs.publish-release.outputs.version }}-changelog
-
name: Create Pull Request
uses: actions/github-script@v6
with:
script: |
const { repo, owner } = context.repo;
const result = await github.rest.pulls.create({
title: '[Documentation] Add ${{ needs.publish-release.outputs.version }} changelog',
owner,
repo,
head: '${{ needs.publish-release.outputs.version }}-changelog',
base: 'main',
body: 'This PR is auto-generated by CI.'
});
github.rest.issues.addLabels({
owner,
repo,
issue_number: result.data.number,
labels: ['documentation']
});

108
.github/workflows/cleanup-tags.yml vendored Normal file
View File

@@ -0,0 +1,108 @@
# This workflow runs on certain conditions to check for and potentially
# delete container images from the GHCR which no longer have an associated
# code branch.
# Requires a PAT with the correct scope set in the secrets
name: Cleanup Image Tags
on:
schedule:
- cron: '0 0 * * SAT'
delete:
pull_request:
types:
- closed
push:
paths:
- ".github/workflows/cleanup-tags.yml"
- ".github/scripts/cleanup-tags.py"
- ".github/scripts/github.py"
- ".github/scripts/common.py"
jobs:
cleanup:
name: Cleanup Image Tags
runs-on: ubuntu-20.04
env:
# Requires a personal access token with the OAuth scope delete:packages
TOKEN: ${{ secrets.GHA_CONTAINER_DELETE_TOKEN }}
steps:
-
name: Checkout
uses: actions/checkout@v3
-
name: Login to Github Container Registry
uses: docker/login-action@v1
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
-
name: Set up Python
uses: actions/setup-python@v3
with:
python-version: "3.10"
-
name: Install requests
run: |
python -m pip install requests
# Clean up primary packages
-
name: Cleanup for package "paperless-ngx"
if: "${{ env.TOKEN != '' }}"
run: |
python ${GITHUB_WORKSPACE}/.github/scripts/cleanup-tags.py --loglevel info --untagged --is-manifest --delete "paperless-ngx"
-
name: Cleanup for package "qpdf"
if: "${{ env.TOKEN != '' }}"
run: |
python ${GITHUB_WORKSPACE}/.github/scripts/cleanup-tags.py --loglevel info --untagged --is-manifest --delete "paperless-ngx/builder/qpdf"
-
name: Cleanup for package "pikepdf"
if: "${{ env.TOKEN != '' }}"
run: |
python ${GITHUB_WORKSPACE}/.github/scripts/cleanup-tags.py --loglevel info --untagged --is-manifest --delete "paperless-ngx/builder/pikepdf"
-
name: Cleanup for package "jbig2enc"
if: "${{ env.TOKEN != '' }}"
run: |
python ${GITHUB_WORKSPACE}/.github/scripts/cleanup-tags.py --loglevel info --untagged --is-manifest --delete "paperless-ngx/builder/jbig2enc"
-
name: Cleanup for package "psycopg2"
if: "${{ env.TOKEN != '' }}"
run: |
python ${GITHUB_WORKSPACE}/.github/scripts/cleanup-tags.py --loglevel info --untagged --is-manifest --delete "paperless-ngx/builder/psycopg2"
#
# Clean up registry cache packages
#
-
name: Cleanup for package "builder/cache/app"
if: "${{ env.TOKEN != '' }}"
run: |
python ${GITHUB_WORKSPACE}/.github/scripts/cleanup-tags.py --loglevel info --untagged --delete "paperless-ngx/builder/cache/app"
-
name: Cleanup for package "builder/cache/qpdf"
if: "${{ env.TOKEN != '' }}"
run: |
python ${GITHUB_WORKSPACE}/.github/scripts/cleanup-tags.py --loglevel info --untagged --delete "paperless-ngx/builder/cache/qpdf"
-
name: Cleanup for package "builder/cache/psycopg2"
if: "${{ env.TOKEN != '' }}"
run: |
python ${GITHUB_WORKSPACE}/.github/scripts/cleanup-tags.py --loglevel info --untagged --delete "paperless-ngx/builder/cache/psycopg2"
-
name: Cleanup for package "builder/cache/jbig2enc"
if: "${{ env.TOKEN != '' }}"
run: |
python ${GITHUB_WORKSPACE}/.github/scripts/cleanup-tags.py --loglevel info --untagged --delete "paperless-ngx/builder/cache/jbig2enc"
-
name: Cleanup for package "builder/cache/pikepdf"
if: "${{ env.TOKEN != '' }}"
run: |
python ${GITHUB_WORKSPACE}/.github/scripts/cleanup-tags.py --loglevel info --untagged --delete "paperless-ngx/builder/cache/pikepdf"
-
name: Check all tags still pull
run: |
ghcr_name=$(echo "${GITHUB_REPOSITORY}" | awk '{ print tolower($0) }')
echo "Pulling all tags of ghcr.io/${ghcr_name}"
docker pull --quiet --all-tags ghcr.io/${ghcr_name}

54
.github/workflows/codeql-analysis.yml vendored Normal file
View File

@@ -0,0 +1,54 @@
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
#
# ******** NOTE ********
# We have attempted to detect the languages in your repository. Please check
# the `language` matrix defined below to confirm you have the correct set of
# supported CodeQL languages.
#
name: "CodeQL"
on:
push:
branches: [ main, dev ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ dev ]
schedule:
- cron: '28 13 * * 5'
jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
strategy:
fail-fast: false
matrix:
language: [ 'javascript', 'python' ]
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
# Learn more about CodeQL language support at https://git.io/codeql-language-support
steps:
- name: Checkout repository
uses: actions/checkout@v2
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
# queries: ./path/to/local/query, your-org/your-repo/queries@main
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2

147
.github/workflows/installer-library.yml vendored Normal file
View File

@@ -0,0 +1,147 @@
# This workflow will run to update the installer library of
# Docker images. These are the images which provide updated wheels
# .deb installation packages or maybe just some compiled library
name: Build Image Library
on:
push:
# Must match one of these branches AND one of the paths
# to be triggered
branches:
- "main"
- "dev"
- "library-*"
- "feature-*"
paths:
# Trigger the workflow if a Dockerfile changed
- "docker-builders/**"
# Trigger if a package was updated
- ".build-config.json"
- "Pipfile.lock"
# Also trigger on workflow changes related to the library
- ".github/workflows/installer-library.yml"
- ".github/workflows/reusable-workflow-builder.yml"
- ".github/scripts/**"
# Set a workflow level concurrency group so primary workflow
# can wait for this to complete if needed
# DO NOT CHANGE without updating main workflow group
concurrency:
group: build-installer-library
cancel-in-progress: false
jobs:
prepare-docker-build:
name: Prepare Docker Image Version Data
runs-on: ubuntu-20.04
steps:
-
name: Set ghcr repository name
id: set-ghcr-repository
run: |
ghcr_name=$(echo "${GITHUB_REPOSITORY}" | awk '{ print tolower($0) }')
echo ::set-output name=repository::${ghcr_name}
-
name: Checkout
uses: actions/checkout@v3
-
name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.9"
-
name: Setup qpdf image
id: qpdf-setup
run: |
build_json=$(python ${GITHUB_WORKSPACE}/.github/scripts/get-build-json.py qpdf)
echo ${build_json}
echo ::set-output name=qpdf-json::${build_json}
-
name: Setup psycopg2 image
id: psycopg2-setup
run: |
build_json=$(python ${GITHUB_WORKSPACE}/.github/scripts/get-build-json.py psycopg2)
echo ${build_json}
echo ::set-output name=psycopg2-json::${build_json}
-
name: Setup pikepdf image
id: pikepdf-setup
run: |
build_json=$(python ${GITHUB_WORKSPACE}/.github/scripts/get-build-json.py pikepdf)
echo ${build_json}
echo ::set-output name=pikepdf-json::${build_json}
-
name: Setup jbig2enc image
id: jbig2enc-setup
run: |
build_json=$(python ${GITHUB_WORKSPACE}/.github/scripts/get-build-json.py jbig2enc)
echo ${build_json}
echo ::set-output name=jbig2enc-json::${build_json}
outputs:
ghcr-repository: ${{ steps.set-ghcr-repository.outputs.repository }}
qpdf-json: ${{ steps.qpdf-setup.outputs.qpdf-json }}
pikepdf-json: ${{ steps.pikepdf-setup.outputs.pikepdf-json }}
psycopg2-json: ${{ steps.psycopg2-setup.outputs.psycopg2-json }}
jbig2enc-json: ${{ steps.jbig2enc-setup.outputs.jbig2enc-json}}
build-qpdf-debs:
name: qpdf
needs:
- prepare-docker-build
uses: ./.github/workflows/reusable-workflow-builder.yml
with:
dockerfile: ./docker-builders/Dockerfile.qpdf
build-json: ${{ needs.prepare-docker-build.outputs.qpdf-json }}
build-args: |
QPDF_VERSION=${{ fromJSON(needs.prepare-docker-build.outputs.qpdf-json).version }}
build-jbig2enc:
name: jbig2enc
needs:
- prepare-docker-build
uses: ./.github/workflows/reusable-workflow-builder.yml
with:
dockerfile: ./docker-builders/Dockerfile.jbig2enc
build-json: ${{ needs.prepare-docker-build.outputs.jbig2enc-json }}
build-args: |
JBIG2ENC_VERSION=${{ fromJSON(needs.prepare-docker-build.outputs.jbig2enc-json).version }}
build-psycopg2-wheel:
name: psycopg2
needs:
- prepare-docker-build
uses: ./.github/workflows/reusable-workflow-builder.yml
with:
dockerfile: ./docker-builders/Dockerfile.psycopg2
build-json: ${{ needs.prepare-docker-build.outputs.psycopg2-json }}
build-args: |
PSYCOPG2_VERSION=${{ fromJSON(needs.prepare-docker-build.outputs.psycopg2-json).version }}
build-pikepdf-wheel:
name: pikepdf
needs:
- prepare-docker-build
- build-qpdf-debs
uses: ./.github/workflows/reusable-workflow-builder.yml
with:
dockerfile: ./docker-builders/Dockerfile.pikepdf
build-json: ${{ needs.prepare-docker-build.outputs.pikepdf-json }}
build-args: |
REPO=${{ needs.prepare-docker-build.outputs.ghcr-repository }}
QPDF_VERSION=${{ fromJSON(needs.prepare-docker-build.outputs.qpdf-json).version }}
PIKEPDF_VERSION=${{ fromJSON(needs.prepare-docker-build.outputs.pikepdf-json).version }}

57
.github/workflows/project-actions.yml vendored Normal file
View File

@@ -0,0 +1,57 @@
name: Project Automations
on:
issues:
types:
- opened
- reopened
pull_request_target: #_target allows access to secrets
types:
- opened
- reopened
branches:
- main
- dev
permissions:
contents: read
env:
todo: Todo
done: Done
in_progress: In Progress
jobs:
issue_opened_or_reopened:
name: issue_opened_or_reopened
runs-on: ubuntu-latest
if: github.event_name == 'issues' && (github.event.action == 'opened' || github.event.action == 'reopened')
steps:
- name: Add issue to project and set status to ${{ env.todo }}
uses: leonsteinhaeuser/project-beta-automations@v1.3.0
with:
gh_token: ${{ secrets.GH_TOKEN }}
organization: paperless-ngx
project_id: 2
resource_node_id: ${{ github.event.issue.node_id }}
status_value: ${{ env.todo }} # Target status
pr_opened_or_reopened:
name: pr_opened_or_reopened
runs-on: ubuntu-latest
permissions:
# write permission is required for autolabeler
pull-requests: write
if: github.event_name == 'pull_request_target' && (github.event.action == 'opened' || github.event.action == 'reopened') && github.event.pull_request.user.login != 'dependabot'
steps:
- name: Add PR to project and set status to "Needs Review"
uses: leonsteinhaeuser/project-beta-automations@v1.3.0
with:
gh_token: ${{ secrets.GH_TOKEN }}
organization: paperless-ngx
project_id: 2
resource_node_id: ${{ github.event.pull_request.node_id }}
status_value: "Needs Review" # Target status
- name: Label PR with release-drafter
uses: release-drafter/release-drafter@v5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

View File

@@ -0,0 +1,53 @@
name: Reusable Image Builder
on:
workflow_call:
inputs:
dockerfile:
required: true
type: string
build-json:
required: true
type: string
build-args:
required: false
default: ""
type: string
concurrency:
group: ${{ github.workflow }}-${{ fromJSON(inputs.build-json).name }}-${{ fromJSON(inputs.build-json).version }}
cancel-in-progress: false
jobs:
build-image:
name: Build ${{ fromJSON(inputs.build-json).name }} @ ${{ fromJSON(inputs.build-json).version }}
runs-on: ubuntu-latest
steps:
-
name: Checkout
uses: actions/checkout@v3
-
name: Login to Github Container Registry
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
-
name: Set up QEMU
uses: docker/setup-qemu-action@v2
-
name: Build ${{ fromJSON(inputs.build-json).name }}
uses: docker/build-push-action@v3
with:
context: .
file: ${{ inputs.dockerfile }}
tags: ${{ fromJSON(inputs.build-json).image_tag }}
platforms: linux/amd64,linux/arm64,linux/arm/v7
build-args: ${{ inputs.build-args }}
push: true
cache-from: type=registry,ref=${{ fromJSON(inputs.build-json).cache_tag }}
cache-to: type=registry,mode=max,ref=${{ fromJSON(inputs.build-json).cache_tag }}

14
.gitignore vendored
View File

@@ -61,12 +61,18 @@ target/
# PyCharm
.idea
# VS Code
.vscode
/src-ui/.vscode
/docs/.vscode
# Other stuff that doesn't belong
.virtualenv
virtualenv
/venv
docker-compose.env
docker-compose.yml
.venv/
/docker-compose.env
/docker-compose.yml
# Used for development
scripts/import-for-development
@@ -81,7 +87,9 @@ scripts/nuke
/paperless.conf
/consume/
/export/
/src-ui/.vscode
# this is where the compiled frontend is moved to.
/src/documents/static/frontend/
# mac os
.DS_Store

8
.hadolint.yml Normal file
View File

@@ -0,0 +1,8 @@
failure-threshold: warning
ignored:
# https://github.com/hadolint/hadolint/wiki/DL3008
- DL3008
# https://github.com/hadolint/hadolint/wiki/DL3013
- DL3013
# https://github.com/hadolint/hadolint/wiki/DL3003
- DL3003

87
.pre-commit-config.yaml Normal file
View File

@@ -0,0 +1,87 @@
# This file configures pre-commit hooks.
# See https://pre-commit.com/ for general information
# See https://pre-commit.com/hooks.html for a listing of possible hooks
repos:
# General hooks
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.3.0
hooks:
- id: check-docstring-first
- id: check-json
exclude: "tsconfig.*json"
- id: check-yaml
- id: check-toml
- id: check-executables-have-shebangs
- id: end-of-file-fixer
exclude_types:
- svg
- pofile
exclude: "(^LICENSE$)"
- id: mixed-line-ending
args:
- "--fix=lf"
- id: trailing-whitespace
exclude_types:
- svg
- id: check-case-conflict
- id: detect-private-key
- repo: https://github.com/pre-commit/mirrors-prettier
rev: "v2.7.1"
hooks:
- id: prettier
types_or:
- javascript
- ts
- markdown
exclude: "(^Pipfile\\.lock$)"
# Python hooks
- repo: https://github.com/asottile/reorder_python_imports
rev: v3.8.2
hooks:
- id: reorder-python-imports
exclude: "(migrations)"
- repo: https://github.com/asottile/yesqa
rev: "v1.4.0"
hooks:
- id: yesqa
exclude: "(migrations)"
- repo: https://github.com/asottile/add-trailing-comma
rev: "v2.2.3"
hooks:
- id: add-trailing-comma
exclude: "(migrations)"
- repo: https://gitlab.com/pycqa/flake8
rev: 3.9.2
hooks:
- id: flake8
files: ^src/
args:
- "--config=./src/setup.cfg"
- repo: https://github.com/psf/black
rev: 22.6.0
hooks:
- id: black
- repo: https://github.com/asottile/pyupgrade
rev: v2.37.3
hooks:
- id: pyupgrade
exclude: "(migrations)"
args:
- "--py38-plus"
# Dockerfile hooks
- repo: https://github.com/AleksaC/hadolint-py
rev: v2.10.0
hooks:
- id: hadolint
# Shell script hooks
- repo: https://github.com/lovesegfault/beautysh
rev: v6.2.1
hooks:
- id: beautysh
args:
- "--tab"
- repo: https://github.com/shellcheck-py/shellcheck-py
rev: "v0.8.0.4"
hooks:
- id: shellcheck

4
.prettierrc Normal file
View File

@@ -0,0 +1,4 @@
# https://prettier.io/docs/en/options.html#semicolons
semi: false
# https://prettier.io/docs/en/options.html#quotes
singleQuote: true

16
.readthedocs.yml Normal file
View File

@@ -0,0 +1,16 @@
# .readthedocs.yml
# Read the Docs configuration file
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
# Required
version: 2
# Build documentation in the docs/ directory with Sphinx
sphinx:
configuration: docs/conf.py
# Optionally set the version of Python and requirements required to build your docs
python:
version: "3.8"
install:
- requirements: docs/requirements.txt

View File

@@ -1,51 +0,0 @@
language: python
dist: focal
os: linux
jobs:
include:
- name: "Paperless on Python 3.6"
python: "3.6"
- name: "Paperless on Python 3.7"
python: "3.7"
- name: "Paperless on Python 3.8"
python: "3.8"
- name: "Documentation"
script:
- cd docs/
- make html
after_success: true
- name: "Front end"
language: node_js
node_js:
- 15
before_install: true
install:
- cd src-ui/
- npm install -g @angular/cli
- npm install
script:
- ng build --prod
after_success: true
before_install:
- sudo apt-get update -qq
- sudo apt-get install -qq libpoppler-cpp-dev unpaper tesseract-ocr imagemagick ghostscript optipng
install:
- pip install --upgrade pipenv
- pipenv install --system --dev
script:
- cd src/
- pipenv run pytest --cov
- pipenv run pycodestyle
after_success:
- pipenv run coveralls

9
CODEOWNERS Normal file
View File

@@ -0,0 +1,9 @@
/.github/workflows/ @paperless-ngx/ci-cd
/docker/ @paperless-ngx/ci-cd
/scripts/ @paperless-ngx/ci-cd
/src-ui/ @paperless-ngx/frontend
/src/ @paperless-ngx/backend
Pipfile* @paperless-ngx/backend
*.py @paperless-ngx/backend

128
CODE_OF_CONDUCT.md Normal file
View File

@@ -0,0 +1,128 @@
# Contributor Covenant Code of Conduct
## Our Pledge
We as members, contributors, and leaders pledge to make participation in our
community a harassment-free experience for everyone, regardless of age, body
size, visible or invisible disability, ethnicity, sex characteristics, gender
identity and expression, level of experience, education, socio-economic status,
nationality, personal appearance, race, religion, or sexual identity
and orientation.
We pledge to act and interact in ways that contribute to an open, welcoming,
diverse, inclusive, and healthy community.
## Our Standards
Examples of behavior that contributes to a positive environment for our
community include:
- Demonstrating empathy and kindness toward other people
- Being respectful of differing opinions, viewpoints, and experiences
- Giving and gracefully accepting constructive feedback
- Accepting responsibility and apologizing to those affected by our mistakes,
and learning from the experience
- Focusing on what is best not just for us as individuals, but for the
overall community
Examples of unacceptable behavior include:
- The use of sexualized language or imagery, and sexual attention or
advances of any kind
- Trolling, insulting or derogatory comments, and personal or political attacks
- Public or private harassment
- Publishing others' private information, such as a physical or email
address, without their explicit permission
- Other conduct which could reasonably be considered inappropriate in a
professional setting
## Enforcement Responsibilities
Community leaders are responsible for clarifying and enforcing our standards of
acceptable behavior and will take appropriate and fair corrective action in
response to any behavior that they deem inappropriate, threatening, offensive,
or harmful.
Community leaders have the right and responsibility to remove, edit, or reject
comments, commits, code, wiki edits, issues, and other contributions that are
not aligned to this Code of Conduct, and will communicate reasons for moderation
decisions when appropriate.
## Scope
This Code of Conduct applies within all community spaces, and also applies when
an individual is officially representing the community in public spaces.
Examples of representing our community include using an official e-mail address,
posting via an official social media account, or acting as an appointed
representative at an online or offline event.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at
hello@paperless-ngx.com.
All complaints will be reviewed and investigated promptly and fairly.
All community leaders are obligated to respect the privacy and security of the
reporter of any incident.
## Enforcement Guidelines
Community leaders will follow these Community Impact Guidelines in determining
the consequences for any action they deem in violation of this Code of Conduct:
### 1. Correction
**Community Impact**: Use of inappropriate language or other behavior deemed
unprofessional or unwelcome in the community.
**Consequence**: A private, written warning from community leaders, providing
clarity around the nature of the violation and an explanation of why the
behavior was inappropriate. A public apology may be requested.
### 2. Warning
**Community Impact**: A violation through a single incident or series
of actions.
**Consequence**: A warning with consequences for continued behavior. No
interaction with the people involved, including unsolicited interaction with
those enforcing the Code of Conduct, for a specified period of time. This
includes avoiding interactions in community spaces as well as external channels
like social media. Violating these terms may lead to a temporary or
permanent ban.
### 3. Temporary Ban
**Community Impact**: A serious violation of community standards, including
sustained inappropriate behavior.
**Consequence**: A temporary ban from any sort of interaction or public
communication with the community for a specified period of time. No public or
private interaction with the people involved, including unsolicited interaction
with those enforcing the Code of Conduct, is allowed during this period.
Violating these terms may lead to a permanent ban.
### 4. Permanent Ban
**Community Impact**: Demonstrating a pattern of violation of community
standards, including sustained inappropriate behavior, harassment of an
individual, or aggression toward or disparagement of classes of individuals.
**Consequence**: A permanent ban from any sort of public interaction within
the community.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
version 2.0, available at
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
Community Impact Guidelines were inspired by [Mozilla's code of conduct
enforcement ladder](https://github.com/mozilla/diversity).
[homepage]: https://www.contributor-covenant.org
For answers to common questions about this code of conduct, see the FAQ at
https://www.contributor-covenant.org/faq. Translations are available at
https://www.contributor-covenant.org/translations.

View File

@@ -1,30 +1,132 @@
# Contributing
There's still lots of things to be done, just have a look at that issue log. If you feel like conctributing to the project, please do! Bug fixes and improvements to the front end (I just can't seem to get some of these CSS things right) are always welcome.
If you feel like contributing to the project, please do! Bug fixes and improvements are always welcome.
If you want to implement something big: Please start a discussion about that in the issues! Maybe I've already had something similar in mind and we can make it happen together. However, keep in mind that the general roadmap is to make the existing features stable and get them tested. See the roadmap in the readme.
If you want to implement something big:
* When making additions to the project, consider if the majority of users will benefit from your change. If not, you're probably better of forking the project.
* Also consider if your change will get in the way of other users. A good change is a change that enhances the experience of some users who want that change and does not affect users who do not care about the change.
- Please start a discussion about that in the issues! Maybe something similar is already in development and we can make it happen together.
- When making additions to the project, consider if the majority of users will benefit from your change. If not, you're probably better of forking the project.
- Also consider if your change will get in the way of other users. A good change is a change that enhances the experience of some users who want that change and does not affect users who do not care about the change.
- Please see the [paperless-ngx merge process](#merging-prs) below.
## Python
Use python 3.6 for development. Paperless supports python 3.6, 3.7 and 3.8.
Paperless supports python 3.8 and 3.9. We format Python code with [Black](https://github.com/psf/black).
## Branches
master always reflects the latest release.
`main` always reflects the latest release. Apart from changes to the documentation or readme, absolutely no functional changes on this branch in between releases.
dev contains all changes that will be part of the next release. Use this branch to start making your changes.
`dev` contains all changes that will be part of the next release. Use this branch to start making your changes.
feature-X branches is for experimental stuff that will eventually be merged into dev, and then released as part of the next release.
`feature-X` branches are for experimental stuff that will eventually be merged into dev.
## Testing:
I'm trying to get most of paperless tested, so please do the same for your code! I know its a hassle, but it makes sure that your code works now and will allow us to detect regressions easily.
Please format and test your code! I know it's a hassle, but it makes sure that your code works now and will allow us to detect regressions easily.
To test your code, execute `pytest` in the src/ directory. Executing that in the project root is no good. This also generates a html coverage report, which you can use to see if you missed anything important during testing.
To test your code, execute `pytest` in the src/ directory. This also generates a html coverage report, which you can use to see if you missed anything important during testing.
Before you can run `pytest`, ensure to [properly set up your local environment](https://paperless-ngx.readthedocs.io/en/latest/extending.html#initial-setup-and-first-start).
## More info:
... is available in the documentation. https://paperless-ng.readthedocs.io/en/latest/extending.html
... is available in the documentation. https://paperless-ngx.readthedocs.io/en/latest/extending.html
# Merging PRs
Once you have submitted a **P**ull **R**equest it will be reviewed, approved, and merged by one or more community members of any team. Automated code tests and formatting checks must be passed.
## Non-Trivial Requests
PRs deemed `non-trivial` will go through a stricter review process before being merged into `dev`. This is to ensure code quality and complete functionality (free of side effects).
Examples of `non-trivial` PRs might include:
- Additional features
- Large changes to many distinct files
- Breaking or depreciation of existing features
Our community review process for `non-trivial` PRs is the following:
1. Must pass usual automated code tests and formatting checks.
2. The PR will be assigned and pinged to the appropriately experienced team (i.e. @paperless-ngx/backend for backend changes).
3. Development team will check and test code manually (possibly over several days).
- You may be asked to make changes or rebase.
- The team may ask for additional testing done by @paperless-ngx/test
4. **At least two** members of the team will approve and finally merge the request into `dev` 🎉.
This process might be slow as community members have different schedules and time to dedicate to the Paperless project. However it ensures community code reviews are as brilliantly thorough as they once were with @jonaswinkler.
# Translating Paperless-ngx
Some notes about translation:
- There are two resources:
- `src-ui/messages.xlf` contains the translation strings for the front end. This is the most important.
- `django.po` contains strings for the administration section of paperless, which is nice to have translated.
- Most of the front-end strings are used on buttons, menu items, etc., so ideally the translated string should not be much longer than the English original.
- Translation units may contain placeholders. These usually mean that there's a name of a tag or document or something in the string. You can click on the placeholders to copy them.
- Translation units may contain plural expressions such as `{PLURAL_VAR, plural, =1 {one result} =0 {no results} other {<placeholder> results}}`. Copy these verbatim and translate only the content in the inner `{}` brackets. Example: `{PLURAL_VAR, plural, =1 {Ein Ergebnis} =0 {Keine Ergebnisse} other {<placeholder> Ergebnisse}}`
- Changes to translations on Crowdin will get pushed into the repository automatically.
## Adding new languages to the codebase
If a language has already been added, and you would like to contribute new translations or change existing translations, please read the "Translation" section in the README.md file for further details on that.
If you would like the project to be translated to another language, first head over to https://crwd.in/paperless-ngx to check if that language has already been enabled for translation.
If not, please request the language to be added by creating an issue on GitHub. The issue should contain:
- English name of the language (the localized name can be added on Crowdin).
- ISO language code. A list of those can be found here: https://support.crowdin.com/enterprise/language-codes/
- Date format commonly used for the language, e.g. dd/mm/yyyy, mm/dd/yyyy, etc.
After the language has been added and some translations have been made on Crowdin, the language needs to be enabled in the code.
Note that there is no need to manually add a .po of .xlf file as those will be automatically generated and imported from Crowdin.
The following files need to be changed:
- src-ui/angular.json (under the _projects/paperless-ui/i18n/locales_ JSON key)
- src/paperless/settings.py (in the _LANGUAGES_ array)
- src-ui/src/app/services/settings.service.ts (inside the _getLanguageOptions_ method)
- src-ui/src/app/app.module.ts (import locale from _angular/common/locales_ and call _registerLocaleData_)
Please add the language in the correct order, alphabetically by locale.
Note that _en-us_ needs to stay on top of the list, as it is the default project language
If you are familiar with Git, feel free to send a Pull Request with those changes.
If not, let us know in the issue you created for the language, so that another developer can make these changes.
# Organization Structure & Membership
Paperless-ngx is a community project. We do our best to delegate permission and responsibility among a team of people to ensure the longevity of the project.
## Structure
As of writing, there are 21 members in paperless-ngx. 4 of these people have complete administrative privileges to the repo:
- [@shamoon](https://github.com/shamoon)
- [@bauerj](https://github.com/bauerj)
- [@qcasey](https://github.com/qcasey)
- [@FrankStrieter](https://github.com/FrankStrieter)
There are 5 teams collaborating on specific tasks within paperless-ngx:
- @paperless-ngx/backend (Python / django)
- @paperless-ngx/frontend (JavaScript / Typescript)
- @paperless-ngx/ci-cd (GitHub Actions / Deployment)
- @paperless-ngx/issues (Issue triage)
- @paperless-ngx/test (General testing for larger PRs)
## Permissions
All team members are notified when mentioned or assigned to a relevant issue or pull request. Additionally, each team has slightly different access to paperless-ngx:
- The **test** team has no special permissions.
- The **issues** team has `triage` access. This means they can organize issues and pull requests.
- The **backend**, **frontend**, and **ci-cd** teams have `write` access. This means they can approve PRs and push code, containers, releases, and more.
## Joining
We are not overly strict with inviting people to the organization. If you have read the [team permissions](#permissions) and think having additional access would enhance your contributions, please reach out to an [admin](#structure) of the team.
The admins occasionally invite contributors directly if we believe having them on a team will accelerate their work.

245
Dockerfile Normal file
View File

@@ -0,0 +1,245 @@
# syntax=docker/dockerfile:1.4
# Pull the installer images from the library
# These are all built previously
# They provide either a .deb or .whl
ARG JBIG2ENC_VERSION
ARG QPDF_VERSION
ARG PIKEPDF_VERSION
ARG PSYCOPG2_VERSION
FROM ghcr.io/paperless-ngx/paperless-ngx/builder/jbig2enc:${JBIG2ENC_VERSION} as jbig2enc-builder
FROM ghcr.io/paperless-ngx/paperless-ngx/builder/qpdf:${QPDF_VERSION} as qpdf-builder
FROM ghcr.io/paperless-ngx/paperless-ngx/builder/pikepdf:${PIKEPDF_VERSION} as pikepdf-builder
FROM ghcr.io/paperless-ngx/paperless-ngx/builder/psycopg2:${PSYCOPG2_VERSION} as psycopg2-builder
FROM --platform=$BUILDPLATFORM node:16-bullseye-slim AS compile-frontend
# This stage compiles the frontend
# This stage runs once for the native platform, as the outputs are not
# dependent on target arch
# Inputs: None
COPY ./src-ui /src/src-ui
WORKDIR /src/src-ui
RUN set -eux \
&& npm update npm -g \
&& npm ci --omit=optional
RUN set -eux \
&& ./node_modules/.bin/ng build --configuration production
FROM python:3.9-slim-bullseye as main-app
LABEL org.opencontainers.image.authors="paperless-ngx team <hello@paperless-ngx.com>"
LABEL org.opencontainers.image.documentation="https://paperless-ngx.readthedocs.io/en/latest/"
LABEL org.opencontainers.image.source="https://github.com/paperless-ngx/paperless-ngx"
LABEL org.opencontainers.image.url="https://github.com/paperless-ngx/paperless-ngx"
LABEL org.opencontainers.image.licenses="GPL-3.0-only"
ARG DEBIAN_FRONTEND=noninteractive
#
# Begin installation and configuration
# Order the steps below from least often changed to most
#
# copy jbig2enc
# Basically will never change again
COPY --from=jbig2enc-builder /usr/src/jbig2enc/src/.libs/libjbig2enc* /usr/local/lib/
COPY --from=jbig2enc-builder /usr/src/jbig2enc/src/jbig2 /usr/local/bin/
COPY --from=jbig2enc-builder /usr/src/jbig2enc/src/*.h /usr/local/include/
# Packages need for running
ARG RUNTIME_PACKAGES="\
curl \
file \
# fonts for text file thumbnail generation
fonts-liberation \
gettext \
ghostscript \
gnupg \
gosu \
icc-profiles-free \
imagemagick \
media-types \
liblept5 \
libpq5 \
libxml2 \
liblcms2-2 \
libtiff5 \
libxslt1.1 \
libfreetype6 \
libwebp6 \
libopenjp2-7 \
libimagequant0 \
libraqm0 \
libgnutls30 \
libjpeg62-turbo \
python3 \
python3-pip \
python3-setuptools \
postgresql-client \
mariadb-client \
# For Numpy
libatlas3-base \
# OCRmyPDF dependencies
tesseract-ocr \
tesseract-ocr-eng \
tesseract-ocr-deu \
tesseract-ocr-fra \
tesseract-ocr-ita \
tesseract-ocr-spa \
# Suggested for OCRmyPDF
pngquant \
# Suggested for pikepdf
jbig2dec \
tzdata \
unpaper \
# Mime type detection
zlib1g \
# Barcode splitter
libzbar0 \
poppler-utils"
# Install basic runtime packages.
# These change very infrequently
RUN set -eux \
echo "Installing system packages" \
&& apt-get update \
&& apt-get install --yes --quiet --no-install-recommends ${RUNTIME_PACKAGES} \
&& rm -rf /var/lib/apt/lists/* \
&& echo "Installing supervisor" \
&& python3 -m pip install --default-timeout=1000 --upgrade --no-cache-dir supervisor==4.2.4
# Copy gunicorn config
# Changes very infrequently
WORKDIR /usr/src/paperless/
COPY gunicorn.conf.py .
# setup docker-specific things
# Use mounts to avoid copying installer files into the image
# These change sometimes, but rarely
WORKDIR /usr/src/paperless/src/docker/
COPY [ \
"docker/imagemagick-policy.xml", \
"docker/supervisord.conf", \
"docker/docker-entrypoint.sh", \
"docker/docker-prepare.sh", \
"docker/paperless_cmd.sh", \
"docker/wait-for-redis.py", \
"docker/management_script.sh", \
"docker/install_management_commands.sh", \
"/usr/src/paperless/src/docker/" \
]
RUN set -eux \
&& echo "Configuring ImageMagick" \
&& mv imagemagick-policy.xml /etc/ImageMagick-6/policy.xml \
&& echo "Configuring supervisord" \
&& mkdir /var/log/supervisord /var/run/supervisord \
&& mv supervisord.conf /etc/supervisord.conf \
&& echo "Setting up Docker scripts" \
&& mv docker-entrypoint.sh /sbin/docker-entrypoint.sh \
&& chmod 755 /sbin/docker-entrypoint.sh \
&& mv docker-prepare.sh /sbin/docker-prepare.sh \
&& chmod 755 /sbin/docker-prepare.sh \
&& mv wait-for-redis.py /sbin/wait-for-redis.py \
&& chmod 755 /sbin/wait-for-redis.py \
&& mv paperless_cmd.sh /usr/local/bin/paperless_cmd.sh \
&& chmod 755 /usr/local/bin/paperless_cmd.sh \
&& echo "Installing managment commands" \
&& chmod +x install_management_commands.sh \
&& ./install_management_commands.sh
# Install the built packages from the installer library images
# Use mounts to avoid copying installer files into the image
# These change sometimes
RUN --mount=type=bind,from=qpdf-builder,target=/qpdf \
--mount=type=bind,from=psycopg2-builder,target=/psycopg2 \
--mount=type=bind,from=pikepdf-builder,target=/pikepdf \
set -eux \
&& echo "Installing qpdf" \
&& apt-get install --yes --no-install-recommends /qpdf/usr/src/qpdf/libqpdf28_*.deb \
&& apt-get install --yes --no-install-recommends /qpdf/usr/src/qpdf/qpdf_*.deb \
&& echo "Installing pikepdf and dependencies" \
&& python3 -m pip install --no-cache-dir /pikepdf/usr/src/wheels/pyparsing*.whl \
&& python3 -m pip install --no-cache-dir /pikepdf/usr/src/wheels/packaging*.whl \
&& python3 -m pip install --no-cache-dir /pikepdf/usr/src/wheels/lxml*.whl \
&& python3 -m pip install --no-cache-dir /pikepdf/usr/src/wheels/Pillow*.whl \
&& python3 -m pip install --no-cache-dir /pikepdf/usr/src/wheels/pikepdf*.whl \
&& python3 -m pip list \
&& echo "Installing psycopg2" \
&& python3 -m pip install --no-cache-dir /psycopg2/usr/src/wheels/psycopg2*.whl \
&& python3 -m pip list
WORKDIR /usr/src/paperless/src/
# Python dependencies
# Change pretty frequently
COPY Pipfile* ./
# Packages needed only for building a few quick Python
# dependencies
ARG BUILD_PACKAGES="\
build-essential \
git \
default-libmysqlclient-dev \
python3-dev"
RUN set -eux \
&& echo "Installing build system packages" \
&& apt-get update \
&& apt-get install --yes --quiet --no-install-recommends ${BUILD_PACKAGES} \
&& python3 -m pip install --no-cache-dir --upgrade wheel \
&& echo "Installing pipenv" \
&& python3 -m pip install --no-cache-dir --upgrade pipenv \
&& echo "Installing Python requirements" \
# pipenv tries to be too fancy and prints so much junk
&& pipenv requirements > requirements.txt \
&& python3 -m pip install --default-timeout=1000 --no-cache-dir --requirement requirements.txt \
&& rm requirements.txt \
&& echo "Cleaning up image" \
&& apt-get -y purge ${BUILD_PACKAGES} \
&& apt-get -y autoremove --purge \
&& apt-get clean --yes \
# Remove pipenv and its unique packages
&& python3 -m pip uninstall --yes \
pipenv \
distlib \
platformdirs \
virtualenv \
virtualenv-clone \
&& rm -rf /var/lib/apt/lists/* \
&& rm -rf /tmp/* \
&& rm -rf /var/tmp/* \
&& rm -rf /var/cache/apt/archives/* \
&& truncate -s 0 /var/log/*log
# copy backend
COPY ./src ./
# copy frontend
COPY --from=compile-frontend /src/src/documents/static/frontend/ ./documents/static/frontend/
# add users, setup scripts
RUN set -eux \
&& addgroup --gid 1000 paperless \
&& useradd --uid 1000 --gid paperless --home-dir /usr/src/paperless paperless \
&& chown -R paperless:paperless ../ \
&& gosu paperless python3 manage.py collectstatic --clear --no-input \
&& gosu paperless python3 manage.py compilemessages
VOLUME ["/usr/src/paperless/data", \
"/usr/src/paperless/media", \
"/usr/src/paperless/consume", \
"/usr/src/paperless/export"]
ENTRYPOINT ["/sbin/docker-entrypoint.sh"]
EXPOSE 8000
CMD ["/usr/local/bin/paperless_cmd.sh"]

58
Pipfile
View File

@@ -8,40 +8,52 @@ url = "https://www.piwheels.org/simple"
verify_ssl = true
name = "piwheels"
[requires]
python_version = "3.6"
[packages]
dateparser = "~=0.7.6"
django = "~=3.1.3"
dateparser = "~=1.1"
django = "~=4.0"
django-cors-headers = "*"
django-extensions = "*"
django-filter = "~=2.4.0"
django-q = "~=1.3.4"
djangorestframework = "~=3.12.2"
django-filter = "~=22.1"
django-q = {editable = true, ref = "paperless-main", git = "https://github.com/paperless-ngx/django-q.git"}
djangorestframework = "~=3.13"
filelock = "*"
fuzzywuzzy = "*"
fuzzywuzzy = {extras = ["speedup"], version = "*"}
gunicorn = "*"
imap-tools = "*"
langdetect = "*"
pdftotext = "*"
pathvalidate = "*"
pillow = "*"
pikepdf = "*"
pillow = "~=9.2"
pikepdf = "~=5.6"
python-gnupg = "*"
python-dotenv = "*"
python-dateutil = "*"
python-Levenshtein = "*"
python-magic = "*"
psycopg2-binary = "*"
psycopg2 = "*"
redis = "*"
scikit-learn="~=0.23.2"
whitenoise = "~=5.2.0"
watchdog = "*"
whoosh="~=2.7.4"
inotifyrecursive = "~=0.3.4"
ocrmypdf = "*"
scikit-learn = "~=1.1"
# Pin this until piwheels is building 1.9 (see https://www.piwheels.org/project/scipy/)
scipy = "==1.8.1"
whitenoise = "~=6.2"
watchdog = "~=2.1"
whoosh="~=2.7"
inotifyrecursive = "~=0.3"
ocrmypdf = "~=13.7"
tqdm = "*"
tika = "*"
# TODO: This will sadly also install daphne+dependencies,
# which an ASGI server we don't need. Adds about 15MB image size.
channels = "~=3.0"
channels-redis = "*"
uvicorn = {extras = ["standard"], version = "*"}
concurrent-log-handler = "*"
"pdfminer.six" = "*"
"backports.zoneinfo" = {version = "*", markers = "python_version < '3.9'"}
"importlib-resources" = {version = "*", markers = "python_version < '3.9'"}
zipp = {version = "*", markers = "python_version < '3.9'"}
pyzbar = "*"
pdf2image = "*"
mysqlclient = "*"
setproctitle = "*"
[dev-packages]
coveralls = "*"
@@ -53,6 +65,10 @@ pytest-django = "*"
pytest-env = "*"
pytest-sugar = "*"
pytest-xdist = "*"
sphinx = "~=3.3"
sphinx = "~=5.1"
sphinx_rtd_theme = "*"
tox = "*"
black = "*"
pre-commit = "*"
sphinx-autobuild = "*"
myst-parser = "*"

2695
Pipfile.lock generated

File diff suppressed because it is too large Load Diff

176
README.md
View File

@@ -1,124 +1,120 @@
[![Build Status](https://travis-ci.org/jonaswinkler/paperless-ng.svg?branch=master)](https://travis-ci.org/jonaswinkler/paperless-ng)
[![Documentation Status](https://readthedocs.org/projects/paperless-ng/badge/?version=latest)](https://paperless-ng.readthedocs.io/en/latest/?badge=latest)
[![Docker Hub Pulls](https://img.shields.io/docker/pulls/jonaswinkler/paperless-ng.svg)](https://hub.docker.com/r/jonaswinkler/paperless-ng)
[![Coverage Status](https://coveralls.io/repos/github/jonaswinkler/paperless-ng/badge.svg?branch=master)](https://coveralls.io/github/jonaswinkler/paperless-ng?branch=master)
[![ci](https://github.com/paperless-ngx/paperless-ngx/workflows/ci/badge.svg)](https://github.com/paperless-ngx/paperless-ngx/actions)
[![Crowdin](https://badges.crowdin.net/paperless-ngx/localized.svg)](https://crowdin.com/project/paperless-ngx)
[![Documentation Status](https://readthedocs.org/projects/paperless-ngx/badge/?version=latest)](https://paperless-ngx.readthedocs.io/en/latest/?badge=latest)
[![Coverage Status](https://coveralls.io/repos/github/paperless-ngx/paperless-ngx/badge.svg?branch=master)](https://coveralls.io/github/paperless-ngx/paperless-ngx?branch=master)
[![Chat on Matrix](https://matrix.to/img/matrix-badge.svg)](https://matrix.to/#/#paperless:adnidor.de)
# Paperless-ng
<p align="center">
<img src="https://github.com/paperless-ngx/paperless-ngx/raw/main/resources/logo/web/png/Black%20logo%20-%20no%20background.png#gh-light-mode-only" width="50%" />
<img src="https://github.com/paperless-ngx/paperless-ngx/raw/main/resources/logo/web/png/White%20logo%20-%20no%20background.png#gh-dark-mode-only" width="50%" />
</p>
[Paperless](https://github.com/the-paperless-project/paperless) is an application by Daniel Quinn and others that indexes your scanned documents and allows you to easily search for documents and store metadata alongside your documents.
<!-- omit in toc -->
Paperless-ng is a fork of the original project, adding a new interface and many other changes under the hood. For a detailed list of changes, have a look at the changelog in the documentation.
# Paperless-ngx
This project is still in development and some things may not work as expected.
Paperless-ngx is a document management system that transforms your physical documents into a searchable online archive so you can keep, well, _less paper_.
# How it Works
Paperless-ngx forked from [paperless-ng](https://github.com/jonaswinkler/paperless-ng) to continue the great work and distribute responsibility of supporting and advancing the project among a team of people. [Consider joining us!](#community-support) Discussion of this transition can be found in issues
[#1599](https://github.com/jonaswinkler/paperless-ng/issues/1599) and [#1632](https://github.com/jonaswinkler/paperless-ng/issues/1632).
Paperless does not control your scanner, it only helps you deal with what your scanner produces.
A demo is available at [demo.paperless-ngx.com](https://demo.paperless-ngx.com) using login `demo` / `demo`. _Note: demo content is reset frequently and confidential information should not be uploaded._
1. Buy a document scanner that can write to a place on your network. If you need some inspiration, have a look at the [scanner recommendations](https://paperless-ng.readthedocs.io/en/latest/scanners.html) page. Set it up to "scan to FTP" or something similar. It should be able to push scanned images to a server without you having to do anything. Of course if your scanner doesn't know how to automatically upload the file somewhere, you can always do that manually. Paperless doesn't care how the documents get into its local consumption directory.
- Alternatively, you can use any of the mobile scanning apps out there. We have an app that allows you to share documents with paperless, if you're on Android. See the section on affiliated projects.
2. Wait for paperless to process your files. OCR is expensive, and depending on the power of your machine, this might take a bit of time.
3. Use the web frontend to sift through the database and find what you want.
4. Download the PDF you need/want via the web interface and do whatever you like with it. You can even print it and send it as if it's the original. In most cases, no one will care or notice.
Here's what you get:
![Dashboard](https://github.com/jonaswinkler/paperless-ng/raw/master/docs/_static/screenshots/dashboard.png)
- [Features](#features)
- [Getting started](#getting-started)
- [Contributing](#contributing)
- [Community Support](#community-support)
- [Translation](#translation)
- [Feature Requests](#feature-requests)
- [Bugs](#bugs)
- [Affiliated Projects](#affiliated-projects)
- [Important Note](#important-note)
# Features
* Performs OCR on your documents, adds selectable text to image only documents and adds tags, correspondents and document types to your documents.
* Paperless stores your documents plain on disk. Filenames and folders are managed by paperless and can be configured freely.
* Single page application front end. Should be pretty snappy. Will be mobile friendly in the future.
* Includes a dashboard that shows basic statistics and has document upload.
* Filtering by tags, correspondents, types, and more.
* Customizable views can be saved and displayed on the dashboard.
* Full text search helps you find what you need.
* Auto completion suggests relevant words from your documents.
* Results are sorted by relevance to your search query.
* Highlighting shows you which parts of the document matched the query.
* Email processing: Paperless adds documents from your email accounts.
* Configure multiple accounts and filters for each account.
* When adding documents from mails, paperless can move these mails to a new folder, mark them as read, flag them or delete them.
* Machine learning powered document matching.
* Paperless learns from your documents and will be able to automatically assign tags, correspondents and types to documents once you've stored a few documents in paperless.
* A task processor that processes documents in parallel and also tells you when something goes wrong. On modern multi core systems, consumption is blazing fast.
* Code cleanup in many, MANY areas. Some of the code from OG paperless was just overly complicated.
* More tests, more stability.
![Dashboard](https://raw.githubusercontent.com/paperless-ngx/paperless-ngx/main/docs/_static/screenshots/documents-wchrome.png#gh-light-mode-only)
![Dashboard](https://raw.githubusercontent.com/paperless-ngx/paperless-ngx/main/docs/_static/screenshots/documents-wchrome-dark.png#gh-dark-mode-only)
If you want to see some screenshots of paperless-ng in action, [some are available in the documentation](https://paperless-ng.readthedocs.io/en/latest/screenshots.html).
For a complete list of changes from paperless, check out the [changelog](https://paperless-ng.readthedocs.io/en/latest/changelog.html)
# Roadmap for 1.0
- **Bulk editing**. Add/remove metadata from multiple documents at once.
- Make the front end nice (except mobile).
- Test coverage at 90%.
- Fix whatever bugs I and you find.
## Roadmap for versions beyond 1.0
These are things that I want to add to paperless eventually. They are sorted by priority.
- **More search.** The search backend is incredibly versatile and customizable. Searching is the most important feature of this project and thus, I want to implement things like:
- Group and limit search results by correspondent, show “more from this” links in the results.
- Ability to search for “Similar documents” in the search results
- **Nested tags**. Organize tags in a hierarchical structure. This will combine the benefits of folders and tags in one coherent system.
- **An interactive consumer** that shows its progress for documents it processes on the web page.
- With live updates ans websockets. This already works on a dev branch, but requires a lot of new dependencies, which I'm not particular happy about.
- Notifications when a document was added with buttons to open the new document right away.
- **Arbitrary tag colors**. Allow the selection of any color with a color picker.
- **More file types**. Possibly allow more file types to be processed by paperless, such as office .odt, .doc, .docx documents.
Apart from that, paperless is pretty much feature complete.
## On the chopping block.
- **GnuPG encrypion.** [Here's a note about encryption in paperless](https://paperless-ng.readthedocs.io/en/latest/administration.html#managing-encryption). The gist of it is that I don't see which attacks this implementation protects against. It gives a false sense of security to users who don't care about how it works.
- Organize and index your scanned documents with tags, correspondents, types, and more.
- Performs OCR on your documents, adds selectable text to image only documents and adds tags, correspondents and document types to your documents.
- Supports PDF documents, images, plain text files, and Office documents (Word, Excel, Powerpoint, and LibreOffice equivalents).
- Office document support is optional and provided by Apache Tika (see [configuration](https://paperless-ngx.readthedocs.io/en/latest/configuration.html#tika-settings))
- Paperless stores your documents plain on disk. Filenames and folders are managed by paperless and their format can be configured freely.
- Single page application front end.
- Includes a dashboard that shows basic statistics and has document upload.
- Filtering by tags, correspondents, types, and more.
- Customizable views can be saved and displayed on the dashboard.
- Full text search helps you find what you need.
- Auto completion suggests relevant words from your documents.
- Results are sorted by relevance to your search query.
- Highlighting shows you which parts of the document matched the query.
- Searching for similar documents ("More like this")
- Email processing: Paperless adds documents from your email accounts.
- Configure multiple accounts and filters for each account.
- When adding documents from mail, paperless can move these mail to a new folder, mark them as read, flag them as important or delete them.
- Machine learning powered document matching.
- Paperless-ngx learns from your documents and will be able to automatically assign tags, correspondents and types to documents once you've stored a few documents in paperless.
- Optimized for multi core systems: Paperless-ngx consumes multiple documents in parallel.
- The integrated sanity checker makes sure that your document archive is in good health.
- [More screenshots are available in the documentation](https://paperless-ngx.readthedocs.io/en/latest/screenshots.html).
# Getting started
The recommended way to deploy paperless is docker-compose. Don't clone the repository, grab the latest release to get started instead. The dockerfiles archive contains just the docker files which will pull the image from docker hub. The source archive contains everything you need to build the docker image yourself (i.e. if you want to run on Raspberry Pi).
The easiest way to deploy paperless is docker-compose. The files in the [`/docker/compose` directory](https://github.com/paperless-ngx/paperless-ngx/tree/main/docker/compose) are configured to pull the image from Github Packages.
Read the [documentation](https://paperless-ng.readthedocs.io/en/latest/setup.html#installation) on how to get started.
If you'd like to jump right in, you can configure a docker-compose environment with our install script:
Alternatively, you can install the dependencies and setup apache and a database server yourself. The documenation has a step by step guide on how to do it.
```bash
bash -c "$(curl -L https://raw.githubusercontent.com/paperless-ngx/paperless-ngx/main/install-paperless-ngx.sh)"
```
# Migrating to paperless-ng
Alternatively, you can install the dependencies and setup apache and a database server yourself. The [documentation](https://paperless-ngx.readthedocs.io/en/latest/setup.html#installation) has a step by step guide on how to do it.
Read the section about [migration](https://paperless-ng.readthedocs.io/en/latest/setup.html#migration-to-paperless-ng) in the documentation. Its also entirely possible to go back to paperless by reverting the database migrations.
Migrating from Paperless-ng is easy, just drop in the new docker image! See the [documentation on migrating](https://paperless-ngx.readthedocs.io/en/latest/setup.html#migrating-from-paperless-ng) for more details.
# Documentation
<!-- omit in toc -->
The documentation for Paperless-ng is available on [ReadTheDocs](https://paperless-ng.readthedocs.io/).
### Documentation
# Suggestions? Questions? Something not working?
The documentation for Paperless-ngx is available on [ReadTheDocs](https://paperless-ngx.readthedocs.io/).
Please open an issue and start a discussion about it!
# Contributing
## Feel like helping out?
If you feel like contributing to the project, please do! Bug fixes, enhancements, visual fixes etc. are always welcome. If you want to implement something big: Please start a discussion about that! The [documentation](https://paperless-ngx.readthedocs.io/en/latest/extending.html) has some basic information on how to get started.
There's still lots of things to be done, just have a look at that issue log. If you feel like contributing to the project, please do! Bug fixes and improvements to the front end (I just can't seem to get some of these CSS things right) are always welcome. The documentation has some basic information on how to get started.
## Community Support
If you want to implement something big: Please start a discussion about that in the issues! Maybe I've already had something similar in mind and we can make it happen together. However, keep in mind that the general roadmap is to make the existing features stable and get them tested. See the roadmap above.
People interested in continuing the work on paperless-ngx are encouraged to reach out here on github and in the [Matrix Room](https://matrix.to/#/#paperless:adnidor.de). If you would like to contribute to the project on an ongoing basis there are multiple [teams](https://github.com/orgs/paperless-ngx/people) (frontend, ci/cd, etc) that could use your help so please reach out!
## Translation
Paperless-ngx is available in many languages that are coordinated on Crowdin. If you want to help out by translating paperless-ngx into your language, please head over to https://crwd.in/paperless-ngx, and thank you! More details can be found in [CONTRIBUTING.md](https://github.com/paperless-ngx/paperless-ngx/blob/main/CONTRIBUTING.md#translating-paperless-ngx).
## Feature Requests
Feature requests can be submitted via [GitHub Discussions](https://github.com/paperless-ngx/paperless-ngx/discussions/categories/feature-requests), you can search for existing ideas, add your own and vote for the ones you care about.
## Bugs
For bugs please [open an issue](https://github.com/paperless-ngx/paperless-ngx/issues) or [start a discussion](https://github.com/paperless-ngx/paperless-ngx/discussions) if you have questions.
# Affiliated Projects
Paperless has been around a while now, and people are starting to build stuff on top of it. If you're one of those people, we can add your project to this list:
Paperless has been around a while now, and people are starting to build stuff on top of it. If you're one of those people, we can add your project to this list:
* [Paperless App](https://github.com/bauerj/paperless_app): An Android/iOS app for Paperless. Updated to work with paperless-ng.
* [Paperless Share](https://github.com/qcasey/paperless_share). Share any files from your Android application with paperless. Very simple, but works with all of the mobile scanning apps out there that allow you to share scanned documents.
- [Paperless App](https://github.com/bauerj/paperless_app): An Android/iOS app for Paperless-ngx. Also works with the original Paperless and Paperless-ng.
- [Paperless Share](https://github.com/qcasey/paperless_share). Share any files from your Android application with paperless. Very simple, but works with all of the mobile scanning apps out there that allow you to share scanned documents.
- [Scan to Paperless](https://github.com/sbrunner/scan-to-paperless): Scan and prepare (crop, deskew, OCR, ...) your documents for Paperless.
These projects also exist, but their status and compatibility with paperless-ng is unknown.
These projects also exist, but their status and compatibility with paperless-ngx is unknown.
* [Paperless Desktop](https://github.com/thomasbrueggemann/paperless-desktop): A desktop UI for your Paperless installation. Runs on Mac, Linux, and Windows.
* [ansible-role-paperless](https://github.com/ovv/ansible-role-paperless): An easy way to get Paperless running via Ansible.
* [paperless-cli](https://github.com/stgarf/paperless-cli): A golang command line binary to interact with a Paperless instance.
- [paperless-cli](https://github.com/stgarf/paperless-cli): A golang command line binary to interact with a Paperless instance.
This project also exists, but needs updates to be compatible with paperless-ngx.
- [Paperless Desktop](https://github.com/thomasbrueggemann/paperless-desktop): A desktop UI for your Paperless installation. Runs on Mac, Linux, and Windows.
Known issues on Mac: (Could not load reminders and documents)
# Important Note
Document scanners are typically used to scan sensitive documents. Things like your social insurance number, tax records, invoices, etc. Everything is stored in the clear without encryption by default (it needs to be searchable, so if someone has ideas on how to do that on encrypted data, I'm all ears). This means that Paperless should never be run on an untrusted host. Instead, I recommend that if you do want to use it, run it locally on a server in your own home.
Document scanners are typically used to scan sensitive documents. Things like your social insurance number, tax records, invoices, etc. Everything is stored in the clear without encryption. This means that Paperless should never be run on an untrusted host. Instead, I recommend that if you do want to use it, run it locally on a server in your own home.

43
build-docker-image.sh Executable file
View File

@@ -0,0 +1,43 @@
#!/usr/bin/env bash
# Helper script for building the Docker image locally.
# Parses and provides the nessecary versions of other images to Docker
# before passing in the rest of script args.
# First Argument: The Dockerfile to build
# Other Arguments: Additional arguments to docker build
# Example Usage:
# ./build-docker-image.sh Dockerfile -t paperless-ngx:my-awesome-feature
set -eux
if ! command -v jq; then
echo "jq required"
exit 1
elif [ ! -f "$1" ]; then
echo "$1 is not a file, please provide the Dockerfile"
exit 1
fi
# Parse what we can from Pipfile.lock
pikepdf_version=$(jq ".default.pikepdf.version" Pipfile.lock | sed 's/=//g' | sed 's/"//g')
psycopg2_version=$(jq ".default.psycopg2.version" Pipfile.lock | sed 's/=//g' | sed 's/"//g')
# Read this from the other config file
qpdf_version=$(jq ".qpdf.version" .build-config.json | sed 's/"//g')
jbig2enc_version=$(jq ".jbig2enc.version" .build-config.json | sed 's/"//g')
# Get the branch name (used for caching)
branch_name=$(git rev-parse --abbrev-ref HEAD)
# https://docs.docker.com/develop/develop-images/build_enhancements/
# Required to use cache-from
export DOCKER_BUILDKIT=1
docker build --file "$1" \
--progress=plain \
--cache-from ghcr.io/paperless-ngx/paperless-ngx/builder/cache/app:"${branch_name}" \
--cache-from ghcr.io/paperless-ngx/paperless-ngx/builder/cache/app:dev \
--build-arg JBIG2ENC_VERSION="${jbig2enc_version}" \
--build-arg QPDF_VERSION="${qpdf_version}" \
--build-arg PIKEPDF_VERSION="${pikepdf_version}" \
--build-arg PSYCOPG2_VERSION="${psycopg2_version}" "${@:2}" .

6
crowdin.yml Normal file
View File

@@ -0,0 +1,6 @@
commit_message: '[ci skip]'
files:
- source: /src/locale/en_US/LC_MESSAGES/django.po
translation: /src/locale/%locale_with_underscore%/LC_MESSAGES/django.po
- source: /src-ui/messages.xlf
translation: /src-ui/src/locale/messages.%locale_with_underscore%.xlf

View File

@@ -0,0 +1,14 @@
# This Dockerfile compiles the frontend
# Inputs: None
FROM node:16-bullseye-slim AS compile-frontend
COPY ./src /src/src
COPY ./src-ui /src/src-ui
WORKDIR /src/src-ui
RUN set -eux \
&& npm update npm -g \
&& npm ci --omit=optional
RUN set -eux \
&& ./node_modules/.bin/ng build --configuration production

View File

@@ -0,0 +1,35 @@
# This Dockerfile compiles the jbig2enc library
# Inputs:
# - JBIG2ENC_VERSION - the Git tag to checkout and build
FROM debian:bullseye-slim as main
LABEL org.opencontainers.image.description="A intermediate image with jbig2enc built"
ARG DEBIAN_FRONTEND=noninteractive
ARG JBIG2ENC_VERSION
ARG BUILD_PACKAGES="\
build-essential \
automake \
libtool \
libleptonica-dev \
zlib1g-dev \
git \
ca-certificates"
WORKDIR /usr/src/jbig2enc
RUN set -eux \
&& echo "Installing build tools" \
&& apt-get update --quiet \
&& apt-get install --yes --quiet --no-install-recommends ${BUILD_PACKAGES} \
&& echo "Building jbig2enc" \
&& git clone --quiet --branch $JBIG2ENC_VERSION https://github.com/agl/jbig2enc . \
&& ./autogen.sh \
&& ./configure \
&& make \
&& echo "Cleaning up image" \
&& apt-get -y purge ${BUILD_PACKAGES} \
&& apt-get -y autoremove --purge \
&& rm -rf /var/lib/apt/lists/*

View File

@@ -0,0 +1,88 @@
# This Dockerfile builds the pikepdf wheel
# Inputs:
# - REPO - Docker repository to pull qpdf from
# - QPDF_VERSION - The image qpdf version to copy .deb files from
# - PIKEPDF_VERSION - Version of pikepdf to build wheel for
# Default to pulling from the main repo registry when manually building
ARG REPO="paperless-ngx/paperless-ngx"
ARG QPDF_VERSION
FROM ghcr.io/${REPO}/builder/qpdf:${QPDF_VERSION} as qpdf-builder
# This does nothing, except provide a name for a copy below
FROM python:3.9-slim-bullseye as main
LABEL org.opencontainers.image.description="A intermediate image with pikepdf wheel built"
ARG DEBIAN_FRONTEND=noninteractive
ARG PIKEPDF_VERSION
ARG BUILD_PACKAGES="\
build-essential \
python3-dev \
python3-pip \
# qpdf requirement - https://github.com/qpdf/qpdf#crypto-providers
libgnutls28-dev \
# lxml requrements - https://lxml.de/installation.html
libxml2-dev \
libxslt1-dev \
# Pillow requirements - https://pillow.readthedocs.io/en/stable/installation.html#external-libraries
# JPEG functionality
libjpeg62-turbo-dev \
# conpressed PNG
zlib1g-dev \
# compressed TIFF
libtiff-dev \
# type related services
libfreetype-dev \
# color management
liblcms2-dev \
# WebP format
libwebp-dev \
# JPEG 2000
libopenjp2-7-dev \
# improved color quantization
libimagequant-dev \
# complex text layout support
libraqm-dev"
WORKDIR /usr/src
COPY --from=qpdf-builder /usr/src/qpdf/*.deb ./
# As this is an base image for a multi-stage final image
# the added size of the install is basically irrelevant
RUN set -eux \
&& echo "Installing build tools" \
&& apt-get update --quiet \
&& apt-get install --yes --quiet --no-install-recommends ${BUILD_PACKAGES} \
&& echo "Installing qpdf" \
&& dpkg --install libqpdf28_*.deb \
&& dpkg --install libqpdf-dev_*.deb \
&& echo "Installing Python tools" \
&& python3 -m pip install --no-cache-dir --upgrade \
pip \
wheel \
# https://pikepdf.readthedocs.io/en/latest/installation.html#requirements
pybind11 \
&& echo "Building pikepdf wheel ${PIKEPDF_VERSION}" \
&& mkdir wheels \
&& python3 -m pip wheel \
# Build the package at the required version
pikepdf==${PIKEPDF_VERSION} \
# Output the *.whl into this directory
--wheel-dir wheels \
# Do not use a binary packge for the package being built
--no-binary=pikepdf \
# Do use binary packages for dependencies
--prefer-binary \
# Don't cache build files
--no-cache-dir \
&& ls -ahl wheels \
&& echo "Cleaning up image" \
&& apt-get -y purge ${BUILD_PACKAGES} \
&& apt-get -y autoremove --purge \
&& rm -rf /var/lib/apt/lists/*

View File

@@ -0,0 +1,48 @@
# This Dockerfile builds the psycopg2 wheel
# Inputs:
# - PSYCOPG2_VERSION - Version to build
FROM python:3.9-slim-bullseye as main
LABEL org.opencontainers.image.description="A intermediate image with psycopg2 wheel built"
ARG PSYCOPG2_VERSION
ARG DEBIAN_FRONTEND=noninteractive
ARG BUILD_PACKAGES="\
build-essential \
python3-dev \
python3-pip \
# https://www.psycopg.org/docs/install.html#prerequisites
libpq-dev"
WORKDIR /usr/src
# As this is an base image for a multi-stage final image
# the added size of the install is basically irrelevant
RUN set -eux \
&& echo "Installing build tools" \
&& apt-get update --quiet \
&& apt-get install --yes --quiet --no-install-recommends ${BUILD_PACKAGES} \
&& echo "Installing Python tools" \
&& python3 -m pip install --no-cache-dir --upgrade pip wheel \
&& echo "Building psycopg2 wheel ${PSYCOPG2_VERSION}" \
&& cd /usr/src \
&& mkdir wheels \
&& python3 -m pip wheel \
# Build the package at the required version
psycopg2==${PSYCOPG2_VERSION} \
# Output the *.whl into this directory
--wheel-dir wheels \
# Do not use a binary packge for the package being built
--no-binary=psycopg2 \
# Do use binary packages for dependencies
--prefer-binary \
# Don't cache build files
--no-cache-dir \
&& ls -ahl wheels/ \
&& echo "Cleaning up image" \
&& apt-get -y purge ${BUILD_PACKAGES} \
&& apt-get -y autoremove --purge \
&& rm -rf /var/lib/apt/lists/*

View File

@@ -0,0 +1,52 @@
# This Dockerfile compiles the jbig2enc library
# Inputs:
# - QPDF_VERSION - the version of qpdf to build a .deb.
# Must be preset as a deb-src
FROM debian:bullseye-slim as main
LABEL org.opencontainers.image.description="A intermediate image with qpdf built"
ARG DEBIAN_FRONTEND=noninteractive
# This must match to pikepdf's minimum at least
ARG QPDF_VERSION
ARG BUILD_PACKAGES="\
build-essential \
debhelper \
debian-keyring \
devscripts \
equivs \
libtool \
# https://qpdf.readthedocs.io/en/stable/installation.html#system-requirements
libjpeg62-turbo-dev \
libgnutls28-dev \
packaging-dev \
zlib1g-dev"
WORKDIR /usr/src
# As this is an base image for a multi-stage final image
# the added size of the install is basically irrelevant
RUN set -eux \
&& echo "Installing build tools" \
&& apt-get update --quiet \
&& apt-get install --yes --quiet --no-install-recommends $BUILD_PACKAGES \
&& echo "Building qpdf" \
&& echo "deb-src http://deb.debian.org/debian/ bookworm main" > /etc/apt/sources.list.d/bookworm-src.list \
&& apt-get update \
&& mkdir qpdf \
&& cd qpdf \
&& apt-get source --yes --quiet qpdf=${QPDF_VERSION}-1/bookworm \
&& cd qpdf-$QPDF_VERSION \
# We don't need to build the tests (also don't run them)
&& rm -rf libtests \
&& DEBEMAIL=hello@paperless-ngx.com debchange --bpo \
&& export DEB_BUILD_OPTIONS="terse nocheck nodoc parallel=2" \
&& dpkg-buildpackage --build=binary --unsigned-source --unsigned-changes --post-clean \
&& ls -ahl ../*.deb \
&& echo "Cleaning up image" \
&& apt-get -y purge ${BUILD_PACKAGES} \
&& apt-get -y autoremove --purge \
&& rm -rf /var/lib/apt/lists/*

1
docker/compose/.env Normal file
View File

@@ -0,0 +1 @@
COMPOSE_PROJECT_NAME=paperless

View File

@@ -7,7 +7,7 @@
# Additional languages to install for text recognition, separated by a
# whitespace. Note that this is
# different from PAPERLESS_OCR_LANGUAGE (default=eng), which defines the
# default language used when guessing the language from the OCR output.
# language used for OCR.
# The container installs English, German, Italian, Spanish and French by
# default.
# See https://packages.debian.org/search?keywords=tesseract-ocr-&searchon=names&suite=buster
@@ -22,6 +22,10 @@
# Docker setup does not use the configuration file.
# A few commonly adjusted settings are provided below.
# This is required if you will be exposing Paperless-ngx on a public domain
# (if doing so please consider security measures such as reverse proxy)
#PAPERLESS_URL=https://paperless.example.com
# Adjust this key if you plan to make paperless available publicly. It should
# be a very long sequence of random characters. You don't need to remember it.
#PAPERLESS_SECRET_KEY=change-me
@@ -32,3 +36,7 @@
# The default language to use for OCR. Set this to the language most of your
# documents are written in.
#PAPERLESS_OCR_LANGUAGE=eng
# Set if accessing paperless via a domain subpath e.g. https://domain.com/PATHPREFIX and using a reverse-proxy like traefik or nginx
#PAPERLESS_FORCE_SCRIPT_NAME=/PATHPREFIX
#PAPERLESS_STATIC_URL=/PATHPREFIX/static/ # trailing slash required

View File

@@ -0,0 +1,101 @@
# docker-compose file for running paperless from the Docker Hub.
# This file contains everything paperless needs to run.
# Paperless supports amd64, arm and arm64 hardware.
#
# All compose files of paperless configure paperless in the following way:
#
# - Paperless is (re)started on system boot, if it was running before shutdown.
# - Docker volumes for storing data are managed by Docker.
# - Folders for importing and exporting files are created in the same directory
# as this file and mounted to the correct folders inside the container.
# - Paperless listens on port 8000.
#
# In addition to that, this docker-compose file adds the following optional
# configurations:
#
# - Instead of SQLite (default), MariaDB is used as the database server.
# - Apache Tika and Gotenberg servers are started with paperless and paperless
# is configured to use these services. These provide support for consuming
# Office documents (Word, Excel, Power Point and their LibreOffice counter-
# parts.
#
# To install and update paperless with this file, do the following:
#
# - Copy this file as 'docker-compose.yml' and the files 'docker-compose.env'
# and '.env' into a folder.
# - Run 'docker-compose pull'.
# - Run 'docker-compose run --rm webserver createsuperuser' to create a user.
# - Run 'docker-compose up -d'.
#
# For more extensive installation and update instructions, refer to the
# documentation.
version: "3.4"
services:
broker:
image: docker.io/library/redis:7
restart: unless-stopped
volumes:
- redisdata:/data
db:
image: docker.io/library/mariadb:10
restart: unless-stopped
volumes:
- dbdata:/var/lib/mysql
environment:
MARIADB_HOST: paperless
MARIADB_DATABASE: paperless
MARIADB_USER: paperless
MARIADB_PASSWORD: paperless
MARIADB_ROOT_PASSWORD: paperless
ports:
- "3306:3306"
webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:latest
restart: unless-stopped
depends_on:
- db
- broker
- gotenberg
- tika
ports:
- 8000:8000
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000"]
interval: 30s
timeout: 10s
retries: 5
volumes:
- data:/usr/src/paperless/data
- media:/usr/src/paperless/media
- ./export:/usr/src/paperless/export
- ./consume:/usr/src/paperless/consume
env_file: docker-compose.env
environment:
PAPERLESS_REDIS: redis://broker:6379
PAPERLESS_DBENGINE: mariadb
PAPERLESS_DBHOST: db
PAPERLESS_DBUSER: paperless
PAPERLESS_DBPASSWORD: paperless
PAPERLESS_DBPORT: 3306
PAPERLESS_TIKA_ENABLED: 1
PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://gotenberg:3000
PAPERLESS_TIKA_ENDPOINT: http://tika:9998
gotenberg:
image: docker.io/gotenberg/gotenberg:7.4
restart: unless-stopped
environment:
CHROMIUM_DISABLE_ROUTES: 1
tika:
image: ghcr.io/paperless-ngx/tika:latest
restart: unless-stopped
volumes:
data:
media:
dbdata:
redisdata:

View File

@@ -0,0 +1,83 @@
# docker-compose file for running paperless from the Docker Hub.
# This file contains everything paperless needs to run.
# Paperless supports amd64, arm and arm64 hardware.
#
# All compose files of paperless configure paperless in the following way:
#
# - Paperless is (re)started on system boot, if it was running before shutdown.
# - Docker volumes for storing data are managed by Docker.
# - Folders for importing and exporting files are created in the same directory
# as this file and mounted to the correct folders inside the container.
# - Paperless listens on port 8000.
#
# In addition to that, this docker-compose file adds the following optional
# configurations:
#
# - Instead of SQLite (default), MariaDB is used as the database server.
#
# To install and update paperless with this file, do the following:
#
# - Copy this file as 'docker-compose.yml' and the files 'docker-compose.env'
# and '.env' into a folder.
# - Run 'docker-compose pull'.
# - Run 'docker-compose run --rm webserver createsuperuser' to create a user.
# - Run 'docker-compose up -d'.
#
# For more extensive installation and update instructions, refer to the
# documentation.
version: "3.4"
services:
broker:
image: docker.io/library/redis:7
restart: unless-stopped
volumes:
- redisdata:/data
db:
image: docker.io/library/mariadb:10
restart: unless-stopped
volumes:
- dbdata:/var/lib/mysql
environment:
MARIADB_HOST: paperless
MARIADB_DATABASE: paperless
MARIADB_USER: paperless
MARIADB_PASSWORD: paperless
MARIADB_ROOT_PASSWORD: paperless
ports:
- "3306:3306"
webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:latest
restart: unless-stopped
depends_on:
- db
- broker
ports:
- 8000:8000
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000"]
interval: 30s
timeout: 10s
retries: 5
volumes:
- data:/usr/src/paperless/data
- media:/usr/src/paperless/media
- ./export:/usr/src/paperless/export
- ./consume:/usr/src/paperless/consume
env_file: docker-compose.env
environment:
PAPERLESS_REDIS: redis://broker:6379
PAPERLESS_DBENGINE: mariadb
PAPERLESS_DBHOST: db
PAPERLESS_DBUSER: paperless
PAPERLESS_DBPASSWORD: paperless
PAPERLESS_DBPORT: 3306
volumes:
data:
media:
dbdata:
redisdata:

View File

@@ -0,0 +1,97 @@
# docker-compose file for running paperless from the Docker Hub.
# This file contains everything paperless needs to run.
# Paperless supports amd64, arm and arm64 hardware.
#
# All compose files of paperless configure paperless in the following way:
#
# - Paperless is (re)started on system boot, if it was running before shutdown.
# - Docker volumes for storing data are managed by Docker.
# - Folders for importing and exporting files are created in the same directory
# as this file and mounted to the correct folders inside the container.
# - Paperless listens on port 8010.
#
# In addition to that, this docker-compose file adds the following optional
# configurations:
#
# - Instead of SQLite (default), PostgreSQL is used as the database server.
#
# To install and update paperless with this file, do the following:
#
# - Open portainer Stacks list and click 'Add stack'
# - Paste the contents of this file and assign a name, e.g. 'Paperless'
# - Click 'Deploy the stack' and wait for it to be deployed
# - Open the list of containers, select paperless_webserver_1
# - Click 'Console' and then 'Connect' to open the command line inside the container
# - Run 'python3 manage.py createsuperuser' to create a user
# - Exit the console
#
# For more extensive installation and update instructions, refer to the
# documentation.
version: "3.4"
services:
broker:
image: docker.io/library/redis:7
restart: unless-stopped
volumes:
- redisdata:/data
db:
image: docker.io/library/postgres:13
restart: unless-stopped
volumes:
- pgdata:/var/lib/postgresql/data
environment:
POSTGRES_DB: paperless
POSTGRES_USER: paperless
POSTGRES_PASSWORD: paperless
webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:latest
restart: unless-stopped
depends_on:
- db
- broker
ports:
- 8010:8000
healthcheck:
test: ["CMD", "curl", "-fs", "-S", "--max-time", "2", "http://localhost:8000"]
interval: 30s
timeout: 10s
retries: 5
volumes:
- data:/usr/src/paperless/data
- media:/usr/src/paperless/media
- ./export:/usr/src/paperless/export
- ./consume:/usr/src/paperless/consume
environment:
PAPERLESS_REDIS: redis://broker:6379
PAPERLESS_DBHOST: db
# The UID and GID of the user used to run paperless in the container. Set this
# to your UID and GID on the host so that you have write access to the
# consumption directory.
USERMAP_UID: 1000
USERMAP_GID: 100
# Additional languages to install for text recognition, separated by a
# whitespace. Note that this is
# different from PAPERLESS_OCR_LANGUAGE (default=eng), which defines the
# language used for OCR.
# The container installs English, German, Italian, Spanish and French by
# default.
# See https://packages.debian.org/search?keywords=tesseract-ocr-&searchon=names&suite=buster
# for available languages.
#PAPERLESS_OCR_LANGUAGES: tur ces
# Adjust this key if you plan to make paperless available publicly. It should
# be a very long sequence of random characters. You don't need to remember it.
#PAPERLESS_SECRET_KEY: change-me
# Use this variable to set a timezone for the Paperless Docker containers. If not specified, defaults to UTC.
#PAPERLESS_TIME_ZONE: America/Los_Angeles
# The default language to use for OCR. Set this to the language most of your
# documents are written in.
#PAPERLESS_OCR_LANGUAGE: eng
volumes:
data:
media:
pgdata:
redisdata:

View File

@@ -0,0 +1,94 @@
# docker-compose file for running paperless from the docker container registry.
# This file contains everything paperless needs to run.
# Paperless supports amd64, arm and arm64 hardware.
#
# All compose files of paperless configure paperless in the following way:
#
# - Paperless is (re)started on system boot, if it was running before shutdown.
# - Docker volumes for storing data are managed by Docker.
# - Folders for importing and exporting files are created in the same directory
# as this file and mounted to the correct folders inside the container.
# - Paperless listens on port 8000.
#
# In addition to that, this docker-compose file adds the following optional
# configurations:
#
# - Instead of SQLite (default), PostgreSQL is used as the database server.
# - Apache Tika and Gotenberg servers are started with paperless and paperless
# is configured to use these services. These provide support for consuming
# Office documents (Word, Excel, Power Point and their LibreOffice counter-
# parts.
#
# To install and update paperless with this file, do the following:
#
# - Copy this file as 'docker-compose.yml' and the files 'docker-compose.env'
# and '.env' into a folder.
# - Run 'docker-compose pull'.
# - Run 'docker-compose run --rm webserver createsuperuser' to create a user.
# - Run 'docker-compose up -d'.
#
# For more extensive installation and update instructions, refer to the
# documentation.
version: "3.4"
services:
broker:
image: docker.io/library/redis:7
restart: unless-stopped
volumes:
- redisdata:/data
db:
image: docker.io/library/postgres:13
restart: unless-stopped
volumes:
- pgdata:/var/lib/postgresql/data
environment:
POSTGRES_DB: paperless
POSTGRES_USER: paperless
POSTGRES_PASSWORD: paperless
webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:latest
restart: unless-stopped
depends_on:
- db
- broker
- gotenberg
- tika
ports:
- 8000:8000
healthcheck:
test: ["CMD", "curl", "-fs", "-S", "--max-time", "2", "http://localhost:8000"]
interval: 30s
timeout: 10s
retries: 5
volumes:
- data:/usr/src/paperless/data
- media:/usr/src/paperless/media
- ./export:/usr/src/paperless/export
- ./consume:/usr/src/paperless/consume
env_file: docker-compose.env
environment:
PAPERLESS_REDIS: redis://broker:6379
PAPERLESS_DBHOST: db
PAPERLESS_TIKA_ENABLED: 1
PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://gotenberg:3000
PAPERLESS_TIKA_ENDPOINT: http://tika:9998
gotenberg:
image: docker.io/gotenberg/gotenberg:7.4
restart: unless-stopped
command:
- "gotenberg"
- "--chromium-disable-routes=true"
tika:
image: ghcr.io/paperless-ngx/tika:latest
restart: unless-stopped
volumes:
data:
media:
pgdata:
redisdata:

View File

@@ -0,0 +1,75 @@
# docker-compose file for running paperless from the Docker Hub.
# This file contains everything paperless needs to run.
# Paperless supports amd64, arm and arm64 hardware.
#
# All compose files of paperless configure paperless in the following way:
#
# - Paperless is (re)started on system boot, if it was running before shutdown.
# - Docker volumes for storing data are managed by Docker.
# - Folders for importing and exporting files are created in the same directory
# as this file and mounted to the correct folders inside the container.
# - Paperless listens on port 8000.
#
# In addition to that, this docker-compose file adds the following optional
# configurations:
#
# - Instead of SQLite (default), PostgreSQL is used as the database server.
#
# To install and update paperless with this file, do the following:
#
# - Copy this file as 'docker-compose.yml' and the files 'docker-compose.env'
# and '.env' into a folder.
# - Run 'docker-compose pull'.
# - Run 'docker-compose run --rm webserver createsuperuser' to create a user.
# - Run 'docker-compose up -d'.
#
# For more extensive installation and update instructions, refer to the
# documentation.
version: "3.4"
services:
broker:
image: docker.io/library/redis:7
restart: unless-stopped
volumes:
- redisdata:/data
db:
image: docker.io/library/postgres:13
restart: unless-stopped
volumes:
- pgdata:/var/lib/postgresql/data
environment:
POSTGRES_DB: paperless
POSTGRES_USER: paperless
POSTGRES_PASSWORD: paperless
webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:latest
restart: unless-stopped
depends_on:
- db
- broker
ports:
- 8000:8000
healthcheck:
test: ["CMD", "curl", "-fs", "-S", "--max-time", "2", "http://localhost:8000"]
interval: 30s
timeout: 10s
retries: 5
volumes:
- data:/usr/src/paperless/data
- media:/usr/src/paperless/media
- ./export:/usr/src/paperless/export
- ./consume:/usr/src/paperless/consume
env_file: docker-compose.env
environment:
PAPERLESS_REDIS: redis://broker:6379
PAPERLESS_DBHOST: db
volumes:
data:
media:
pgdata:
redisdata:

View File

@@ -0,0 +1,81 @@
# docker-compose file for running paperless from the docker container registry.
# This file contains everything paperless needs to run.
# Paperless supports amd64, arm and arm64 hardware.
# All compose files of paperless configure paperless in the following way:
#
# - Paperless is (re)started on system boot, if it was running before shutdown.
# - Docker volumes for storing data are managed by Docker.
# - Folders for importing and exporting files are created in the same directory
# as this file and mounted to the correct folders inside the container.
# - Paperless listens on port 8000.
#
# SQLite is used as the database. The SQLite file is stored in the data volume.
#
# In addition to that, this docker-compose file adds the following optional
# configurations:
#
# - Apache Tika and Gotenberg servers are started with paperless and paperless
# is configured to use these services. These provide support for consuming
# Office documents (Word, Excel, Power Point and their LibreOffice counter-
# parts.
#
# To install and update paperless with this file, do the following:
#
# - Copy this file as 'docker-compose.yml' and the files 'docker-compose.env'
# and '.env' into a folder.
# - Run 'docker-compose pull'.
# - Run 'docker-compose run --rm webserver createsuperuser' to create a user.
# - Run 'docker-compose up -d'.
#
# For more extensive installation and update instructions, refer to the
# documentation.
version: "3.4"
services:
broker:
image: docker.io/library/redis:7
restart: unless-stopped
volumes:
- redisdata:/data
webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:latest
restart: unless-stopped
depends_on:
- broker
- gotenberg
- tika
ports:
- 8000:8000
healthcheck:
test: ["CMD", "curl", "-fs", "-S", "--max-time", "2", "http://localhost:8000"]
interval: 30s
timeout: 10s
retries: 5
volumes:
- data:/usr/src/paperless/data
- media:/usr/src/paperless/media
- ./export:/usr/src/paperless/export
- ./consume:/usr/src/paperless/consume
env_file: docker-compose.env
environment:
PAPERLESS_REDIS: redis://broker:6379
PAPERLESS_TIKA_ENABLED: 1
PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://gotenberg:3000
PAPERLESS_TIKA_ENDPOINT: http://tika:9998
gotenberg:
image: docker.io/gotenberg/gotenberg:7.4
restart: unless-stopped
command:
- "gotenberg"
- "--chromium-disable-routes=true"
tika:
image: ghcr.io/paperless-ngx/tika:latest
restart: unless-stopped
volumes:
data:
media:
redisdata:

View File

@@ -0,0 +1,59 @@
# docker-compose file for running paperless from the Docker Hub.
# This file contains everything paperless needs to run.
# Paperless supports amd64, arm and arm64 hardware.
#
# All compose files of paperless configure paperless in the following way:
#
# - Paperless is (re)started on system boot, if it was running before shutdown.
# - Docker volumes for storing data are managed by Docker.
# - Folders for importing and exporting files are created in the same directory
# as this file and mounted to the correct folders inside the container.
# - Paperless listens on port 8000.
#
# SQLite is used as the database. The SQLite file is stored in the data volume.
#
# To install and update paperless with this file, do the following:
#
# - Copy this file as 'docker-compose.yml' and the files 'docker-compose.env'
# and '.env' into a folder.
# - Run 'docker-compose pull'.
# - Run 'docker-compose run --rm webserver createsuperuser' to create a user.
# - Run 'docker-compose up -d'.
#
# For more extensive installation and update instructions, refer to the
# documentation.
version: "3.4"
services:
broker:
image: docker.io/library/redis:7
restart: unless-stopped
volumes:
- redisdata:/data
webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:latest
restart: unless-stopped
depends_on:
- broker
ports:
- 8000:8000
healthcheck:
test: ["CMD", "curl", "-fs", "-S", "--max-time", "2", "http://localhost:8000"]
interval: 30s
timeout: 10s
retries: 5
volumes:
- data:/usr/src/paperless/data
- media:/usr/src/paperless/media
- ./export:/usr/src/paperless/export
- ./consume:/usr/src/paperless/consume
env_file: docker-compose.env
environment:
PAPERLESS_REDIS: redis://broker:6379
volumes:
data:
media:
redisdata:

205
docker/docker-entrypoint.sh Normal file → Executable file
View File

@@ -1,90 +1,107 @@
#!/bin/bash
#!/usr/bin/env bash
set -e
# Adapted from:
# https://github.com/docker-library/postgres/blob/master/docker-entrypoint.sh
# usage: file_env VAR
# ie: file_env 'XYZ_DB_PASSWORD' will allow for "$XYZ_DB_PASSWORD_FILE" to
# fill in the value of "$XYZ_DB_PASSWORD" from a file, especially for Docker's
# secrets feature
file_env() {
local var="$1"
local fileVar="${var}_FILE"
# Basic validation
if [ "${!var:-}" ] && [ "${!fileVar:-}" ]; then
echo >&2 "error: both $var and $fileVar are set (but are exclusive)"
exit 1
fi
# Only export var if the _FILE exists
if [ "${!fileVar:-}" ]; then
# And the file exists
if [[ -f ${!fileVar} ]]; then
echo "Setting ${var} from file"
val="$(< "${!fileVar}")"
export "$var"="$val"
else
echo "File ${!fileVar} doesn't exist"
exit 1
fi
fi
}
# Source: https://github.com/sameersbn/docker-gitlab/
map_uidgid() {
USERMAP_ORIG_UID=$(id -u paperless)
USERMAP_ORIG_GID=$(id -g paperless)
USERMAP_NEW_UID=${USERMAP_UID:-$USERMAP_ORIG_UID}
USERMAP_NEW_GID=${USERMAP_GID:-${USERMAP_ORIG_GID:-$USERMAP_NEW_UID}}
if [[ ${USERMAP_NEW_UID} != "${USERMAP_ORIG_UID}" || ${USERMAP_NEW_GID} != "${USERMAP_ORIG_GID}" ]]; then
echo "Mapping UID and GID for paperless:paperless to $USERMAP_NEW_UID:$USERMAP_NEW_GID"
usermod -u "${USERMAP_NEW_UID}" paperless
groupmod -o -g "${USERMAP_NEW_GID}" paperless
fi
USERMAP_ORIG_UID=$(id -u paperless)
USERMAP_ORIG_GID=$(id -g paperless)
USERMAP_NEW_UID=${USERMAP_UID:-$USERMAP_ORIG_UID}
USERMAP_NEW_GID=${USERMAP_GID:-${USERMAP_ORIG_GID:-$USERMAP_NEW_UID}}
if [[ ${USERMAP_NEW_UID} != "${USERMAP_ORIG_UID}" || ${USERMAP_NEW_GID} != "${USERMAP_ORIG_GID}" ]]; then
echo "Mapping UID and GID for paperless:paperless to $USERMAP_NEW_UID:$USERMAP_NEW_GID"
usermod -o -u "${USERMAP_NEW_UID}" paperless
groupmod -o -g "${USERMAP_NEW_GID}" paperless
fi
}
wait_for_postgres() {
attempt_num=1
max_attempts=5
echo "Waiting for PostgreSQL to start..."
host="${PAPERLESS_DBHOST}"
port="${PAPERLESS_DBPORT}"
if [[ -z $port ]] ;
then
port="5432"
fi
while !</dev/tcp/$host/$port ;
do
if [ $attempt_num -eq $max_attempts ]
then
echo "Unable to connect to database."
exit 1
else
echo "Attempt $attempt_num failed! Trying again in 5 seconds..."
fi
attempt_num=$(expr "$attempt_num" + 1)
sleep 5
done
}
migrations() {
if [[ -n "${PAPERLESS_DBHOST}" ]]
then
wait_for_postgres
fi
(
# flock is in place to prevent multiple containers from doing migrations
# simultaneously. This also ensures that the db is ready when the command
# of the current container starts.
flock 200
sudo -HEu paperless python3 manage.py migrate
) 200>/usr/src/paperless/data/migration_lock
map_folders() {
# Export these so they can be used in docker-prepare.sh
export DATA_DIR="${PAPERLESS_DATA_DIR:-/usr/src/paperless/data}"
export MEDIA_ROOT_DIR="${PAPERLESS_MEDIA_ROOT:-/usr/src/paperless/media}"
}
initialize() {
# Setup environment from secrets before anything else
for env_var in \
PAPERLESS_DBUSER \
PAPERLESS_DBPASS \
PAPERLESS_SECRET_KEY \
PAPERLESS_AUTO_LOGIN_USERNAME \
PAPERLESS_ADMIN_USER \
PAPERLESS_ADMIN_MAIL \
PAPERLESS_ADMIN_PASSWORD \
PAPERLESS_REDIS; do
# Check for a version of this var with _FILE appended
# and convert the contents to the env var value
file_env ${env_var}
done
# Change the user and group IDs if needed
map_uidgid
for dir in export data data/index media media/documents media/documents/originals media/documents/thumbnails; do
if [[ ! -d "../$dir" ]]
then
echo "creating directory ../$dir"
mkdir ../$dir
# Check for overrides of certain folders
map_folders
local export_dir="/usr/src/paperless/export"
for dir in "${export_dir}" "${DATA_DIR}" "${DATA_DIR}/index" "${MEDIA_ROOT_DIR}" "${MEDIA_ROOT_DIR}/documents" "${MEDIA_ROOT_DIR}/documents/originals" "${MEDIA_ROOT_DIR}/documents/thumbnails"; do
if [[ ! -d "${dir}" ]]; then
echo "Creating directory ${dir}"
mkdir "${dir}"
fi
done
chown -R paperless:paperless ../
local tmp_dir="/tmp/paperless"
echo "Creating directory ${tmp_dir}"
mkdir -p "${tmp_dir}"
migrations
set +e
echo "Adjusting permissions of paperless files. This may take a while."
chown -R paperless:paperless ${tmp_dir}
for dir in "${export_dir}" "${DATA_DIR}" "${MEDIA_ROOT_DIR}"; do
find "${dir}" -not \( -user paperless -and -group paperless \) -exec chown paperless:paperless {} +
done
set -e
"${gosu_cmd[@]}" /sbin/docker-prepare.sh
}
install_languages() {
echo "Installing languages..."
local langs="$1"
read -ra langs <<<"$langs"
@@ -95,40 +112,48 @@ install_languages() {
apt-get update
for lang in "${langs[@]}"; do
pkg="tesseract-ocr-$lang"
# English is installed by default
#if [[ "$lang" == "eng" ]]; then
# continue
#fi
pkg="tesseract-ocr-$lang"
# English is installed by default
#if [[ "$lang" == "eng" ]]; then
# continue
#fi
if dpkg -s $pkg &> /dev/null; then
echo "package $pkg already installed!"
continue
fi
if dpkg -s "$pkg" &>/dev/null; then
echo "Package $pkg already installed!"
continue
fi
if ! apt-cache show $pkg &> /dev/null; then
echo "package $pkg not found! :("
continue
fi
if ! apt-cache show "$pkg" &>/dev/null; then
echo "Package $pkg not found! :("
continue
fi
echo "Installing package $pkg..."
if ! apt-get -y install "$pkg" &> /dev/null; then
echo "Could not install $pkg"
exit 1
fi
done
echo "Installing package $pkg..."
if ! apt-get -y install "$pkg" &>/dev/null; then
echo "Could not install $pkg"
exit 1
fi
done
}
echo "Paperless-ngx docker container starting..."
gosu_cmd=(gosu paperless)
if [ "$(id -u)" == "$(id -u paperless)" ]; then
gosu_cmd=()
fi
# Install additional languages if specified
if [[ ! -z "$PAPERLESS_OCR_LANGUAGES" ]]; then
install_languages "$PAPERLESS_OCR_LANGUAGES"
if [[ -n "$PAPERLESS_OCR_LANGUAGES" ]]; then
install_languages "$PAPERLESS_OCR_LANGUAGES"
fi
initialize
if [[ "$1" != "/"* ]]; then
exec sudo -HEu paperless python3 manage.py "$@"
echo Executing management command "$@"
exec "${gosu_cmd[@]}" python3 manage.py "$@"
else
echo Executing "$@"
exec "$@"
fi

109
docker/docker-prepare.sh Executable file
View File

@@ -0,0 +1,109 @@
#!/usr/bin/env bash
set -e
wait_for_postgres() {
local attempt_num=1
local max_attempts=5
echo "Waiting for PostgreSQL to start..."
local host="${PAPERLESS_DBHOST:-localhost}"
local port="${PAPERLESS_DBPORT:-5432}"
# Disable warning, host and port can't have spaces
# shellcheck disable=SC2086
while [ ! "$(pg_isready -h ${host} -p ${port})" ]; do
if [ $attempt_num -eq $max_attempts ]; then
echo "Unable to connect to database."
exit 1
else
echo "Attempt $attempt_num failed! Trying again in 5 seconds..."
fi
attempt_num=$(("$attempt_num" + 1))
sleep 5
done
}
wait_for_mariadb() {
echo "Waiting for MariaDB to start..."
host="${PAPERLESS_DBHOST:=localhost}"
port="${PAPERLESS_DBPORT:=3306}"
attempt_num=1
max_attempts=5
while ! true > /dev/tcp/$host/$port; do
if [ $attempt_num -eq $max_attempts ]; then
echo "Unable to connect to database."
exit 1
else
echo "Attempt $attempt_num failed! Trying again in 5 seconds..."
fi
attempt_num=$(("$attempt_num" + 1))
sleep 5
done
}
wait_for_redis() {
# We use a Python script to send the Redis ping
# instead of installing redis-tools just for 1 thing
if ! python3 /sbin/wait-for-redis.py; then
exit 1
fi
}
migrations() {
(
# flock is in place to prevent multiple containers from doing migrations
# simultaneously. This also ensures that the db is ready when the command
# of the current container starts.
flock 200
echo "Apply database migrations..."
python3 manage.py migrate
) 200>"${DATA_DIR}/migration_lock"
}
search_index() {
local index_version=1
local index_version_file=${DATA_DIR}/.index_version
if [[ (! -f "${index_version_file}") || $(<"${index_version_file}") != "$index_version" ]]; then
echo "Search index out of date. Updating..."
python3 manage.py document_index reindex --no-progress-bar
echo ${index_version} | tee "${index_version_file}" >/dev/null
fi
}
superuser() {
if [[ -n "${PAPERLESS_ADMIN_USER}" ]]; then
python3 manage.py manage_superuser
fi
}
do_work() {
if [[ "${PAPERLESS_DBENGINE}" == "mariadb" ]]; then
wait_for_mariadb
elif [[ -n "${PAPERLESS_DBHOST}" ]]; then
wait_for_postgres
fi
wait_for_redis
migrations
search_index
superuser
}
do_work

View File

@@ -1,44 +0,0 @@
version: "3.4"
services:
broker:
image: redis:6.0
restart: always
db:
image: postgres:13
restart: always
volumes:
- pgdata:/var/lib/postgresql/data
environment:
POSTGRES_DB: paperless
POSTGRES_USER: paperless
POSTGRES_PASSWORD: paperless
webserver:
image: jonaswinkler/paperless-ng:0.9.9
restart: always
depends_on:
- db
- broker
ports:
- 8000:8000
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000"]
interval: 30s
timeout: 10s
retries: 5
volumes:
- data:/usr/src/paperless/data
- media:/usr/src/paperless/media
- ./export:/usr/src/paperless/export
- ./consume:/usr/src/paperless/consume
env_file: docker-compose.env
environment:
PAPERLESS_REDIS: redis://broker:6379
PAPERLESS_DBHOST: db
volumes:
data:
media:
pgdata:

View File

@@ -1,31 +0,0 @@
version: "3.4"
services:
broker:
image: redis:6.0
restart: always
webserver:
image: jonaswinkler/paperless-ng:0.9.9
restart: always
depends_on:
- broker
ports:
- 8000:8000
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000"]
interval: 30s
timeout: 10s
retries: 5
volumes:
- data:/usr/src/paperless/data
- media:/usr/src/paperless/media
- ./export:/usr/src/paperless/export
- ./consume:/usr/src/paperless/consume
env_file: docker-compose.env
environment:
PAPERLESS_REDIS: redis://broker:6379
volumes:
data:
media:

View File

@@ -0,0 +1,21 @@
#!/usr/bin/env bash
set -eu
for command in decrypt_documents \
document_archiver \
document_exporter \
document_importer \
mail_fetcher \
document_create_classifier \
document_index \
document_renamer \
document_retagger \
document_thumbnails \
document_sanity_checker \
manage_superuser;
do
echo "installing $command..."
sed "s/management_command/$command/g" management_script.sh > /usr/local/bin/$command
chmod +x /usr/local/bin/$command
done

View File

@@ -1,67 +0,0 @@
FROM python:3.7-slim
WORKDIR /usr/src/paperless/
COPY requirements.txt ./
#Dependencies
RUN apt-get update \
&& apt-get -y --no-install-recommends install \
build-essential \
curl \
ghostscript \
gnupg \
icc-profiles-free \
imagemagick \
libatlas-base-dev \
liblept5 \
libmagic-dev \
libpoppler-cpp-dev \
libpq-dev \
libqpdf-dev \
libxml2 \
optipng \
pngquant \
qpdf \
sudo \
tesseract-ocr \
tesseract-ocr-eng \
tesseract-ocr-deu \
tesseract-ocr-fra \
tesseract-ocr-ita \
tesseract-ocr-spa \
tzdata \
unpaper \
zlib1g \
&& pip3 install --upgrade supervisor setuptools \
&& pip install --no-cache-dir -r requirements.txt \
&& apt-get -y purge build-essential libqpdf-dev \
&& apt-get -y autoremove --purge \
&& rm -rf /var/lib/apt/lists/* \
&& mkdir /var/log/supervisord /var/run/supervisord
# copy scripts
# this fixes issues with imagemagick and PDF
COPY docker/imagemagick-policy.xml /etc/ImageMagick-6/policy.xml
COPY docker/gunicorn.conf.py ./
COPY docker/supervisord.conf /etc/supervisord.conf
COPY docker/docker-entrypoint.sh /sbin/docker-entrypoint.sh
# copy app
COPY src/ ./src/
# add users, setup scripts
RUN addgroup --gid 1000 paperless \
&& useradd --uid 1000 --gid paperless --home-dir /usr/src/paperless paperless \
&& chown -R paperless:paperless . \
&& chmod 755 /sbin/docker-entrypoint.sh
WORKDIR /usr/src/paperless/src/
RUN sudo -HEu paperless python3 manage.py collectstatic --clear --no-input
VOLUME ["/usr/src/paperless/data", "/usr/src/paperless/media", "/usr/src/paperless/consume", "/usr/src/paperless/export"]
ENTRYPOINT ["/sbin/docker-entrypoint.sh"]
CMD ["/usr/local/bin/supervisord", "-c", "/etc/supervisord.conf"]
LABEL maintainer="Jonas Winkler <dev@jpwinkler.de>"

View File

@@ -1,44 +0,0 @@
version: "3.4"
services:
broker:
image: redis:6.0
restart: always
db:
image: postgres:13
restart: always
volumes:
- pgdata:/var/lib/postgresql/data
environment:
POSTGRES_DB: paperless
POSTGRES_USER: paperless
POSTGRES_PASSWORD: paperless
webserver:
build: .
restart: always
depends_on:
- db
- broker
ports:
- 8000:8000
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000"]
interval: 30s
timeout: 10s
retries: 5
volumes:
- data:/usr/src/paperless/data
- media:/usr/src/paperless/media
- ./export:/usr/src/paperless/export
- ./consume:/usr/src/paperless/consume
env_file: docker-compose.env
environment:
PAPERLESS_REDIS: redis://broker:6379
PAPERLESS_DBHOST: db
volumes:
data:
media:
pgdata:

View File

@@ -1,31 +0,0 @@
version: "3.4"
services:
broker:
image: redis:6.0
restart: always
webserver:
build: .
restart: always
depends_on:
- broker
ports:
- 8000:8000
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000"]
interval: 30s
timeout: 10s
retries: 5
volumes:
- data:/usr/src/paperless/data
- media:/usr/src/paperless/media
- ./export:/usr/src/paperless/export
- ./consume:/usr/src/paperless/consume
env_file: docker-compose.env
environment:
PAPERLESS_REDIS: redis://broker:6379
volumes:
data:
media:

15
docker/management_script.sh Executable file
View File

@@ -0,0 +1,15 @@
#!/usr/bin/env bash
set -e
cd /usr/src/paperless/src/
if [[ $(id -u) == 0 ]] ;
then
gosu paperless python3 manage.py management_command "$@"
elif [[ $(id -un) == "paperless" ]] ;
then
python3 manage.py management_command "$@"
else
echo "Unknown user."
fi

15
docker/paperless_cmd.sh Executable file
View File

@@ -0,0 +1,15 @@
#!/usr/bin/env bash
rootless_args=()
if [ "$(id -u)" == "$(id -u paperless)" ]; then
rootless_args=(
--user
paperless
--logfile
supervisord.log
--pidfile
supervisord.pid
)
fi
/usr/local/bin/supervisord -c /etc/supervisord.conf "${rootless_args[@]}"

View File

@@ -8,7 +8,7 @@ loglevel=info ; log level; default info; others: debug,warn,trace
user=root
[program:gunicorn]
command=gunicorn -c /usr/src/paperless/gunicorn.conf.py -b 0.0.0.0:8000 paperless.wsgi
command=gunicorn -c /usr/src/paperless/gunicorn.conf.py paperless.asgi:application
user=paperless
stdout_logfile=/dev/stdout
@@ -19,6 +19,7 @@ stderr_logfile_maxbytes=0
[program:consumer]
command=python3 manage.py document_consumer
user=paperless
stopsignal=INT
stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
@@ -28,6 +29,7 @@ stderr_logfile_maxbytes=0
[program:scheduler]
command=python3 manage.py qcluster
user=paperless
stopasgroup = true
stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0

44
docker/wait-for-redis.py Executable file
View File

@@ -0,0 +1,44 @@
#!/usr/bin/env python3
"""
Simple script which attempts to ping the Redis broker as set in the environment for
a certain number of times, waiting a little bit in between
"""
import os
import sys
import time
from typing import Final
from redis import Redis
if __name__ == "__main__":
MAX_RETRY_COUNT: Final[int] = 5
RETRY_SLEEP_SECONDS: Final[int] = 5
REDIS_URL: Final[str] = os.getenv("PAPERLESS_REDIS", "redis://localhost:6379")
print(f"Waiting for Redis...", flush=True)
attempt = 0
with Redis.from_url(url=REDIS_URL) as client:
while attempt < MAX_RETRY_COUNT:
try:
client.ping()
break
except Exception as e:
print(
f"Redis ping #{attempt} failed.\n"
f"Error: {str(e)}.\n"
f"Waiting {RETRY_SLEEP_SECONDS}s",
flush=True,
)
time.sleep(RETRY_SLEEP_SECONDS)
attempt += 1
if attempt >= MAX_RETRY_COUNT:
print(f"Failed to connect to redis using environment variable PAPERLESS_REDIS.")
sys.exit(os.EX_UNAVAILABLE)
else:
print(f"Connected to Redis broker.")
sys.exit(os.EX_OK)

View File

@@ -1,18 +0,0 @@
FROM python:3.5.1
MAINTAINER Pit Kleyersburg <pitkley@googlemail.com>
# Install Sphinx and Pygments
RUN pip install Sphinx Pygments
# Setup directories, copy data
RUN mkdir /build
COPY . /build
WORKDIR /build/docs
# Build documentation
RUN make html
# Start webserver
WORKDIR /build/docs/_build/html
EXPOSE 8000/tcp
CMD ["python3", "-m", "http.server"]

View File

@@ -24,6 +24,7 @@ I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
help:
@echo "Please use \`make <target>' where <target> is one of"
@echo " html to make standalone HTML files"
@echo " livehtml to preview changes with live reload in your browser"
@echo " dirhtml to make HTML files named index.html in directories"
@echo " singlehtml to make a single large HTML file"
@echo " pickle to make pickle files"
@@ -54,6 +55,9 @@ html:
@echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
livehtml:
sphinx-autobuild "./" "$(BUILDDIR)" $(O)
dirhtml:
$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
@echo

597
docs/_static/css/custom.css vendored Normal file
View File

@@ -0,0 +1,597 @@
/* Variables */
:root {
--color-text-body: #5c5962;
--color-text-body-light: #fcfcfc;
--color-text-anchor: #7253ed;
--color-text-alt: rgba(0, 0, 0, 0.3);
--color-text-title: #27262b;
--color-text-code-inline: #e74c3c;
--color-text-code-nt: #062873;
--color-text-selection: #b19eff;
--color-bg-body: #fcfcfc;
--color-bg-body-alt: #f3f6f6;
--color-bg-side-nav: #f5f6fa;
--color-bg-side-nav-hover: #ebedf5;
--color-bg-code-block: var(--color-bg-side-nav);
--color-border: #eeebee;
--color-btn-neutral-bg: #f3f6f6;
--color-btn-neutral-bg-hover: #e5ebeb;
--color-success-title: #1abc9c;
--color-success-body: #dbfaf4;
--color-warning-title: #f0b37e;
--color-warning-body: #ffedcc;
--color-danger-title: #f29f97;
--color-danger-body: #fdf3f2;
--color-info-title: #6ab0de;
--color-info-body: #e7f2fa;
}
.dark-mode {
--color-text-body: #abb2bf;
--color-text-body-light: #9499a2;
--color-text-alt: rgba(0255, 255, 255, 0.5);
--color-text-title: var(--color-text-anchor);
--color-text-code-inline: #abb2bf;
--color-text-code-nt: #2063f3;
--color-text-selection: #030303;
--color-bg-body: #1d1d20 !important;
--color-bg-body-alt: #131315;
--color-bg-side-nav: #18181a;
--color-bg-side-nav-hover: #101216;
--color-bg-code-block: #101216;
--color-border: #47494f;
--color-btn-neutral-bg: #242529;
--color-btn-neutral-bg-hover: #101216;
--color-success-title: #02120f;
--color-success-body: #041b17;
--color-warning-title: #1b0e03;
--color-warning-body: #371d06;
--color-danger-title: #120902;
--color-danger-body: #1b0503;
--color-info-title: #020608;
--color-info-body: #06141e;
}
* {
transition: background-color 0.3s ease, border-color 0.3s ease;
}
/* Typography */
body {
font-family: system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
font-size: inherit;
line-height: 1.4;
color: var(--color-text-body);
}
.rst-content p {
word-break: break-word;
}
h1, h2, h3, h4, h5, h6 {
font-family: inherit;
}
.rst-content .toctree-wrapper>p.caption, .rst-content h1, .rst-content h2, .rst-content h3, .rst-content h4, .rst-content h5, .rst-content h6 {
padding-top: .5em;
}
p, .main-content-wrap, .rst-content .section ul, .rst-content .toctree-wrapper ul, .rst-content section ul, .wy-plain-list-disc, article ul {
line-height: 1.6;
}
pre, .code, .rst-content .linenodiv pre, .rst-content div[class^=highlight] pre, .rst-content pre.literal-block {
font-family: "SFMono-Regular", Menlo,Consolas, Monospace;
font-size: 0.75em;
line-height: 1.8;
}
.wy-menu-vertical li.toctree-l3,.wy-menu-vertical li.toctree-l4 {
font-size: 1rem
}
.rst-versions {
font-family: inherit;
line-height: 1;
}
footer, footer p {
font-size: .8rem;
}
footer .rst-footer-buttons {
font-size: 1rem;
}
@media (max-width: 400px) {
/* break code lines on mobile */
pre, code {
word-break: break-word;
}
}
/* Layout */
.wy-side-nav-search, .wy-menu-vertical {
width: auto;
}
.wy-nav-side {
z-index: 0;
display: flex;
flex-wrap: wrap;
background-color: var(--color-bg-side-nav);
}
.wy-side-scroll {
width: 100%;
overflow-y: auto;
}
@media (min-width: 66.5rem) {
.wy-side-scroll {
width:264px
}
}
@media (min-width: 50rem) {
.wy-nav-side {
flex-wrap: nowrap;
position: fixed;
width: 248px;
height: 100%;
flex-direction: column;
border-right: 1px solid var(--color-border);
align-items:flex-end
}
}
@media (min-width: 66.5rem) {
.wy-nav-side {
width: calc((100% - 1064px) / 2 + 264px);
min-width:264px
}
}
@media (min-width: 50rem) {
.wy-nav-content-wrap {
position: relative;
max-width: 800px;
margin-left:248px
}
}
@media (min-width: 66.5rem) {
.wy-nav-content-wrap {
margin-left:calc((100% - 1064px) / 2 + 264px)
}
}
/* Colors */
body.wy-body-for-nav,
.wy-nav-content {
background: var(--color-bg-body);
}
.wy-nav-side {
border-right: 1px solid var(--color-border);
}
.wy-side-nav-search, .wy-nav-top {
background: var(--color-bg-side-nav);
border-bottom: 1px solid var(--color-border);
}
.wy-nav-content-wrap {
background: inherit;
}
.wy-side-nav-search > a, .wy-nav-top a, .wy-nav-top i {
color: var(--color-text-title);
}
.wy-side-nav-search > a:hover, .wy-nav-top a:hover {
background: transparent;
}
.wy-side-nav-search > div.version {
color: var(--color-text-alt)
}
.wy-side-nav-search > div[role="search"] {
border-top: 1px solid var(--color-border);
}
.wy-menu-vertical li.toctree-l2.current>a, .wy-menu-vertical li.toctree-l2.current li.toctree-l3>a,
.wy-menu-vertical li.toctree-l3.current>a, .wy-menu-vertical li.toctree-l3.current li.toctree-l4>a {
background: var(--color-bg-side-nav);
}
.rst-content .highlighted {
background: #eedd85;
box-shadow: 0 0 0 2px #eedd85;
font-weight: 600;
}
.wy-side-nav-search input[type=text],
html.writer-html5 .rst-content table.docutils th {
color: var(--color-text-body);
}
.rst-content table.docutils:not(.field-list) tr:nth-child(2n-1) td,
.wy-table-backed,
.wy-table-odd td,
.wy-table-striped tr:nth-child(2n-1) td {
background-color: var(--color-bg-body-alt);
}
.rst-content table.docutils,
.wy-table-bordered-all,
html.writer-html5 .rst-content table.docutils th,
.rst-content table.docutils td,
.wy-table-bordered-all td,
hr {
border-color: var(--color-border) !important;
}
::selection {
background: var(--color-text-selection);
}
/* Ridiculous rules are taken from sphinx_rtd */
.rst-content .admonition-title,
.wy-alert-title {
color: var(--color-text-body-light);
}
.rst-content .hint,
.rst-content .important,
.rst-content .tip,
.rst-content .wy-alert-success,
.wy-alert.wy-alert-success {
background: var(--color-success-body);
}
.rst-content .hint .admonition-title,
.rst-content .hint .wy-alert-title,
.rst-content .important .admonition-title,
.rst-content .important .wy-alert-title,
.rst-content .tip .admonition-title,
.rst-content .tip .wy-alert-title,
.rst-content .wy-alert-success .admonition-title,
.rst-content .wy-alert-success .wy-alert-title,
.wy-alert.wy-alert-success .rst-content .admonition-title,
.wy-alert.wy-alert-success .wy-alert-title {
background-color: var(--color-success-title);
}
.rst-content .admonition-todo,
.rst-content .attention,
.rst-content .caution,
.rst-content .warning,
.rst-content .wy-alert-warning,
.wy-alert.wy-alert-warning {
background: var(--color-warning-body);
}
.rst-content .admonition-todo .admonition-title,
.rst-content .admonition-todo .wy-alert-title,
.rst-content .attention .admonition-title,
.rst-content .attention .wy-alert-title,
.rst-content .caution .admonition-title,
.rst-content .caution .wy-alert-title,
.rst-content .warning .admonition-title,
.rst-content .warning .wy-alert-title,
.rst-content .wy-alert-warning .admonition-title,
.rst-content .wy-alert-warning .wy-alert-title,
.rst-content .wy-alert.wy-alert-warning .admonition-title,
.wy-alert.wy-alert-warning .rst-content .admonition-title,
.wy-alert.wy-alert-warning .wy-alert-title {
background: var(--color-warning-title);
}
.rst-content .danger,
.rst-content .error,
.rst-content .wy-alert-danger,
.wy-alert.wy-alert-danger {
background: var(--color-danger-body);
}
.rst-content .danger .admonition-title,
.rst-content .danger .wy-alert-title,
.rst-content .error .admonition-title,
.rst-content .error .wy-alert-title,
.rst-content .wy-alert-danger .admonition-title,
.rst-content .wy-alert-danger .wy-alert-title,
.wy-alert.wy-alert-danger .rst-content .admonition-title,
.wy-alert.wy-alert-danger .wy-alert-title {
background: var(--color-danger-title);
}
.rst-content .note,
.rst-content .seealso,
.rst-content .wy-alert-info,
.wy-alert.wy-alert-info {
background: var(--color-info-body);
}
.rst-content .note .admonition-title,
.rst-content .note .wy-alert-title,
.rst-content .seealso .admonition-title,
.rst-content .seealso .wy-alert-title,
.rst-content .wy-alert-info .admonition-title,
.rst-content .wy-alert-info .wy-alert-title,
.wy-alert.wy-alert-info .rst-content .admonition-title,
.wy-alert.wy-alert-info .wy-alert-title {
background: var(--color-info-title);
}
/* Links */
a, a:visited,
.wy-menu-vertical a,
a.icon.icon-home,
.wy-menu-vertical li.toctree-l1.current > a.current {
color: var(--color-text-anchor);
text-decoration: none;
}
a:hover, .wy-breadcrumbs-aside a {
color: var(--color-text-anchor); /* reset */
}
.rst-versions a, .rst-versions .rst-current-version {
color: #var(--color-text-anchor);
}
.wy-nav-content a.reference, .wy-nav-content a:not([class]) {
background-image: linear-gradient(var(--color-border) 0%, var(--color-border) 100%);
background-repeat: repeat-x;
background-position: 0 100%;
background-size: 1px 1px;
}
.wy-nav-content a.reference:hover, .wy-nav-content a:not([class]):hover {
background-image: linear-gradient(rgba(114,83,237,0.45) 0%, rgba(114,83,237,0.45) 100%);
background-size: 1px 1px;
}
.wy-menu-vertical a:hover,
.wy-menu-vertical li.current a:hover,
.wy-menu-vertical a:active {
background: var(--color-bg-side-nav-hover) !important;
color: var(--color-text-body);
}
.wy-menu-vertical li.toctree-l1.current>a,
.wy-menu-vertical li.current>a,
.wy-menu-vertical li.on a {
background-color: var(--color-bg-side-nav-hover);
border: none;
font-weight: normal;
}
.wy-menu-vertical li.current {
background-color: inherit;
}
.wy-menu-vertical li.current a {
border-right: none;
}
.wy-menu-vertical li.toctree-l2 a,
.wy-menu-vertical li.toctree-l3 a,
.wy-menu-vertical li.toctree-l4 a,
.wy-menu-vertical li.toctree-l5 a,
.wy-menu-vertical li.toctree-l6 a,
.wy-menu-vertical li.toctree-l7 a,
.wy-menu-vertical li.toctree-l8 a,
.wy-menu-vertical li.toctree-l9 a,
.wy-menu-vertical li.toctree-l10 a {
color: var(--color-text-body);
}
a.image-reference, a.image-reference:hover {
background: none !important;
}
a.image-reference img {
cursor: zoom-in;
}
/* Code blocks */
.rst-content code, .rst-content tt, code {
padding: 0.25em;
font-weight: 400;
background-color: var(--color-bg-code-block);
border: 1px solid var(--color-border);
border-radius: 4px;
}
.rst-content div[class^=highlight], .rst-content pre.literal-block {
padding: 0.7rem;
margin-top: 0;
margin-bottom: 0.75rem;
overflow-x: auto;
background-color: var(--color-bg-side-nav);
border-color: var(--color-border);
border-radius: 4px;
box-shadow: none;
}
.rst-content .admonition-title,
.rst-content div.admonition,
.wy-alert-title {
padding: 10px 12px;
border-top-left-radius: 4px;
border-top-right-radius: 4px;
}
.highlight .go {
color: inherit;
}
.highlight .nt {
color: var(--color-text-code-nt);
}
.rst-content code.literal,
.rst-content tt.literal,
html.writer-html5 .rst-content dl.footnote code {
border-color: var(--color-border);
background-color: var(--color-border);
color: var(--color-text-code-inline)
}
/* Search */
.wy-side-nav-search input[type=text] {
border: none;
border-radius: 0;
background-color: transparent;
font-family: inherit;
font-size: .85rem;
box-shadow: none;
padding: .7rem 1rem .7rem 2.8rem;
margin: 0;
}
#rtd-search-form {
position: relative;
}
#rtd-search-form:before {
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\f002";
color: var(--color-text-alt);
position: absolute;
left: 1.5rem;
top: .7rem;
}
/* Side nav */
.wy-side-nav-search {
padding: 1rem 0 0 0;
}
.wy-menu-vertical li a button.toctree-expand {
float: right;
margin-right: -1.5em;
padding: 0 .5em;
}
.wy-menu-vertical a,
.wy-menu-vertical li.current>a,
.wy-menu-vertical li.current li>a {
padding-right: 1.5em !important;
}
.wy-menu-vertical li.current li>a.current {
font-weight: 600;
}
/* Misc spacing */
.rst-content .admonition-title, .wy-alert-title {
padding: 10px 12px;
}
/* Buttons */
.btn {
display: inline-block;
box-sizing: border-box;
padding: 0.3em 1em;
margin: 0;
font-family: inherit;
font-size: inherit;
font-weight: 500;
line-height: 1.5;
color: #var(--color-text-anchor);
text-decoration: none;
vertical-align: baseline;
background-color: #f7f7f7;
border-width: 0;
border-radius: 4px;
box-shadow: 0 1px 2px rgba(0,0,0,0.12),0 3px 10px rgba(0,0,0,0.08);
appearance: none;
}
.btn:active {
padding: 0.3em 1em;
}
.rst-content .btn:focus {
outline: 1px solid #ccc;
}
.rst-content .btn-neutral, .rst-content .btn span.fa {
color: var(--color-text-body) !important;
}
.btn-neutral {
background-color: var(--color-btn-neutral-bg) !important;
color: var(--color-btn-neutral-text) !important;
border: 1px solid var(--color-btn-neutral-bg);
}
.btn:hover, .btn-neutral:hover {
background-color: var(--color-btn-neutral-bg-hover) !important;
}
/* Icon overrides */
.wy-side-nav-search a.icon-home:before {
display: none;
}
.fa-minus-square-o:before,.wy-menu-vertical li.current>a button.toctree-expand:before,.wy-menu-vertical li.on a button.toctree-expand:before {
content: "\f106"; /* fa-angle-up */
}
.fa-plus-square-o:before, .wy-menu-vertical li button.toctree-expand:before {
content: "\f107"; /* fa-angle-down */
}
/* Misc */
.wy-nav-top {
line-height: 36px;
}
.wy-nav-top > i {
font-size: 24px;
padding: 8px 0 0 2px;
color:#var(--color-text-anchor);
}
.rst-content table.docutils td,
.rst-content table.docutils th,
.rst-content table.field-list td,
.rst-content table.field-list th,
.wy-table td,
.wy-table th {
padding: 8px 14px;
}
.dark-mode-toggle {
position: absolute;
top: 14px;
right: 12px;
height: 20px;
width: 24px;
z-index: 10;
border: none;
background-color: transparent;
color: inherit;
opacity: 0.7;
}
.wy-nav-content-wrap {
z-index: 20;
}

View File

@@ -1,14 +0,0 @@
/* override table width restrictions */
@media screen and (min-width: 767px) {
.wy-table-responsive table td {
/* !important prevents the common CSS stylesheets from
overriding this as on RTD they are loaded after this stylesheet */
white-space: normal !important;
}
.wy-table-responsive {
overflow: visible !important;
}
}

47
docs/_static/js/darkmode.js vendored Normal file
View File

@@ -0,0 +1,47 @@
let toggleButton
let icon
function load() {
'use strict'
toggleButton = document.createElement('button')
toggleButton.setAttribute('title', 'Toggle dark mode')
toggleButton.classList.add('dark-mode-toggle')
icon = document.createElement('i')
icon.classList.add('fa', darkModeState ? 'fa-sun-o' : 'fa-moon-o')
toggleButton.appendChild(icon)
document.body.prepend(toggleButton)
// Listen for changes in the OS settings
// addListener is used because older versions of Safari don't support addEventListener
// prefersDarkQuery set in <head>
if (prefersDarkQuery) {
prefersDarkQuery.addListener(function (evt) {
toggleDarkMode(evt.matches)
})
}
// Initial setting depending on the prefers-color-mode or localstorage
// darkModeState should be set in the document <head> to prevent flash
if (darkModeState == undefined) darkModeState = false
toggleDarkMode(darkModeState)
// Toggles the "dark-mode" class on click and sets localStorage state
toggleButton.addEventListener('click', () => {
darkModeState = !darkModeState
toggleDarkMode(darkModeState)
localStorage.setItem('dark-mode', darkModeState)
})
}
function toggleDarkMode(state) {
document.documentElement.classList.toggle('dark-mode', state)
document.documentElement.classList.toggle('light-mode', !state)
icon.classList.remove('fa-sun-o')
icon.classList.remove('fa-moon-o')
icon.classList.add(state ? 'fa-sun-o' : 'fa-moon-o')
darkModeState = state
}
document.addEventListener('DOMContentLoaded', load)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 445 KiB

BIN
docs/_static/screenshots/bulk-edit.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 661 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 106 KiB

After

Width:  |  Height:  |  Size: 457 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 167 KiB

After

Width:  |  Height:  |  Size: 436 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 462 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 306 KiB

After

Width:  |  Height:  |  Size: 608 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 698 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 410 KiB

After

Width:  |  Height:  |  Size: 706 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 137 KiB

After

Width:  |  Height:  |  Size: 480 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 680 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 686 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 293 KiB

After

Width:  |  Height:  |  Size: 848 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 260 KiB

After

Width:  |  Height:  |  Size: 703 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 158 KiB

After

Width:  |  Height:  |  Size: 388 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 61 KiB

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 261 KiB

After

Width:  |  Height:  |  Size: 517 KiB

13
docs/_templates/layout.html vendored Normal file
View File

@@ -0,0 +1,13 @@
{% extends "!layout.html" %}
{% block extrahead %}
<script>
// MediaQueryList object
const prefersDarkQuery = window.matchMedia("(prefers-color-scheme: dark)");
const lsDark = localStorage.getItem("dark-mode");
let darkModeState = lsDark !== null ? lsDark == "true" : prefersDarkQuery.matches;
document.documentElement.classList.toggle("dark-mode", darkModeState);
document.documentElement.classList.toggle("light-mode", !darkModeState);
</script>
{{ super() }}
{% endblock %}

View File

@@ -20,6 +20,14 @@ Options available to any installation of paperless:
metadata to a specific folder. You may import your documents into a
fresh instance of paperless again or store your documents in another
DMS with this export.
* The document exporter is also able to update an already existing export.
Therefore, incremental backups with ``rsync`` are entirely possible.
.. caution::
You cannot import the export generated with one version of paperless in a
different version of paperless. The export contains an exact image of the
database, and migrations may change the database layout.
Options available to docker installations:
@@ -27,13 +35,15 @@ Options available to docker installations:
``/var/lib/docker/volumes`` on the host and you need to be root in order
to access them.
Paperless uses 3 volumes:
Paperless uses 4 volumes:
* ``paperless_media``: This is where your documents are stored.
* ``paperless_data``: This is where auxillary data is stored. This
folder also contains the SQLite database, if you use it.
* ``paperless_pgdata``: Exists only if you use PostgreSQL and contains
the database.
* ``paperless_dbdata``: Exists only if you use MariaDB and contains
the database.
Options available to bare-metal and non-docker installations:
@@ -41,24 +51,24 @@ Options available to bare-metal and non-docker installations:
crashes at some point or your disk fails, you can simply copy the folder back
into place and it works.
When using PostgreSQL, you'll also have to backup the database.
When using PostgreSQL or MariaDB, you'll also have to backup the database.
.. _migrating-restoring:
Restoring
=========
.. _administration-updating:
Updating paperless
Updating Paperless
##################
If a new release of paperless-ng is available, upgrading depends on how you
installed paperless-ng in the first place. The releases are available at
`release page <https://github.com/jonaswinkler/paperless-ng/releases>`_.
Docker Route
============
If a new release of paperless-ngx is available, upgrading depends on how you
installed paperless-ngx in the first place. The releases are available at the
`release page <https://github.com/paperless-ngx/paperless-ngx/releases>`_.
First of all, ensure that paperless is stopped.
@@ -69,106 +79,147 @@ First of all, ensure that paperless is stopped.
After that, :ref:`make a backup <administration-backup>`.
A. If you used the dockerfiles archive, simply download the files of the new release,
adjust the settings in the files (i.e., the path to your consumption directory),
and replace your existing docker-compose files. Then start paperless as usual,
which will pull the new image, and update your database, if necessary:
A. If you pull the image from the docker hub, all you need to do is:
.. code:: shell-session
$ cd /path/to/paperless
$ docker-compose pull
$ docker-compose up
If you see everything working, you can start paperless-ng with "-d" to have it
run in the background.
The docker-compose files refer to the ``latest`` version, which is always the latest
stable release.
.. hint::
The released docker-compose files specify exact versions to be pulled from the hub.
This is to ensure that if the docker-compose files should change at some point
(i.e., services updates/configured differently), you wont run into trouble due to
docker pulling the ``latest`` image and running it in an older environment.
B. If you built the image yourself, grab the new archive and replace your current
paperless folder with the new contents.
After that, make the necessary adjustments to the docker-compose.yml (i.e.,
adjust your consumption directory).
Build and start the new image with:
B. If you built the image yourself, do the following:
.. code:: shell-session
$ cd /path/to/paperless
$ git pull
$ docker-compose build
$ docker-compose up
If you see everything working, you can start paperless-ng with "-d" to have it
run in the background.
Running ``docker-compose up`` will also apply any new database migrations.
If you see everything working, press CTRL+C once to gracefully stop paperless.
Then you can start paperless-ngx with ``-d`` to have it run in the background.
.. hint::
.. note::
You can usually keep your ``docker-compose.env`` file, since this file will
never include mandatory configuration options. However, it is worth checking
out the new version of this file, since it might have new recommendations
on what to configure.
In version 0.9.14, the update process was changed. In 0.9.13 and earlier, the
docker-compose files specified exact versions and pull won't automatically
update to newer versions. In order to enable updates as described above, either
get the new ``docker-compose.yml`` file from `here <https://github.com/paperless-ngx/paperless-ngx/tree/master/docker/compose>`_
or edit the ``docker-compose.yml`` file, find the line that says
.. code::
Updating paperless without docker
=================================
image: ghcr.io/paperless-ngx/paperless-ngx:0.9.x
and replace the version with ``latest``:
.. code::
image: ghcr.io/paperless-ngx/paperless-ngx:latest
.. note::
In version 1.7.1 and onwards, the Docker image can now be pinned to a release series.
This is often combined with automatic updaters such as Watchtower to allow safer
unattended upgrading to new bugfix releases only. It is still recommended to always
review release notes before upgrading. To pin your install to a release series, edit
the ``docker-compose.yml`` find the line that says
.. code::
image: ghcr.io/paperless-ngx/paperless-ngx:latest
and replace the version with the series you want to track, for example:
.. code::
image: ghcr.io/paperless-ngx/paperless-ngx:1.7
Bare Metal Route
================
After grabbing the new release and unpacking the contents, do the following:
1. Update dependencies. New paperless version may require additional
dependencies. The dependencies required are listed in the section about
dependencies. The dependencies required are listed in the section about
:ref:`bare metal installations <setup-bare_metal>`.
2. Update python requirements. If you use Pipenv, this is done with the following steps.
2. Update python requirements. Keep in mind to activate your virtual environment
before that, if you use one.
.. code:: shell-session
$ pip install --upgrade pipenv
$ cd /path/to/paperless
$ pipenv clean
$ pipenv install
$ pip install -r requirements.txt
This creates a new virtual environment (or uses your existing environment)
and installs all dependencies into it.
3. Collect static files.
3. Migrate the database.
.. code:: shell-session
$ cd src
$ pipenv run python3 manage.py collectstatic --clear
4. Migrate the database.
$ python3 manage.py migrate
.. code:: shell-session
This might not actually do anything. Not every new paperless version comes with new
database migrations.
$ cd src
$ pipenv run python3 manage.py migrate
Downgrading Paperless
#####################
Downgrades are possible. However, some updates also contain database migrations (these change the layout of the database and may move data).
In order to move back from a version that applied database migrations, you'll have to revert the database migration *before* downgrading,
and then downgrade paperless.
This table lists the compatible versions for each database migration number.
+------------------+-----------------+
| Migration number | Version range |
+------------------+-----------------+
| 1011 | 1.0.0 |
+------------------+-----------------+
| 1012 | 1.1.0 - 1.2.1 |
+------------------+-----------------+
| 1014 | 1.3.0 - 1.3.1 |
+------------------+-----------------+
| 1016 | 1.3.2 - current |
+------------------+-----------------+
Execute the following management command to migrate your database:
.. code:: shell-session
$ python3 manage.py migrate documents <migration number>
.. note::
Some migrations cannot be undone. The command will issue errors if that happens.
.. _utilities-management-commands:
Management utilities
####################
Paperless comes with some management commands that perform various maintenance
tasks on your paperless instance. You can invoke these commands either by
tasks on your paperless instance. You can invoke these commands in the following way:
With docker-compose, while paperless is running:
.. code:: shell-session
$ cd /path/to/paperless
$ docker-compose run --rm webserver <command> <arguments>
$ docker-compose exec webserver <command> <arguments>
or
With docker, while paperless is running:
.. code:: shell-session
$ docker exec -it <container-name> <command> <arguments>
Bare metal:
.. code:: shell-session
$ cd /path/to/paperless/src
$ pipenv run python manage.py <command> <arguments>
depending on whether you use docker or not.
$ python3 manage.py <command> <arguments>
All commands have built-in help, which can be accessed by executing them with
the argument ``--help``.
@@ -181,9 +232,16 @@ Document exporter
The document exporter exports all your data from paperless into a folder for
backup or migration to another DMS.
If you use the document exporter within a cronjob to backup your data you might use the ``-T`` flag behind exec to suppress "The input device is not a TTY" errors. For example: ``docker-compose exec -T webserver document_exporter ../export``
.. code::
document_exporter target
document_exporter target [-c] [-f] [-d]
optional arguments:
-c, --compare-checksums
-f, --use-filename-format
-d, --delete
``target`` is a folder to which the data gets written. This includes documents,
thumbnails and a ``manifest.json`` file. The manifest contains all metadata from
@@ -193,6 +251,24 @@ When you use the provided docker compose script, specify ``../export`` as the
target. This path inside the container is automatically mounted on your host on
the folder ``export``.
If the target directory already exists and contains files, paperless will assume
that the contents of the export directory are a previous export and will attempt
to update the previous export. Paperless will only export changed and added files.
Paperless determines whether a file has changed by inspecting the file attributes
"date/time modified" and "size". If that does not work out for you, specify
``--compare-checksums`` and paperless will attempt to compare file checksums instead.
This is slower.
Paperless will not remove any existing files in the export directory. If you want
paperless to also remove files that do not belong to the current export such as files
from deleted documents, specify ``--delete``. Be careful when pointing paperless to
a directory that already contains other files.
The filenames generated by this command follow the format
``[date created] [correspondent] [title].[extension]``.
If you want paperless to use ``PAPERLESS_FILENAME_FORMAT`` for exported filenames
instead, specify ``--use-filename-format``.
.. _utilities-importer:
@@ -213,6 +289,10 @@ When you use the provided docker compose script, put the export inside the
``export`` folder in your paperless source directory. Specify ``../export``
as the ``source``.
.. note::
Importing from a previous version of Paperless may work, but for best results
it is suggested to match the versions.
.. _utilities-retagger:
@@ -232,6 +312,7 @@ there are tools for it.
-c, --correspondent
-T, --tags
-t, --document_type
-s, --storage_path
-i, --inbox-only
--use-first
-f, --overwrite
@@ -240,7 +321,7 @@ Run this after changing or adding matching rules. It'll loop over all
of the documents in your database and attempt to match documents
according to the new rules.
Specify any combination of ``-c``, ``-T`` and ``-t`` to have the
Specify any combination of ``-c``, ``-T``, ``-t`` and ``-s`` to have the
retagger perform matching of the specified metadata type. If you don't
specify any of these options, the document retagger won't do anything.
@@ -312,8 +393,8 @@ the naming scheme.
.. warning::
Since this command moves you documents around alot, it is advised to to
a backup before. The renaming logic is robust and will never overwrite
Since this command moves your documents, it is advised to do
a backup beforehand. The renaming logic is robust and will never overwrite
or delete a file, but you can't ever be careful enough.
.. code::
@@ -322,6 +403,36 @@ the naming scheme.
The command takes no arguments and processes all your documents at once.
Learn how to use :ref:`Management Utilities<utilities-management-commands>`.
.. _utilities-sanity-checker:
Sanity checker
==============
Paperless has a built-in sanity checker that inspects your document collection for issues.
The issues detected by the sanity checker are as follows:
* Missing original files.
* Missing archive files.
* Inaccessible original files due to improper permissions.
* Inaccessible archive files due to improper permissions.
* Corrupted original documents by comparing their checksum against what is stored in the database.
* Corrupted archive documents by comparing their checksum against what is stored in the database.
* Missing thumbnails.
* Inaccessible thumbnails due to improper permissions.
* Documents without any content (warning).
* Orphaned files in the media directory (warning). These are files that are not referenced by any document im paperless.
.. code::
document_sanity_checker
The command takes no arguments. Depending on the size of your document archive, this may take some time.
Fetching e-mail
===============
@@ -381,13 +492,13 @@ Documents can be stored in Paperless using GnuPG encryption.
.. danger::
Encryption is deprecated since paperless-ng 0.9 and doesn't really provide any
Encryption is deprecated since paperless-ngx 0.9 and doesn't really provide any
additional security, since you have to store the passphrase in a configuration
file on the same system as the encrypted documents for paperless to work.
Furthermore, the entire text content of the documents is stored plain in the
database, even if your documents are encrypted. Filenames are not encrypted as
well.
Also, the web server provides transparent access to your encrypted documents.
Consider running paperless on an encrypted filesystem instead, which will then
@@ -410,6 +521,3 @@ Basic usage to disable encryption of your document store:
.. code::
decrypt_documents [--passphrase SECR3TP4SSPHRA$E]
.. _Pipenv: https://pipenv.pypa.io/en/latest/

View File

@@ -7,26 +7,25 @@ easier.
.. _advanced-matching:
Matching tags, correspondents and document types
################################################
Matching tags, correspondents, document types, and storage paths
################################################################
After the consumer has tried to figure out what it could from the file name,
it starts looking at the content of the document itself. It will compare the
matching algorithms defined by every tag and correspondent already set in your
database to see if they apply to the text in that document. In other words,
if you defined a tag called ``Home Utility`` that had a ``match`` property of
``bc hydro`` and a ``matching_algorithm`` of ``literal``, Paperless will
automatically tag your newly-consumed document with your ``Home Utility`` tag
so long as the text ``bc hydro`` appears in the body of the document somewhere.
Paperless will compare the matching algorithms defined by every tag, correspondent,
document type, and storage path in your database to see if they apply to the text
in a document. In other words, if you define a tag called ``Home Utility``
that had a ``match`` property of ``bc hydro`` and a ``matching_algorithm`` of
``literal``, Paperless will automatically tag your newly-consumed document with
your ``Home Utility`` tag so long as the text ``bc hydro`` appears in the body
of the document somewhere.
The matching logic is quite powerful, and supports searching the text of your
The matching logic is quite powerful. It supports searching the text of your
document with different algorithms, and as such, some experimentation may be
necessary to get things right.
In order to have a tag, correspondent or type assigned automatically to newly
consumed documents, assign a match and matching algorithm using the web
interface. These settings define when to assign correspondents, tags and types
to documents.
In order to have a tag, correspondent, document type, or storage path assigned
automatically to newly consumed documents, assign a match and matching algorithm
using the web interface. These settings define when to assign tags, correspondents,
document types, and storage paths to documents.
The following algorithms are available:
@@ -35,22 +34,22 @@ The following algorithms are available:
either of these terms.
* **All:** Requires that every word provided appears in the PDF, albeit not in the
order provided.
* **Literal:** Matches only if the match appears exactly as provided in the PDF.
* **Literal:** Matches only if the match appears exactly as provided (i.e. preserve ordering) in the PDF.
* **Regular expression:** Parses the match as a regular expression and tries to
find a match within the document.
* **Fuzzy match:** I dont know. Look at the source.
* **Fuzzy match:** I don't know. Look at the source.
* **Auto:** Tries to automatically match new documents. This does not require you
to set a match. See the notes below.
When using the "any" or "all" matching algorithms, you can search for terms
When using the *any* or *all* matching algorithms, you can search for terms
that consist of multiple words by enclosing them in double quotes. For example,
defining a match text of ``"Bank of America" BofA`` using the "any" algorithm,
defining a match text of ``"Bank of America" BofA`` using the *any* algorithm,
will match documents that contain either "Bank of America" or "BofA", but will
not match documents containing "Bank of South America".
Then just save your tag/correspondent and run another document through the
consumer. Once complete, you should see the newly-created document,
automatically tagged with the appropriate data.
Then just save your tag, correspondent, document type, or storage path and run
another document through the consumer. Once complete, you should see the
newly-created document, automatically tagged with the appropriate data.
.. _advanced-automatic_matching:
@@ -58,10 +57,10 @@ automatically tagged with the appropriate data.
Automatic matching
==================
Paperless-ng comes with a new matching algorithm called *Auto*. This matching
algorithm tries to assign tags, correspondents and document types to your
documents based on how you have assigned these on existing documents. It
uses a neural network under the hood.
Paperless-ngx comes with a new matching algorithm called *Auto*. This matching
algorithm tries to assign tags, correspondents, document types, and storage paths
to your documents based on how you have already assigned these on existing documents.
It uses a neural network under the hood.
If, for example, all your bank statements of your account 123 at the Bank of
America are tagged with the tag "bofa_123" and the matching algorithm of this
@@ -77,24 +76,25 @@ feature:
changes. Paperless periodically (default: once each hour) checks for changes
and does this automatically for you.
* The Auto matching algorithm only takes documents into account which are NOT
placed in your inbox (i.e., have inbox tags assigned to them). This ensures
placed in your inbox (i.e. have any inbox tags assigned to them). This ensures
that the neural network only learns from documents which you have correctly
tagged before.
* The matching algorithm can only work if there is a correlation between the
tag, correspondent or document type and the document itself. Your bank
statements usually contain your bank account number and the name of the bank,
so this works reasonably well, However, tags such as "TODO" cannot be
automatically assigned.
tag, correspondent, document type, or storage path and the document itself.
Your bank statements usually contain your bank account number and the name
of the bank, so this works reasonably well, However, tags such as "TODO"
cannot be automatically assigned.
* The matching algorithm needs a reasonable number of documents to identify when
to assign tags, correspondents, and types. If one out of a thousand documents
has the correspondent "Very obscure web shop I bought something five years
ago", it will probably not assign this correspondent automatically if you buy
something from them again. The more documents, the better.
to assign tags, correspondents, storage paths, and types. If one out of a
thousand documents has the correspondent "Very obscure web shop I bought
something five years ago", it will probably not assign this correspondent
automatically if you buy something from them again. The more documents, the better.
* Paperless also needs a reasonable amount of negative examples to decide when
not to assign a certain tag, correspondent or type. This will usually be the
case as you start filling up paperless with documents. Example: If all your
documents are either from "Webshop" and "Bank", paperless will assign one of
these correspondents to ANY new document, if both are set to automatic matching.
not to assign a certain tag, correspondent, document type, or storage path. This will
usually be the case as you start filling up paperless with documents.
Example: If all your documents are either from "Webshop" and "Bank", paperless
will assign one of these correspondents to ANY new document, if both are set
to automatic matching.
Hooking into the consumption process
####################################
@@ -105,7 +105,7 @@ you execute scripts of your own choosing just before or after a document is
consumed using a couple simple hooks.
Just write a script, put it somewhere that Paperless can read & execute, and
then put the path to that script in ``paperless.conf`` with the variable name
then put the path to that script in ``paperless.conf`` or ``docker-compose.env`` with the variable name
of either ``PAPERLESS_PRE_CONSUME_SCRIPT`` or
``PAPERLESS_POST_CONSUME_SCRIPT``.
@@ -121,10 +121,10 @@ Pre-consumption script
======================
Executed after the consumer sees a new document in the consumption folder, but
before any processing of the document is performed. This script receives exactly
one argument:
before any processing of the document is performed. This script can access the
following relevant environment variables set:
* Document file name
* ``DOCUMENT_SOURCE_PATH``
A simple but common example for this would be creating a simple script like
this:
@@ -134,7 +134,7 @@ this:
.. code:: bash
#!/usr/bin/env bash
pdf2pdfocr.py -i ${1}
pdf2pdfocr.py -i ${DOCUMENT_SOURCE_PATH}
``/etc/paperless.conf``
@@ -157,23 +157,57 @@ Post-consumption script
=======================
Executed after the consumer has successfully processed a document and has moved it
into paperless. It receives the following arguments:
into paperless. It receives the following environment variables:
* Document id
* Generated file name
* Source path
* Thumbnail path
* Download URL
* Thumbnail URL
* Correspondent
* Tags
* ``DOCUMENT_ID``
* ``DOCUMENT_FILE_NAME``
* ``DOCUMENT_CREATED``
* ``DOCUMENT_MODIFIED``
* ``DOCUMENT_ADDED``
* ``DOCUMENT_SOURCE_PATH``
* ``DOCUMENT_ARCHIVE_PATH``
* ``DOCUMENT_THUMBNAIL_PATH``
* ``DOCUMENT_DOWNLOAD_URL``
* ``DOCUMENT_THUMBNAIL_URL``
* ``DOCUMENT_CORRESPONDENT``
* ``DOCUMENT_TAGS``
* ``DOCUMENT_ORIGINAL_FILENAME``
The script can be in any language you like, but for a simple shell script
example, you can take a look at ``post-consumption-example.sh`` in the
``scripts`` directory in this project.
The script can be in any language, but for a simple shell script
example, you can take a look at `post-consumption-example.sh`_ in this project.
The post consumption script cannot cancel the consumption process.
Docker
------
Assumed you have ``/home/foo/paperless-ngx/scripts/post-consumption-example.sh``.
You can pass that script into the consumer container via a host mount in your ``docker-compose.yml``.
.. code:: bash
...
consumer:
...
volumes:
...
- /home/paperless-ngx/scripts:/path/in/container/scripts/
...
Example (docker-compose.yml): ``- /home/foo/paperless-ngx/scripts:/usr/src/paperless/scripts``
which in turn requires the variable ``PAPERLESS_POST_CONSUME_SCRIPT`` in ``docker-compose.env`` to point to ``/path/in/container/scripts/post-consumption-example.sh``.
Example (docker-compose.env): ``PAPERLESS_POST_CONSUME_SCRIPT=/usr/src/paperless/scripts/post-consumption-example.sh``
Troubleshooting:
- Monitor the docker-compose log ``cd ~/paperless-ngx; docker-compose logs -f``
- Check your script's permission e.g. in case of permission error ``sudo chmod 755 post-consumption-example.sh``
- Pipe your scripts's output to a log file e.g. ``echo "${DOCUMENT_ID}" | tee --append /usr/src/paperless/scripts/post-consumption-example.log``
.. _post-consumption-example.sh: https://github.com/paperless-ngx/paperless-ngx/blob/main/scripts/post-consumption-example.sh
.. _advanced-file_name_handling:
File name handling
@@ -215,20 +249,21 @@ will create a directory structure as follows:
last filename a document was stored as. If you do rename a file, paperless will
report your files as missing and won't be able to find them.
Paperless provides the following placeholders withing filenames:
Paperless provides the following placeholders within filenames:
* ``{asn}``: The archive serial number of the document, or "none".
* ``{correspondent}``: The name of the correspondent, or "none".
* ``{document_type}``: The name of the document type, or "none".
* ``{tag_list}``: A comma separated list of all tags assigned to the document.
* ``{title}``: The title of the document.
* ``{created}``: The full date and time the document was created.
* ``{created}``: The full date (ISO format) the document was created.
* ``{created_year}``: Year created only.
* ``{created_month}``: Month created only (number 1-12).
* ``{created_day}``: Day created only (number 1-31).
* ``{added}``: The full date and time the document was added to paperless.
* ``{created_month}``: Month created only (number 01-12).
* ``{created_day}``: Day created only (number 01-31).
* ``{added}``: The full date (ISO format) the document was added to paperless.
* ``{added_year}``: Year added only.
* ``{added_month}``: Month added only (number 1-12).
* ``{added_day}``: Day added only (number 1-31).
* ``{added_month}``: Month added only (number 01-12).
* ``{added_day}``: Day added only (number 01-31).
Paperless will try to conserve the information from your database as much as possible.
@@ -239,6 +274,17 @@ If paperless detects that two documents share the same filename, paperless will
append ``_01``, ``_02``, etc to the filename. This happens if all the placeholders in a filename
evaluate to the same value.
.. hint::
You can affect how empty placeholders are treated by changing the following setting to
`true`.
.. code::
PAPERLESS_FILENAME_FORMAT_REMOVE_NONE=True
Doing this results in all empty placeholders resolving to "" instead of "none" as stated above.
Spaces before empty placeholders are removed as well, empty directories are omitted.
.. hint::
Paperless checks the filename of a document whenever it is saved. Therefore,
@@ -261,3 +307,59 @@ evaluate to the same value.
However, keep in mind that inside docker, if files get stored outside of the
predefined volumes, they will be lost after a restart of paperless.
Storage paths
#############
One of the best things in Paperless is that you can not only access the documents via the
web interface, but also via the file system.
When as single storage layout is not sufficient for your use case, storage paths come to
the rescue. Storage paths allow you to configure more precisely where each document is stored
in the file system.
- Each storage path is a `PAPERLESS_FILENAME_FORMAT` and follows the rules described above
- Each document is assigned a storage path using the matching algorithms described above, but
can be overwritten at any time
For example, you could define the following two storage paths:
1. Normal communications are put into a folder structure sorted by `year/correspondent`
2. Communications with insurance companies are stored in a flat structure with longer file names,
but containing the full date of the correspondence.
.. code::
By Year = {created_year}/{correspondent}/{title}
Insurances = Insurances/{correspondent}/{created_year}-{created_month}-{created_day} {title}
If you then map these storage paths to the documents, you might get the following result.
For simplicity, `By Year` defines the same structure as in the previous example above.
.. code:: text
2019/ # By Year
My bank/
Statement January.pdf
Statement February.pdf
Insurances/ # Insurances
Healthcare 123/
2022-01-01 Statement January.pdf
2022-02-02 Letter.pdf
2022-02-03 Letter.pdf
Dental 456/
2021-12-01 New Conditions.pdf
.. hint::
Defining a storage path is optional. If no storage path is defined for a document, the global
`PAPERLESS_FILENAME_FORMAT` is applied.
.. caution::
If you adjust the format of an existing storage path, old documents don't get relocated automatically.
You need to run the :ref:`document renamer <utilities-renamer>` to adjust their pathes.

View File

@@ -31,7 +31,8 @@ The objects served by the document endpoint contain the following fields:
* ``tags``: List of IDs of tags assigned to this document, or empty list.
* ``document_type``: Document type of this document, or null.
* ``correspondent``: Correspondent of this document or null.
* ``created``: The date at which this document was created.
* ``created``: The date time at which this document was created.
* ``created_date``: The date (YYYY-MM-DD) at which this document was created. Optional. If also passed with created, this is ignored.
* ``modified``: The date at which this document was last edited in paperless. Read-only.
* ``added``: The date at which this document was added to paperless. Read-only.
* ``archive_serial_number``: The identifier of this document in a physical document archive.
@@ -60,7 +61,7 @@ The endpoints correctly serve the response header fields ``Content-Disposition``
and ``Content-Type`` to indicate the filename for download and the type of content of
the document.
In order to download or preview the original document when an archied document is available,
In order to download or preview the original document when an archived document is available,
supply the query parameter ``original=true``.
.. hint::
@@ -147,93 +148,57 @@ The REST api provides three different forms of authentication.
Searching for documents
#######################
Paperless-ng offers API endpoints for full text search. These are as follows:
Full text searching is available on the ``/api/documents/`` endpoint. Two specific
query parameters cause the API to return full text search results:
``/api/search/``
================
* ``/api/documents/?query=your%20search%20query``: Search for a document using a full text query.
For details on the syntax, see :ref:`basic-usage_searching`.
Get search results based on a query.
* ``/api/documents/?more_like=1234``: Search for documents similar to the document with id 1234.
Query parameters:
Pagination works exactly the same as it does for normal requests on this endpoint.
* ``query``: The query string. See
`here <https://whoosh.readthedocs.io/en/latest/querylang.html>`_
for details on the syntax.
* ``page``: Specify the page you want to retrieve. Each page
contains 10 search results and the first page is ``page=1``, which
is the default if this is omitted.
Certain limitations apply to full text queries:
Result list object returned by the endpoint:
* Results are always sorted by search score. The results matching the query best will show up first.
.. code:: json
* Only a small subset of filtering parameters are supported.
Furthermore, each returned document has an additional ``__search_hit__`` attribute with various information
about the search results:
.. code::
{
"count": 1,
"page": 1,
"page_count": 1,
"corrected_query": "",
"count": 31,
"next": "http://localhost:8000/api/documents/?page=2&query=test",
"previous": null,
"results": [
...
{
"id": 123,
"title": "title",
"content": "content",
...
"__search_hit__": {
"score": 0.343,
"highlights": "text <span class=\"match\">Test</span> text",
"rank": 23
}
},
...
]
}
* ``count``: The approximate total number of results.
* ``page``: The page returned to you. This might be different from
the page you requested, if you requested a page that is behind
the last page. In that case, the last page is returned.
* ``page_count``: The total number of pages.
* ``corrected_query``: Corrected version of the query string. Can be null.
If not null, can be used verbatim to start a new query.
* ``results``: A list of result objects on the current page.
Result object:
.. code:: json
{
"id": 1,
"highlights": [
],
"score": 6.34234,
"rank": 23,
"document": {
}
}
* ``id``: the primary key of the found document
* ``highlights``: an object containing parsable highlights for the result.
See below.
* ``score``: The score assigned to the document. A higher score indicates a
better match with the query. Search results are sorted descending by score.
* ``rank``: the position of the document within the entire search results list.
* ``document``: The full json of the document, as returned by
``/api/documents/<id>/``.
Highlights object:
Highlights are provided as a list of fragments. A fragment is a longer section of
text from the original document.
Each fragment contains a list of strings, and some of them are marked as a highlight.
.. code:: json
[
[
{"text": "This is a sample text with a ", "highlight": false},
{"text": "highlighted", "highlight": true},
{"text": " word.", "highlight": false}
],
[
{"text": "Another", "highlight": true},
{"text": " fragment with a highlight.", "highlight": false}
]
]
A client may use this example to produce the following output:
... This is a sample text with a **highlighted** word. ... **Another** fragment with a highlight. ...
* ``score`` is an indication how well this document matches the query relative to the other search results.
* ``highlights`` is an excerpt from the document content and highlights the search terms with ``<span>`` tags as shown above.
* ``rank`` is the index of the search results. The first result will have rank 0.
``/api/search/autocomplete/``
=============================
@@ -276,11 +241,63 @@ be instructed to consume the document from there.
The endpoint supports the following optional form fields:
* ``title``: Specify a title that the consumer should use for the document.
* ``created``: Specify a DateTime where the document was created (e.g. "2016-04-19" or "2016-04-19 06:15:00+02:00").
* ``correspondent``: Specify the ID of a correspondent that the consumer should use for the document.
* ``document_type``: Similar to correspondent.
* ``tags``: Similar to correspondent. Specify this multiple times to have multiple tags added
to the document.
The endpoint will immediately return "OK" if the document consumption process
was started successfully. No additional status information about the consumption
process itself is available, since that happens in a different process.
.. _api-versioning:
API Versioning
##############
The REST API is versioned since Paperless-ngx 1.3.0.
* Versioning ensures that changes to the API don't break older clients.
* Clients specify the specific version of the API they wish to use with every request and Paperless will handle the request using the specified API version.
* Even if the underlying data model changes, older API versions will always serve compatible data.
* If no version is specified, Paperless will serve version 1 to ensure compatibility with older clients that do not request a specific API version.
API versions are specified by submitting an additional HTTP ``Accept`` header with every request:
.. code::
Accept: application/json; version=6
If an invalid version is specified, Paperless 1.3.0 will respond with "406 Not Acceptable" and an error message in the body.
Earlier versions of Paperless will serve API version 1 regardless of whether a version is specified via the ``Accept`` header.
If a client wishes to verify whether it is compatible with any given server, the following procedure should be performed:
1. Perform an *authenticated* request against any API endpoint. If the server is on version 1.3.0 or newer, the server will
add two custom headers to the response:
.. code::
X-Api-Version: 2
X-Version: 1.3.0
2. Determine whether the client is compatible with this server based on the presence/absence of these headers and their values if present.
API Changelog
=============
Version 1
---------
Initial API version.
Version 2
---------
* Added field ``Tag.color``. This read/write string field contains a hex color such as ``#a6cee3``.
* Added read-only field ``Tag.text_color``. This field contains the text color to use for a specific tag, which is either black or white depending on the brightness of ``Tag.color``.
* Removed field ``Tag.colour``.

2064
docs/changelog.md Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -2,33 +2,39 @@ import sphinx_rtd_theme
__version__ = None
__full_version_str__ = None
__major_minor_version_str__ = None
exec(open("../src/paperless/version.py").read())
extensions = [
'sphinx.ext.autodoc',
'sphinx.ext.intersphinx',
'sphinx.ext.todo',
'sphinx.ext.imgmath',
'sphinx.ext.viewcode',
'sphinx_rtd_theme',
"sphinx.ext.autodoc",
"sphinx.ext.intersphinx",
"sphinx.ext.todo",
"sphinx.ext.imgmath",
"sphinx.ext.viewcode",
"sphinx_rtd_theme",
"myst_parser",
]
# Add any paths that contain templates here, relative to this directory.
# templates_path = ['_templates']
templates_path = ["_templates"]
# The suffix of source filenames.
source_suffix = '.rst'
source_suffix = {
".rst": "restructuredtext",
".md": "markdown",
}
# The encoding of source files.
#source_encoding = 'utf-8-sig'
# source_encoding = 'utf-8-sig'
# The master toctree document.
master_doc = 'index'
master_doc = "index"
# General information about the project.
project = u'Paperless-ng'
copyright = u'2015, Daniel Quinn'
project = "Paperless-ngx"
copyright = "2015-2022, Daniel Quinn, Jonas Winkler, and the paperless-ngx team"
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
@@ -41,186 +47,190 @@ copyright = u'2015, Daniel Quinn'
#
# The short X.Y version.
version = ".".join([str(_) for _ in __version__[:2]])
version = __major_minor_version_str__
# The full version, including alpha/beta/rc tags.
release = ".".join([str(_) for _ in __version__[:3]])
release = __full_version_str__
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
#language = None
# language = None
# There are two options for replacing |today|: either, you set today to some
# non-false value, then it is used:
#today = ''
# today = ''
# Else, today_fmt is used as the format for a strftime call.
#today_fmt = '%B %d, %Y'
# today_fmt = '%B %d, %Y'
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
exclude_patterns = ['_build']
exclude_patterns = ["_build"]
# The reST default role (used for this markup: `text`) to use for all
# documents.
#default_role = None
# default_role = None
# If true, '()' will be appended to :func: etc. cross-reference text.
#add_function_parentheses = True
# add_function_parentheses = True
# If true, the current module name will be prepended to all description
# unit titles (such as .. function::).
#add_module_names = True
# add_module_names = True
# If true, sectionauthor and moduleauthor directives will be shown in the
# output. They are ignored by default.
#show_authors = False
# show_authors = False
# The name of the Pygments (syntax highlighting) style to use.
pygments_style = 'sphinx'
pygments_style = "sphinx"
# A list of ignored prefixes for module index sorting.
#modindex_common_prefix = []
# modindex_common_prefix = []
# If true, keep warnings as "system message" paragraphs in the built documents.
#keep_warnings = False
# keep_warnings = False
# -- Options for HTML output ----------------------------------------------
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
html_theme = 'sphinx_rtd_theme'
html_theme = "sphinx_rtd_theme"
# Theme options are theme-specific and customize the look and feel of a theme
# further. For a list of options available for each theme, see the
# documentation.
#html_theme_options = {}
# html_theme_options = {}
# Add any paths that contain custom themes here, relative to this directory.
html_theme_path = []
# The name for this set of Sphinx documents. If None, it defaults to
# "<project> v<release> documentation".
#html_title = None
# html_title = None
# A shorter title for the navigation bar. Default is the same as html_title.
#html_short_title = None
# html_short_title = None
# The name of an image file (relative to this directory) to place at the top
# of the sidebar.
#html_logo = None
# html_logo = None
# The name of an image file (within the static path) to use as favicon of the
# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
# pixels large.
#html_favicon = None
# html_favicon = None
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['_static']
html_static_path = ["_static"]
# These paths are either relative to html_static_path
# or fully qualified paths (eg. https://...)
html_css_files = [
"css/custom.css",
]
html_js_files = [
"js/darkmode.js",
]
# Add any extra paths that contain custom files (such as robots.txt or
# .htaccess) here, relative to this directory. These files are copied
# directly to the root of the documentation.
#html_extra_path = []
# html_extra_path = []
# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
# using the given strftime format.
#html_last_updated_fmt = '%b %d, %Y'
# html_last_updated_fmt = '%b %d, %Y'
# If true, SmartyPants will be used to convert quotes and dashes to
# typographically correct entities.
#html_use_smartypants = True
# html_use_smartypants = True
# Custom sidebar templates, maps document names to template names.
#html_sidebars = {}
# html_sidebars = {}
# Additional templates that should be rendered to pages, maps page names to
# template names.
#html_additional_pages = {}
# html_additional_pages = {}
# If false, no module index is generated.
#html_domain_indices = True
# html_domain_indices = True
# If false, no index is generated.
#html_use_index = True
# html_use_index = True
# If true, the index is split into individual pages for each letter.
#html_split_index = False
# html_split_index = False
# If true, links to the reST sources are added to the pages.
#html_show_sourcelink = True
# html_show_sourcelink = True
# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
#html_show_sphinx = True
# html_show_sphinx = True
# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
#html_show_copyright = True
# html_show_copyright = True
# If true, an OpenSearch description file will be output, and all pages will
# contain a <link> tag referring to it. The value of this option must be the
# base URL from which the finished HTML is served.
#html_use_opensearch = ''
# html_use_opensearch = ''
# This is the file name suffix for HTML files (e.g. ".xhtml").
#html_file_suffix = None
# html_file_suffix = None
# Output file base name for HTML help builder.
htmlhelp_basename = 'paperless'
htmlhelp_basename = "paperless"
# -- Options for LaTeX output ---------------------------------------------
latex_elements = {
# The paper size ('letterpaper' or 'a4paper').
#'papersize': 'letterpaper',
# The font size ('10pt', '11pt' or '12pt').
#'pointsize': '10pt',
# Additional stuff for the LaTeX preamble.
#'preamble': '',
# The paper size ('letterpaper' or 'a4paper').
#'papersize': 'letterpaper',
# The font size ('10pt', '11pt' or '12pt').
#'pointsize': '10pt',
# Additional stuff for the LaTeX preamble.
#'preamble': '',
}
# Grouping the document tree into LaTeX files. List of tuples
# (source start file, target name, title,
# author, documentclass [howto, manual, or own class]).
latex_documents = [
('index', 'paperless.tex', u'Paperless Documentation',
u'Daniel Quinn', 'manual'),
("index", "paperless.tex", "Paperless Documentation", "Daniel Quinn", "manual"),
]
# The name of an image file (relative to this directory) to place at the top of
# the title page.
#latex_logo = None
# latex_logo = None
# For "manual" documents, if this is true, then toplevel headings are parts,
# not chapters.
#latex_use_parts = False
# latex_use_parts = False
# If true, show page references after internal links.
#latex_show_pagerefs = False
# latex_show_pagerefs = False
# If true, show URL addresses after external links.
#latex_show_urls = False
# latex_show_urls = False
# Documents to append as an appendix to all manuals.
#latex_appendices = []
# latex_appendices = []
# If false, no module index is generated.
#latex_domain_indices = True
# latex_domain_indices = True
# -- Options for manual page output ---------------------------------------
# One entry per manual page. List of tuples
# (source start file, name, description, authors, manual section).
man_pages = [
('index', 'paperless', u'Paperless Documentation',
[u'Daniel Quinn'], 1)
]
man_pages = [("index", "paperless", "Paperless Documentation", ["Daniel Quinn"], 1)]
# If true, show URL addresses after external links.
#man_show_urls = False
# man_show_urls = False
# -- Options for Texinfo output -------------------------------------------
@@ -229,93 +239,99 @@ man_pages = [
# (source start file, target name, title, author,
# dir menu entry, description, category)
texinfo_documents = [
('index', 'Paperless', u'Paperless Documentation',
u'Daniel Quinn', 'paperless', 'Scan, index, and archive all of your paper documents.',
'Miscellaneous'),
(
"index",
"Paperless",
"Paperless Documentation",
"Daniel Quinn",
"paperless",
"Scan, index, and archive all of your paper documents.",
"Miscellaneous",
),
]
# Documents to append as an appendix to all manuals.
#texinfo_appendices = []
# texinfo_appendices = []
# If false, no module index is generated.
#texinfo_domain_indices = True
# texinfo_domain_indices = True
# How to display URL addresses: 'footnote', 'no', or 'inline'.
#texinfo_show_urls = 'footnote'
# texinfo_show_urls = 'footnote'
# If true, do not generate a @detailmenu in the "Top" node's menu.
#texinfo_no_detailmenu = False
# texinfo_no_detailmenu = False
# -- Options for Epub output ----------------------------------------------
# Bibliographic Dublin Core info.
epub_title = u'Paperless'
epub_author = u'Daniel Quinn'
epub_publisher = u'Daniel Quinn'
epub_copyright = u'2015, Daniel Quinn'
epub_title = "Paperless"
epub_author = "Daniel Quinn"
epub_publisher = "Daniel Quinn"
epub_copyright = "2015, Daniel Quinn"
# The basename for the epub file. It defaults to the project name.
#epub_basename = u'Paperless'
# epub_basename = u'Paperless'
# The HTML theme for the epub output. Since the default themes are not optimized
# for small screen space, using the same theme for HTML and epub output is
# usually not wise. This defaults to 'epub', a theme designed to save visual
# space.
#epub_theme = 'epub'
# epub_theme = 'epub'
# The language of the text. It defaults to the language option
# or en if the language is not set.
#epub_language = ''
# epub_language = ''
# The scheme of the identifier. Typical schemes are ISBN or URL.
#epub_scheme = ''
# epub_scheme = ''
# The unique identifier of the text. This can be a ISBN number
# or the project homepage.
#epub_identifier = ''
# epub_identifier = ''
# A unique identification for the text.
#epub_uid = ''
# epub_uid = ''
# A tuple containing the cover image and cover page html template filenames.
#epub_cover = ()
# epub_cover = ()
# A sequence of (type, uri, title) tuples for the guide element of content.opf.
#epub_guide = ()
# epub_guide = ()
# HTML files that should be inserted before the pages created by sphinx.
# The format is a list of tuples containing the path and title.
#epub_pre_files = []
# epub_pre_files = []
# HTML files shat should be inserted after the pages created by sphinx.
# The format is a list of tuples containing the path and title.
#epub_post_files = []
# epub_post_files = []
# A list of files that should not be packed into the epub file.
epub_exclude_files = ['search.html']
epub_exclude_files = ["search.html"]
# The depth of the table of contents in toc.ncx.
#epub_tocdepth = 3
# epub_tocdepth = 3
# Allow duplicate toc entries.
#epub_tocdup = True
# epub_tocdup = True
# Choose between 'default' and 'includehidden'.
#epub_tocscope = 'default'
# epub_tocscope = 'default'
# Fix unsupported image types using the PIL.
#epub_fix_images = False
# epub_fix_images = False
# Scale large images.
#epub_max_image_width = 0
# epub_max_image_width = 0
# How to display URL addresses: 'footnote', 'no', or 'inline'.
#epub_show_urls = 'inline'
# epub_show_urls = 'inline'
# If false, no index is generated.
#epub_use_index = True
# epub_use_index = True
# Example configuration for intersphinx: refer to the Python standard library.
intersphinx_mapping = {'http://docs.python.org/': None}
intersphinx_mapping = {"http://docs.python.org/": None}

View File

@@ -27,11 +27,23 @@ PAPERLESS_REDIS=<url>
This is required for processing scheduled tasks such as email fetching, index
optimization and for training the automatic document matcher.
* If your Redis server needs login credentials PAPERLESS_REDIS = ``redis://<username>:<password>@<host>:<port>``
* With the requirepass option PAPERLESS_REDIS = ``redis://:<password>@<host>:<port>``
`More information on securing your Redis Instance <https://redis.io/docs/getting-started/#securing-redis>`_.
Defaults to redis://localhost:6379.
PAPERLESS_DBENGINE=<engine_name>
Optional, gives the ability to choose Postgres or MariaDB for database engine.
Available options are `postgresql` and `mariadb`.
Default is `postgresql`.
PAPERLESS_DBHOST=<hostname>
By default, sqlite is used as the database backend. This can be changed here.
Set PAPERLESS_DBHOST and PostgreSQL will be used instead of mysql.
Set PAPERLESS_DBHOST and another database will be used instead of sqlite.
PAPERLESS_DBPORT=<port>
Adjust port if necessary.
@@ -39,20 +51,33 @@ PAPERLESS_DBPORT=<port>
Default is 5432.
PAPERLESS_DBNAME=<name>
Database name in PostgreSQL.
Database name in PostgreSQL or MariaDB.
Defaults to "paperless".
PAPERLESS_DBUSER=<name>
Database user in PostgreSQL.
Database user in PostgreSQL or MariaDB.
Defaults to "paperless".
PAPERLESS_DBPASS=<password>
Database password for PostgreSQL.
Database password for PostgreSQL or MariaDB.
Defaults to "paperless".
PAPERLESS_DBSSLMODE=<mode>
SSL mode to use when connecting to PostgreSQL.
See `the official documentation about sslmode <https://www.postgresql.org/docs/current/libpq-ssl.html>`_.
Default is ``prefer``.
PAPERLESS_DB_TIMEOUT=<float>
Amount of time for a database connection to wait for the database to unlock.
Mostly applicable for an sqlite based installation, consider changing to postgresql
if you need to increase this.
Defaults to unset, keeping the Django defaults.
Paths and folders
#################
@@ -66,13 +91,22 @@ PAPERLESS_CONSUMPTION_DIR=<path>
container. Change the local consumption directory in the docker-compose.yml
file instead.
Defaults to "../consume", relative to the "src" directory.
Defaults to "../consume/", relative to the "src" directory.
PAPERLESS_DATA_DIR=<path>
This is where paperless stores all its data (search index, SQLite database,
classification model, etc).
Defaults to "../data", relative to the "src" directory.
Defaults to "../data/", relative to the "src" directory.
PAPERLESS_TRASH_DIR=<path>
Instead of removing deleted documents, they are moved to this directory.
This must be writeable by the user running paperless. When running inside
docker, ensure that this path is within a permanent volume (such as
"../media/trash") so it won't get lost on upgrades.
Defaults to empty (i.e. really delete documents).
PAPERLESS_MEDIA_ROOT=<path>
This is where your documents and thumbnails are stored.
@@ -80,7 +114,7 @@ PAPERLESS_MEDIA_ROOT=<path>
You can set this and PAPERLESS_DATA_DIR to the same folder to have paperless
store all its data within the same volume.
Defaults to "../media", relative to the "src" directory.
Defaults to "../media/", relative to the "src" directory.
PAPERLESS_STATICDIR=<path>
Override the default STATIC_ROOT here. This is where all static files
@@ -88,7 +122,7 @@ PAPERLESS_STATICDIR=<path>
Unless you're doing something fancy, there is no need to override this.
Defaults to "../static", relative to the "src" directory.
Defaults to "../static/", relative to the "src" directory.
PAPERLESS_FILENAME_FORMAT=<format>
Changes the filenames paperless uses to store documents in the media directory.
@@ -96,6 +130,35 @@ PAPERLESS_FILENAME_FORMAT=<format>
Default is none, which disables this feature.
PAPERLESS_FILENAME_FORMAT_REMOVE_NONE=<bool>
Tells paperless to replace placeholders in `PAPERLESS_FILENAME_FORMAT` that would resolve
to 'none' to be omitted from the resulting filename. This also holds true for directory
names.
See :ref:`advanced-file_name_handling` for details.
Defaults to `false` which disables this feature.
PAPERLESS_LOGGING_DIR=<path>
This is where paperless will store log files.
Defaults to "``PAPERLESS_DATA_DIR``/log/".
Logging
#######
PAPERLESS_LOGROTATE_MAX_SIZE=<num>
Maximum file size for log files before they are rotated, in bytes.
Defaults to 1 MiB.
PAPERLESS_LOGROTATE_MAX_BACKUPS=<num>
Number of rotated log files to keep.
Defaults to 20.
.. _hosting-and-security:
Hosting & Security
##################
@@ -108,7 +171,24 @@ PAPERLESS_SECRET_KEY=<key>
Default is listed in the file ``src/paperless/settings.py``.
PAPERLESS_ALLOWED_HOSTS<comma-separated-list>
PAPERLESS_URL=<url>
This setting can be used to set the three options below (ALLOWED_HOSTS,
CORS_ALLOWED_HOSTS and CSRF_TRUSTED_ORIGINS). If the other options are
set the values will be combined with this one. Do not include a trailing
slash. E.g. https://paperless.domain.com
Defaults to empty string, leaving the other settings unaffected.
PAPERLESS_CSRF_TRUSTED_ORIGINS=<comma-separated-list>
A list of trusted origins for unsafe requests (e.g. POST). As of Django 4.0
this is required to access the Django admin via the web.
See https://docs.djangoproject.com/en/4.0/ref/settings/#csrf-trusted-origins
Can also be set using PAPERLESS_URL (see above).
Defaults to empty string, which does not add any origins to the trusted list.
PAPERLESS_ALLOWED_HOSTS=<comma-separated-list>
If you're planning on putting Paperless on the open internet, then you
really should set this value to the domain name you're using. Failing to do
so leaves you open to HTTP host header attacks:
@@ -117,30 +197,40 @@ PAPERLESS_ALLOWED_HOSTS<comma-separated-list>
Just remember that this is a comma-separated list, so "example.com" is fine,
as is "example.com,www.example.com", but NOT " example.com" or "example.com,"
Can also be set using PAPERLESS_URL (see above).
If manually set, please remember to include "localhost". Otherwise docker
healthcheck will fail.
Defaults to "*", which is all hosts.
PAPERLESS_CORS_ALLOWED_HOSTS<comma-separated-list>
PAPERLESS_CORS_ALLOWED_HOSTS=<comma-separated-list>
You need to add your servers to the list of allowed hosts that can do CORS
calls. Set this to your public domain name.
Can also be set using PAPERLESS_URL (see above).
Defaults to "http://localhost:8000".
PAPERLESS_FORCE_SCRIPT_NAME=<path>
To host paperless under a subpath url like example.com/paperless you set
this value to /paperless. No trailing slash!
.. note::
I don't know if this works in paperless-ng. Probably not.
Defaults to none, which hosts paperless at "/".
PAPERLESS_STATIC_URL=<path>
Override the STATIC_URL here. Unless you're hosting Paperless off a
subdomain like /paperless/, you probably don't need to change this.
If you do change it, be sure to include the trailing slash.
Defaults to "/static/".
.. note::
When hosting paperless behind a reverse proxy like Traefik or Nginx at a subpath e.g.
example.com/paperlessngx you will also need to set ``PAPERLESS_FORCE_SCRIPT_NAME``
(see above).
PAPERLESS_AUTO_LOGIN_USERNAME=<username>
Specify a username here so that paperless will automatically perform login
with the selected user.
@@ -152,6 +242,30 @@ PAPERLESS_AUTO_LOGIN_USERNAME=<username>
Defaults to none, which disables this feature.
PAPERLESS_ADMIN_USER=<username>
If this environment variable is specified, Paperless automatically creates
a superuser with the provided username at start. This is useful in cases
where you can not run the `createsuperuser` command separately, such as Kubernetes
or AWS ECS.
Requires `PAPERLESS_ADMIN_PASSWORD` to be set.
.. note::
This will not change an existing [super]user's password, nor will
it recreate a user that already exists. You can leave this throughout
the lifecycle of the containers.
PAPERLESS_ADMIN_MAIL=<email>
(Optional) Specify superuser email address. Only used when
`PAPERLESS_ADMIN_USER` is set.
Defaults to ``root@localhost``.
PAPERLESS_ADMIN_PASSWORD=<password>
Only used when `PAPERLESS_ADMIN_USER` is set.
This will be the password of the automatically created superuser.
PAPERLESS_COOKIE_PREFIX=<str>
Specify a prefix that is added to the cookies used by paperless to identify
@@ -162,6 +276,39 @@ PAPERLESS_COOKIE_PREFIX=<str>
Defaults to ``""``, which does not alter the cookie names.
PAPERLESS_ENABLE_HTTP_REMOTE_USER=<bool>
Allows authentication via HTTP_REMOTE_USER which is used by some SSO
applications.
.. warning::
This will allow authentication by simply adding a ``Remote-User: <username>`` header
to a request. Use with care! You especially *must* ensure that any such header is not
passed from your proxy server to paperless.
If you're exposing paperless to the internet directly, do not use this.
Also see the warning `in the official documentation <https://docs.djangoproject.com/en/3.1/howto/auth-remote-user/#configuration>`.
Defaults to `false` which disables this feature.
PAPERLESS_HTTP_REMOTE_USER_HEADER_NAME=<str>
If `PAPERLESS_ENABLE_HTTP_REMOTE_USER` is enabled, this property allows to
customize the name of the HTTP header from which the authenticated username
is extracted. Values are in terms of
[HttpRequest.META](https://docs.djangoproject.com/en/3.1/ref/request-response/#django.http.HttpRequest.META).
Thus, the configured value must start with `HTTP_` followed by the
normalized actual header name.
Defaults to `HTTP_REMOTE_USER`.
PAPERLESS_LOGOUT_REDIRECT_URL=<str>
URL to redirect the user to after a logout. This can be used together with
`PAPERLESS_ENABLE_HTTP_REMOTE_USER` to redirect the user back to the SSO
application's logout page.
Defaults to None, which disables this feature.
.. _configuration-ocr:
OCR settings
@@ -171,7 +318,6 @@ Paperless uses `OCRmyPDF <https://ocrmypdf.readthedocs.io/en/latest/>`_ for
performing OCR on documents and images. Paperless uses sensible defaults for
most settings, but all of them can be configured to your needs.
PAPERLESS_OCR_LANGUAGE=<lang>
Customize the language that paperless will attempt to use when
parsing documents.
@@ -188,6 +334,8 @@ PAPERLESS_OCR_LANGUAGE=<lang>
Defaults to "eng".
Note: If your language contains a '-' such as chi-sim, you must use chi_sim
PAPERLESS_OCR_MODE=<mode>
Tell paperless when and how to perform ocr on your documents. Four modes
are available:
@@ -210,20 +358,68 @@ PAPERLESS_OCR_MODE=<mode>
into images and puts the OCRed text on top. This works for all documents,
however, the resulting document may be significantly larger and text
won't appear as sharp when zoomed in.
The default is ``skip``, which only performs OCR when necessary and always
creates archived documents.
Read more about this in the `OCRmyPDF documentation <https://ocrmypdf.readthedocs.io/en/latest/advanced.html#when-ocr-is-skipped>`_.
PAPERLESS_OCR_CLEAN=<mode>
Tells paperless to use ``unpaper`` to clean any input document before
sending it to tesseract. This uses more resources, but generally results
in better OCR results. The following modes are available:
* ``clean``: Apply unpaper.
* ``clean-final``: Apply unpaper, and use the cleaned images to build the
output file instead of the original images.
* ``none``: Do not apply unpaper.
Defaults to ``clean``.
.. note::
``clean-final`` is incompatible with ocr mode ``redo``. When both
``clean-final`` and the ocr mode ``redo`` is configured, ``clean``
is used instead.
PAPERLESS_OCR_DESKEW=<bool>
Tells paperless to correct skewing (slight rotation of input images mainly
due to improper scanning)
Defaults to ``true``, which enables this feature.
.. note::
Deskewing is incompatible with ocr mode ``redo``. Deskewing will get
disabled automatically if ``redo`` is used as the ocr mode.
PAPERLESS_OCR_ROTATE_PAGES=<bool>
Tells paperless to correct page rotation (90°, 180° and 270° rotation).
If you notice that paperless is not rotating incorrectly rotated
pages (or vice versa), try adjusting the threshold up or down (see below).
Defaults to ``true``, which enables this feature.
PAPERLESS_OCR_ROTATE_PAGES_THRESHOLD=<num>
Adjust the threshold for automatic page rotation by ``PAPERLESS_OCR_ROTATE_PAGES``.
This is an arbitrary value reported by tesseract. "15" is a very conservative value,
whereas "2" is a very aggressive option and will often result in correctly rotated pages
being rotated as well.
Defaults to "12".
PAPERLESS_OCR_OUTPUT_TYPE=<type>
Specify the the type of PDF documents that paperless should produce.
* ``pdf``: Modify the PDF document as little as possible.
* ``pdfa``: Convert PDF documents into PDF/A-2b documents, which is a
subset of the entire PDF specification and meant for storing
documents long term.
* ``pdfa-1``, ``pdfa-2``, ``pdfa-3`` to specify the exact version of
PDF/A you wish to use.
If not specified, ``pdfa`` is used. Remember that paperless also keeps
the original input file as well as the archived version.
@@ -240,7 +436,6 @@ PAPERLESS_OCR_PAGES=<num>
Defaults to 0, which disables this feature and always uses all pages.
PAPERLESS_OCR_IMAGE_DPI=<num>
Paperless will OCR any images you put into the system and convert them
into PDF documents. This is useful if your scanner produces images.
@@ -251,17 +446,35 @@ PAPERLESS_OCR_IMAGE_DPI=<num>
Set this to the DPI your scanner produces images at.
Default is none, which causes paperless to fail if no DPI information is
present in an image.
Default is none, which will automatically calculate image DPI so that
the produced PDF documents are A4 sized.
PAPERLESS_OCR_MAX_IMAGE_PIXELS=<num>
Paperless will raise a warning when OCRing images which are over this limit and
will not OCR images which are more than twice this limit. Note this does not
prevent the document from being consumed, but could result in missing text content.
PAPERLESS_OCR_USER_ARG=<json>
If unset, will default to the value determined by
`Pillow <https://pillow.readthedocs.io/en/stable/reference/Image.html#PIL.Image.MAX_IMAGE_PIXELS>`_.
.. note::
Increasing this limit could cause Paperless to consume additional resources
when consuming a file. Be sure you have sufficient system resources.
.. caution::
The limit is intended to prevent malicious files from consuming system resources
and causing crashes and other errors. Only increase this value if you are certain
your documents are not malicious and you need the text which was not OCRed
PAPERLESS_OCR_USER_ARGS=<json>
OCRmyPDF offers many more options. Use this parameter to specify any
additional arguments you wish to pass to OCRmyPDF. Since Paperless uses
the API of OCRmyPDF, you have to specify these in a format that can be
passed to the API. See `the API reference of OCRmyPDF <https://ocrmypdf.readthedocs.io/en/latest/api.html#reference>`_
for valid parameters. All command line options are supported, but they
use underscores instead of dashed.
use underscores instead of dashes.
.. caution::
@@ -275,9 +488,72 @@ PAPERLESS_OCR_USER_ARG=<json>
.. code:: json
{"deskew": true, "optimize": 3, "unpaper_args": "--pre-rotate 90"}
{"deskew": true, "optimize": 3, "unpaper_args": "--pre-rotate 90"}
.. _configuration-tika:
Tika settings
#############
Paperless can make use of `Tika <https://tika.apache.org/>`_ and
`Gotenberg <https://gotenberg.dev/>`_ for parsing and
converting "Office" documents (such as ".doc", ".xlsx" and ".odt"). If you
wish to use this, you must provide a Tika server and a Gotenberg server,
configure their endpoints, and enable the feature.
PAPERLESS_TIKA_ENABLED=<bool>
Enable (or disable) the Tika parser.
Defaults to false.
PAPERLESS_TIKA_ENDPOINT=<url>
Set the endpoint URL were Paperless can reach your Tika server.
Defaults to "http://localhost:9998".
PAPERLESS_TIKA_GOTENBERG_ENDPOINT=<url>
Set the endpoint URL were Paperless can reach your Gotenberg server.
Defaults to "http://localhost:3000".
If you run paperless on docker, you can add those services to the docker-compose
file (see the provided ``docker-compose.sqlite-tika.yml`` file for reference). The changes
requires are as follows:
.. code:: yaml
services:
# ...
webserver:
# ...
environment:
# ...
PAPERLESS_TIKA_ENABLED: 1
PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://gotenberg:3000
PAPERLESS_TIKA_ENDPOINT: http://tika:9998
# ...
gotenberg:
image: gotenberg/gotenberg:7.4
restart: unless-stopped
command:
- "gotenberg"
- "--chromium-disable-routes=true"
tika:
image: ghcr.io/paperless-ngx/tika:latest
restart: unless-stopped
Add the configuration variables to the environment of the webserver (alternatively
put the configuration in the ``docker-compose.env`` file) and add the additional
services below the webserver service. Watch out for indentation.
Make sure to use the correct format `PAPERLESS_TIKA_ENABLED = 1` so python_dotenv can parse the statement correctly.
Software tweaks
###############
@@ -286,6 +562,8 @@ PAPERLESS_TASK_WORKERS=<num>
maintain the automatic matching algorithm, check emails, consume documents,
etc. This variable specifies how many things it will do in parallel.
Defaults to 1
PAPERLESS_THREADS_PER_WORKER=<num>
Furthermore, paperless uses multiple threads when consuming documents to
@@ -304,13 +582,40 @@ PAPERLESS_THREADS_PER_WORKER=<num>
use a higher thread per worker count.
The default is a balance between the two, according to your CPU core count,
with a slight favor towards threads per worker, and using as much cores as
possible.
with a slight favor towards threads per worker:
+----------------+---------+---------+
| CPU core count | Workers | Threads |
+----------------+---------+---------+
| 1 | 1 | 1 |
+----------------+---------+---------+
| 2 | 2 | 1 |
+----------------+---------+---------+
| 4 | 2 | 2 |
+----------------+---------+---------+
| 6 | 2 | 3 |
+----------------+---------+---------+
| 8 | 2 | 4 |
+----------------+---------+---------+
| 12 | 3 | 4 |
+----------------+---------+---------+
| 16 | 4 | 4 |
+----------------+---------+---------+
If you only specify PAPERLESS_TASK_WORKERS, paperless will adjust
PAPERLESS_THREADS_PER_WORKER automatically.
PAPERLESS_WORKER_TIMEOUT=<num>
Machines with few cores or weak ones might not be able to finish OCR on
large documents within the default 1800 seconds. So extending this timeout
may prove to be useful on weak hardware setups.
PAPERLESS_WORKER_RETRY=<num>
If PAPERLESS_WORKER_TIMEOUT has been configured, the retry time for a task can
also be configured. By default, this value will be set to 10s more than the
worker timeout. This value should never be set less than the worker timeout.
PAPERLESS_TIME_ZONE=<timezone>
Set the time zone here.
See https://docs.djangoproject.com/en/3.1/ref/settings/#std:setting-TIME_ZONE
@@ -319,14 +624,39 @@ PAPERLESS_TIME_ZONE=<timezone>
Defaults to UTC.
.. _configuration-polling:
PAPERLESS_CONSUMER_POLLING=<num>
If paperless won't find documents added to your consume folder, it might
not be able to automatically detect filesystem changes. In that case,
specify a polling interval in seconds here, which will then cause paperless
to periodically check your consumption directory for changes.
to periodically check your consumption directory for changes. This will also
disable listening for file system changes with ``inotify``.
Defaults to 0, which disables polling and uses filesystem notifications.
PAPERLESS_CONSUMER_POLLING_RETRY_COUNT=<num>
If consumer polling is enabled, sets the number of times paperless will check for a
file to remain unmodified.
Defaults to 5.
PAPERLESS_CONSUMER_POLLING_DELAY=<num>
If consumer polling is enabled, sets the delay in seconds between each check (above) paperless
will do while waiting for a file to remain unmodified.
Defaults to 5.
.. _configuration-inotify:
PAPERLESS_CONSUMER_INOTIFY_DELAY=<num>
Sets the time in seconds the consumer will wait for additional events
from inotify before the consumer will consider a file ready and begin consumption.
Certain scanners or network setups may generate multiple events for a single file,
leading to multiple consumers working on the same file. Configure this to
prevent that.
Defaults to 0.5 seconds.
PAPERLESS_CONSUMER_DELETE_DUPLICATES=<bool>
When the consumer detects a duplicate document, it will not touch the
@@ -348,10 +678,44 @@ PAPERLESS_CONSUMER_SUBDIRS_AS_TAGS=<bool>
E.g. <CONSUMPTION_DIR>/foo/bar/file.pdf will add the tags "foo" and "bar" to
the consumed file. Paperless will create any tags that don't exist yet.
This is useful for sorting documents with certain tags such as ``car`` or
``todo`` prior to consumption. These folders won't be deleted.
PAPERLESS_CONSUMER_RECURSIVE must be enabled for this to work.
Defaults to false.
PAPERLESS_CONSUMER_ENABLE_BARCODES=<bool>
Enables the scanning and page separation based on detected barcodes.
This allows for scanning and adding multiple documents per uploaded
file, which are separated by one or multiple barcode pages.
For ease of use, it is suggested to use a standardized separation page,
e.g. `here <https://www.alliancegroup.co.uk/patch-codes.htm>`_.
If no barcodes are detected in the uploaded file, no page separation
will happen.
The original document will be removed and the separated pages will be
saved as pdf.
Defaults to false.
PAPERLESS_CONSUMER_BARCODE_TIFF_SUPPORT=<bool>
Whether TIFF image files should be scanned for barcodes.
This will automatically convert any TIFF image(s) to pdfs for later
processing.
This only has an effect, if PAPERLESS_CONSUMER_ENABLE_BARCODES has been
enabled.
Defaults to false.
PAPERLESS_CONSUMER_BARCODE_STRING=PATCHT
Defines the string to be detected as a separator barcode.
If paperless is used with the PATCH-T separator pages, users
shouldn't change this.
Defaults to "PATCHT"
PAPERLESS_CONVERT_MEMORY_LIMIT=<num>
On smaller systems, or even in the case of Very Large Documents, the consumer
@@ -376,13 +740,6 @@ PAPERLESS_CONVERT_TMPDIR=<path>
Default is none, which disables the temporary directory.
PAPERLESS_OPTIMIZE_THUMBNAILS=<bool>
Use optipng to optimize thumbnails. This usually reduces the size of
thumbnails by about 20%, but uses considerable compute time during
consumption.
Defaults to true.
PAPERLESS_POST_CONSUME_SCRIPT=<filename>
After a document is consumed, Paperless can trigger an arbitrary script if
you like. This script will be passed a number of arguments for you to work
@@ -398,8 +755,57 @@ PAPERLESS_FILENAME_DATE_ORDER=<format>
The filename will be checked first, and if nothing is found, the document
text will be checked as normal.
A date in a filename must have some separators (`.`, `-`, `/`, etc)
for it to be parsed.
Defaults to none, which disables this feature.
PAPERLESS_NUMBER_OF_SUGGESTED_DATES=<num>
Paperless searches an entire document for dates. The first date found will
be used as the initial value for the created date. When this variable is
greater than 0 (or left to it's default value), paperless will also suggest
other dates found in the document, up to a maximum of this setting. Note that
duplicates will be removed, which can result in fewer dates displayed in the
frontend than this setting value.
The task to find all dates can be time-consuming and increases with a higher
(maximum) number of suggested dates and slower hardware.
Defaults to 3. Set to 0 to disable this feature.
PAPERLESS_THUMBNAIL_FONT_NAME=<filename>
Paperless creates thumbnails for plain text files by rendering the content
of the file on an image and uses a predefined font for that. This
font can be changed here.
Note that this won't have any effect on already generated thumbnails.
Defaults to ``/usr/share/fonts/liberation/LiberationSerif-Regular.ttf``.
PAPERLESS_IGNORE_DATES=<string>
Paperless parses a documents creation date from filename and file content.
You may specify a comma separated list of dates that should be ignored during
this process. This is useful for special dates (like date of birth) that appear
in documents regularly but are very unlikely to be the documents creation date.
The date is parsed using the order specified in PAPERLESS_DATE_ORDER
Defaults to an empty string to not ignore any dates.
PAPERLESS_DATE_ORDER=<format>
Paperless will try to determine the document creation date from its contents.
Specify the date format Paperless should expect to see within your documents.
This option defaults to DMY which translates to day first, month second, and year
last order. Characters D, M, or Y can be shuffled to meet the required order.
PAPERLESS_CONSUMER_IGNORE_PATTERNS=<json>
By default, paperless ignores certain files and folders in the consumption
directory, such as system files created by the Mac OS.
This can be adjusted by configuring a custom json array with patterns to exclude.
Defaults to ``[".DS_STORE/*", "._*", ".stfolder/*", ".stversions/*", ".localized/*", "desktop.ini"]``.
Binaries
########
@@ -412,10 +818,108 @@ the program doesn't automatically execute it (ie. the program isn't in your
$PATH), then you'll need to specify the literal path for that program.
PAPERLESS_CONVERT_BINARY=<path>
Defaults to "/usr/bin/convert".
Defaults to "convert".
PAPERLESS_GS_BINARY=<path>
Defaults to "/usr/bin/gs".
Defaults to "gs".
PAPERLESS_OPTIPNG_BINARY=<path>
Defaults to "/usr/bin/optipng".
.. _configuration-docker:
Docker-specific options
#######################
These options don't have any effect in ``paperless.conf``. These options adjust
the behavior of the docker container. Configure these in `docker-compose.env`.
PAPERLESS_WEBSERVER_WORKERS=<num>
The number of worker processes the webserver should spawn. More worker processes
usually result in the front end to load data much quicker. However, each worker process
also loads the entire application into memory separately, so increasing this value
will increase RAM usage.
Defaults to 1.
PAPERLESS_BIND_ADDR=<ip address>
The IP address the webserver will listen on inside the container. There are
special setups where you may need to configure this value to restrict the
Ip address or interface the webserver listens on.
Defaults to [::], meaning all interfaces, including IPv6.
PAPERLESS_PORT=<port>
The port number the webserver will listen on inside the container. There are
special setups where you may need this to avoid collisions with other
services (like using podman with multiple containers in one pod).
Don't change this when using Docker. To change the port the webserver is
reachable outside of the container, instead refer to the "ports" key in
``docker-compose.yml``.
Defaults to 8000.
USERMAP_UID=<uid>
The ID of the paperless user in the container. Set this to your actual user ID on the
host system, which you can get by executing
.. code:: shell-session
$ id -u
Paperless will change ownership on its folders to this user, so you need to get this right
in order to be able to write to the consumption directory.
Defaults to 1000.
USERMAP_GID=<gid>
The ID of the paperless Group in the container. Set this to your actual group ID on the
host system, which you can get by executing
.. code:: shell-session
$ id -g
Paperless will change ownership on its folders to this group, so you need to get this right
in order to be able to write to the consumption directory.
Defaults to 1000.
PAPERLESS_OCR_LANGUAGES=<list>
Additional OCR languages to install. By default, paperless comes with
English, German, Italian, Spanish and French. If your language is not in this list, install
additional languages with this configuration option:
.. code:: bash
PAPERLESS_OCR_LANGUAGES=tur ces
To actually use these languages, also set the default OCR language of paperless:
.. code:: bash
PAPERLESS_OCR_LANGUAGE=tur
Defaults to none, which does not install any additional languages.
.. _configuration-update-checking:
Update Checking
###############
PAPERLESS_ENABLE_UPDATE_CHECK=<bool>
Enable (or disable) the automatic check for available updates. This feature is disabled
by default but if it is not explicitly set Paperless-ngx will show a message about this.
If enabled, the feature works by pinging the the Github API for the latest release e.g.
https://api.github.com/repos/paperless-ngx/paperless-ngx/releases/latest
to determine whether a new version is available.
Actual updating of the app must still be performed manually.
Note that for users of thirdy-party containers e.g. linuxserver.io this notification
may be 'ahead' of a new release from the third-party maintainers.
In either case, no tracking data is collected by the app in any way.
Defaults to none, which disables the feature.

View File

@@ -1,145 +0,0 @@
.. _contributing:
Contributing to Paperless
#########################
.. warning::
This section is not updated to paperless-ng yet.
Maybe you've been using Paperless for a while and want to add a feature or two,
or maybe you've come across a bug that you have some ideas how to solve. The
beauty of Free software is that you can see what's wrong and help to get it
fixed for everyone!
How to Get Your Changes Rolled Into Paperless
=============================================
If you've found a bug, but don't know how to fix it, you can always post an
issue on `GitHub`_ in the hopes that someone will have the time to fix it for
you. If however you're the one with the time, pull requests are always
welcome, you just have to make sure that your code conforms to a few standards:
Pep8
----
It's the standard for all Python development, so it's `very well documented`_.
The short version is:
* Lines should wrap at 79 characters
* Use ``snake_case`` for variables, ``CamelCase`` for classes, and ``ALL_CAPS``
for constants.
* Space out your operators: ``stuff + 7`` instead of ``stuff+7``
* Two empty lines between classes, and functions, but 1 empty line between
class methods.
There's more to it than that, but if you follow those, you'll probably be
alright. When you submit your pull request, there's a pep8 checker that'll
look at your code to see if anything is off. If it finds anything, it'll
complain at you until you fix it.
Additional Style Guides
-----------------------
Where pep8 is ambiguous, I've tried to be a little more specific. These rules
aren't hard-and-fast, but if you can conform to them, I'll appreciate it and
spend less time trying to conform your PR before merging:
Function calls
..............
If you're calling a function and that necessitates more than one line of code,
please format it like this:
.. code:: python
my_function(
argument1,
kwarg1="x",
kwarg2="y"
another_really_long_kwarg="some big value"
a_kwarg_calling_another_long_function=another_function(
another_arg,
another_kwarg="kwarg!"
)
)
This is all in the interest of code uniformity rather than anything else. If
we stick to a style, everything is understandable in the same way.
Quoting Strings
...............
pep8 is a little too open-minded on this for my liking. Python strings should
be quoted with double quotes (``"``) except in cases where the resulting string
would require too much escaping of a double quote, in which case, a single
quoted, or triple-quoted string will do:
.. code:: python
my_string = "This is my string"
problematic_string = 'This is a "string" with "quotes" in it'
In HTML templates, please use double-quotes for tag attributes, and single
quotes for arguments passed to Django template tags:
.. code:: html
<div class="stuff">
<a href="{% url 'some-url-name' pk='w00t' %}">link this</a>
</div>
This is to keep linters happy they look at an HTML file and see an attribute
closing the ``"`` before it should have been.
--
That's all there is in terms of guidelines, so I hope it's not too daunting.
Indentation & Spacing
.....................
When it comes to indentation:
* For Python, the rule is: follow pep8 and use 4 spaces.
* For Javascript, CSS, and HTML, please use 1 tab.
Additionally, Django templates making use of block elements like ``{% if %}``,
``{% for %}``, and ``{% block %}`` etc. should be indented:
Good:
.. code:: html
{% block stuff %}
<h1>This is the stuff</h1>
{% endblock %}
Bad:
.. code:: html
{% block stuff %}
<h1>This is the stuff</h1>
{% endblock %}
The Code of Conduct
===================
Paperless has a `code of conduct`_. It's a lot like the other ones you see out
there, with a few small changes, but basically it boils down to:
> Don't be an ass, or you might get banned.
I'm proud to say that the CoC has never had to be enforced because everyone has
been awesome, friendly, and professional.
.. _GitHub: https://github.com/the-paperless-project/paperless/issues
.. _very well documented: https://www.python.org/dev/peps/pep-0008/
.. _code of conduct: https://github.com/the-paperless-project/paperless/blob/master/CODE_OF_CONDUCT.md

View File

@@ -1,75 +1,163 @@
.. _extending:
Paperless development
#####################
Paperless-ngx Development
#########################
This section describes the steps you need to take to start development on paperless-ng.
This section describes the steps you need to take to start development on paperless-ngx.
1. Check out the source from github. The repository is organized in the following way:
Check out the source from github. The repository is organized in the following way:
* ``master`` always represents the latest release and will only see changes
when a new release is made.
* ``dev`` contains the code that will be in the next release.
* ``feature-X`` contain bigger changes that will be in some release, but not
necessarily the next one.
Apart from that, the folder structure is as follows:
* ``main`` always represents the latest release and will only see changes
when a new release is made.
* ``dev`` contains the code that will be in the next release.
* ``feature-X`` contain bigger changes that will be in some release, but not
necessarily the next one.
* ``docs/`` - Documentation.
* ``src-ui/`` - Code of the front end.
* ``src/`` - Code of the back end.
* ``scripts/`` - Various scripts that help with different parts of development.
* ``docker/`` - Files required to build the docker image.
When making functional changes to paperless, *always* make your changes on the ``dev`` branch.
2. Install some dependencies.
Apart from that, the folder structure is as follows:
* Python 3.6.
* All dependencies listed in the :ref:`Bare metal route <setup-bare_metal>`
* redis. You can either install redis or use the included scritps/start-redis.sh
to use docker to fire up a redis instance.
* ``docs/`` - Documentation.
* ``src-ui/`` - Code of the front end.
* ``src/`` - Code of the back end.
* ``scripts/`` - Various scripts that help with different parts of development.
* ``docker/`` - Files required to build the docker image.
Contributing to Paperless
=========================
Maybe you've been using Paperless for a while and want to add a feature or two,
or maybe you've come across a bug that you have some ideas how to solve. The
beauty of open source software is that you can see what's wrong and help to get
it fixed for everyone!
Before contributing please review our `code of conduct`_ and other important
information in the `contributing guidelines`_.
.. _code-formatting-with-pre-commit-hooks:
Code formatting with pre-commit Hooks
=====================================
To ensure a consistent style and formatting across the project source, the project
utilizes a Git `pre-commit` hook to perform some formatting and linting before a
commit is allowed. That way, everyone uses the same style and some common issues
can be caught early on. See below for installation instructions.
Once installed, hooks will run when you commit. If the formatting isn't quite right
or a linter catches something, the commit will be rejected. You'll need to look at the
output and fix the issue. Some hooks, such as the Python formatting tool `black`,
will format failing files, so all you need to do is `git add` those files again and
retry your commit.
Initial setup and first start
=============================
After you forked and cloned the code from github you need to perform a first-time setup.
To do the setup you need to perform the steps from the following chapters in a certain order:
1. Install prerequisites + pipenv as mentioned in :ref:`Bare metal route <setup-bare_metal>`
2. Copy ``paperless.conf.example`` to ``paperless.conf`` and enable debug mode.
3. Install the Angular CLI interface:
.. code:: shell-session
$ npm install -g @angular/cli
4. Install pre-commit
.. code:: shell-session
pre-commit install
5. Create ``consume`` and ``media`` folders in the cloned root folder.
.. code:: shell-session
mkdir -p consume media
6. You can now either ...
* install redis or
* use the included scripts/start-services.sh to use docker to fire up a redis instance (and some other services such as tika, gotenberg and a database server) or
* spin up a bare redis container
.. code:: shell-session
docker run -d -p 6379:6379 --restart unless-stopped redis:latest
7. Install the python dependencies by performing in the src/ directory.
.. code:: shell-session
pipenv install --dev
* Make sure you're using python 3.9.x or lower. Otherwise you might get issues with building dependencies. You can use `pyenv <https://github.com/pyenv/pyenv>`_ to install a specific python version.
8. Generate the static UI so you can perform a login to get session that is required for frontend development (this needs to be done one time only). From src-ui directory:
.. code:: shell-session
npm install .
./node_modules/.bin/ng build --configuration production
9. Apply migrations and create a superuser for your dev instance:
.. code:: shell-session
python3 manage.py migrate
python3 manage.py createsuperuser
10. Now spin up the dev backend. Depending on which part of paperless you're developing for, you need to have some or all of them running.
.. code:: shell-session
python3 manage.py runserver & python3 manage.py document_consumer & python3 manage.py qcluster
11. Login with the superuser credentials provided in step 8 at ``http://localhost:8000`` to create a session that enables you to use the backend.
Backend development environment is now ready, to start Frontend development go to ``/src-ui`` and run ``ng serve``. From there you can use ``http://localhost:4200`` for a preview.
Back end development
====================
The backend is a django application. I use PyCharm for development, but you can use whatever
The backend is a django application. PyCharm works well for development, but you can use whatever
you want.
Install the python dependencies by performing ``pipenv install --dev`` in the src/ directory.
This will also create a virtual environment, which you can enter with ``pipenv shell`` or
execute one-shot commands in with ``pipenv run``.
In ``src/paperless.conf``, enable debug mode.
Configure the IDE to use the src/ folder as the base source folder. Configure the following
launch configurations in your IDE:
* python3 manage.py runserver
* python3 manage.py qcluster
* python3 manage.py consumer
* python3 manage.py document_consumer
Depending on which part of paperless you're developing for, you need to have some or all of
them running.
To start them all:
.. code:: shell-session
python3 manage.py runserver & python3 manage.py document_consumer & python3 manage.py qcluster
Testing and code style:
* Run ``pytest`` in the src/ directory to execute all tests. This also generates a HTML coverage
report. When runnings test, paperless.conf is loaded as well. However: the tests rely on the default
configuration. This is not ideal. But for now, make sure no settings except for DEBUG are overridden when testing.
* Run ``pycodestyle`` to test your code for issues with the configured code style settings.
* Coding style is enforced by the Git pre-commit hooks. These will ensure your code is formatted and do some
linting when you do a `git commit`.
* You can also run ``black`` manually to format your code
.. note::
The line length rule E501 is generally useful for getting multiple source files
next to each other on the screen. However, in some cases, its just not possible
to make some lines fit, especially complicated IF cases. Append `` # NOQA: E501``
to make some lines fit, especially complicated IF cases. Append ``# NOQA: E501``
to disable this check for certain lines.
Front end development
=====================
The front end is build using angular. I use the ``Code - OSS`` IDE for development.
In order to get started, you need ``npm``. Install the Angular CLI interface with
The front end is built using Angular. In order to get started, you need ``npm``.
Install the Angular CLI interface with
.. code:: shell-session
@@ -98,22 +186,165 @@ X-Frame-Options are in place so that the front end behaves exactly as in product
relies on you being logged into the back end. Without a valid session, The front end will simply
not work.
Testing and code style:
* The frontend code (.ts, .html, .scss) use ``prettier`` for code formatting via the Git
``pre-commit`` hooks which run automatically on commit. See
:ref:`above <code-formatting-with-pre-commit-hooks>` for installation. You can also run this
via cli with a command such as
.. code:: shell-session
$ git ls-files -- '*.ts' | xargs pre-commit run prettier --files
* Frontend testing uses jest and cypress. There is currently a need for significantly more
frontend tests. Unit tests and e2e tests, respectively, can be run non-interactively with:
.. code:: shell-session
$ ng test
$ npm run e2e:ci
Cypress also includes a UI which can be run from within the ``src-ui`` directory with
.. code:: shell-session
$ ./node_modules/.bin/cypress open
In order to build the front end and serve it as part of django, execute
.. code:: shell-session
$ ng build --prod --output-path ../src/documents/static/frontend/
$ ng build --prod
This will build the front end and put it in a location from which the Django server will serve
it as static content. This way, you can verify that authentication is working.
Making a release
================
Execute the ``make-release.sh <ver>`` script.
Localization
============
This will test and assemble everything and also build and tag a docker image.
Paperless is available in many different languages. Since paperless consists both of a django
application and an Angular front end, both these parts have to be translated separately.
Front end localization
----------------------
* The Angular front end does localization according to the `Angular documentation <https://angular.io/guide/i18n>`_.
* The source language of the project is "en_US".
* The source strings end up in the file "src-ui/messages.xlf".
* The translated strings need to be placed in the "src-ui/src/locale/" folder.
* In order to extract added or changed strings from the source files, call ``ng xi18n --ivy``.
Adding new languages requires adding the translated files in the "src-ui/src/locale/" folder and adjusting a couple files.
1. Adjust "src-ui/angular.json":
.. code:: json
"i18n": {
"sourceLocale": "en-US",
"locales": {
"de": "src/locale/messages.de.xlf",
"nl-NL": "src/locale/messages.nl_NL.xlf",
"fr": "src/locale/messages.fr.xlf",
"en-GB": "src/locale/messages.en_GB.xlf",
"pt-BR": "src/locale/messages.pt_BR.xlf",
"language-code": "language-file"
}
}
2. Add the language to the available options in "src-ui/src/app/services/settings.service.ts":
.. code:: typescript
getLanguageOptions(): LanguageOption[] {
return [
{code: "en-us", name: $localize`English (US)`, englishName: "English (US)", dateInputFormat: "mm/dd/yyyy"},
{code: "en-gb", name: $localize`English (GB)`, englishName: "English (GB)", dateInputFormat: "dd/mm/yyyy"},
{code: "de", name: $localize`German`, englishName: "German", dateInputFormat: "dd.mm.yyyy"},
{code: "nl", name: $localize`Dutch`, englishName: "Dutch", dateInputFormat: "dd-mm-yyyy"},
{code: "fr", name: $localize`French`, englishName: "French", dateInputFormat: "dd/mm/yyyy"},
{code: "pt-br", name: $localize`Portuguese (Brazil)`, englishName: "Portuguese (Brazil)", dateInputFormat: "dd/mm/yyyy"}
// Add your new language here
]
}
``dateInputFormat`` is a special string that defines the behavior of the date input fields and absolutely needs to contain "dd", "mm" and "yyyy".
3. Import and register the Angular data for this locale in "src-ui/src/app/app.module.ts":
.. code:: typescript
import localeDe from '@angular/common/locales/de';
registerLocaleData(localeDe)
Back end localization
---------------------
A majority of the strings that appear in the back end appear only when the admin is used. However,
some of these are still shown on the front end (such as error messages).
* The django application does localization according to the `django documentation <https://docs.djangoproject.com/en/3.1/topics/i18n/translation/>`_.
* The source language of the project is "en_US".
* Localization files end up in the folder "src/locale/".
* In order to extract strings from the application, call ``python3 manage.py makemessages -l en_US``. This is important after making changes to translatable strings.
* The message files need to be compiled for them to show up in the application. Call ``python3 manage.py compilemessages`` to do this. The generated files don't get
committed into git, since these are derived artifacts. The build pipeline takes care of executing this command.
Adding new languages requires adding the translated files in the "src/locale/" folder and adjusting the file "src/paperless/settings.py" to include the new language:
.. code:: python
LANGUAGES = [
("en-us", _("English (US)")),
("en-gb", _("English (GB)")),
("de", _("German")),
("nl-nl", _("Dutch")),
("fr", _("French")),
("pt-br", _("Portuguese (Brazil)")),
# Add language here.
]
Building the documentation
==========================
The documentation is built using sphinx. I've configured ReadTheDocs to automatically build
the documentation when changes are pushed. If you want to build the documentation locally,
this is how you do it:
1. Install python dependencies.
.. code:: shell-session
$ cd /path/to/paperless
$ pipenv install --dev
2. Build the documentation
.. code:: shell-session
$ cd /path/to/paperless/docs
$ pipenv run make clean html
This will build the HTML documentation, and put the resulting files in the ``_build/html``
directory.
Building the Docker image
=========================
The docker image is primarily built by the GitHub actions workflow, but it can be
faster when developing to build and tag an image locally.
To provide the build arguments automatically, build the image using the helper
script ``build-docker-image.sh``.
Building the docker image from source:
.. code:: shell-session
./build-docker-image.sh Dockerfile -t <your-tag>
Extending Paperless
===================
@@ -149,7 +380,7 @@ methods ``parse`` and ``get_thumbnail``. You can provide your own implementation
# The content of the document.
self.text = "content"
# Optional: path to a PDF document that you created from the original.
self.archive_path = os.path.join(self.tempdir, "archived.pdf")
@@ -195,3 +426,6 @@ that returns information about your parser:
download. We could guess that from the file extensions, but some mime types have many extensions
associated with them and the python methods responsible for guessing the extension do not always
return the same value.
.. _code of conduct: https://github.com/paperless-ngx/paperless-ngx/blob/main/CODE_OF_CONDUCT.md
.. _contributing guidelines: https://github.com/paperless-ngx/paperless-ngx/blob/main/CONTRIBUTING.md

View File

@@ -3,17 +3,13 @@
Frequently asked questions
**************************
**Q:** *What's the general plan for Paperless-ng?*
**Q:** *What's the general plan for Paperless-ngx?*
**A:** Paperless-ng is already almost feature-complete. This project will remain
as simple as it is right now. It will see improvements to features that are already there.
If you need advanced features such as document versions,
workflows or multi-user with customizable access to individual files, this is
not the tool for you.
Features that *are* planned are some more quality of life extensions for the searching
(i.e., search for similar documents, group results by correspondents with "more from this"
links, etc), bulk editing and hierarchical tags.
**A:** While Paperless-ngx is already considered largely "feature-complete" it is a community-driven
project and development will be guided in this way. New features can be submitted via
GitHub discussions and "up-voted" by the community but this is not a guarantee the feature
will be implemented. This project will always be open to collaboration in the form of PRs,
ideas etc.
**Q:** *I'm using docker. Where are my documents?*
@@ -33,56 +29,62 @@ is
files around manually. This folder is meant to be entirely managed by docker
and paperless.
**Q:** *Let's say you don't support this project anymore in a year. Can I easily move to other systems?*
**Q:** *Let's say I want to switch tools in a year. Can I easily move to other systems?*
**A:** Your documents are stored as plain files inside the media folder. You can always drag those files
out of that folder to use them elsewhere. Here are a couple notes about that.
* Paperless never modifies your original documents. It keeps checksums of all documents and uses a
* Paperless-ngx never modifies your original documents. It keeps checksums of all documents and uses a
scheduled sanity checker to check that they remain the same.
* By default, paperless uses the internal ID of each document as its filename. This might not be very
convenient for export. However, you can adjust the way files are stored in paperless by
:ref:`configuring the filename format <advanced-file_name_handling>`.
* :ref:`The exporter <utilities-exporter>` is another easy way to get your files out of paperless with reasonable file names.
**Q:** *What file types does paperless-ng support?*
**Q:** *What file types does paperless-ngx support?*
**A:** Currently, the following files are supported:
* PDF documents, PNG images, JPEG images, TIFF images and GIF images are processed with OCR and converted into PDF documents.
* Plain text documents are supported as well and are added verbatim
to paperless.
* With the optional Tika integration enabled (see :ref:`Configuration <configuration-tika>`), Paperless also supports various
Office documents (.docx, .doc, odt, .ppt, .pptx, .odp, .xls, .xlsx, .ods).
Paperless determines the type of a file by inspecting its content. The
Paperless-ngx determines the type of a file by inspecting its content. The
file extensions do not matter.
**Q:** *Will paperless-ng run on Raspberry Pi?*
**Q:** *Will paperless-ngx run on Raspberry Pi?*
**A:** The short answer is yes. I've tested it on a Raspberry Pi 3 B.
The long answer is that certain parts of
Paperless will run very slow, such as the tesseract OCR. On Raspberry Pi,
Paperless will run very slow, such as the OCR. On Raspberry Pi,
try to OCR documents before feeding them into paperless so that paperless can
reuse the text. The web interface should be a lot snappier, since it runs
reuse the text. The web interface is a lot snappier, since it runs
in your browser and paperless has to do much less work to serve the data.
.. note::
You can adjust some of the settings so that paperless uses less processing
power. See :ref:`setup-less_powerful_devices` for details.
**Q:** *How do I install paperless-ng on Raspberry Pi?*
**A:** There is no docker image for ARM available. If you know how to build
that automatically, I'm all ears. For now, you have to grab the latest release
archive from the project page and build the image yourself. The release comes
with the front end already compiled, so you don't have to do this on the Pi.
**Q:** *How do I install paperless-ngx on Raspberry Pi?*
**Q:** *How do I run this on unRaid?*
**A:** Docker images are available for arm and arm64 hardware, so just follow
the docker-compose instructions. Apart from more required disk space compared to
a bare metal installation, docker comes with close to zero overhead, even on
Raspberry Pi.
**A:** Head over to `<https://github.com/selfhosters/unRAID-CA-templates>`_,
`Uli Fahrer <https://github.com/Tooa>`_ created a container template for that.
I don't exactly know how to use that though, since I don't use unRaid.
If you decide to got with the bare metal route, be aware that some of the
python requirements do not have precompiled packages for ARM / ARM64. Installation
of these will require additional development libraries and compilation will take
a long time.
**Q:** *How do I run this on Unraid?*
**A:** Paperless-ngx is available as `community app <https://unraid.net/community/apps?q=paperless-ngx>`_
in Unraid. `Uli Fahrer <https://github.com/Tooa>`_ created a container template for that.
**Q:** *How do I run this on my toaster?*
@@ -95,12 +97,21 @@ occasionally build the image on and see if it works.
**Q:** *How do I proxy this with NGINX?*
.. code::
**A:** See :ref:`here <setup-nginx>`.
location / {
proxy_pass http://localhost:8000/
}
.. _faq-mod_wsgi:
And that's about it. Paperless serves everything, including static files by itself
when running the docker image. If you want to do anything fancy, you have to
install paperless bare metal.
**Q:** *How do I get WebSocket support with Apache mod_wsgi*?
**A:** ``mod_wsgi`` by itself does not support ASGI. Paperless will continue
to work with WSGI, but certain features such as status notifications about
document consumption won't be available.
If you want to continue using ``mod_wsgi``, you will have to run an ASGI-enabled
web server as well that processes WebSocket connections, and configure Apache to
redirect WebSocket connections to this server. Multiple options for ASGI servers
exist:
* ``gunicorn`` with ``uvicorn`` as the worker implementation (the default of paperless)
* ``daphne`` as a standalone server, which is the reference implementation for ASGI.
* ``uvicorn`` as a standalone server

View File

@@ -22,19 +22,21 @@ finding stuff again. I feed documents right from the post box into the scanner
and then shred them. Perhaps you might find it useful too.
Paperless-ng
============
Paperless-ngx
=============
Paperless-ng is a fork of the original paperless project. It changes many
things both on the surface and under the hood. Paperless-ng was created
because I feel that these changes are too big to be pushed into the main
repository right away.
Paperless-ngx is a document management system that transforms your physical
documents into a searchable online archive so you can keep, well, *less paper*.
Paperless-ngx forked from paperless-ng to continue the great work and
distribute responsibility of supporting and advancing the project among a team
of people.
NG stands for both Angular (the framework used for the
Frontend) and next-gen. Publishing this project under a different name also
avoids confusion between paperless and paperless-ng.
avoids confusion between paperless and paperless-ngx.
If you want to learn about what's different in paperless-ng, check out these
If you want to learn about what's different in paperless-ngx from Paperless, check out these
resources in the documentation:
* :ref:`Some screenshots <screenshots>` of the new UI are available.
@@ -42,20 +44,16 @@ resources in the documentation:
learn about how paperless automates all tagging using machine learning.
* Paperless now comes with a :ref:`proper email consumer <usage-email>`
that's fully tested and production ready.
* Paperless creates searchable PDF/A documents from whatever you you put into
* Paperless creates searchable PDF/A documents from whatever you put into
the consumption directory. This means that you can select text in
image-only documents coming from your scanner.
* See :ref:`this note <utilities-encyption>` about GnuPG encryption in
paperless-ng.
paperless-ngx.
* Paperless is now integrated with a
:ref:`task processing queue <setup-task_processor>` that tells you
at a glance when and why something is not working.
* The :ref:`changelog <paperless_changelog>` contains a detailed list of all changes
in paperless-ng.
It would be great if this project could eventually merge back into the main
repository, but it needs a lot more work before that can happen.
at a glance when and why something is not working.
* The :doc:`changelog </changelog>` contains a detailed list of all changes
in paperless-ngx.
Contents
========
@@ -70,9 +68,8 @@ Contents
configuration
api
faq
extending
troubleshooting
contributing
extending
scanners
screenshots
changelog

1
docs/requirements.txt Normal file
View File

@@ -0,0 +1 @@
myst-parser==0.17.2

View File

@@ -1,43 +1,8 @@
.. _scanners:
***********************
Scanner recommendations
***********************
*******************
Scanners & Software
*******************
As Paperless operates by watching a folder for new files, doesn't care what
scanner you use, but sometimes finding a scanner that will write to an FTP,
NFS, or SMB server can be difficult. This page is here to help you find one
that works right for you based on recommendations from other Paperless users.
+---------+----------------+-----+-----+-----+----------------+
| Brand | Model | Supports | Recommended By |
+---------+----------------+-----+-----+-----+----------------+
| | | FTP | NFS | SMB | |
+=========+================+=====+=====+=====+================+
| Brother | `ADS-1500W`_ | yes | no | yes | `danielquinn`_ |
+---------+----------------+-----+-----+-----+----------------+
| Brother | `MFC-J6930DW`_ | yes | | | `ayounggun`_ |
+---------+----------------+-----+-----+-----+----------------+
| Brother | `MFC-J5910DW`_ | yes | | | `bmsleight`_ |
+---------+----------------+-----+-----+-----+----------------+
| Brother | `MFC-9142CDN`_ | yes | | yes | `REOLDEV`_ |
+---------+----------------+-----+-----+-----+----------------+
| Fujitsu | `ix500`_ | yes | | yes | `eonist`_ |
+---------+----------------+-----+-----+-----+----------------+
| Fujitsu | `S1300i`_ | yes | | yes | `jonaswinkler`_|
+---------+----------------+-----+-----+-----+----------------+
.. _ADS-1500W: https://www.brother.ca/en/p/ads1500w
.. _MFC-J6930DW: https://www.brother.ca/en/p/MFCJ6930DW
.. _MFC-J5910DW: https://www.brother.co.uk/printers/inkjet-printers/mfcj5910dw
.. _MFC-9142CDN: https://www.brother.co.uk/printers/laser-printers/mfc9140cdn
.. _ix500: https://www.fujitsu.com/global/products/computing/peripheral/scanners/scansnap/ix500/
.. _S1300i: https://www.fujitsu.com/global/products/computing/peripheral/scanners/soho/s1300i/
.. _danielquinn: https://github.com/danielquinn
.. _ayounggun: https://github.com/ayounggun
.. _bmsleight: https://github.com/bmsleight
.. _eonist: https://github.com/eonist
.. _REOLDEV: https://github.com/REOLDEV
.. _jonaswinkler: https://github.com/jonaswinkler
Paperless-ngx is compatible with many different scanners and scanning tools. A user-maintained list of scanners and other software is available on `the wiki <https://github.com/paperless-ngx/paperless-ngx/wiki/Scanner-&-Software-Recommendations>`_.

View File

@@ -4,42 +4,60 @@
Screenshots
***********
This is what paperless-ng looks like. You shouldn't use paperless to index
research papers though, its a horrible tool for that job.
This is what Paperless-ngx looks like.
The dashboard shows customizable views on your document and allows document uploads:
.. image:: _static/screenshots/dashboard.png
:target: _static/screenshots/dashboard.png
The document list provides three different styles to scroll through your documents:
.. image:: _static/screenshots/documents-table.png
:target: _static/screenshots/documents-table.png
.. image:: _static/screenshots/documents-smallcards.png
:target: _static/screenshots/documents-smallcards.png
.. image:: _static/screenshots/documents-largecards.png
:target: _static/screenshots/documents-largecards.png
Paperless-ngx also supports "dark mode":
.. image:: _static/screenshots/documents-smallcards-dark.png
:target: _static/screenshots/documents-smallcards-dark.png
Extensive filtering mechanisms:
.. image:: _static/screenshots/documents-filter.png
:target: _static/screenshots/documents-filter.png
Side-by-side editing of documents. Optimized for 1080p.
Bulk editing of document tags, correspondents, etc.:
.. image:: _static/screenshots/bulk-edit.png
:target: _static/screenshots/bulk-edit.png
Side-by-side editing of documents:
.. image:: _static/screenshots/editing.png
:target: _static/screenshots/editing.png
Tag editing. This looks about the same for correspondents and document types.
.. image:: _static/screenshots/new-tag.png
:target: _static/screenshots/new-tag.png
Searching provides auto complete and highlights the results.
.. image:: _static/screenshots/search-preview.png
:target: _static/screenshots/search-preview.png
.. image:: _static/screenshots/search-results.png
:target: _static/screenshots/search-results.png
Fancy mail filters!
.. image:: _static/screenshots/mail-rules-edited.png
:target: _static/screenshots/mail-rules-edited.png
Mobile support in the future? This kinda works, however some layouts are still
too wide.
Mobile devices are supported.
.. image:: _static/screenshots/mobile.png
:target: _static/screenshots/mobile.png

View File

@@ -3,39 +3,10 @@
Setup
*****
Download
########
Overview of Paperless-ngx
#########################
Go to the project page on GitHub and download the
`latest release <https://github.com/jonaswinkler/paperless-ng/releases>`_.
There are multiple options available.
* Download the dockerfiles archive if you want to pull paperless from
Docker Hub.
* Download the dist archive and extract it if you want to build the docker image
yourself or want to install paperless without docker.
.. hint::
In contrast to paperless, the recommended way to get and update paperless-ng
is not to pull the entire git repository. Paperless-ng includes artifacts
that need to be compiled, and that's already done for you in the release.
.. admonition:: Want to try out paperless-ng before migrating?
The release contains a file ``.env`` which sets the docker-compose project
name to "paperless", which is the same as before and instructs docker-compose
to reuse and upgrade your paperless volumes.
Just rename the project name in that file to anything else and docker-compose
will create fresh volumes for you!
Overview of Paperless-ng
########################
Compared to paperless, paperless-ng works a little different under the hood and has
Compared to paperless, paperless-ngx works a little different under the hood and has
more moving parts that work together. While this increases the complexity of
the system, it also brings many benefits.
@@ -49,45 +20,45 @@ Paperless consists of the following components:
.. code:: shell-session
$ cd /path/to/paperless/src/
$ pipenv run gunicorn -c /usr/src/paperless/gunicorn.conf.py -b 0.0.0.0:8000 paperless.wsgi
$ gunicorn -c ../gunicorn.conf.py paperless.wsgi
or by any other means such as Apache ``mod_wsgi``.
* **The consumer:** This is what watches your consumption folder for documents.
However, the consumer itself does not consume really consume your documents anymore.
It rather notifies a task processor that a new file is ready for consumption.
However, the consumer itself does not really consume your documents.
Now it notifies a task processor that a new file is ready for consumption.
I suppose it should be named differently.
This also used to check your emails, but that's now gone elsewhere as well.
This was also used to check your emails, but that's now done elsewhere as well.
Start the consumer with the management command ``document_consumer``:
.. code:: shell-session
$ cd /path/to/paperless/src/
$ pipenv run python3 manage.py document_consumer
$ python3 manage.py document_consumer
.. _setup-task_processor:
* **The task processor:** Paperless relies on `Django Q <https://django-q.readthedocs.io/en/latest/>`_
for doing much of the heavy lifting. This is a task queue that accepts tasks from
multiple sources and processes tasks in parallel. It also comes with a scheduler that executes
for doing most of the heavy lifting. This is a task queue that accepts tasks from
multiple sources and processes these in parallel. It also comes with a scheduler that executes
certain commands periodically.
This task processor is responsible for:
* Consuming documents. When the consumer finds new documents, it notifies the task processor to
start a consumption task.
* Consuming emails. It periodically checks your configured accounts for new mails and
produces consumption tasks for any documents it finds.
* The task processor also performs the consumption of any documents you upload through
the web interface.
* Maintain the search index and the automatic matching algorithm. These are things that paperless
* Consuming emails. It periodically checks your configured accounts for new emails and
notifies the task processor to consume the attachment of an email.
* Maintaining the search index and the automatic matching algorithm. These are things that paperless
needs to do from time to time in order to operate properly.
This allows paperless to process multiple documents from your consumption folder in parallel! On
a modern multi core system, consumption with full ocr is blazing fast.
a modern multi core system, this makes the consumption process with full OCR blazingly fast.
The task processor comes with a built-in admin interface that you can use to see whenever any of the
The task processor comes with a built-in admin interface that you can use to check whenever any of the
tasks fail and inspect the errors (i.e., wrong email credentials, errors during consuming a specific
file, etc).
@@ -96,62 +67,90 @@ Paperless consists of the following components:
.. code:: shell-session
$ cd /path/to/paperless/src/
$ pipenv run python3 manage.py qcluster
$ python3 manage.py qcluster
* A `redis <https://redis.io/>`_ message broker: This is a really lightweight service that is responsible
for getting the tasks from the webserver and consumer to the task scheduler. These run in different
processes (maybe even on different machines!), and therefore, this is necessary.
for getting the tasks from the webserver and the consumer to the task scheduler. These run in a different
process (maybe even on different machines!), and therefore, this is necessary.
* Optional: A database server. Paperless supports both PostgreSQL and SQLite for storing its data.
* Optional: A database server. Paperless supports PostgreSQL, MariaDB and SQLite for storing its data.
Installation
############
You can go multiple routes with setting up and running Paperless:
You can go multiple routes to setup and run Paperless:
* The `docker route`_
* The `bare metal route`_
* :ref:`Use the easy install docker script <setup-docker_script>`
* :ref:`Pull the image from Docker Hub <setup-docker_hub>`
* :ref:`Build the Docker image yourself <setup-docker_build>`
* :ref:`Install Paperless directly on your system manually (bare metal) <setup-bare_metal>`
The `docker route`_ is quick & easy. This is the recommended route. This configures all the stuff
from above automatically so that it just works and uses sensible defaults for all configuration options.
The Docker routes are quick & easy. These are the recommended routes. This configures all the stuff
from the above automatically so that it just works and uses sensible defaults for all configuration options.
Here you find a cheat-sheet for docker beginners: `CLI Basics <https://www.sehn.tech/refs/devops-with-docker/>`_
The `bare metal route`_ is more complicated to setup but makes it easier
The bare metal route is complicated to setup but makes it easier
should you want to contribute some code back. You need to configure and
run the above mentioned components yourself.
.. _setup-docker_route:
.. _CLI Basics: https://www.sehn.tech/refs/devops-with-docker/
Docker Route
============
.. _setup-docker_script:
1. Install `Docker`_ and `docker-compose`_. [#compose]_
Install Paperless from Docker Hub using the installation script
===============================================================
.. caution::
Paperless provides an interactive installation script. This script will ask you
for a couple configuration options, download and create the necessary configuration files, pull the docker image, start paperless and create your user account. This script essentially
performs all the steps described in :ref:`setup-docker_hub` automatically.
If you want to use the included ``docker-compose.*.yml`` file, you
need to have at least Docker version **17.09.0** and docker-compose
version **1.17.0**.
1. Make sure that docker and docker-compose are installed.
2. Download and run the installation script:
See the `Docker installation guide`_ on how to install the current
version of Docker for your operating system or Linux distribution of
choice. To get an up-to-date version of docker-compose, follow the
`docker-compose installation guide`_ if your package repository doesn't
include it.
.. code:: shell-session
.. _Docker installation guide: https://docs.docker.com/engine/installation/
.. _docker-compose installation guide: https://docs.docker.com/compose/install/
$ bash -c "$(curl -L https://raw.githubusercontent.com/paperless-ngx/paperless-ngx/main/install-paperless-ngx.sh)"
2. Copy either ``docker-compose.sqlite.yml`` or ``docker-compose.postgres.yml`` to
``docker-compose.yml``, depending on which database backend you want to use.
.. _setup-docker_hub:
Install Paperless from Docker Hub
=================================
1. Login with your user and create a folder in your home-directory `mkdir -v ~/paperless-ngx` to have a place for your configuration files and consumption directory.
2. Go to the `/docker/compose directory on the project page <https://github.com/paperless-ngx/paperless-ngx/tree/master/docker/compose>`_
and download one of the `docker-compose.*.yml` files, depending on which database backend you
want to use. Rename this file to `docker-compose.yml`.
If you want to enable optional support for Office documents, download a file with `-tika` in the file name.
Download the ``docker-compose.env`` file and the ``.env`` file as well and store them
in the same directory.
.. hint::
For new installations, it is recommended to use PostgreSQL as the database
backend.
2. Modify ``docker-compose.yml`` to your preferences. You may want to change the path
to the consumption directory in this file. Find the line that specifies where
3. Install `Docker`_ and `docker-compose`_.
.. caution::
If you want to use the included ``docker-compose.*.yml`` file, you
need to have at least Docker version **17.09.0** and docker-compose
version **1.17.0**.
To check do: `docker-compose -v` or `docker -v`
See the `Docker installation guide`_ on how to install the current
version of Docker for your operating system or Linux distribution of
choice. To get the latest version of docker-compose, follow the
`docker-compose installation guide`_ if your package repository doesn't
include it.
.. _Docker installation guide: https://docs.docker.com/engine/installation/
.. _docker-compose installation guide: https://docs.docker.com/compose/install/
4. Modify ``docker-compose.yml`` to your preferences. You may want to change the path
to the consumption directory. Find the line that specifies where
to mount the consumption directory:
.. code::
@@ -166,25 +165,86 @@ Docker Route
Don't change the part after the colon or paperless wont find your documents.
You may also need to change the default port that the webserver will use
from the default (8000):
3. Modify ``docker-compose.env``, following the comments in the file. The
.. code::
ports:
- 8000:8000
Replace the part BEFORE the colon with a port of your choice:
.. code::
ports:
- 8010:8000
Don't change the part after the colon or edit other lines that refer to
port 8000. Modifying the part before the colon will map requests on another
port to the webserver running on the default port.
**Rootless**
If you want to run Paperless as a rootless container, you will need to do the
following in your ``docker-compose.yml``:
- set the ``user`` running the container to map to the ``paperless`` user in the
container.
This value (``user_id`` below), should be the same id that ``USERMAP_UID`` and
``USERMAP_GID`` are set to in the next step.
See ``USERMAP_UID`` and ``USERMAP_GID`` :ref:`here <configuration-docker>`.
Your entry for Paperless should contain something like:
.. code::
webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:latest
user: <user_id>
5. Modify ``docker-compose.env``, following the comments in the file. The
most important change is to set ``USERMAP_UID`` and ``USERMAP_GID``
to the uid and gid of your user on the host system. This ensures that
to the uid and gid of your user on the host system. Use ``id -u`` and
``id -g`` to get these.
This ensures that
both the docker container and you on the host machine have write access
to the consumption directory. If your UID and GID on the host system is
1000 (the default for the first normal user on most systems), it will
work out of the box without any modifications.
work out of the box without any modifications. `id "username"` to check.
.. note::
You can use any settings from the file ``paperless.conf`` in this file.
Have a look at :ref:`configuration` to see whats available.
You can copy any setting from the file ``paperless.conf.example`` and paste it here.
Have a look at :ref:`configuration` to see what's available.
4. Run ``docker-compose up -d``. This will create and start the necessary
containers. This will also build the image of paperless if you grabbed the
source archive.
.. note::
5. To be able to login, you will need a super user. To create it, execute the
You can utilize Docker secrets for some configuration settings by
appending `_FILE` to some configuration values. This is supported currently
only by:
* PAPERLESS_DBUSER
* PAPERLESS_DBPASS
* PAPERLESS_SECRET_KEY
* PAPERLESS_AUTO_LOGIN_USERNAME
* PAPERLESS_ADMIN_USER
* PAPERLESS_ADMIN_MAIL
* PAPERLESS_ADMIN_PASSWORD
.. caution::
Some file systems such as NFS network shares don't support file system
notifications with ``inotify``. When storing the consumption directory
on such a file system, paperless will not pick up new files
with the default configuration. You will need to use ``PAPERLESS_CONSUMER_POLLING``,
which will disable inotify. See :ref:`here <configuration-polling>`.
6. Run ``docker-compose pull``, followed by ``docker-compose up -d``.
This will pull the image, create and start the necessary containers.
7. To be able to login, you will need a super user. To create it, execute the
following command:
.. code-block:: shell-session
@@ -192,21 +252,57 @@ Docker Route
$ docker-compose run --rm webserver createsuperuser
This will prompt you to set a username, an optional e-mail address and
finally a password.
finally a password (at least 8 characters).
6. The default ``docker-compose.yml`` exports the webserver on your local port
8000. If you haven't adapted this, you should now be able to visit your
Paperless instance at ``http://127.0.0.1:8000``. You can login with the
user and password you just created.
8. The default ``docker-compose.yml`` exports the webserver on your local port
8000. If you did not change this, you should now be able to visit your
Paperless instance at ``http://127.0.0.1:8000`` or your servers IP-Address:8000.
Use the login credentials you have created with the previous step.
.. _Docker: https://www.docker.com/
.. _docker-compose: https://docs.docker.com/compose/install/
.. [#compose] You of course don't have to use docker-compose, but it
simplifies deployment immensely. If you know your way around Docker, feel
free to tinker around without using compose!
.. _setup-docker_build:
.. _`setup-bare_metal`:
Build the Docker image yourself
===============================
1. Clone the entire repository of paperless:
.. code:: shell-session
git clone https://github.com/paperless-ngx/paperless-ngx
The master branch always reflects the latest stable version.
2. Copy one of the ``docker/compose/docker-compose.*.yml`` to ``docker-compose.yml`` in the root folder,
depending on which database backend you want to use. Copy
``docker-compose.env`` into the project root as well.
3. In the ``docker-compose.yml`` file, find the line that instructs docker-compose to pull the paperless image from Docker Hub:
.. code:: yaml
webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:latest
and replace it with a line that instructs docker-compose to build the image from the current working directory instead:
.. code:: yaml
webserver:
build: .
4. Follow steps 3 to 8 of :ref:`setup-docker_hub`. When asked to run
``docker-compose pull`` to pull the image, do
.. code:: shell-session
$ docker-compose build
instead to build the image.
.. _setup-bare_metal:
Bare Metal Route
================
@@ -217,16 +313,26 @@ writing. Windows is not and will never be supported.
1. Install dependencies. Paperless requires the following packages.
* ``python3`` 3.6, 3.7, 3.8 (3.9 is untested).
* ``python3-pip``, optionally ``pipenv`` for package installation
* ``python3`` 3.8, 3.9
* ``python3-pip``
* ``python3-dev``
* ``default-libmysqlclient-dev`` for MariaDB
* ``fonts-liberation`` for generating thumbnails for plain text files
* ``imagemagick`` >= 6 for PDF conversion
* ``optipng`` for optimising thumbnails
* ``gnupg`` for handling encrypted documents
* ``libpoppler-cpp-dev`` for PDF to text conversion
* ``libmagic-dev`` for mime type detection
* ``libpq-dev`` for PostgreSQL
* ``libmagic-dev`` for mime type detection
* ``mariadb-client`` for MariaDB compile time
* ``mime-support`` for mime type detection
* ``libzbar0`` for barcode detection
* ``poppler-utils`` for barcode detection
Use this list for your preferred package management:
.. code::
python3 python3-pip python3-dev imagemagick fonts-liberation gnupg libpq-dev libmagic-dev mime-support libzbar0 poppler-utils
These dependencies are required for OCRmyPDF, which is used for text recognition.
@@ -236,27 +342,45 @@ writing. Windows is not and will never be supported.
* ``qpdf``
* ``liblept5``
* ``libxml2``
* ``pngquant``
* ``pngquant`` (suggested for certain PDF image optimizations)
* ``zlib1g``
* ``tesseract-ocr`` >= 4.0.0 for OCR
* ``tesseract-ocr`` language packs (``tesseract-ocr-eng``, ``tesseract-ocr-deu``, etc)
Use this list for your preferred package management:
.. code::
unpaper ghostscript icc-profiles-free qpdf liblept5 libxml2 pngquant zlib1g tesseract-ocr
On Raspberry Pi, these libraries are required as well:
* ``libatlas-base-dev``
* ``libxslt1-dev``
You will also need ``build-essential``, ``python3-setuptools`` and ``python3-wheel``
for installing some of the python dependencies. You can remove that
again after installation.
for installing some of the python dependencies.
2. Install ``redis`` >= 5.0 and configure it to start automatically.
3. Optional. Install ``postgresql`` and configure a database, user and password for paperless. If you do not wish
to use PostgreSQL, SQLite is avialable as well.
to use PostgreSQL, MariaDB and SQLite are available as well.
4. Get the release archive. If you pull the git repo as it is, you also have to compile the front end by yourself.
Extract the frontend to a place from where you wish to execute it, such as ``/opt/paperless``.
.. note::
On bare-metal installations using SQLite, ensure the
`JSON1 extension <https://code.djangoproject.com/wiki/JSON1Extension>`_ is enabled. This is
usually the case, but not always.
4. Get the release archive from `<https://github.com/paperless-ngx/paperless-ngx/releases>`_.
If you clone the git repo as it is, you also have to compile the front end by yourself.
Extract the archive to a place from where you wish to execute it, such as ``/opt/paperless``.
5. Configure paperless. See :ref:`configuration` for details. Edit the included ``paperless.conf`` and adjust the
settings to your needs. Required settings for getting paperless running are:
* ``PAPERLESS_REDIS`` should point to your redis server, such as redis://localhost:6379.
* ``PAPERLESS_DBENGINE`` optional, and should be one of `postgres, mariadb, or sqlite`
* ``PAPERLESS_DBHOST`` should be the hostname on which your PostgreSQL server is running. Do not configure this
to use SQLite instead. Also configure port, database name, user and password as necessary.
* ``PAPERLESS_CONSUMPTION_DIR`` should point to a folder which paperless should watch for documents. You might
@@ -264,58 +388,75 @@ writing. Windows is not and will never be supported.
paperless stores its data. If you like, you can point both to the same directory.
* ``PAPERLESS_SECRET_KEY`` should be a random sequence of characters. It's used for authentication. Failure
to do so allows third parties to forge authentication credentials.
* ``PAPERLESS_URL`` if you are behind a reverse proxy. This should point to your domain. Please see
:ref:`configuration` for more information.
Many more adjustments can be made to paperless, especially the OCR part. The following options are recommended
for everyone:
* Set ``PAPERLESS_OCR_LANGUAGE`` to the language most of your documents are written in.
* Set ``PAPERLESS_TIME_ZONE`` to your local time zone.
6. Setup permissions. Create a system users under which you wish to run paperless. Ensure that these directories exist
and that the user has write permissions to the following directories
6. Create a system user under which you wish to run paperless.
.. code:: shell-session
adduser paperless --system --home /opt/paperless --group
7. Ensure that these directories exist
and that the paperless user has write permissions to the following directories:
* ``/opt/paperless/media``
* ``/opt/paperless/data``
* ``/opt/paperless/consume``
Adjust as necessary if you configured different folders.
7. Install python requirements. Paperless comes with both Pipfiles for ``pipenv`` as well as with a ``requirements.txt``.
Both will install exactly the same requirements. It is up to you if you wish to use a virtual environment or not.
8. Install python requirements from the ``requirements.txt`` file.
It is up to you if you wish to use a virtual environment or not. First you should update your pip, so it gets the actual packages.
8. Go to ``/opt/paperless/src``, and execute the following commands:
.. code:: shell-session
sudo -Hu paperless pip3 install --upgrade pip
.. code:: shell-session
sudo -Hu paperless pip3 install -r requirements.txt
This will install all python dependencies in the home directory of
the new paperless user.
9. Go to ``/opt/paperless/src``, and execute the following commands:
.. code:: bash
# This collects static files from paperless and django.
python3 manage.py collectstatic --clear --no-input
# This creates the database schema.
python3 manage.py migrate
sudo -Hu paperless python3 manage.py migrate
# This creates your first paperless user
python3 manage.py createsuperuser
sudo -Hu paperless python3 manage.py createsuperuser
9. Optional: Test that paperless is working by executing
10. Optional: Test that paperless is working by executing
.. code:: bash
# This collects static files from paperless and django.
python3 manage.py runserver
sudo -Hu paperless python3 manage.py runserver
and pointing your browser to http://localhost:8000/.
.. warning::
This is a development server which should not be used in
production.
production. It is not audited for security and performance
is inferior to production ready web servers.
.. hint::
This will not start the consumer. Paperless does this in a
separate process.
10. Setup systemd services to run paperless automatically. You may
11. Setup systemd services to run paperless automatically. You may
use the service definition files included in the ``scripts`` folder
as a starting point.
@@ -323,17 +464,19 @@ writing. Windows is not and will never be supported.
``consumer`` script to watch the input folder, and the ``scheduler``
script to run tasks such as email checking and document consumption.
The ``socket`` script enables ``gunicorn`` to run on port 80 without
root privileges. For this you need to uncomment the ``Require=paperless-webserver.socket``
in the ``webserver`` script and configure ``gunicorn`` to listen on port 80 (see ``paperless/gunicorn.conf.py``).
You may need to adjust the path to the ``gunicorn`` executable. This
will be installed as part of the python dependencies, and is either located
in the ``bin`` folder of your virtual environment, or in ``~/.local/bin/`` if
no virtual environment is used.
These services rely on redis and optionally the database server, but
don't need to be started in any particular order. The example files
depend on redis being started. If you use a database server, you should
add additinal dependencies.
.. hint::
You may optionally set up your preferred web server to serve
paperless as a wsgi application directly instead of running the
``webserver`` service. The module containing the wsgi application
is named ``paperless.wsgi``.
add additional dependencies.
.. caution::
@@ -342,10 +485,13 @@ writing. Windows is not and will never be supported.
however, the documentation of GUnicorn states that you should
use a proxy server in front of gunicorn instead.
11. Optional: Install a samba server and make the consumption folder
For instructions on how to use nginx for that,
:ref:`see the instructions below <setup-nginx>`.
12. Optional: Install a samba server and make the consumption folder
available as a network share.
12. Configure ImageMagick to allow processing of PDF documents. Most distributions have
13. Configure ImageMagick to allow processing of PDF documents. Most distributions have
this disabled by default, since PDF documents can contain malware. If
you don't do this, paperless will fall back to ghostscript for certain steps
such as thumbnail generation.
@@ -355,21 +501,60 @@ writing. Windows is not and will never be supported.
.. code::
<policy domain="coder" rights="none" pattern="PDF" />
to
.. code::
<policy domain="coder" rights="read|write" pattern="PDF" />
Migration to paperless-ng
#########################
14. Optional: Install the `jbig2enc <https://ocrmypdf.readthedocs.io/en/latest/jbig2.html>`_
encoder. This will reduce the size of generated PDF documents. You'll most likely need
to compile this by yourself, because this software has been patented until around 2017 and
binary packages are not available for most distributions.
At its core, paperless-ng is still paperless and fully compatible. However, some
Migrating to Paperless-ngx
##########################
Migration is possible both from Paperless-ng or directly from the 'original' Paperless.
Migrating from Paperless-ng
===========================
Paperless-ngx is meant to be a drop-in replacement for Paperless-ng and thus upgrading should be
trivial for most users, especially when using docker. However, as with any major change, it is
recommended to take a full backup first. Once you are ready, simply change the docker image to
point to the new source. E.g. if using Docker Compose, edit ``docker-compose.yml`` and change:
.. code::
image: jonaswinkler/paperless-ng:latest
to
.. code::
image: ghcr.io/paperless-ngx/paperless-ngx:latest
and then run ``docker-compose up -d`` which will pull the new image recreate the container.
That's it!
Users who installed with the bare-metal route should also update their Git clone to point to
``https://github.com/paperless-ngx/paperless-ngx``, e.g. using the command
``git remote set-url origin https://github.com/paperless-ngx/paperless-ngx`` and then pull the
lastest version.
Migrating from Paperless
========================
At its core, paperless-ngx is still paperless and fully compatible. However, some
things have changed under the hood, so you need to adapt your setup depending on
how you installed paperless. The important things to keep in mind are as follows.
how you installed paperless.
* Read the :ref:`changelog <paperless_changelog>` and take note of breaking changes.
This setup describes how to update an existing paperless Docker installation.
The important things to keep in mind are as follows:
* Read the :doc:`changelog </changelog>` and take note of breaking changes.
* You should decide if you want to stick with SQLite or want to migrate your database
to PostgreSQL. See :ref:`setup-sqlite_to_psql` for details on how to move your data from
SQLite to PostgreSQL. Both work fine with paperless. However, if you already have a
@@ -378,10 +563,10 @@ how you installed paperless. The important things to keep in mind are as follows
such as email checking and maintenance, requires a `redis`_ message broker
instance. The docker-compose route takes care of that.
* The layout of the folder structure for your documents and data remains the
same, so you can just plug your old docker volumes into paperless-ng and
same, so you can just plug your old docker volumes into paperless-ngx and
expect it to find everything where it should be.
Migration to paperless-ng is then performed in a few simple steps:
Migration to paperless-ngx is then performed in a few simple steps:
1. Stop paperless.
@@ -391,36 +576,38 @@ Migration to paperless-ng is then performed in a few simple steps:
$ docker-compose down
2. Do a backup for two purposes: If something goes wrong, you still have your
data. Second, if you don't like paperless-ng, you can switch back to
data. Second, if you don't like paperless-ngx, you can switch back to
paperless.
3. Download the latest release of paperless-ng. You can either go with the
docker-compose files or use the archive to build the image yourself.
You can either replace your current paperless folder or put paperless-ng
3. Download the latest release of paperless-ngx. You can either go with the
docker-compose files from `here <https://github.com/paperless-ngx/paperless-ngx/tree/master/docker/compose>`__
or clone the repository to build the image yourself (see :ref:`above <setup-docker_build>`).
You can either replace your current paperless folder or put paperless-ngx
in a different location.
.. caution::
The release include a ``.env`` file. This will set the
project name for docker compose to ``paperless`` so that paperless-ng will
automatically reuse your existing paperless volumes. When you start it, it
will migrate your existing data. After that, your old paperless installation
will be incompatible with the migrated volumes.
Paperless-ngx includes a ``.env`` file. This will set the
project name for docker compose to ``paperless``, which will also define the name
of the volumes by paperless-ngx. However, if you experience that paperless-ngx
is not using your old paperless volumes, verify the names of your volumes with
4. Copy the ``docker-compose.sqlite.yml`` file to ``docker-compose.yml``.
.. code:: shell-session
$ docker volume ls | grep _data
and adjust the project name in the ``.env`` file so that it matches the name
of the volumes before the ``_data`` part.
4. Download the ``docker-compose.sqlite.yml`` file to ``docker-compose.yml``.
If you want to switch to PostgreSQL, do that after you migrated your existing
SQLite database.
5. Adjust ``docker-compose.yml`` and
``docker-compose.env`` to your needs.
See `docker route`_ for details on which edits are advised.
5. Adjust ``docker-compose.yml`` and ``docker-compose.env`` to your needs.
See :ref:`setup-docker_hub` for details on which edits are advised.
6. Since ``docker-compose`` would just use the the old paperless image, we need to
manually build a new image:
.. code:: shell-session
$ docker-compose build
6. :ref:`Update paperless. <administration-updating>`
7. In order to find your existing documents with the new search feature, you need
to invoke a one-time operation that will create the search index:
@@ -428,11 +615,11 @@ Migration to paperless-ng is then performed in a few simple steps:
.. code:: shell-session
$ docker-compose run --rm webserver document_index reindex
This will migrate your database and create the search index. After that,
paperless will take care of maintaining the index by itself.
8. Start paperless-ng.
8. Start paperless-ngx.
.. code:: bash
@@ -441,7 +628,7 @@ Migration to paperless-ng is then performed in a few simple steps:
This will run paperless in the background and automatically start it on system boot.
9. Paperless installed a permanent redirect to ``admin/`` in your browser. This
redirect is still in place and prevents access to the new UI. Clear
redirect is still in place and prevents access to the new UI. Clear your
browsing cache in order to fix this.
10. Optionally, follow the instructions below to migrate your existing data to PostgreSQL.
@@ -489,19 +676,17 @@ management commands as below.
$ cd /path/to/paperless
$ docker-compose run --rm webserver /bin/bash
This will launch the container and initialize the PostgreSQL database.
b) Without docker, open a shell in your virtual environment, switch to
b) Without docker, remember to activate any virtual environment, switch to
the ``src`` directory and create the database schema:
.. code:: shell-session
$ cd /path/to/paperless
$ pipenv shell
$ cd src
$ cd /path/to/paperless/src
$ python3 manage.py migrate
This will not copy any data yet.
4. Dump your data from SQLite:
@@ -509,14 +694,14 @@ management commands as below.
.. code:: shell-session
$ python3 manage.py dumpdata --database=sqlite --exclude=contenttypes --exclude=auth.Permission > data.json
5. Load your data into PostgreSQL:
.. code:: shell-session
$ python3 manage.py loaddata data.json
6. Exit the shell.
6. If operating inside Docker, you may exit the shell now.
.. code:: shell-session
@@ -525,14 +710,14 @@ management commands as below.
7. Start paperless.
Moving back to paperless
Moving back to Paperless
========================
Lets say you migrated to Paperless-ng and used it for a while, but decided that
Lets say you migrated to Paperless-ngx and used it for a while, but decided that
you don't like it and want to move back (If you do, send me a mail about what
part you didn't like!), you can totally do that with a few simple steps.
Paperless-ng modified the database schema slightly, however, these changes can
Paperless-ngx modified the database schema slightly, however, these changes can
be reverted while keeping your current data, so that your current data will
be compatible with original Paperless.
@@ -550,7 +735,7 @@ Or without docker:
$ cd /path/to/paperless/src
$ python3 manage.py migrate documents 0023
After that, you need to clear your cookies (Paperless-ng comes with updated
After that, you need to clear your cookies (Paperless-ngx comes with updated
dependencies that do cookie-processing differently) and probably your cache
as well.
@@ -560,12 +745,13 @@ as well.
Considerations for less powerful devices
########################################
Paperless runs on Raspberry Pi. However, some things are rather slow on the Pi and
Paperless runs on Raspberry Pi. However, some things are rather slow on the Pi and
configuring some options in paperless can help improve performance immensely:
* Stick with SQLite to save some resources.
* Consider setting ``PAPERLESS_OCR_PAGES`` to 1, so that paperless will only OCR
the first page of your documents.
the first page of your documents. In most cases, this page contains enough
information to be able to find it.
* ``PAPERLESS_TASK_WORKERS`` and ``PAPERLESS_THREADS_PER_WORKER`` are configured
to use all cores. The Raspberry Pi models 3 and up have 4 cores, meaning that
paperless will use 2 workers and 2 threads per worker. This may result in
@@ -576,23 +762,69 @@ configuring some options in paperless can help improve performance immensely:
your documents before feeding them into paperless. Some scanners are able to
do this! You might want to even specify ``skip_noarchive`` to skip archive
file generation for already ocr'ed documents entirely.
* Set ``PAPERLESS_OPTIMIZE_THUMBNAILS`` to 'false' if you want faster consumption
times. Thumbnails will be about 20% larger.
* If you want to perform OCR on the device, consider using ``PAPERLESS_OCR_CLEAN=none``.
This will speed up OCR times and use less memory at the expense of slightly worse
OCR results.
* If using docker, consider setting ``PAPERLESS_WEBSERVER_WORKERS`` to
1. This will save some memory.
For details, refer to :ref:`configuration`.
.. note::
Updating the :ref:`automatic matching algorithm <advanced-automatic_matching>`
takes quite a bit of time. However, the update mechanism checks if your
data has changed before doing the heavy lifting. If you experience the
data has changed before doing the heavy lifting. If you experience the
algorithm taking too much cpu time, consider changing the schedule in the
admin interface to daily. You can also manually invoke the task
by changing the date and time of the next run to today/now.
The actual matching of the algorithm is fast and works on Raspberry Pi as
The actual matching of the algorithm is fast and works on Raspberry Pi as
well as on any other device.
.. _redis: https://redis.io/
.. _setup-nginx:
Using nginx as a reverse proxy
##############################
If you want to expose paperless to the internet, you should hide it behind a
reverse proxy with SSL enabled.
In addition to the usual configuration for SSL,
the following configuration is required for paperless to operate:
.. code:: nginx
http {
# Adjust as required. This is the maximum size for file uploads.
# The default value 1M might be a little too small.
client_max_body_size 10M;
server {
location / {
# Adjust host and port as required.
proxy_pass http://localhost:8000/;
# These configuration options are required for WebSockets to work.
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $server_name;
}
}
}
The ``PAPERLESS_URL`` configuration variable is also required when using a reverse proxy. Please refer to the :ref:`hosting-and-security` docs.
Also read `this <https://channels.readthedocs.io/en/stable/deploying.html#nginx-supervisor-ubuntu>`__, towards the end of the section.

View File

@@ -25,14 +25,39 @@ Check for the following issues:
* Go to the admin interface, and check if there are failed tasks. If so, the
tasks will contain an error message.
Consumer warns ``OCR for XX failed``
####################################
If you find the OCR accuracy to be too low, and/or the document consumer warns
that ``OCR for XX failed, but we're going to stick with what we've got since
FORGIVING_OCR is enabled``, then you might need to install the
`Tesseract language files <http://packages.ubuntu.com/search?keywords=tesseract-ocr>`_
marching your document's languages.
As an example, if you are running Paperless-ngx from any Ubuntu or Debian
box, and your documents are written in Spanish you may need to run::
apt-get install -y tesseract-ocr-spa
Consumer fails to pickup any new files
######################################
If you notice that the consumer will only pickup files in the consumption
directory at startup, but won't find any other files added later, check out
the configuration file and enable filesystem polling with the setting
``PAPERLESS_CONSUMER_POLLING``.
directory at startup, but won't find any other files added later, you will need to
enable filesystem polling with the configuration option
``PAPERLESS_CONSUMER_POLLING``, see :ref:`here <configuration-polling>`.
This will disable listening to filesystem changes with inotify and paperless will
manually check the consumption directory for changes instead.
Paperless always redirects to /admin
####################################
You probably had the old paperless installed at some point. Paperless installed
a permanent redirect to /admin in your browser, and you need to clear your
browsing data / cache to fix that.
Operation not permitted
#######################
@@ -48,7 +73,8 @@ required so that the user running paperless inside docker has write permissions
to these folders. This happens when pointing these directories to NFS shares,
for example.
Ensure that `chown` is possible on these directories.
Ensure that ``chown`` is possible on these directories.
Classifier error: No training data available
############################################
@@ -61,6 +87,51 @@ This may have two reasons:
with Inbox tags. Verify that there are documents in your archive without inbox tags.
The algorithm will only learn from documents not in your inbox.
UserWarning in sklearn on every single document
###############################################
You may encounter warnings like this:
.. code::
/usr/local/lib/python3.7/site-packages/sklearn/base.py:315:
UserWarning: Trying to unpickle estimator CountVectorizer from version 0.23.2 when using version 0.24.0.
This might lead to breaking code or invalid results. Use at your own risk.
This happens when certain dependencies of paperless that are responsible for the auto matching algorithm are
updated. After updating these, your current training data *might* not be compatible anymore. This can be ignored
in most cases. This warning will disappear automatically when paperless updates the training data.
If you want to get rid of the warning or actually experience issues with automatic matching, delete
the file ``classification_model.pickle`` in the data directory and let paperless recreate it.
504 Server Error: Gateway Timeout when adding Office documents
##############################################################
You may experience these errors when using the optional TIKA integration:
.. code::
requests.exceptions.HTTPError: 504 Server Error: Gateway Timeout for url: http://gotenberg:3000/forms/libreoffice/convert
Gotenberg is a server that converts Office documents into PDF documents and has a default timeout of 30 seconds.
When conversion takes longer, Gotenberg raises this error.
You can increase the timeout by configuring a command flag for Gotenberg (see also `here <https://gotenberg.dev/docs/modules/api#properties>`__).
If using docker-compose, this is achieved by the following configuration change in the ``docker-compose.yml`` file:
.. code:: yaml
gotenberg:
image: gotenberg/gotenberg:7.4
restart: unless-stopped
command:
- "gotenberg"
- "--chromium-disable-routes=true"
- "--api-timeout=60"
Permission denied errors in the consumption directory
#####################################################
@@ -72,6 +143,177 @@ You might encounter errors such as:
This happens when paperless does not have permission to delete files inside the consumption directory.
Ensure that ``USERMAP_UID`` and ``USERMAP_GID`` are set to the user id and group id you use on the host operating system, if these are
different from ``1000``. See :ref:`setup-docker_route`.
different from ``1000``. See :ref:`setup-docker_hub`.
Also ensure that you are able to read and write to the consumption directory on the host.
OSError: [Errno 19] No such device when consuming files
#######################################################
If you experience errors such as:
.. code:: shell-session
File "/usr/local/lib/python3.7/site-packages/whoosh/codec/base.py", line 570, in open_compound_file
return CompoundStorage(dbfile, use_mmap=storage.supports_mmap)
File "/usr/local/lib/python3.7/site-packages/whoosh/filedb/compound.py", line 75, in __init__
self._source = mmap.mmap(fileno, 0, access=mmap.ACCESS_READ)
OSError: [Errno 19] No such device
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.7/site-packages/django_q/cluster.py", line 436, in worker
res = f(*task["args"], **task["kwargs"])
File "/usr/src/paperless/src/documents/tasks.py", line 73, in consume_file
override_tag_ids=override_tag_ids)
File "/usr/src/paperless/src/documents/consumer.py", line 271, in try_consume_file
raise ConsumerError(e)
Paperless uses a search index to provide better and faster full text searching. This search index is stored inside
the ``data`` folder. The search index uses memory-mapped files (mmap). The above error indicates that paperless
was unable to create and open these files.
This happens when you're trying to store the data directory on certain file systems (mostly network shares)
that don't support memory-mapped files.
Web-UI stuck at "Loading..."
############################
This might have multiple reasons.
1. If you built the docker image yourself or deployed using the bare metal route,
make sure that there are files in ``<paperless-root>/static/frontend/<lang-code>/``.
If there are no files, make sure that you executed ``collectstatic`` successfully, either
manually or as part of the docker image build.
If the front end is still missing, make sure that the front end is compiled (files present in
``src/documents/static/frontend``). If it is not, you need to compile the front end yourself
or download the release archive instead of cloning the repository.
2. Check the output of the web server. You might see errors like this:
.. code::
[2021-01-25 10:08:04 +0000] [40] [ERROR] Socket error processing request.
Traceback (most recent call last):
File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/sync.py", line 134, in handle
self.handle_request(listener, req, client, addr)
File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/sync.py", line 190, in handle_request
util.reraise(*sys.exc_info())
File "/usr/local/lib/python3.7/site-packages/gunicorn/util.py", line 625, in reraise
raise value
File "/usr/local/lib/python3.7/site-packages/gunicorn/workers/sync.py", line 178, in handle_request
resp.write_file(respiter)
File "/usr/local/lib/python3.7/site-packages/gunicorn/http/wsgi.py", line 396, in write_file
if not self.sendfile(respiter):
File "/usr/local/lib/python3.7/site-packages/gunicorn/http/wsgi.py", line 386, in sendfile
sent += os.sendfile(sockno, fileno, offset + sent, count)
OSError: [Errno 22] Invalid argument
To fix this issue, add
.. code::
SENDFILE=0
to your `docker-compose.env` file.
Error while reading metadata
############################
You might find messages like these in your log files:
.. code::
[WARNING] [paperless.parsing.tesseract] Error while reading metadata
This indicates that paperless failed to read PDF metadata from one of your documents. This happens when you
open the affected documents in paperless for editing. Paperless will continue to work, and will simply not
show the invalid metadata.
Consumer fails with a FileNotFoundError
#######################################
You might find messages like these in your log files:
.. code::
[ERROR] [paperless.consumer] Error while consuming document SCN_0001.pdf: FileNotFoundError: [Errno 2] No such file or directory: '/tmp/ocrmypdf.io.yhk3zbv0/origin.pdf'
Traceback (most recent call last):
File "/app/paperless/src/paperless_tesseract/parsers.py", line 261, in parse
ocrmypdf.ocr(**args)
File "/usr/local/lib/python3.8/dist-packages/ocrmypdf/api.py", line 337, in ocr
return run_pipeline(options=options, plugin_manager=plugin_manager, api=True)
File "/usr/local/lib/python3.8/dist-packages/ocrmypdf/_sync.py", line 385, in run_pipeline
exec_concurrent(context, executor)
File "/usr/local/lib/python3.8/dist-packages/ocrmypdf/_sync.py", line 302, in exec_concurrent
pdf = post_process(pdf, context, executor)
File "/usr/local/lib/python3.8/dist-packages/ocrmypdf/_sync.py", line 235, in post_process
pdf_out = metadata_fixup(pdf_out, context)
File "/usr/local/lib/python3.8/dist-packages/ocrmypdf/_pipeline.py", line 798, in metadata_fixup
with pikepdf.open(context.origin) as original, pikepdf.open(working_file) as pdf:
File "/usr/local/lib/python3.8/dist-packages/pikepdf/_methods.py", line 923, in open
pdf = Pdf._open(
FileNotFoundError: [Errno 2] No such file or directory: '/tmp/ocrmypdf.io.yhk3zbv0/origin.pdf'
This probably indicates paperless tried to consume the same file twice. This can happen for a number of reasons,
depending on how documents are placed into the consume folder. If paperless is using inotify (the default) to
check for documents, try adjusting the :ref:`inotify configuration <configuration-inotify>`. If polling is enabled,
try adjusting the :ref:`polling configuration <configuration-polling>`.
Consumer fails waiting for file to remain unmodified.
#####################################################
You might find messages like these in your log files:
.. code::
[ERROR] [paperless.management.consumer] Timeout while waiting on file /usr/src/paperless/src/../consume/SCN_0001.pdf to remain unmodified.
This indicates paperless timed out while waiting for the file to be completely written to the consume folder.
Adjusting :ref:`polling configuration <configuration-polling>` values should resolve the issue.
.. note::
The user will need to manually move the file out of the consume folder and
back in, for the initial failing file to be consumed.
Consumer fails reporting "OS reports file as busy still".
#########################################################
You might find messages like these in your log files:
.. code::
[WARNING] [paperless.management.consumer] Not consuming file /usr/src/paperless/src/../consume/SCN_0001.pdf: OS reports file as busy still
This indicates paperless was unable to open the file, as the OS reported the file as still being in use. To prevent a
crash, paperless did not try to consume the file. If paperless is using inotify (the default) to
check for documents, try adjusting the :ref:`inotify configuration <configuration-inotify>`. If polling is enabled,
try adjusting the :ref:`polling configuration <configuration-polling>`.
.. note::
The user will need to manually move the file out of the consume folder and
back in, for the initial failing file to be consumed.
Log reports "Creating PaperlessTask failed".
#########################################################
You might find messages like these in your log files:
.. code::
[ERROR] [paperless.management.consumer] Creating PaperlessTask failed: db locked
You are likely using an sqlite based installation, with an increased number of workers and are running into sqlite's concurrency limitations.
Uploading or consuming multiple files at once results in many workers attempting to access the database simultaneously.
Consider changing to the PostgreSQL database if you will be processing many documents at once often. Otherwise,
try tweaking the ``PAPERLESS_DB_TIMEOUT`` setting to allow more time for the database to unlock. This may have
minor performance implications.

Some files were not shown because too many files have changed in this diff Show More