pydantic
pydantic-core
BlogDocsChangelog

Add support for dataclass fields init

#1163Merged
Comparing
support-dataclass-init
(
2c3a04c
) with
main
(
e1cb0eb
)
CodSpeed Performance Gauge
+13%
Improvements
1
Untouched
142
New
3

Benchmarks

Improved

test_core_str
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkDateTime
CodSpeed Performance Gauge
+13%
24.5 µs21.7 µs

New

test_dataclass_serialization_json
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
N/A
N/A27.7 µs
test_dataclass_serialization_python
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
N/A
N/A26.1 µs
test_dataclass_to_json
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
N/A
N/A41.1 µs

Passed

test_complete_core_error
tests/benchmarks/test_complete_benchmark.py
CodSpeed Performance Gauge
+3%
1.9 ms1.9 ms
test_strict_union_error_core
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkUnion
CodSpeed Performance Gauge
+2%
31.9 µs31.2 µs
test_set_of_ints_core_length
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
+2%
799.8 µs782.8 µs
test_set_of_ints_core
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
+2%
787.9 µs771.3 µs
test_to_string_format
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
+2%
26.7 µs26.2 µs
test_set_of_ints_core_json_duplicates
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
+2%
714.8 µs701.7 µs
test_set_of_ints_core_json
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
+1%
1.2 ms1.1 ms
test_dict_of_any_core
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
+1%
772.6 µs761.8 µs
test_validate_literal[python-many_small_strings]
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
+1%
14.7 µs14.5 µs
test_dict_of_ints_core
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
+1%
1.1 ms1.1 ms
test_list_of_dict_models_core
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
+1%
140.3 µs138.7 µs
test_complete_core_isinstance
tests/benchmarks/test_complete_benchmark.py
CodSpeed Performance Gauge
+1%
1.9 ms1.8 ms
test_validate_literal[python-many_large_strings]
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
+1%
14.7 µs14.6 µs
test_int_error
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
+1%
43.9 µs43.6 µs
test_build_schema
tests/benchmarks/test_complete_benchmark.py
CodSpeed Performance Gauge
+1%
885.3 µs879.8 µs
test_core_model_json
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
+1%
27.9 µs27.8 µs
test_core_root_model
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
+1%
41.5 µs41.3 µs
test_dont_raise_error_no_info
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
18 µs17.9 µs
test_json_direct_list_str
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
0%
176.6 µs175.8 µs
test_isinstance_string_lax_true
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
13.9 µs13.8 µs
test_isinstance_string_strict_true
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
13.9 µs13.8 µs
test_validate_literal[python-few_large_strings]
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
14.7 µs14.6 µs
test_arguments
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
27.6 µs27.5 µs
test_list_of_ints_core_json
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
989 µs986.2 µs
test_to_string_direct
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
0%
21.9 µs21.9 µs
test_uuid_from_string_pyd
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkUUID
CodSpeed Performance Gauge
0%
51.9 µs51.7 µs
test_with_default
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
24.9 µs24.8 µs
test_list_of_ints_core_py
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
550.4 µs549.2 µs
test_validate_literal[python-few_small_strings]
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
14.5 µs14.5 µs
test_tagged_union_int_keys_json
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
30.4 µs30.3 µs
test_isinstance_string_lax_false
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
15.5 µs15.5 µs
test_date_format_function
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
0%
53.2 µs53.1 µs
test_validate_literal[python-few_str_enum]
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
18.2 µs18.2 µs
test_json_direct_list_int
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
0%
147.8 µs147.6 µs
test_complete_core_strict
tests/benchmarks/test_complete_benchmark.py
CodSpeed Performance Gauge
0%
274.7 µs274.4 µs
test_decimal_from_string_core
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkDecimal
CodSpeed Performance Gauge
0%
25.1 µs25 µs
test_frozenset_of_ints_duplicates_core
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
154.7 µs154.6 µs
test_nested_schema_using_defs
tests/benchmarks/test_nested_benchmark.py
CodSpeed Performance Gauge
0%
20 ms20 ms
test_nested_schema_inlined
tests/benchmarks/test_nested_benchmark.py
CodSpeed Performance Gauge
0%
20.8 ms20.8 ms
test_ser_list_of_lists
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
0%
1.3 ms1.3 ms
test_definition_out_of_tree
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
1.1 ms1.1 ms
test_definition_in_tree
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
834.7 µs834.7 µs
test_isinstance_string_strict_false
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
15.2 µs15.2 µs
test_dont_raise_error
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
20 µs20 µs
test_validate_literal[python-few_ints]
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
14.7 µs14.7 µs
test_list_of_nullable_core
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
122.1 µs122.1 µs
test_frozenset_of_ints_core
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
264.2 µs264.3 µs
test_model_list_core_json
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
0%
164.8 µs164.9 µs
test_field_function_validator
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
395.2 µs395.5 µs
test_many_models_core_model
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
3.2 ms3.2 ms
test_model_core_json
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkUUID
CodSpeed Performance Gauge
0%
51.6 µs51.7 µs
test_core_python_fs
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkSimpleModel
CodSpeed Performance Gauge
0%
80.1 µs80.2 µs
test_strict_int_fails
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
25.8 µs25.9 µs
test_set_of_ints_core_duplicates
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
331.3 µs331.9 µs
test_chain_two_functions
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
29.9 µs30 µs
test_bytes_core
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
13.7 µs13.7 µs
test_many_models_core_dict
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
1.2 ms1.2 ms
test_core_model_json_extra
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
0%
31 µs31.1 µs
test_list_of_any_core_py
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
100.9 µs101.2 µs
test_core_string_strict_wrong
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
25.7 µs25.8 µs
test_date_format
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
0%
51.2 µs51.4 µs
test_complete_core_lax
tests/benchmarks/test_complete_benchmark.py
CodSpeed Performance Gauge
0%
300.7 µs301.8 µs
test_core_json
tests/benchmarks/test_serialization_micro.py::TestBenchmarkSimpleModel
CodSpeed Performance Gauge
0%
79.7 µs80 µs
test_generator_python
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
28 µs28.1 µs
test_complete_core_json
tests/benchmarks/test_complete_benchmark.py
CodSpeed Performance Gauge
0%
621.3 µs623.8 µs
test_int_range
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
14.4 µs14.4 µs
test_date_format_function_no_info
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
0%
51.8 µs52 µs
test_validate_literal[python-many_ints]
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
14.6 µs14.7 µs
test_uuid
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
0%
36 µs36.1 µs
test_core_string_lax_wrong
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
26 µs26.1 µs
test_validate_literal[python-few_mixed]
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
0%
19.1 µs19.2 µs
test_decimal_from_string_limit
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkDecimal
CodSpeed Performance Gauge
0%
18 µs18 µs
test_filter
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
0%
45.6 µs45.8 µs
test_definition_model_core
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
1.2 ms1.2 ms
test_datetime
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
-1%
29.9 µs30 µs
test_tuple_many_positional
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
21.1 µs21.3 µs
test_model_instance_abc
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
34.6 µs34.8 µs
test_strict_int
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
13.7 µs13.8 µs
test_bool_core
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
23.2 µs23.3 µs
test_chain_list
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
27.2 µs27.4 µs
test_dict_of_ints_core_json
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
2.5 ms2.5 ms
test_validate_literal[json-few_large_strings]
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
16.9 µs17 µs
test_small_class_core_model
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
32.6 µs32.8 µs
test_validate_literal[json-few_small_strings]
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
17.6 µs17.8 µs
test_variable_tuple
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
21.3 µs21.5 µs
test_core_str
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkUUID
CodSpeed Performance Gauge
-1%
35.9 µs36.2 µs
test_core_raw
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkDateTime
CodSpeed Performance Gauge
-1%
13.9 µs14 µs
test_chain_function
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
24.1 µs24.3 µs
test_raise_error_custom
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
37.4 µs37.8 µs
test_core_string_strict_wrong_str_e
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
42.2 µs42.5 µs
test_chain_nested_functions
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
28.6 µs28.9 µs
test_model_instance
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
34 µs34.4 µs
test_python_json_list_none
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
-1%
122.4 µs123.5 µs
test_generator_rust
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
22 µs22.2 µs
test_uuid_from_string_core
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkUUID
CodSpeed Performance Gauge
-1%
36.6 µs37 µs
test_tuple_many_variable
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
21.1 µs21.3 µs
test_validate_literal[json-few_mixed]
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
20.5 µs20.7 µs
test_python_json_list_int
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
-1%
150.5 µs152.1 µs
test_validate_literal[json-many_small_strings]
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
16.6 µs16.7 µs
test_python_json_list_str
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
-1%
157.2 µs158.9 µs
test_positional_tuple
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
21.4 µs21.6 µs
test_decimal_from_string_pyd
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkDecimal
CodSpeed Performance Gauge
-1%
34.6 µs35 µs
test_int_range_json
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
15.5 µs15.7 µs
test_raise_error_value_error
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
37.1 µs37.6 µs
test_core_future_str
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkDateX
CodSpeed Performance Gauge
-1%
18.5 µs18.7 µs
test_core_json_fs
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkSimpleModel
CodSpeed Performance Gauge
-1%
154.5 µs156.4 µs
test_date_from_date
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkDateX
CodSpeed Performance Gauge
-1%
13.8 µs14 µs
test_core_string_strict
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
13.6 µs13.7 µs
test_core_python
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkDateTime
CodSpeed Performance Gauge
-1%
31.5 µs31.9 µs
test_small_class_core_dict
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
22.4 µs22.7 µs
test_core_json_fs
tests/benchmarks/test_micro_benchmarks.py::TestModelLarge
CodSpeed Performance Gauge
-1%
208.9 µs211.7 µs
test_uuid_from_uuid_pyd
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkUUID
CodSpeed Performance Gauge
-1%
14.4 µs14.6 µs
test_core_future
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkDateX
CodSpeed Performance Gauge
-1%
20 µs20.3 µs
test_core_string_lax
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-1%
13.5 µs13.7 µs
test_validate_literal[json-many_ints]
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-2%
15.3 µs15.5 µs
test_validate_literal[json-many_large_strings]
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-2%
16.9 µs17.1 µs
test_date_from_str
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkDateX
CodSpeed Performance Gauge
-2%
18.3 µs18.6 µs
test_strict_union_core
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkUnion
CodSpeed Performance Gauge
-2%
16.3 µs16.5 µs
test_core_future
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkDateTime
CodSpeed Performance Gauge
-2%
28.2 µs28.6 µs
test_smart_union_core
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkUnion
CodSpeed Performance Gauge
-2%
15.4 µs15.7 µs
test_date_from_datetime
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkDateX
CodSpeed Performance Gauge
-2%
23.7 µs24.1 µs
test_core_dict
tests/benchmarks/test_serialization_micro.py::TestBenchmarkSimpleModel
CodSpeed Performance Gauge
-2%
77.5 µs78.9 µs
test_smart_union_coerce_core
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkUnion
CodSpeed Performance Gauge
-2%
17.1 µs17.4 µs
test_validate_literal[json-few_ints]
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-2%
15.3 µs15.6 µs
test_core_future_str
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkDateTime
CodSpeed Performance Gauge
-2%
21.5 µs21.9 µs
test_uuid_from_uuid_core
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkUUID
CodSpeed Performance Gauge
-2%
13.7 µs14 µs
test_core_raw
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkUUID
CodSpeed Performance Gauge
-2%
13.6 µs13.9 µs
test_tagged_union_int_keys_python
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-2%
23.2 µs23.7 µs
test_core_python
tests/benchmarks/test_micro_benchmarks.py::TestModelLarge
CodSpeed Performance Gauge
-2%
145.6 µs149.1 µs
test_model_exclude_unset_false
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
-2%
30.9 µs31.7 µs
test_model_core_json
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkDateTime
CodSpeed Performance Gauge
-2%
39.5 µs40.5 µs
test_core_dict_filter
tests/benchmarks/test_serialization_micro.py::TestBenchmarkSimpleModel
CodSpeed Performance Gauge
-3%
79.5 µs81.6 µs
test_model_exclude_unset_true
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
-3%
37.1 µs38.1 µs
test_to_json_list_of_lists
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
-3%
2 ms2 ms
test_isinstance_json
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-3%
21.9 µs22.6 µs
test_date_from_datetime_str
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkDateX
CodSpeed Performance Gauge
-3%
19.9 µs20.5 µs
test_core_model_py_extra
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
-3%
32 µs33.1 µs
test_json_any_list_int
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
-3%
215.1 µs222.4 µs
test_json_any_list_str
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
-3%
252.3 µs261 µs
test_core_model_py
tests/benchmarks/test_serialization_micro.py
CodSpeed Performance Gauge
-4%
29 µs30.1 µs
test_validate_literal[json-few_str_enum]
tests/benchmarks/test_micro_benchmarks.py
CodSpeed Performance Gauge
-4%
22.7 µs23.6 µs
test_core_python
tests/benchmarks/test_micro_benchmarks.py::TestBenchmarkUUID
CodSpeed Performance Gauge
-4%
30 µs31.3 µs

Commits

Click on a commit to change the comparison range
Base
main
e1cb0eb
-14.98%
Add support for dataclass fields init
f621eeb
2 years ago
by dmontagu
-2.4%
add tests
dbc9e3c
2 years ago
by sydney-runkle
+2.41%
default fix
ec42e22
2 years ago
by sydney-runkle
-0.02%
Update dataclass.rs with better error handling Co-authored-by: David Montague <35119617+dmontagu@users.noreply.github.com>
bb3a312
2 years ago
by sydney-runkle
+1.05%
adding test for defaults
0afcec2
2 years ago
by sydney-runkle
+0.61%
add comment with explanation
038f56c
2 years ago
by sydney-runkle
-0.91%
more helpful messages for tests
8954a0a
2 years ago
by sydney-runkle
+27.88%
Simplify line errors section of match Co-authored-by: David Hewitt <david.hewitt@pydantic.dev>
f244156
2 years ago
by sydney-runkle
-0.9%
Further simplification Co-authored-by: David Hewitt <david.hewitt@pydantic.dev>
2c3a04c
2 years ago
by sydney-runkle
© 2025 CodSpeed Technology
Home Terms Privacy Docs