use rye
This commit is contained in:
parent
e7e2eabce2
commit
e31e7f169a
6 changed files with 531 additions and 64 deletions
|
@ -17,7 +17,7 @@ WORKDIR /neodb
|
|||
RUN python -m venv /neodb-venv
|
||||
RUN find misc/wheels-cache -type f | xargs -n 1 /neodb-venv/bin/python3 -m pip install || echo incompatible wheel ignored
|
||||
RUN rm -rf misc/wheels-cache
|
||||
RUN --mount=type=cache,sharing=locked,target=/root/.cache /neodb-venv/bin/python3 -m pip install --upgrade -r requirements.txt
|
||||
RUN --mount=type=cache,sharing=locked,target=/root/.cache /neodb-venv/bin/python3 -m pip install --upgrade -r requirements.lock
|
||||
|
||||
WORKDIR /takahe
|
||||
RUN python -m venv /takahe-venv
|
||||
|
|
|
@ -4,6 +4,71 @@ version = "0.9"
|
|||
description = "🧩 self-hosted server tracking what you read/watch/listen/play, powering a global distributed community federating via ActivityPub."
|
||||
readme = "README.md"
|
||||
requires-python = ">= 3.12"
|
||||
dependencies = [
|
||||
"blurhash-python",
|
||||
"cachetools",
|
||||
"dateparser",
|
||||
"discord.py",
|
||||
"django~=4.2.11",
|
||||
"django-anymail",
|
||||
"django-auditlog>=3.0.0",
|
||||
"django-bleach",
|
||||
"django-compressor",
|
||||
"django-cors-headers",
|
||||
"django-environ",
|
||||
"django-hijack",
|
||||
"django-jsonform",
|
||||
"django-maintenance-mode",
|
||||
"django-markdownx",
|
||||
"django-ninja",
|
||||
"django-oauth-toolkit==2.3.0",
|
||||
"django-polymorphic @ git+https://github.com/jazzband/django-polymorphic/@v4.0.0a",
|
||||
"django-redis",
|
||||
"django-rq",
|
||||
"django-sass-processor",
|
||||
"django-simple-history ",
|
||||
"django-slack",
|
||||
"django-tz-detect",
|
||||
"django-user-messages",
|
||||
"dnspython",
|
||||
"easy-thumbnails",
|
||||
"filetype",
|
||||
"gunicorn",
|
||||
"httpx",
|
||||
"igdb-api-v4",
|
||||
"langdetect",
|
||||
"libsass",
|
||||
"listparser",
|
||||
"loguru",
|
||||
"lxml",
|
||||
"markdownify",
|
||||
"mistune",
|
||||
"openpyxl",
|
||||
"podcastparser",
|
||||
"psycopg2-binary",
|
||||
"requests",
|
||||
"rq",
|
||||
"sentry-sdk",
|
||||
"setproctitle",
|
||||
"tqdm",
|
||||
"typesense",
|
||||
"urlman",
|
||||
"validators",
|
||||
]
|
||||
|
||||
[tool.rye]
|
||||
managed = true
|
||||
virtual = true
|
||||
dev-dependencies = [
|
||||
"pre-commit>=3.7.0",
|
||||
"black~=24.4.2",
|
||||
"django-stubs",
|
||||
"djlint~=1.34.1",
|
||||
"isort~=5.13.2",
|
||||
"lxml-stubs",
|
||||
"pyright==1.1.365",
|
||||
"ruff",
|
||||
]
|
||||
|
||||
[tool.pyright]
|
||||
exclude = [ "media", ".venv", ".git", "playground", "catalog/*/tests.py", "journal/tests.py", "neodb", "**/migrations", "**/sites/douban_*", "neodb-takahe" ]
|
||||
|
@ -17,10 +82,7 @@ indent=2
|
|||
profile = "black"
|
||||
|
||||
[tool.mypy]
|
||||
exclude = [
|
||||
'^neodb-takahe/',
|
||||
'^legacy/',
|
||||
]
|
||||
exclude = ['^neodb-takahe/', '^legacy/', '^media/', '^playground/', '^catalog/*/tests.py', '^journal/tests.py', '^neodb/', '.*migrations.*', '.*sites/douban_.*' ]
|
||||
plugins = ["mypy_django_plugin.main"]
|
||||
|
||||
[tool.django-stubs]
|
||||
|
|
264
requirements-dev.lock
Normal file
264
requirements-dev.lock
Normal file
|
@ -0,0 +1,264 @@
|
|||
# generated by rye
|
||||
# use `rye lock` or `rye sync` to update this lockfile
|
||||
#
|
||||
# last locked with the following flags:
|
||||
# pre: false
|
||||
# features: []
|
||||
# all-features: false
|
||||
# with-sources: false
|
||||
# generate-hashes: false
|
||||
|
||||
aiohttp==3.9.5
|
||||
# via discord-py
|
||||
aiosignal==1.3.1
|
||||
# via aiohttp
|
||||
annotated-types==0.7.0
|
||||
# via pydantic
|
||||
anyio==4.4.0
|
||||
# via httpx
|
||||
asgiref==3.8.1
|
||||
# via django
|
||||
# via django-cors-headers
|
||||
# via django-stubs
|
||||
attrs==23.2.0
|
||||
# via aiohttp
|
||||
beautifulsoup4==4.12.3
|
||||
# via markdownify
|
||||
black==24.4.2
|
||||
bleach==5.0.1
|
||||
# via django-bleach
|
||||
blurhash-python==1.2.2
|
||||
cachetools==5.3.3
|
||||
certifi==2024.6.2
|
||||
# via httpcore
|
||||
# via httpx
|
||||
# via requests
|
||||
# via sentry-sdk
|
||||
cffi==1.16.0
|
||||
# via blurhash-python
|
||||
# via cryptography
|
||||
cfgv==3.4.0
|
||||
# via pre-commit
|
||||
charset-normalizer==3.3.2
|
||||
# via requests
|
||||
click==8.1.7
|
||||
# via black
|
||||
# via djlint
|
||||
# via rq
|
||||
colorama==0.4.6
|
||||
# via djlint
|
||||
cryptography==42.0.8
|
||||
# via jwcrypto
|
||||
cssbeautifier==1.15.1
|
||||
# via djlint
|
||||
dateparser==1.2.0
|
||||
discord-py==2.3.2
|
||||
distlib==0.3.8
|
||||
# via virtualenv
|
||||
django==4.2.13
|
||||
# via django-anymail
|
||||
# via django-appconf
|
||||
# via django-auditlog
|
||||
# via django-bleach
|
||||
# via django-cors-headers
|
||||
# via django-hijack
|
||||
# via django-jsonform
|
||||
# via django-markdownx
|
||||
# via django-ninja
|
||||
# via django-oauth-toolkit
|
||||
# via django-polymorphic
|
||||
# via django-redis
|
||||
# via django-rq
|
||||
# via django-simple-history
|
||||
# via django-slack
|
||||
# via django-stubs
|
||||
# via django-stubs-ext
|
||||
# via django-tz-detect
|
||||
# via easy-thumbnails
|
||||
django-anymail==10.3
|
||||
django-appconf==1.0.6
|
||||
# via django-compressor
|
||||
django-auditlog==3.0.0
|
||||
django-bleach==3.1.0
|
||||
django-compressor==4.4
|
||||
django-cors-headers==4.3.1
|
||||
django-environ==0.11.2
|
||||
django-hijack==3.5.0
|
||||
django-jsonform==2.22.0
|
||||
django-maintenance-mode==0.21.1
|
||||
django-markdownx==4.0.7
|
||||
django-ninja==1.1.0
|
||||
django-oauth-toolkit==2.3.0
|
||||
django-polymorphic @ git+https://github.com/jazzband/django-polymorphic/@1039f882b99f97bf657bd958c949ee6a3b00377a
|
||||
django-redis==5.4.0
|
||||
django-rq==2.10.2
|
||||
django-sass-processor==1.4.1
|
||||
django-simple-history==3.7.0
|
||||
django-slack==5.19.0
|
||||
django-stubs==5.0.2
|
||||
django-stubs-ext==5.0.2
|
||||
# via django-stubs
|
||||
django-tz-detect==0.5.0
|
||||
django-user-messages==1.0.0
|
||||
djlint==1.34.1
|
||||
dnspython==2.6.1
|
||||
easy-thumbnails==2.8.5
|
||||
editorconfig==0.12.4
|
||||
# via cssbeautifier
|
||||
# via jsbeautifier
|
||||
et-xmlfile==1.1.0
|
||||
# via openpyxl
|
||||
filelock==3.14.0
|
||||
# via virtualenv
|
||||
filetype==1.2.0
|
||||
frozenlist==1.4.1
|
||||
# via aiohttp
|
||||
# via aiosignal
|
||||
gunicorn==22.0.0
|
||||
h11==0.14.0
|
||||
# via httpcore
|
||||
html-tag-names==0.1.2
|
||||
# via djlint
|
||||
html-void-elements==0.1.0
|
||||
# via djlint
|
||||
httpcore==1.0.5
|
||||
# via httpx
|
||||
httpx==0.27.0
|
||||
identify==2.5.36
|
||||
# via pre-commit
|
||||
idna==3.7
|
||||
# via anyio
|
||||
# via httpx
|
||||
# via requests
|
||||
# via yarl
|
||||
igdb-api-v4==0.3.2
|
||||
isort==5.13.2
|
||||
jsbeautifier==1.15.1
|
||||
# via cssbeautifier
|
||||
# via djlint
|
||||
json5==0.9.25
|
||||
# via djlint
|
||||
jwcrypto==1.5.6
|
||||
# via django-oauth-toolkit
|
||||
langdetect==1.0.9
|
||||
libsass==0.23.0
|
||||
listparser==0.20
|
||||
loguru==0.7.2
|
||||
lxml==5.2.2
|
||||
lxml-stubs==0.5.1
|
||||
markdown==3.6
|
||||
# via django-markdownx
|
||||
markdownify==0.12.1
|
||||
mistune==3.0.2
|
||||
multidict==6.0.5
|
||||
# via aiohttp
|
||||
# via yarl
|
||||
mypy-extensions==1.0.0
|
||||
# via black
|
||||
nodeenv==1.9.1
|
||||
# via pre-commit
|
||||
# via pyright
|
||||
oauthlib==3.2.2
|
||||
# via django-oauth-toolkit
|
||||
openpyxl==3.1.3
|
||||
packaging==24.0
|
||||
# via black
|
||||
# via gunicorn
|
||||
pathspec==0.12.1
|
||||
# via black
|
||||
# via djlint
|
||||
pillow==10.3.0
|
||||
# via blurhash-python
|
||||
# via django-markdownx
|
||||
# via easy-thumbnails
|
||||
platformdirs==4.2.2
|
||||
# via black
|
||||
# via virtualenv
|
||||
podcastparser==0.6.10
|
||||
pre-commit==3.7.1
|
||||
protobuf==5.27.0
|
||||
# via igdb-api-v4
|
||||
psycopg2-binary==2.9.9
|
||||
pycparser==2.22
|
||||
# via cffi
|
||||
pydantic==2.7.3
|
||||
# via django-ninja
|
||||
pydantic-core==2.18.4
|
||||
# via pydantic
|
||||
pyright==1.1.365
|
||||
python-dateutil==2.9.0.post0
|
||||
# via dateparser
|
||||
# via django-auditlog
|
||||
python-fsutil==0.14.1
|
||||
# via django-maintenance-mode
|
||||
pytz==2024.1
|
||||
# via dateparser
|
||||
# via django-tz-detect
|
||||
pyyaml==6.0.1
|
||||
# via djlint
|
||||
# via pre-commit
|
||||
rcssmin==1.1.1
|
||||
# via django-compressor
|
||||
redis==5.0.4
|
||||
# via django-redis
|
||||
# via django-rq
|
||||
# via rq
|
||||
regex==2023.12.25
|
||||
# via dateparser
|
||||
# via djlint
|
||||
requests==2.32.3
|
||||
# via django-anymail
|
||||
# via django-oauth-toolkit
|
||||
# via django-slack
|
||||
# via igdb-api-v4
|
||||
# via typesense
|
||||
rjsmin==1.2.1
|
||||
# via django-compressor
|
||||
rq==1.16.2
|
||||
# via django-rq
|
||||
ruff==0.4.7
|
||||
sentry-sdk==2.4.0
|
||||
setproctitle==1.3.3
|
||||
six==1.16.0
|
||||
# via bleach
|
||||
# via blurhash-python
|
||||
# via cssbeautifier
|
||||
# via jsbeautifier
|
||||
# via langdetect
|
||||
# via markdownify
|
||||
# via python-dateutil
|
||||
sniffio==1.3.1
|
||||
# via anyio
|
||||
# via httpx
|
||||
soupsieve==2.5
|
||||
# via beautifulsoup4
|
||||
sqlparse==0.5.0
|
||||
# via django
|
||||
tinycss2==1.1.1
|
||||
# via bleach
|
||||
tqdm==4.66.4
|
||||
# via djlint
|
||||
types-pyyaml==6.0.12.20240311
|
||||
# via django-stubs
|
||||
typesense==0.21.0
|
||||
typing-extensions==4.12.1
|
||||
# via django-stubs
|
||||
# via django-stubs-ext
|
||||
# via jwcrypto
|
||||
# via pydantic
|
||||
# via pydantic-core
|
||||
tzlocal==5.2
|
||||
# via dateparser
|
||||
urllib3==2.2.1
|
||||
# via django-anymail
|
||||
# via requests
|
||||
# via sentry-sdk
|
||||
urlman==2.0.2
|
||||
validators==0.28.3
|
||||
virtualenv==20.26.2
|
||||
# via pre-commit
|
||||
webencodings==0.5.1
|
||||
# via bleach
|
||||
# via tinycss2
|
||||
yarl==1.9.4
|
||||
# via aiohttp
|
|
@ -1,10 +0,0 @@
|
|||
black~=24.4.2
|
||||
#coverage
|
||||
#django-debug-toolbar
|
||||
django-stubs
|
||||
djlint~=1.34.1
|
||||
isort~=5.13.2
|
||||
lxml-stubs
|
||||
pre-commit
|
||||
pyright==1.1.365
|
||||
ruff
|
200
requirements.lock
Normal file
200
requirements.lock
Normal file
|
@ -0,0 +1,200 @@
|
|||
# generated by rye
|
||||
# use `rye lock` or `rye sync` to update this lockfile
|
||||
#
|
||||
# last locked with the following flags:
|
||||
# pre: false
|
||||
# features: []
|
||||
# all-features: false
|
||||
# with-sources: false
|
||||
# generate-hashes: false
|
||||
|
||||
aiohttp==3.9.5
|
||||
# via discord-py
|
||||
aiosignal==1.3.1
|
||||
# via aiohttp
|
||||
annotated-types==0.7.0
|
||||
# via pydantic
|
||||
anyio==4.4.0
|
||||
# via httpx
|
||||
asgiref==3.8.1
|
||||
# via django
|
||||
# via django-cors-headers
|
||||
attrs==23.2.0
|
||||
# via aiohttp
|
||||
beautifulsoup4==4.12.3
|
||||
# via markdownify
|
||||
bleach==5.0.1
|
||||
# via django-bleach
|
||||
blurhash-python==1.2.2
|
||||
cachetools==5.3.3
|
||||
certifi==2024.6.2
|
||||
# via httpcore
|
||||
# via httpx
|
||||
# via requests
|
||||
# via sentry-sdk
|
||||
cffi==1.16.0
|
||||
# via blurhash-python
|
||||
# via cryptography
|
||||
charset-normalizer==3.3.2
|
||||
# via requests
|
||||
click==8.1.7
|
||||
# via rq
|
||||
cryptography==42.0.8
|
||||
# via jwcrypto
|
||||
dateparser==1.2.0
|
||||
discord-py==2.3.2
|
||||
django==4.2.13
|
||||
# via django-anymail
|
||||
# via django-appconf
|
||||
# via django-auditlog
|
||||
# via django-bleach
|
||||
# via django-cors-headers
|
||||
# via django-hijack
|
||||
# via django-jsonform
|
||||
# via django-markdownx
|
||||
# via django-ninja
|
||||
# via django-oauth-toolkit
|
||||
# via django-polymorphic
|
||||
# via django-redis
|
||||
# via django-rq
|
||||
# via django-simple-history
|
||||
# via django-slack
|
||||
# via django-tz-detect
|
||||
# via easy-thumbnails
|
||||
django-anymail==10.3
|
||||
django-appconf==1.0.6
|
||||
# via django-compressor
|
||||
django-auditlog==3.0.0
|
||||
django-bleach==3.1.0
|
||||
django-compressor==4.4
|
||||
django-cors-headers==4.3.1
|
||||
django-environ==0.11.2
|
||||
django-hijack==3.5.0
|
||||
django-jsonform==2.22.0
|
||||
django-maintenance-mode==0.21.1
|
||||
django-markdownx==4.0.7
|
||||
django-ninja==1.1.0
|
||||
django-oauth-toolkit==2.3.0
|
||||
django-polymorphic @ git+https://github.com/jazzband/django-polymorphic/@1039f882b99f97bf657bd958c949ee6a3b00377a
|
||||
django-redis==5.4.0
|
||||
django-rq==2.10.2
|
||||
django-sass-processor==1.4.1
|
||||
django-simple-history==3.7.0
|
||||
django-slack==5.19.0
|
||||
django-tz-detect==0.5.0
|
||||
django-user-messages==1.0.0
|
||||
dnspython==2.6.1
|
||||
easy-thumbnails==2.8.5
|
||||
et-xmlfile==1.1.0
|
||||
# via openpyxl
|
||||
filetype==1.2.0
|
||||
frozenlist==1.4.1
|
||||
# via aiohttp
|
||||
# via aiosignal
|
||||
gunicorn==22.0.0
|
||||
h11==0.14.0
|
||||
# via httpcore
|
||||
httpcore==1.0.5
|
||||
# via httpx
|
||||
httpx==0.27.0
|
||||
idna==3.7
|
||||
# via anyio
|
||||
# via httpx
|
||||
# via requests
|
||||
# via yarl
|
||||
igdb-api-v4==0.3.2
|
||||
jwcrypto==1.5.6
|
||||
# via django-oauth-toolkit
|
||||
langdetect==1.0.9
|
||||
libsass==0.23.0
|
||||
listparser==0.20
|
||||
loguru==0.7.2
|
||||
lxml==5.2.2
|
||||
markdown==3.6
|
||||
# via django-markdownx
|
||||
markdownify==0.12.1
|
||||
mistune==3.0.2
|
||||
multidict==6.0.5
|
||||
# via aiohttp
|
||||
# via yarl
|
||||
oauthlib==3.2.2
|
||||
# via django-oauth-toolkit
|
||||
openpyxl==3.1.3
|
||||
packaging==24.0
|
||||
# via gunicorn
|
||||
pillow==10.3.0
|
||||
# via blurhash-python
|
||||
# via django-markdownx
|
||||
# via easy-thumbnails
|
||||
podcastparser==0.6.10
|
||||
protobuf==5.27.0
|
||||
# via igdb-api-v4
|
||||
psycopg2-binary==2.9.9
|
||||
pycparser==2.22
|
||||
# via cffi
|
||||
pydantic==2.7.3
|
||||
# via django-ninja
|
||||
pydantic-core==2.18.4
|
||||
# via pydantic
|
||||
python-dateutil==2.9.0.post0
|
||||
# via dateparser
|
||||
# via django-auditlog
|
||||
python-fsutil==0.14.1
|
||||
# via django-maintenance-mode
|
||||
pytz==2024.1
|
||||
# via dateparser
|
||||
# via django-tz-detect
|
||||
rcssmin==1.1.1
|
||||
# via django-compressor
|
||||
redis==5.0.4
|
||||
# via django-redis
|
||||
# via django-rq
|
||||
# via rq
|
||||
regex==2024.5.15
|
||||
# via dateparser
|
||||
requests==2.32.3
|
||||
# via django-anymail
|
||||
# via django-oauth-toolkit
|
||||
# via django-slack
|
||||
# via igdb-api-v4
|
||||
# via typesense
|
||||
rjsmin==1.2.1
|
||||
# via django-compressor
|
||||
rq==1.16.2
|
||||
# via django-rq
|
||||
sentry-sdk==2.4.0
|
||||
setproctitle==1.3.3
|
||||
six==1.16.0
|
||||
# via bleach
|
||||
# via blurhash-python
|
||||
# via langdetect
|
||||
# via markdownify
|
||||
# via python-dateutil
|
||||
sniffio==1.3.1
|
||||
# via anyio
|
||||
# via httpx
|
||||
soupsieve==2.5
|
||||
# via beautifulsoup4
|
||||
sqlparse==0.5.0
|
||||
# via django
|
||||
tinycss2==1.1.1
|
||||
# via bleach
|
||||
tqdm==4.66.4
|
||||
typesense==0.21.0
|
||||
typing-extensions==4.12.1
|
||||
# via jwcrypto
|
||||
# via pydantic
|
||||
# via pydantic-core
|
||||
tzlocal==5.2
|
||||
# via dateparser
|
||||
urllib3==2.2.1
|
||||
# via django-anymail
|
||||
# via requests
|
||||
# via sentry-sdk
|
||||
urlman==2.0.2
|
||||
validators==0.28.3
|
||||
webencodings==0.5.1
|
||||
# via bleach
|
||||
# via tinycss2
|
||||
yarl==1.9.4
|
||||
# via aiohttp
|
|
@ -1,49 +0,0 @@
|
|||
blurhash-python
|
||||
cachetools
|
||||
dateparser
|
||||
discord.py
|
||||
django~=4.2.11
|
||||
django-anymail
|
||||
django-auditlog>=3.0.0
|
||||
django-bleach
|
||||
django-compressor
|
||||
django-cors-headers
|
||||
django-environ
|
||||
django-hijack
|
||||
django-jsonform
|
||||
django-maintenance-mode
|
||||
django-markdownx
|
||||
django-ninja
|
||||
django-oauth-toolkit==2.3.0
|
||||
django-polymorphic @ git+https://github.com/jazzband/django-polymorphic/@v4.0.0a
|
||||
django-redis
|
||||
django-rq
|
||||
django-sass-processor
|
||||
django-simple-history # no longer used but kept for migration code which is used by tests
|
||||
django-slack
|
||||
django-tz-detect
|
||||
django-user-messages
|
||||
dnspython
|
||||
easy-thumbnails
|
||||
filetype
|
||||
gunicorn
|
||||
httpx
|
||||
igdb-api-v4
|
||||
langdetect
|
||||
libsass
|
||||
listparser
|
||||
loguru
|
||||
lxml
|
||||
markdownify
|
||||
mistune
|
||||
openpyxl
|
||||
podcastparser
|
||||
psycopg2-binary
|
||||
requests
|
||||
rq
|
||||
sentry-sdk
|
||||
setproctitle
|
||||
tqdm
|
||||
typesense
|
||||
urlman
|
||||
validators
|
Loading…
Add table
Reference in a new issue