diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000000000000000000000000000000000000..52ccba8ad30b97da82f05abb530f02f2cea6c6ed --- /dev/null +++ b/requirements.txt @@ -0,0 +1,32 @@ +aiohappyeyeballs==2.4.3 +aiohttp==3.10.10 +aioredis==2.0.1 +aiosignal==1.3.1 +annotated-types==0.7.0 +async-timeout==5.0.0 +attrs==24.2.0 +cffi==1.17.1 +cryptography==43.0.3 +factory_boy==3.3.1 +Faker==30.8.0 +frozenlist==1.4.1 +greenlet==3.1.1 +idna==3.10 +iniconfig==2.0.0 +multidict==6.1.0 +packaging==24.1 +pluggy==1.5.0 +prometheus_client==0.21.0 +propcache==0.2.0 +pycparser==2.22 +pydantic==2.9.2 +pydantic_core==2.23.4 +PyJWT==2.9.0 +pytest==8.3.3 +pytest-asyncio==0.24.0 +python-dateutil==2.9.0.post0 +redis==5.2.0 +six==1.16.0 +SQLAlchemy==2.0.36 +typing_extensions==4.12.2 +yarl==1.15.2 diff --git a/src/pyfed/models/activities.py b/src/pyfed/models/activities.py index 9baae0434982eb8a7868f7d218e7ead817a6c31d..50646e21d31c1f7381f51e747b8c92e8ce2a9d26 100644 --- a/src/pyfed/models/activities.py +++ b/src/pyfed/models/activities.py @@ -9,7 +9,7 @@ https://www.w3.org/TR/activitystreams-vocabulary/#activity-types from pydantic import Field, HttpUrl from typing import Optional, Union, Literal, Dict, Any -from .objects import APObject +from pyfed.models.objects import APObject class APActivity(APObject): """ diff --git a/src/pyfed/models/actors.py b/src/pyfed/models/actors.py index fe70cd7ead77548336776fdf240b55bc46e3bdbd..0a5fc0b1cbc777d4546e64271e059a6331350ea7 100644 --- a/src/pyfed/models/actors.py +++ b/src/pyfed/models/actors.py @@ -12,7 +12,7 @@ from pydantic import Field, HttpUrl, field_validator from typing import Optional, List, Dict, Any, TypedDict, Literal from datetime import datetime from pyfed.utils.exceptions import InvalidURLError -from pyfed.plugins import plugin_manager +# from pyfed.plugins import plugin_manager from pyfed.utils.logging import get_logger from pyfed.cache import object_cache @@ -79,7 +79,7 @@ class APActor(APObject): """ logger.info(f"Sending activity to inbox: {self.inbox}") # Execute pre-send hook - plugin_manager.execute_hook('pre_send_to_inbox', self, activity) + # plugin_manager.execute_hook('pre_send_to_inbox', self, activity) # Placeholder for actual implementation return True @@ -99,7 +99,7 @@ class APActor(APObject): return cached_followers # Execute pre-fetch hook - plugin_manager.execute_hook('pre_fetch_followers', self) + # plugin_manager.execute_hook('pre_fetch_followers', self) # Fetch followers (placeholder implementation) followers = [] # Actual implementation would go here diff --git a/src/pyfed/models/collections.py b/src/pyfed/models/collections.py index ae174c8b191075842bae8d2c81a3d306a3742f5f..64a9759b43864b3e8f0eb802a28ab3ca1a335a84 100644 --- a/src/pyfed/models/collections.py +++ b/src/pyfed/models/collections.py @@ -10,10 +10,10 @@ https://www.w3.org/TR/activitystreams-core/#collections from __future__ import annotations from typing import Optional, List, Union, Literal, Dict, Any from pydantic import Field, HttpUrl -from .objects import APObject -import logging +from pyfed.models.objects import APObject +from pyfed.utils.logging import get_logger -logger = logging.getLogger(__name__) +logger = get_logger(__name__) class APCollection(APObject): """ diff --git a/src/pyfed/models/links.py b/src/pyfed/models/links.py index 4d4a057bc55c9cd9db621a7394ff3f58fa92163a..fcb7dde57060bda04b67eb142db982419aec6349 100644 --- a/src/pyfed/models/links.py +++ b/src/pyfed/models/links.py @@ -9,7 +9,7 @@ https://www.w3.org/TR/activitystreams-vocabulary/#link from pydantic import Field, HttpUrl, field_validator from typing import Optional, List, Literal -from ..serializers.json_serializer import ActivityPubBase +from pyfed.serializers.json_serializer import ActivityPubBase class APLink(ActivityPubBase): """ diff --git a/src/pyfed/models/objects.py b/src/pyfed/models/objects.py index 9e7beefdbf959f0aec5eebbeea265142e19e71ec..032a573d01d4c48b14957b40e5a63d28c0202a1a 100644 --- a/src/pyfed/models/objects.py +++ b/src/pyfed/models/objects.py @@ -11,7 +11,7 @@ from ..serializers.json_serializer import ActivityPubBase from pydantic import Field, HttpUrl, field_validator, model_validator from typing import Optional, List, Union, Literal, Dict from datetime import datetime -from .links import APLink +from pyfed.models.links import APLink class APObject(ActivityPubBase): """Base class for all ActivityPub objects. diff --git a/src/pyfed/serializers/json_serializer.py b/src/pyfed/serializers/json_serializer.py index 77ae5a3417e5a2e6dde7878befe08a39fb5ca781..3cbb28b73720c8153a5c4be7107a4dc89f9c2017 100644 --- a/src/pyfed/serializers/json_serializer.py +++ b/src/pyfed/serializers/json_serializer.py @@ -9,7 +9,7 @@ from typing import Any, Dict from pydantic import BaseModel from pydantic_core import Url from ..utils.logging import get_logger -from ..plugins import plugin_manager +# from ..plugins import plugin_manager logger = get_logger(__name__) @@ -73,7 +73,7 @@ class ActivityPubSerializer: logger.debug("Serializing object") # Execute pre-serialize hook - plugin_manager.execute_hook('pre_serialize', obj) + # plugin_manager.execute_hook('pre_serialize', obj) # Convert to dictionary and convert keys to camelCase data = convert_dict_keys_to_camel_case(obj.model_dump()) diff --git a/tests/tests_models/test_imports.py b/tests/tests_models/test_imports.py index c1dc92cb2a5e4efabf97d88a76743938d1f3aee9..e663a270c5cd134abb1ce9b586f16c226e3350ba 100644 --- a/tests/tests_models/test_imports.py +++ b/tests/tests_models/test_imports.py @@ -5,7 +5,7 @@ This module tests that all necessary modules can be imported correctly. import pytest from pyfed.serializers.json_serializer import ActivityPubSerializer -from pyfed.plugins import plugin_manager # Updated import path +# from pyfed.plugins import plugin_manager # Updated import path from pyfed.models import ( APObject, APEvent, APPlace, APProfile, APRelationship, APTombstone, APArticle, APAudio, APDocument, APImage, APNote, APPage, APVideo, @@ -66,6 +66,6 @@ def test_can_import_serializer(): """Test that the serializer can be imported.""" assert ActivityPubSerializer -def test_can_import_plugin_manager(): - """Test that the plugin manager can be imported.""" - assert plugin_manager +# def test_can_import_plugin_manager(): +# """Test that the plugin manager can be imported.""" +# assert plugin_manager