ciur / papermerge

Open Source Document Management System for Digital Archives (Scanned Documents)
https://papermerge.com
Apache License 2.0
2.42k stars 258 forks source link

Small talk and feature request #550

Closed Archibaldium closed 6 months ago

Archibaldium commented 1 year ago

Hello,

I'm not using papermerge personally but I've been tasked to find document manager running on docker and it's the first one I tested. I really liked it and I'm pretty exited to see the future evolution. I wanted to talk about a little bug I encountered but it got (kinda) solved so the main things I'll talk about is the feature I hope to eventually see in papermerge in the future.

So first of the bug. While testing papermerge, I tried doing a backup but got this while running the following command: docker run papermerge/papermerge backup papermerge/backup/

`/venv/lib/python3.10/site-packages/requests/init.py:109: RequestsDependencyWarning: urllib3 (1.26.13) or chardet (None)/charset_normalizer (3.0.1) doesn't match a supported version! warnings.warn( Traceback (most recent call last): File "/venv/lib/python3.10/site-packages/django/db/backends/utils.py", line 89, in _execute return self.cursor.execute(sql, params) File "/venv/lib/python3.10/site-packages/django/db/backends/sqlite3/base.py", line 477, in execute return Database.Cursor.execute(self, query, params) sqlite3.OperationalError: no such table: core_user

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "/app/manage.py", line 22, in main() File "/app/manage.py", line 18, in main execute_from_command_line(sys.argv) File "/venv/lib/python3.10/site-packages/django/core/management/init.py", line 446, in execute_from_command_line utility.execute() File "/venv/lib/python3.10/site-packages/django/core/management/init.py", line 440, in execute self.fetch_command(subcommand).run_from_argv(self.argv) File "/venv/lib/python3.10/site-packages/django/core/management/base.py", line 414, in run_from_argv self.execute(*args, *cmd_options) File "/venv/lib/python3.10/site-packages/django/core/management/base.py", line 460, in execute output = self.handle(args, **options) File "/app/papermerge/core/management/commands/backup.py", line 41, in handle backup_data(file_path=file_path) File "/app/papermerge/core/backup_restore/backup.py", line 227, in backup_data dict_data = dump_data_as_dict() File "/app/papermerge/core/backup_restore/backup.py", line 211, in dump_data_as_dict result_dict['users'] = UserSerializer(User.objects, many=True).data File "/venv/lib/python3.10/site-packages/rest_framework/serializers.py", line 768, in data ret = super().data File "/venv/lib/python3.10/site-packages/rest_framework/serializers.py", line 253, in data self._data = self.to_representation(self.instance) File "/venv/lib/python3.10/site-packages/rest_framework/serializers.py", line 686, in to_representation return [ File "/venv/lib/python3.10/site-packages/django/db/models/query.py", line 320, in iter self._fetch_all() File "/venv/lib/python3.10/site-packages/django/db/models/query.py", line 1507, in _fetch_all self._result_cache = list(self._iterable_class(self)) File "/venv/lib/python3.10/site-packages/django/db/models/query.py", line 57, in iter results = compiler.execute_sql( File "/venv/lib/python3.10/site-packages/django/db/models/sql/compiler.py", line 1361, in execute_sql cursor.execute(sql, params) File "/venv/lib/python3.10/site-packages/django/db/backends/utils.py", line 67, in execute return self._execute_with_wrappers( File "/venv/lib/python3.10/site-packages/django/db/backends/utils.py", line 80, in _execute_with_wrappers return executor(sql, params, many, context) File "/venv/lib/python3.10/site-packages/django/db/backends/utils.py", line 84, in _execute with self.db.wrap_database_errors: File "/venv/lib/python3.10/site-packages/django/db/utils.py", line 91, in exit raise dj_exc_value.with_traceback(traceback) from exc_value File "/venv/lib/python3.10/site-packages/django/db/backends/utils.py", line 89, in _execute return self.cursor.execute(sql, params) File "/venv/lib/python3.10/site-packages/django/db/backends/sqlite3/base.py", line 477, in execute return Database.Cursor.execute(self, query, params) django.db.utils.OperationalError: no such table: core_user`

I was on window, running papermerge with docker compose on a debian that i installed with the window store and using docker compose, my WSL was version 1.2.5.0 I think. I'm a total newbie on docker so idk if what I gave can help you understand or if I didn't do something right. As I said it's kinda solved since I later used a debian VM to host papermerge and didn't seem to have any problems.

Regarding the feature request, I need to save pretty important pieces of code (don't ask which idk) and was told to we would probably use .zip. So I wanted to know whether it was planned or would have any interest for papermerge to be able to save zip file in papermerge.

Thank you for your work and good luck for whatever may be coming in the future. P.S: idk why but I really like your profile picture XD