litestar-org/polyfactory

Enhancement: Support non-mutable Mapping containers

Ouverte

#726 ouverte le 3 juil. 2025

 (1 commentaire) (2 réactions) (0 personne assignée)Python (114 forks)auto 404
enhancementgood first issue

Métriques du dépôt

Stars
 (1 491 étoiles)
Métriques de merge PR
 (Métriques PR en attente)

Description

Summary

Currently handle_collection_type only supports MutableMappings, could support for non-mutable Mappings also be added? I am personally trying to use this alongside the frozendict pypi package.

Basic Example

You could make a factory for e.g.

@dataclass
class Shop(frozen=True)
    prices: MyImmutableMapping[str, int]

where MyImmutableMapping is a subclass of Mapping. Currently this will raise

 NotImplementedError: Unsupported container type: <class 'MyImmutableMapping'>

Drawbacks and Impact

Very few drawbacks in my opinion: changes should be small and isolated and adds functionality many users could benefit from.

Unresolved questions

No response

Guide contributeur