From 58fc6d9cf882ac60ce1c73f22879b6806a307120 Mon Sep 17 00:00:00 2001 From: ckie Date: Fri, 17 Jan 2025 21:00:20 +0200 Subject: [PATCH 1/2] readwise: fix SOURCES_DIR syntax Fixes: attributeerror: 'list' object has no attribute 'SOURCES_DIR' --- archivebox/pkgs/abx-plugin-readwise/abx_plugin_readwise.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/archivebox/pkgs/abx-plugin-readwise/abx_plugin_readwise.py b/archivebox/pkgs/abx-plugin-readwise/abx_plugin_readwise.py index 556ee297..b3a33dd0 100644 --- a/archivebox/pkgs/abx-plugin-readwise/abx_plugin_readwise.py +++ b/archivebox/pkgs/abx-plugin-readwise/abx_plugin_readwise.py @@ -15,11 +15,10 @@ from pydantic import Field from abx_spec_config.base_configset import BaseConfigSet -SOURCES_DIR = abx.pm.hook.get_CONFIG().SOURCES_DIR - +from archivebox.config import CONSTANTS class ReadwiseConfig(BaseConfigSet): - READWISE_DB_PATH: Path = Field(default=SOURCES_DIR / "readwise_reader_api.db") + READWISE_DB_PATH: Path = Field(default=CONSTANTS.SOURCES_DIR / "readwise_reader_api.db") READWISE_READER_TOKENS: Dict[str, str] = Field(default=lambda: {}) # {: , ...} From 952bde6cfa7ebc7737459a7a459918a20004f752 Mon Sep 17 00:00:00 2001 From: ckie Date: Fri, 17 Jan 2025 21:00:50 +0200 Subject: [PATCH 2/2] spec-config: fix CONSTANTS import I was getting: ImportError: cannot import name 'CONSTANTS' from partially initialized module 'archivebox' (most likely due to a circular import) (/nix/store/6fy0wgy7r3ld3k590kxgxrc0r1cca347-archivebox-0.8.6rc3/lib/python3.12/site-packages/archivebox/__init__.py) --- archivebox/pkgs/abx-spec-config/abx_spec_config/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/archivebox/pkgs/abx-spec-config/abx_spec_config/__init__.py b/archivebox/pkgs/abx-spec-config/abx_spec_config/__init__.py index f55e7f53..75158450 100644 --- a/archivebox/pkgs/abx-spec-config/abx_spec_config/__init__.py +++ b/archivebox/pkgs/abx-spec-config/abx_spec_config/__init__.py @@ -33,7 +33,7 @@ class ConfigPluginSpec: @abx.hookspec @abx.hookimpl def get_CONFIG() -> dict[abx.PluginId, 'BaseConfigSet | ConstantsDict']: - from archivebox import CONSTANTS + from archivebox.config import CONSTANTS """Get the config for a single plugin -> {plugin_id: PluginConfigSet()}""" return { 'CONSTANTS': CONSTANTS,