Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

aswf-aces-common

Shared protocols and types used across the ACES AMF Python packages.

This is a foundation package. Most users should install aswf-aces-amf-utils or aswf-aces-amf-lib instead.

Installation

pip install aswf-aces-common

Exports

TransformRegistry (Protocol)

Interface for transform ID registries. Implemented by ACESTransformRegistry in aswf-aces-transforms.

from aswf.aces.common import TransformRegistry

class MyRegistry:
    def is_valid_transform_id(self, transform_id: str, *, version: str | None = None) -> bool: ...
    def get_transform_info(self, transform_id: str, *, version: str | None = None) -> dict | None: ...
    def list_transforms(self, *, category: str | None = None, version: str | None = None) -> list[dict]: ...
    def list_versions(self) -> list[str]: ...
    def get_equivalent_id(self, transform_id: str) -> str | None: ...
    def get_equivalent_ids(self, transform_id: str) -> list[str]: ...

TransformURN (Dataclass)

Parses ACES transform URNs into their component fields per the Transform ID specification.

urn:ampas:aces:transformId:v{specVersion}:{TransformType}.{Namespace}.{Name}.a{ACESRelease}.v{TransformVersion}
from aswf.aces.common import TransformURN

urn = TransformURN.parse("urn:ampas:aces:transformId:v2.0:CSC.Academy.ACES_to_ACEScct.a2.v1")

urn.raw                   # "urn:ampas:aces:transformId:v2.0:CSC.Academy.ACES_to_ACEScct.a2.v1"
urn.spec_version          # "v2.0"
urn.spec_major_version    # 2
urn.spec_minor_version    # 0
urn.transform_type        # "CSC"
urn.namespace             # "Academy"
urn.name                  # "ACES_to_ACEScct"
urn.version_suffix        # "a2.v1"
urn.aces_release_version  # 2
urn.transform_version     # "v1"
urn.is_v1                 # False
urn.is_v2                 # True

The version suffix format varies between ACES versions:

ACES version Suffix format Example aces_release_version transform_version
v2.0 a{N}.v{N} a2.v1 2 "v1"
v1.x (semver) a{N}.{N}.{N} a1.0.3 1 "0.3"
v1.x (mixed) a{N}.v{N}.{N} a1.v1.0 1 "v1.0"

TransformURN.parse() returns None for strings that are not valid ACES transform URNs (e.g. legacy short names like ACEScsc.ACES_to_ACEScc.a1.0.3).

Edge cases

Internal library and utility transforms (ACESlib, ACESutil) do not include a separate namespace field — their format is {Type}.{Name}.{VersionSuffix} rather than {Type}.{Namespace}.{Name}.{VersionSuffix}. For these transforms, the name field will contain the version suffix and version_suffix will be empty, so aces_release_version and transform_version will return None. These transforms are not typically referenced in AMF files.

urn = TransformURN.parse("urn:ampas:aces:transformId:v1.5:ACESlib.Utilities.a1.0.3")
urn.transform_type        # "ACESlib"
urn.namespace             # "Utilities"   (actually the name, not a namespace)
urn.name                  # "a1.0.3"      (actually the version suffix)
urn.version_suffix        # ""
urn.aces_release_version  # None
urn.transform_version     # None

TransformInfo (Dataclass)

Metadata for a single ACES transform:

from aswf.aces.common import TransformInfo

# Fields: transform_id, user_name, transform_type, aces_version,
#         inverse_transform_id, previous_equivalent_ids

Constants

from aswf.aces.common import INPUT_TRANSFORM_TYPES, OUTPUT_TRANSFORM_TYPES

INPUT_TRANSFORM_TYPES   # frozenset{"IDT", "CSC", "Input"}
OUTPUT_TRANSFORM_TYPES  # frozenset{"ODT", "Output"}

License

Apache-2.0

Metadata

Release files for aswf-aces-common 0.1.0rc1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aswf-aces-common 0.1.0rc1
File Size Uploaded Provenance Actions
aswf_aces_common-0.1.0rc1.tar.gz 6.8 kB With provenance Details for aswf_aces_common-0.1.0rc1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for aswf-aces-common 0.1.0rc1
File Interpreter ABI Platform Actions
aswf_aces_common-0.1.0rc1-py3-none-any.whl Python 3 none any Details for aswf_aces_common-0.1.0rc1-py3-none-any.whl

Total release size: 13.2 kB

Release files / aswf_aces_common-0.1.0rc1.tar.gz

Download URL aswf_aces_common-0.1.0rc1.tar.gz
Size 6.8 kB
Tags Source
SHA-256 checksum
How to use checksums
80bf2bc125fefca980e225c44b4167ff698c8b284201292236ac269409d8d8b1
BLAKE2b-256 checksum
How to use checksums
970cecebb5c0dbdbe13303e6ae542af4d149c03e1204ca284aaa6b9aae6bd64e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 6, 2026.

Transparency log

Release files / aswf_aces_common-0.1.0rc1-py3-none-any.whl

Download URL aswf_aces_common-0.1.0rc1-py3-none-any.whl
Size 6.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3d90279a214b011a30a2674c05469af33d4453b55f99bf1a2f3bfae251954716
BLAKE2b-256 checksum
How to use checksums
8bf7f6b2a6762098adbd3c6c066d7970b63b2157d1e2f01ab5219dbb372c5bba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 6, 2026.

Transparency log

Security for aswf-aces-common 0.1.0rc1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for aswf_aces_common-0.1.0rc1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 6, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page