Coverage for trimesh/exchange/common.py: 100%

3 statements  

« prev     ^ index     » next       coverage.py v7.14.1, created at 2026-06-24 04:40 +0000

1""" 

2trimesh.exchange.common 

3----------------------- 

4 

5Helpers shared across exchange loaders. 

6""" 

7 

8from typing import TypedDict 

9 

10 

11class XMLParserOptions(TypedDict): 

12 """lxml parser options passed to `etree.XMLParser` and `etree.iterparse`.""" 

13 

14 resolve_entities: bool 

15 no_network: bool 

16 huge_tree: bool 

17 load_dtd: bool 

18 dtd_validation: bool 

19 attribute_defaults: bool 

20 recover: bool 

21 

22 

23# lxml parser options shared across exchange loaders — disable entity 

24# resolution, network access, and DTD loading, and keep libxml2 size guards 

25XML_PARSER_OPTIONS: XMLParserOptions = { 

26 "resolve_entities": False, 

27 "no_network": True, 

28 "huge_tree": False, 

29 "load_dtd": False, 

30 "dtd_validation": False, 

31 "attribute_defaults": False, 

32 "recover": False, 

33}