Avatar for the pyapp-kit user
pyapp-kit
psygnal
BlogDocsChangelog

feat: support arbitrary field dependents

#340
Comparing
tlambert03:computed-fields
(
3ab1b40
) with
main
(
939c32e
)
CodSpeed Performance Gauge
0%
Improvements
0
Regressions
0
Untouched
67
New
0
Dropped
0
Ignored
0

Benchmarks

Passed

test_create_signal
tests/test_bench.py::test_create_signal
CodSpeed Performance Gauge
+3%
69 µs
66.9 µs
test_emit_time[partial-50]
tests/test_bench.py::test_emit_time[partial-50]
CodSpeed Performance Gauge
+2%
131.3 µs
129.3 µs
test_emit_time[partial_method-2]
tests/test_bench.py::test_emit_time[partial_method-2]
CodSpeed Performance Gauge
+1%
65.5 µs
64.5 µs
test_connect_time[print-check_types]
tests/test_bench.py::test_connect_time[print-check_types]
CodSpeed Performance Gauge
+1%
205.6 µs
203.1 µs
test_connect_time[method-check_types]
tests/test_bench.py::test_connect_time[method-check_types]
CodSpeed Performance Gauge
+1%
186.9 µs
184.8 µs
test_emit_time[function-18]
tests/test_bench.py::test_emit_time[function-18]
CodSpeed Performance Gauge
+1%
74.8 µs
74.1 µs
test_dataclass_setattr[pydantic]
tests/test_bench.py::test_dataclass_setattr[pydantic]
CodSpeed Performance Gauge
+1%
866.1 µs
858.2 µs
test_emit_time[setitem-50]
tests/test_bench.py::test_emit_time[setitem-50]
CodSpeed Performance Gauge
+1%
95.3 µs
94.5 µs
test_create_signal_instance
tests/test_bench.py::test_create_signal_instance
CodSpeed Performance Gauge
+1%
33.1 µs
32.9 µs
test_dataclass_setattr[msgspec]
tests/test_bench.py::test_dataclass_setattr[msgspec]
CodSpeed Performance Gauge
+1%
776.1 µs
769.8 µs
test_dataclass_setattr[dataclass]
tests/test_bench.py::test_dataclass_setattr[dataclass]
CodSpeed Performance Gauge
+1%
761 µs
754.9 µs
test_dataclass_setattr[attrs]
tests/test_bench.py::test_dataclass_setattr[attrs]
CodSpeed Performance Gauge
+1%
779.4 µs
774.6 µs
test_emit_time[function-2]
tests/test_bench.py::test_emit_time[function-2]
CodSpeed Performance Gauge
+1%
65.9 µs
65.5 µs
test_dataclass_group_create[dataclass]
tests/test_bench.py::test_dataclass_group_create[dataclass]
CodSpeed Performance Gauge
+1%
524.5 µs
521.5 µs
test_connect_time[print-]
tests/test_bench.py::test_connect_time[print-]
CodSpeed Performance Gauge
0%
145.5 µs
144.8 µs
test_connect_time[real_func-check_types]
tests/test_bench.py::test_connect_time[real_func-check_types]
CodSpeed Performance Gauge
0%
126.8 µs
126.3 µs
test_emit_time[setitem-2]
tests/test_bench.py::test_emit_time[setitem-2]
CodSpeed Performance Gauge
0%
58.8 µs
58.6 µs
test_emit_time[function-50]
tests/test_bench.py::test_emit_time[function-50]
CodSpeed Performance Gauge
0%
104.9 µs
104.5 µs
test_emit_time[partial_method-18]
tests/test_bench.py::test_emit_time[partial_method-18]
CodSpeed Performance Gauge
0%
93.9 µs
93.5 µs
test_emit_time[setattr-50]
tests/test_bench.py::test_emit_time[setattr-50]
CodSpeed Performance Gauge
0%
77.6 µs
77.3 µs
test_dataclass_group_create[attrs]
tests/test_bench.py::test_dataclass_group_create[attrs]
CodSpeed Performance Gauge
0%
520.1 µs
518.4 µs
test_connect_time[lambda-]
tests/test_bench.py::test_connect_time[lambda-]
CodSpeed Performance Gauge
0%
141.1 µs
140.8 µs
test_emit_time[setattr-2]
tests/test_bench.py::test_emit_time[setattr-2]
CodSpeed Performance Gauge
0%
56.8 µs
56.6 µs
test_emit_time[method-2]
tests/test_bench.py::test_emit_time[method-2]
CodSpeed Performance Gauge
0%
63.2 µs
63 µs
test_emit_time[setattr-18]
tests/test_bench.py::test_emit_time[setattr-18]
CodSpeed Performance Gauge
0%
63.5 µs
63.4 µs
test_connect_time[method-]
tests/test_bench.py::test_connect_time[method-]
CodSpeed Performance Gauge
0%
177.1 µs
176.7 µs
test_emit_time[lambda-34]
tests/test_bench.py::test_emit_time[lambda-34]
CodSpeed Performance Gauge
0%
89.6 µs
89.4 µs
test_emit_time[setitem-18]
tests/test_bench.py::test_emit_time[setitem-18]
CodSpeed Performance Gauge
0%
70.6 µs
70.5 µs
test_emit_time[real_func-50]
tests/test_bench.py::test_emit_time[real_func-50]
CodSpeed Performance Gauge
0%
162.3 µs
162 µs
test_emit_time[real_func-2]
tests/test_bench.py::test_emit_time[real_func-2]
CodSpeed Performance Gauge
0%
65.3 µs
65.2 µs
test_emit_time[print-2]
tests/test_bench.py::test_emit_time[print-2]
CodSpeed Performance Gauge
0%
86.7 µs
86.6 µs
test_emit_time[method-18]
tests/test_bench.py::test_emit_time[method-18]
CodSpeed Performance Gauge
0%
83.7 µs
83.6 µs
test_emit_time[method-34]
tests/test_bench.py::test_emit_time[method-34]
CodSpeed Performance Gauge
0%
105.5 µs
105.4 µs
test_emit_time[lambda-18]
tests/test_bench.py::test_emit_time[lambda-18]
CodSpeed Performance Gauge
0%
74.5 µs
74.4 µs
test_dataclass_group_create[msgspec]
tests/test_bench.py::test_dataclass_group_create[msgspec]
CodSpeed Performance Gauge
0%
522.9 µs
522.3 µs
test_connect_time[real_func-]
tests/test_bench.py::test_connect_time[real_func-]
CodSpeed Performance Gauge
0%
123.2 µs
123.1 µs
test_connect_time[partial-]
tests/test_bench.py::test_connect_time[partial-]
CodSpeed Performance Gauge
0%
244.3 µs
244.1 µs
test_connect_time[lambda-check_types]
tests/test_bench.py::test_connect_time[lambda-check_types]
CodSpeed Performance Gauge
0%
144.8 µs
144.7 µs
test_emit_time[partial-34]
tests/test_bench.py::test_emit_time[partial-34]
CodSpeed Performance Gauge
0%
106.6 µs
106.6 µs
test_emit_time[function-34]
tests/test_bench.py::test_emit_time[function-34]
CodSpeed Performance Gauge
0%
89.8 µs
89.8 µs
test_emit_time[setitem-34]
tests/test_bench.py::test_emit_time[setitem-34]
CodSpeed Performance Gauge
0%
82.7 µs
82.7 µs
test_emit_time[method-50]
tests/test_bench.py::test_emit_time[method-50]
CodSpeed Performance Gauge
0%
127.2 µs
127.3 µs
test_connect_time[partial-check_types]
tests/test_bench.py::test_connect_time[partial-check_types]
CodSpeed Performance Gauge
0%
256.9 µs
257.1 µs
test_evented_creation
tests/test_bench.py::test_evented_creation
CodSpeed Performance Gauge
0%
1.6 ms
1.6 ms
test_emit_time[partial_method-34]
tests/test_bench.py::test_emit_time[partial_method-34]
CodSpeed Performance Gauge
0%
122.1 µs
122.3 µs
test_emit_time[partial-2]
tests/test_bench.py::test_emit_time[partial-2]
CodSpeed Performance Gauge
0%
62 µs
62.1 µs
test_emit_time[setattr-34]
tests/test_bench.py::test_emit_time[setattr-34]
CodSpeed Performance Gauge
0%
70.5 µs
70.6 µs
test_connect_time[partial_method-]
tests/test_bench.py::test_connect_time[partial_method-]
CodSpeed Performance Gauge
0%
276.4 µs
276.8 µs
test_emit_time[print-18]
tests/test_bench.py::test_emit_time[print-18]
CodSpeed Performance Gauge
0%
180.7 µs
181 µs
test_connect_time[setattr-check_types]
tests/test_bench.py::test_connect_time[setattr-check_types]
CodSpeed Performance Gauge
0%
66.7 µs
66.8 µs
test_emit_time[real_func-34]
tests/test_bench.py::test_emit_time[real_func-34]
CodSpeed Performance Gauge
0%
130 µs
130.3 µs
test_emit_time[partial_method-50]
tests/test_bench.py::test_emit_time[partial_method-50]
CodSpeed Performance Gauge
0%
150.8 µs
151.2 µs
test_emit_fast
tests/test_bench.py::test_emit_fast
CodSpeed Performance Gauge
0%
22.4 µs
22.4 µs
test_connect_time[function-]
tests/test_bench.py::test_connect_time[function-]
CodSpeed Performance Gauge
0%
140.4 µs
140.9 µs
test_connect_time[partial_method-check_types]
tests/test_bench.py::test_connect_time[partial_method-check_types]
CodSpeed Performance Gauge
0%
283.1 µs
284.2 µs
test_emit_time[lambda-50]
tests/test_bench.py::test_emit_time[lambda-50]
CodSpeed Performance Gauge
0%
104.8 µs
105.2 µs
test_connect_time[setattr-]
tests/test_bench.py::test_connect_time[setattr-]
CodSpeed Performance Gauge
-1%
61.7 µs
62 µs
test_evented_setattr
tests/test_bench.py::test_evented_setattr
CodSpeed Performance Gauge
-1%
27.8 µs
28 µs
test_dataclass_group_create[pydantic]
tests/test_bench.py::test_dataclass_group_create[pydantic]
CodSpeed Performance Gauge
-1%
549.4 µs
552.9 µs
test_connect_time[function-check_types]
tests/test_bench.py::test_connect_time[function-check_types]
CodSpeed Performance Gauge
-1%
155.6 µs
156.7 µs
test_emit_time[print-34]
tests/test_bench.py::test_emit_time[print-34]
CodSpeed Performance Gauge
-1%
280.2 µs
282.4 µs
test_emit_time[print-50]
tests/test_bench.py::test_emit_time[print-50]
CodSpeed Performance Gauge
-1%
380.7 µs
384.1 µs
test_emit_time[partial-18]
tests/test_bench.py::test_emit_time[partial-18]
CodSpeed Performance Gauge
-1%
84.1 µs
84.9 µs
test_connect_time[setitem-]
tests/test_bench.py::test_connect_time[setitem-]
CodSpeed Performance Gauge
-1%
62 µs
62.7 µs
test_connect_time[setitem-check_types]
tests/test_bench.py::test_connect_time[setitem-check_types]
CodSpeed Performance Gauge
-1%
66.7 µs
67.5 µs
test_emit_time[lambda-2]
tests/test_bench.py::test_emit_time[lambda-2]
CodSpeed Performance Gauge
-1%
59.6 µs
60.4 µs
test_emit_time[real_func-18]
tests/test_bench.py::test_emit_time[real_func-18]
CodSpeed Performance Gauge
-1%
97.5 µs
99 µs

Commits

Click on a commit to change the comparison range
Base
main
939c32e
+11%
fix build dependency
7e2984b
6 months ago
by tlambert03
0%
fix test
d5ef19f
6 months ago
by tlambert03
-10%
Merge branch 'main' into computed-fields
ed0a7e0
6 months ago
by tlambert03
0%
Merge branch 'main' into computed-fields
aaa1ae2
4 months ago
by tlambert03
0%
Merge branch 'main' into computed-fields
3ab1b40
18 days ago
by tlambert03
© 2025 CodSpeed Technology
Home Terms PrivacyDocs