[GH-ISSUE #1185] Bug: django-jsonfield EOL/not available in Debian Bookworm #734

Open
opened 2026-03-01 14:45:56 +03:00 by kerem · 1 comment
Owner

Originally created by @grigorescu on GitHub (Jul 15, 2023).
Original GitHub issue: https://github.com/ArchiveBox/ArchiveBox/issues/1185

Describe the bug

Trying to install the dev branch on the latest Debian. The Debian package depends on python3-django-jsonfield, which is not available in Bookworm, and it looks like the author has pointed out that it's been replaced with native Django functionality:

https://groups.google.com/g/linux.debian.bugs.dist/c/RQvc7N76zvQ

The GitHub repo was archived 2 years ago well: https://github.com/adamchainz/django-jsonfield

Steps to reproduce

Mainly following the steps in .github/workflows/debian.yml

ArchiveBox version

dev branch at 40ddd33602

0.6.3
ArchiveBox v0.6.3 Cpython Linux Linux-6.2.16-3-pve-x86_64-with-glibc2.36 x86_64
DEBUG=False IN_DOCKER=False IS_TTY=True TZ=UTC FS_ATOMIC=True FS_REMOTE=False FS_PERMS=644 0:0 SEARCH_BACKEND=ripgrep

[i] Dependency versions:
 √  PYTHON_BINARY         v3.11.2         valid     /usr/bin/python3.11
 √  SQLITE_BINARY         v2.6.0          valid     /usr/lib/python3.11/sqlite3/dbapi2.py
 √  DJANGO_BINARY         v4.2.3          valid     /usr/local/lib/python3.11/dist-packages/django/__init__.py
 √  ARCHIVEBOX_BINARY     v0.6.3          valid     /usr/bin/archivebox

 √  CURL_BINARY           v7.88.1         valid     /usr/bin/curl
 √  WGET_BINARY           v1.21.3         valid     /usr/bin/wget
 √  NODE_BINARY           v18.13.0        valid     /usr/bin/node
 X  SINGLEFILE_BINARY     ?               invalid   single-file
 X  READABILITY_BINARY    ?               invalid   readability-extractor
 X  MERCURY_BINARY        ?               invalid   mercury-parser
 √  GIT_BINARY            v2.39.2         valid     /usr/bin/git
 √  YOUTUBEDL_BINARY      v2023.03.04     valid     /usr/bin/yt-dlp
 -  CHROME_BINARY         -               disabled
 √  RIPGREP_BINARY        v13.0.0         valid     /usr/bin/rg

[i] Source-code locations:
 √  PACKAGE_DIR           23 files        valid     /usr/lib/python3/dist-packages/archivebox
 √  TEMPLATES_DIR         3 files         valid     /usr/lib/python3/dist-packages/archivebox/templates
 -  CUSTOM_TEMPLATES_DIR  -               disabled

[i] Secrets locations:
 -  CHROME_USER_DATA_DIR  -               disabled
 -  COOKIES_FILE          -               disabled


[i] Data locations:

[!] Warning: Missing 3 recommended dependencies
    ! SINGLEFILE_BINARY: single-file (unable to detect version)
      Hint: To install all packages automatically run: archivebox setup
            or to disable it and silence this warning: archivebox config --set SAVE_SINGLEFILE=False

    ! READABILITY_BINARY: readability-extractor (unable to detect version)
      Hint: To install all packages automatically run: archivebox setup
            or to disable it and silence this warning: archivebox config --set SAVE_READABILITY=False

    ! MERCURY_BINARY: mercury-parser (unable to detect version)
      Hint: To install all packages automatically run: archivebox setup
            or to disable it and silence this warning: archivebox config --set SAVE_MERCURY=False

Tickets without full version info will closed until it is provided, we need the full output here to help you solve your issue

Just as an aside, I get the purpose of this, but it's a bit of a chicken-and-egg issue when the bug is related to not being able to install (and therefore run) a specific version. I had to devise a workaround just to be able to get the output so I could file a bug.

Originally created by @grigorescu on GitHub (Jul 15, 2023). Original GitHub issue: https://github.com/ArchiveBox/ArchiveBox/issues/1185 #### Describe the bug Trying to install the dev branch on the latest Debian. The Debian package depends on python3-django-jsonfield, which is not available in Bookworm, and it looks like the author has pointed out that it's been replaced with native Django functionality: https://groups.google.com/g/linux.debian.bugs.dist/c/RQvc7N76zvQ The GitHub repo was archived 2 years ago well: https://github.com/adamchainz/django-jsonfield #### Steps to reproduce Mainly following the steps in .github/workflows/debian.yml #### ArchiveBox version dev branch at 40ddd3360207aefd0e2c168833c72a6868c9c80b ```logs 0.6.3 ArchiveBox v0.6.3 Cpython Linux Linux-6.2.16-3-pve-x86_64-with-glibc2.36 x86_64 DEBUG=False IN_DOCKER=False IS_TTY=True TZ=UTC FS_ATOMIC=True FS_REMOTE=False FS_PERMS=644 0:0 SEARCH_BACKEND=ripgrep [i] Dependency versions: √ PYTHON_BINARY v3.11.2 valid /usr/bin/python3.11 √ SQLITE_BINARY v2.6.0 valid /usr/lib/python3.11/sqlite3/dbapi2.py √ DJANGO_BINARY v4.2.3 valid /usr/local/lib/python3.11/dist-packages/django/__init__.py √ ARCHIVEBOX_BINARY v0.6.3 valid /usr/bin/archivebox √ CURL_BINARY v7.88.1 valid /usr/bin/curl √ WGET_BINARY v1.21.3 valid /usr/bin/wget √ NODE_BINARY v18.13.0 valid /usr/bin/node X SINGLEFILE_BINARY ? invalid single-file X READABILITY_BINARY ? invalid readability-extractor X MERCURY_BINARY ? invalid mercury-parser √ GIT_BINARY v2.39.2 valid /usr/bin/git √ YOUTUBEDL_BINARY v2023.03.04 valid /usr/bin/yt-dlp - CHROME_BINARY - disabled √ RIPGREP_BINARY v13.0.0 valid /usr/bin/rg [i] Source-code locations: √ PACKAGE_DIR 23 files valid /usr/lib/python3/dist-packages/archivebox √ TEMPLATES_DIR 3 files valid /usr/lib/python3/dist-packages/archivebox/templates - CUSTOM_TEMPLATES_DIR - disabled [i] Secrets locations: - CHROME_USER_DATA_DIR - disabled - COOKIES_FILE - disabled [i] Data locations: [!] Warning: Missing 3 recommended dependencies ! SINGLEFILE_BINARY: single-file (unable to detect version) Hint: To install all packages automatically run: archivebox setup or to disable it and silence this warning: archivebox config --set SAVE_SINGLEFILE=False ! READABILITY_BINARY: readability-extractor (unable to detect version) Hint: To install all packages automatically run: archivebox setup or to disable it and silence this warning: archivebox config --set SAVE_READABILITY=False ! MERCURY_BINARY: mercury-parser (unable to detect version) Hint: To install all packages automatically run: archivebox setup or to disable it and silence this warning: archivebox config --set SAVE_MERCURY=False ``` > Tickets without full version info will closed until it is provided, we need the full output here to help you solve your issue Just as an aside, I get the purpose of this, but it's a bit of a chicken-and-egg issue when the bug is related to not being able to install (and therefore run) a specific version. I had to devise a workaround just to be able to get the output so I could file a bug.
Author
Owner

@pirate commented on GitHub (Aug 8, 2023):

I'm going to vendor all the ArchiveBox library dependencies in the next major version, so this issue should go away. I don't anticipate everymaking it into Debian/Ubuntu apt main sources, so I don't need to play by their rules where nothing is allowed to be vendored. Extractor dependencies will still be able to upgraded independently, I'll leave the options to override those and point them to system version if you prefer them over the vendored ones, but I want to move towards shipping ArchiveBox with all its dependencies built in out-of-the-box. Having it piecemeal like we have done up to this point would be doable if I had a whole team working on this and keeping all the release channels up-to-date, but because it's a single dev side project I have to reduce that release workload a bit.

<!-- gh-comment-id:1670266101 --> @pirate commented on GitHub (Aug 8, 2023): I'm going to vendor all the ArchiveBox library dependencies in the next major version, so this issue should go away. I don't anticipate everymaking it into Debian/Ubuntu apt main sources, so I don't need to play by their rules where nothing is allowed to be vendored. Extractor dependencies will still be able to upgraded independently, I'll leave the options to override those and point them to system version if you prefer them over the vendored ones, but I want to move towards shipping ArchiveBox with all its dependencies built in out-of-the-box. Having it piecemeal like we have done up to this point would be doable if I had a whole team working on this and keeping all the release channels up-to-date, but because it's a single dev side project I have to reduce that release workload a bit.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/ArchiveBox#734
No description provided.