From 216e885b8557c997256d38963858db6ad8548cb8 Mon Sep 17 00:00:00 2001 From: Nick Sweeting Date: Tue, 8 Oct 2024 03:53:41 -0700 Subject: [PATCH] bump pydantic-pkgr --- archivebox/config/constants.py | 6 ------ archivebox/config/permissions.py | 10 ++++++++++ archivebox/vendor/pydantic-pkgr | 2 +- pyproject.toml | 2 +- requirements.txt | 8 +++++++- uv.lock | 18 +++++++++++++++++- 6 files changed, 36 insertions(+), 10 deletions(-) diff --git a/archivebox/config/constants.py b/archivebox/config/constants.py index 2a193225..951976c8 100644 --- a/archivebox/config/constants.py +++ b/archivebox/config/constants.py @@ -302,9 +302,3 @@ CONSTANTS_CONFIG = CONSTANTS.__benedict__() # add all key: values to globals() for easier importing globals().update(CONSTANTS) - - -# these need to always exist as we need them to run almost everything -# TODO: figure out a better time to make these than import-time -CONSTANTS.LIB_DIR.mkdir(parents=True, exist_ok=True) -CONSTANTS.TMP_DIR.mkdir(parents=True, exist_ok=True) diff --git a/archivebox/config/permissions.py b/archivebox/config/permissions.py index fa2fc38b..a1136fbb 100644 --- a/archivebox/config/permissions.py +++ b/archivebox/config/permissions.py @@ -66,6 +66,16 @@ def drop_privileges(): # drop permissions to the user that owns the data dir / provided PUID if os.geteuid() != ARCHIVEBOX_USER: os.seteuid(ARCHIVEBOX_USER) + + # try: + # from .paths import PACKAGE_DIR + # except ModuleNotFoundError: + # print(f'[red][X] Failed to get package dir for {__file__}[/red]') + + # if not os.access(__file__, os.R_OK): + # # ARCHIVEBOX_USER is not able to read the source code, chown it so they can + # with SudoPermission(uid=0, fallback=True): + # os.system(f'chown -R :{ARCHIVEBOX_GROUP} "{PACKAGE_DIR}"') # if we need sudo (e.g. for installing dependencies) code should use SudoPermissions() context manager to regain root diff --git a/archivebox/vendor/pydantic-pkgr b/archivebox/vendor/pydantic-pkgr index 300f3a41..88892cc7 160000 --- a/archivebox/vendor/pydantic-pkgr +++ b/archivebox/vendor/pydantic-pkgr @@ -1 +1 @@ -Subproject commit 300f3a41a90b390d5a999c731a2ff336d4ecb80c +Subproject commit 88892cc7b8d8a6424d712b424ebbc1a1be9ce4dc diff --git a/pyproject.toml b/pyproject.toml index aaea93df..f943e2d2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -79,7 +79,7 @@ dependencies = [ "base32-crockford==0.3.0", "platformdirs>=4.3.6", # "pocket@git+https://github.com/tapanpandita/pocket.git@v0.3.7", - # "pydantic-pkgr>=0.4.7", + "pydantic-pkgr>=0.4.8", ############# Plugin Dependencies ################ "sonic-client>=1.0.0", "yt-dlp>=2024.8.6", # for: media" diff --git a/requirements.txt b/requirements.txt index 3d2214e8..abc80029 100644 --- a/requirements.txt +++ b/requirements.txt @@ -199,9 +199,14 @@ pydantic==2.9.2 # via # django-ninja # django-pydantic-field + # pydantic-pkgr # pydantic-settings pydantic-core==2.23.4 - # via pydantic + # via + # pydantic + # pydantic-pkgr +pydantic-pkgr==0.4.8 + # via archivebox (pyproject.toml) pydantic-settings==2.5.2 # via archivebox (pyproject.toml) pygments==2.18.0 @@ -303,6 +308,7 @@ typing-extensions==4.12.2 # django-stubs-ext # pydantic # pydantic-core + # pydantic-pkgr # twisted tzlocal==5.2 # via dateparser diff --git a/uv.lock b/uv.lock index e86db5fb..3a97730f 100644 --- a/uv.lock +++ b/uv.lock @@ -41,7 +41,7 @@ wheels = [ [[package]] name = "archivebox" -version = "0.8.5rc8" +version = "0.8.5rc9" source = { editable = "." } dependencies = [ { name = "atomicwrites" }, @@ -69,6 +69,7 @@ dependencies = [ { name = "pluggy" }, { name = "psutil" }, { name = "py-machineid" }, + { name = "pydantic-pkgr" }, { name = "pydantic-settings" }, { name = "python-benedict", extra = ["io", "parse"] }, { name = "python-crontab" }, @@ -149,6 +150,7 @@ requires-dist = [ { name = "pluggy", specifier = ">=1.5.0" }, { name = "psutil", specifier = ">=6.0.0" }, { name = "py-machineid", specifier = ">=0.6.0" }, + { name = "pydantic-pkgr", specifier = ">=0.4.8" }, { name = "pydantic-settings", specifier = ">=2.5.2" }, { name = "python-benedict", extras = ["io", "parse"], specifier = ">=0.33.2" }, { name = "python-crontab", specifier = ">=3.2.0" }, @@ -1826,6 +1828,20 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/a9/f9/b6bcaf874f410564a78908739c80861a171788ef4d4f76f5009656672dfe/pydantic_core-2.23.4-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:9a5bce9d23aac8f0cf0836ecfc033896aa8443b501c58d0602dbfd5bd5b37753", size = 1920344 }, ] +[[package]] +name = "pydantic-pkgr" +version = "0.4.8" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pydantic" }, + { name = "pydantic-core" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b4/f1/69ed61848d692565450b78a4083941fcc91cbb49103a6ec9918c104da884/pydantic_pkgr-0.4.8.tar.gz", hash = "sha256:3e5603fed54eb19546546f6bfcf3754a6d2003692e9dfa343ca4565e7b1d40cd", size = 36589 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8c/c6/65c2468354bb20aa3cc8450d636cd2f5fa8f2b17aaef87288ca4753da205/pydantic_pkgr-0.4.8-py3-none-any.whl", hash = "sha256:9f42fc58112a5154c59eb736cee2a86f279c89dd23a7b6db7375cdd62d0e3b36", size = 39295 }, +] + [[package]] name = "pydantic-settings" version = "2.5.2"