Skip to content

Commit 5c9f08e

Browse files
improvement: Expose public API in databind.core root module.
1 parent 60c87a3 commit 5c9f08e

File tree

3 files changed

+75
-2
lines changed

3 files changed

+75
-2
lines changed

databind.core/.changelog/_unreleased.toml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,9 @@ id = "34f4cbf8-4bd4-4b6d-837f-6bf4b2006803"
33
type = "feature"
44
description = "Add `DeserializeAs` setting"
55
author = "@NiklasRosenstein"
6+
7+
[[entries]]
8+
id = "78606f4e-7b4c-4f88-9143-e40b12d86100"
9+
type = "improvement"
10+
description = "Expose public API in `databind.core` root module."
11+
author = "@NiklasRosenstein"
Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,66 @@
11
__version__ = "4.2.8"
2+
3+
from .context import Context, Direction, Location
4+
from .converter import ConversionError, Converter, DelegateToClassmethodConverter, Module, NoMatchingConverter
5+
from .mapper import ObjectMapper
6+
from .schema import Schema, convert_dataclass_to_schema, convert_to_schema, convert_typed_dict_to_schema
7+
from .settings import (
8+
Alias,
9+
BooleanSetting,
10+
ClassDecoratorSetting,
11+
DateFormat,
12+
DeserializeAs,
13+
ExtraKeys,
14+
Flattened,
15+
Precision,
16+
Priority,
17+
Remainder,
18+
Required,
19+
SerializeDefaults,
20+
Setting,
21+
Settings,
22+
SettingsProvider,
23+
Strict,
24+
Union,
25+
get_annotation_setting,
26+
get_class_setting,
27+
get_class_settings,
28+
get_highest_setting,
29+
)
30+
31+
__all__ = [
32+
"Context",
33+
"Direction",
34+
"Location",
35+
"Converter",
36+
"ConversionError",
37+
"NoMatchingConverter",
38+
"DelegateToClassmethodConverter",
39+
"Module",
40+
"ObjectMapper",
41+
"Schema",
42+
"convert_dataclass_to_schema",
43+
"convert_to_schema",
44+
"convert_typed_dict_to_schema",
45+
"Setting",
46+
"Settings",
47+
"SettingsProvider",
48+
"SerializeDefaults",
49+
"Alias",
50+
"BooleanSetting",
51+
"ClassDecoratorSetting",
52+
"DateFormat",
53+
"Precision",
54+
"DeserializeAs",
55+
"Union",
56+
"ExtraKeys",
57+
"Remainder",
58+
"Strict",
59+
"Flattened",
60+
"Required",
61+
"Priority",
62+
"get_highest_setting",
63+
"get_class_setting",
64+
"get_annotation_setting",
65+
"get_class_settings",
66+
]

databind.json/tests/test_converters.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -399,11 +399,13 @@ class MyClass:
399399
assert mapper.serialize(MyClass(A(1)), MyClass) == {"a": {"a": 1}}
400400
assert (
401401
str(excinfo.value)
402-
== """expected test_converters.test_deserialize_as.<locals>.B, got test_converters.test_deserialize_as.<locals>.A instead
402+
== """expected test_converters.test_deserialize_as.<locals>.B, got test_converters.test_deserialize_as.\
403+
<locals>.A instead
403404
404405
Trace:
405406
$: TypeHint(test_converters.test_deserialize_as.<locals>.MyClass)
406-
.a: TypeHint(typing_extensions.Annotated[test_converters.test_deserialize_as.<locals>.A, DeserializeAs(type=<class 'test_converters.test_deserialize_as.<locals>.B'>, priority=<Priority.NORMAL: 1>)])"""
407+
.a: TypeHint(typing_extensions.Annotated[test_converters.test_deserialize_as.<locals>.A, DeserializeAs(type=<class \
408+
'test_converters.test_deserialize_as.<locals>.B'>, priority=<Priority.NORMAL: 1>)])"""
407409
)
408410

409411
assert mapper.serialize(MyClass(B(2)), MyClass) == {"a": {"a": 2}}

0 commit comments

Comments
 (0)