diff --git a/requirements-swh.txt b/requirements-swh.txt --- a/requirements-swh.txt +++ b/requirements-swh.txt @@ -1,2 +1,2 @@ swh.core[http] >= 0.4 -swh.model >= 1.0.0 +swh.model >= 3.0.0 diff --git a/swh/deposit/api/common.py b/swh/deposit/api/common.py --- a/swh/deposit/api/common.py +++ b/swh/deposit/api/common.py @@ -29,18 +29,18 @@ from swh.deposit.models import Deposit from swh.deposit.utils import compute_metadata_context from swh.model import hashutil -from swh.model.identifiers import ( - ExtendedObjectType, - ExtendedSWHID, - QualifiedSWHID, - ValidationError, -) from swh.model.model import ( MetadataAuthority, MetadataAuthorityType, Origin, RawExtrinsicMetadata, ) +from swh.model.swhids import ( + ExtendedObjectType, + ExtendedSWHID, + QualifiedSWHID, + ValidationError, +) from swh.scheduler.utils import create_oneshot_task_dict from ..config import ( diff --git a/swh/deposit/api/edit.py b/swh/deposit/api/edit.py --- a/swh/deposit/api/edit.py +++ b/swh/deposit/api/edit.py @@ -6,7 +6,7 @@ from rest_framework.request import Request from swh.deposit.models import Deposit -from swh.model.identifiers import QualifiedSWHID +from swh.model.swhids import QualifiedSWHID from ..config import DEPOSIT_STATUS_LOAD_SUCCESS from ..errors import BAD_REQUEST, DepositError, ParserError diff --git a/swh/deposit/api/private/deposit_update_status.py b/swh/deposit/api/private/deposit_update_status.py --- a/swh/deposit/api/private/deposit_update_status.py +++ b/swh/deposit/api/private/deposit_update_status.py @@ -6,7 +6,7 @@ from rest_framework.parsers import JSONParser from swh.model.hashutil import hash_to_bytes -from swh.model.identifiers import CoreSWHID, ObjectType, QualifiedSWHID +from swh.model.swhids import CoreSWHID, ObjectType, QualifiedSWHID from . import APIPrivateView from ...errors import BAD_REQUEST, DepositError diff --git a/swh/deposit/migrations/0018_migrate_swhids.py b/swh/deposit/migrations/0018_migrate_swhids.py --- a/swh/deposit/migrations/0018_migrate_swhids.py +++ b/swh/deposit/migrations/0018_migrate_swhids.py @@ -15,7 +15,7 @@ from swh.core import config from swh.deposit.config import DEPOSIT_STATUS_LOAD_SUCCESS from swh.model.hashutil import hash_to_bytes, hash_to_hex -from swh.model.identifiers import CoreSWHID, ObjectType, QualifiedSWHID +from swh.model.swhids import CoreSWHID, ObjectType, QualifiedSWHID from swh.storage import get_storage as get_storage_client from swh.storage.algos.snapshot import snapshot_id_get_from_revision diff --git a/swh/deposit/tests/api/test_collection_post_atom.py b/swh/deposit/tests/api/test_collection_post_atom.py --- a/swh/deposit/tests/api/test_collection_post_atom.py +++ b/swh/deposit/tests/api/test_collection_post_atom.py @@ -32,7 +32,6 @@ revisions, snapshots, ) -from swh.model.identifiers import ObjectType, QualifiedSWHID from swh.model.model import ( MetadataAuthority, MetadataAuthorityType, @@ -40,6 +39,7 @@ Origin, RawExtrinsicMetadata, ) +from swh.model.swhids import ObjectType, QualifiedSWHID from swh.storage.interface import PagedResult diff --git a/swh/deposit/tests/api/test_deposit_update_atom.py b/swh/deposit/tests/api/test_deposit_update_atom.py --- a/swh/deposit/tests/api/test_deposit_update_atom.py +++ b/swh/deposit/tests/api/test_deposit_update_atom.py @@ -22,13 +22,13 @@ from swh.deposit.parsers import parse_xml from swh.deposit.tests.common import post_atom, put_atom from swh.model.hashutil import hash_to_bytes -from swh.model.identifiers import CoreSWHID, ExtendedSWHID, ObjectType from swh.model.model import ( MetadataAuthority, MetadataAuthorityType, MetadataFetcher, RawExtrinsicMetadata, ) +from swh.model.swhids import CoreSWHID, ExtendedSWHID, ObjectType from swh.storage.interface import PagedResult diff --git a/swh/deposit/tests/conftest.py b/swh/deposit/tests/conftest.py --- a/swh/deposit/tests/conftest.py +++ b/swh/deposit/tests/conftest.py @@ -42,7 +42,7 @@ post_atom, ) from swh.model.hashutil import hash_to_bytes -from swh.model.identifiers import CoreSWHID, ObjectType, QualifiedSWHID +from swh.model.swhids import CoreSWHID, ObjectType, QualifiedSWHID from swh.scheduler import get_scheduler if TYPE_CHECKING: diff --git a/swh/deposit/tests/test_utils.py b/swh/deposit/tests/test_utils.py --- a/swh/deposit/tests/test_utils.py +++ b/swh/deposit/tests/test_utils.py @@ -8,7 +8,7 @@ from swh.deposit import utils from swh.deposit.parsers import parse_xml from swh.model.exceptions import ValidationError -from swh.model.identifiers import CoreSWHID, QualifiedSWHID +from swh.model.swhids import CoreSWHID, QualifiedSWHID @pytest.fixture diff --git a/swh/deposit/utils.py b/swh/deposit/utils.py --- a/swh/deposit/utils.py +++ b/swh/deposit/utils.py @@ -11,12 +11,8 @@ import xmltodict from swh.model.exceptions import ValidationError -from swh.model.identifiers import ( - ExtendedSWHID, - ObjectType, - QualifiedSWHID, - normalize_timestamp, -) +from swh.model.model import TimestampWithTimezone +from swh.model.swhids import ExtendedSWHID, ObjectType, QualifiedSWHID logger = logging.getLogger(__name__) @@ -102,7 +98,7 @@ dateutil.parser.parse to extract a datetime. Then normalize it through - swh.model.identifiers.normalize_timestamp. + :class:`swh.model.model.TimestampWithTimezone` Returns The swh date object @@ -113,7 +109,7 @@ if isinstance(date, str): date = iso8601.parse_date(date) - return normalize_timestamp(date) + return TimestampWithTimezone.from_dict(date).to_dict() def compute_metadata_context(swhid_reference: QualifiedSWHID) -> Dict[str, Any]: