On Sat, 27 Sep 2025 21:53:51 +0200
Gerald Wilhelm <[email protected]> wrote:

> Hi Michael
> 
> My name is Gerald and I'm a paperless user since many years.
> Currently my instance runs with docker on an old Qnap-NAS, but I want
> to move it to my new FreeBSD based home server in a jail. So thank
> you for making paperless-ngx available for FreeBSD. The installation
> with pkg wasn't a problem, I could upload some pdfs into the new
> paperless and work with them and export them normally. To transfer my
> documents I used document_exporter on the old instance 2.16.3 and
> tried to import them with document_importer on the new instance,
> where I ran into this error:
> 
> root@paperless:~ # su -l paperless
> $ paperless document_importer /tmp/paperless_216_20250920
> Checking the manifest
> Database import failed
> No version information present
> Traceback (most recent call last):
>   File
> "/usr/local/lib/python3.11/site-packages/django/db/models/options.py",
> line 676, in get_field return self.fields_map[field_name]
> ~~~~~~~~~~~~~~~^^^^^^^^^^^^ KeyError: 'remote_port'
> 
> During handling of the above exception, another exception occurred:
> 
> Traceback (most recent call last):
>   File
> "/usr/local/lib/python3.11/site-packages/django/core/serializers/json.py",
> line 70, in Deserializer yield from PythonDeserializer(objects,
> **options) File
> "/usr/local/lib/python3.11/site-packages/django/core/serializers/python.py",
> line 141, in Deserializer field = Model._meta.get_field(field_name)
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File
> "/usr/local/lib/python3.11/site-packages/django/db/models/options.py",
> line 678, in get_field raise FieldDoesNotExist(
> django.core.exceptions.FieldDoesNotExist: LogEntry has no field named
> 'remote_port'
> 
> The above exception was the direct cause of the following exception:
> 
> Traceback (most recent call last):
>   File "/usr/local/lib/python3.11/site-packages/paperless/manage.py",
> line 10, in <module> execute_from_command_line(sys.argv)
>   File
> "/usr/local/lib/python3.11/site-packages/django/core/management/__init__.py",
> line 442, in execute_from_command_line utility.execute() File
> "/usr/local/lib/python3.11/site-packages/django/core/management/__init__.py",
> line 436, in execute
> self.fetch_command(subcommand).run_from_argv(self.argv) File
> "/usr/local/lib/python3.11/site-packages/django/core/management/base.py",
> line 413, in run_from_argv self.execute(*args, **cmd_options) File
> "/usr/local/lib/python3.11/site-packages/django/core/management/base.py",
> line 459, in execute output = self.handle(*args, **options)
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File
> "/usr/local/lib/python3.11/site-packages/paperless/documents/management/commands/document_importer.py",
> line 280, in handle self.load_data_to_database() File
> "/usr/local/lib/python3.11/site-packages/paperless/documents/management/commands/document_importer.py",
> line 223, in load_data_to_database raise e File
> "/usr/local/lib/python3.11/site-packages/paperless/documents/management/commands/document_importer.py",
> line 204, in load_data_to_database call_command("loaddata",
> manifest_path) File
> "/usr/local/lib/python3.11/site-packages/django/core/management/__init__.py",
> line 194, in call_command return command.execute(*args, **defaults)
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File
> "/usr/local/lib/python3.11/site-packages/django/core/management/base.py",
> line 459, in execute output = self.handle(*args, **options)
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File
> "/usr/local/lib/python3.11/site-packages/django/core/management/commands/loaddata.py",
> line 103, in handle self.loaddata(fixture_labels) File
> "/usr/local/lib/python3.11/site-packages/django/core/management/commands/loaddata.py",
> line 164, in loaddata self.load_label(fixture_label) File
> "/usr/local/lib/python3.11/site-packages/django/core/management/commands/loaddata.py",
> line 252, in load_label for obj in objects: File
> "/usr/local/lib/python3.11/site-packages/django/core/serializers/json.py",
> line 74, in Deserializer raise DeserializationError() from exc
> django.core.serializers.base.DeserializationError: Problem installing
> fixture '/tmp/paperless_216_20250920/manifest.json‘: 
> 
> 
> 
> 
> After some investigation I found out, that in the db of the FreeBSD
> variant of paperless the field remote_port is missing in the table
> logentry. Which lead me to the command 'paperless showmigrations', so
> that I could compare the migrations of my two instances. The only
> difference I found were this two migrations:
> 
> auditlog
> ...
>  [X] 0016_logentry_remote_port
>  [X] 0017_add_actor_email
> 
> Looking
> into 
> https://github.com/jazzband/django-auditlog/tree/v3.1.0/auditlog/migrations 
> shows, that this two migrations were introduced with version 3.1.0 of 
> django-auditlog, but the port of paperless 2.16 is using version 3.0.0 of it.
> 
> A first very, very naive try to solve this, was to install pip via
> pkg, removing py311-dj51-django-auditlog via pkg and installing
> django-auditlog via pip. Result: import works, paperless itself
> works, but export crashes, which I use to backup the documents.
> 
> My second attempt was to use the port collection. Here what I tried:
> - installed ports collection into jail
> - adapted Makefile and distinfo in
> /usr/ports/www/py-dj51-django-auditlog with some help from claude
> code (sorry, never touched a port before)
> - pkg remove -f py311-dj51-django-auditlog
> - make install
> - pkg check -d -> Checking all packages: 100%
> - restart paperless jail
> - import of documents works
> - paperless itself works, so far I could test it
> - export of documents works
> 
> Could you please have a look into the problem?
> Please find the diff file for the port attached to this email.
> 

Hi Gerald,

Thanks for reaching out. I never hit this problem myself (probably due
to not importing documents recently, but only adding scanned documents
over scanner/consumer).

As it turns out, django-auditlog changed the spelling of their release
artifacts on pypi from django-auditlog to django_auditlog, therefore
portscout didn't pick up the new version.

I'll address the issue soon.

Cheers
Michael


-- 
Michael Gmelin

Reply via email to