Coverage for / home / runner / work / viur-core / viur-core / viur / src / viur / core / skeleton / __init__.py: 74%
21 statements
« prev ^ index » next coverage.py v7.13.4, created at 2026-03-13 14:41 +0000
« prev ^ index » next coverage.py v7.13.4, created at 2026-03-13 14:41 +0000
1import logging
2import warnings
4from .adapter import DatabaseAdapter, ViurTagsSearchAdapter
5from .instance import SkeletonInstance
6from .meta import ABSTRACT_SKEL_CLS_SUFFIX, BaseSkeleton, MetaBaseSkel, MetaSkel
7from .relskel import RefSkel, RelSkel
8from .skeleton import SeoKeyBone, Skeleton, _UNDEFINED_KINDNAME
9from .tasks import SkelIterTask, SkeletonMaintenanceTask, update_relations
10from .utils import ( # noqa
11 SkelList,
12 is_skeletoninstance_of,
13 iterAllSkelClasses,
14 listKnownSkeletons,
15 remove_render_preparation_deep,
16 skeletonByKind,
17 without_render_preparation,
18)
20# DEPRECATED ATTRIBUTES HANDLING
21# FIXME: REMOVE WITH VIUR4
23from ..bones.base import getSystemInitialized as _getSystemInitialized
24from ..db import KeyType as _KeyType
26__DEPRECATED_NAMES = {
27 # stuff prior viur-core < 3.6
28 "seoKeyBone": ("SeoKeyBone", SeoKeyBone),
29 # stuff prior viur-core < 3.8
30 "getSystemInitialized": ("bones.base.getSystemInitialized", _getSystemInitialized),
31 "KeyType": ("db.KeyType", _KeyType),
32}
35def __getattr__(attr: str) -> object:
36 if entry := __DEPRECATED_NAMES.get(attr): 36 ↛ 37line 36 didn't jump to line 37 because the condition on line 36 was never true
37 func = entry[1]
38 msg = f"{attr} was replaced by {entry[0]}"
39 warnings.warn(msg, DeprecationWarning, stacklevel=2)
40 logging.warning(msg, stacklevel=2)
41 return func
43 return super(__import__(__name__).__class__).__getattribute__(attr)
46__all__ = [
47 ABSTRACT_SKEL_CLS_SUFFIX,
48 BaseSkeleton,
49 DatabaseAdapter,
50 MetaBaseSkel,
51 MetaSkel,
52 RefSkel,
53 RelSkel,
54 SeoKeyBone,
55 SkelIterTask,
56 SkelList,
57 Skeleton,
58 SkeletonInstance,
59 SkeletonMaintenanceTask,
60 ViurTagsSearchAdapter,
61 _UNDEFINED_KINDNAME,
62 is_skeletoninstance_of,
63 iterAllSkelClasses,
64 listKnownSkeletons,
65 remove_render_preparation_deep,
66 skeletonByKind,
67 update_relations,
68 without_render_preparation,
69]