litestar-org/polyfactory

Enhancement: Support non-mutable Mapping containers

開放

#726 建立於 2025年7月3日

 (1 則留言) (2 個反應) (0 位負責人)Python (114 個分叉)auto 404
enhancementgood first issue

倉庫指標

星標
 (1,491 顆星)
PR 合併指標
 (PR 指標待抓取)

描述

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

貢獻者指南