Skip to content

abstraction leakage in codec registration #3339

Description

@d-v-b

the codec classes are added to the registry in the same module where they are defined, e.g.

from zarr.registry import register_codec


class FooCodec():
   ...

register_codec("foo", FooCodec)

This is problematic because it prevents the codec registration / resolution logic from importing anything from the codecs, because this will cause circular imports. I think we can use the organization of the data type registry as a model for improving this.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions