BlogDocs

fix: ensure proper order of signal emission(#281)

Merged
Comparing
Czaki:proper_signal_order
(
eccef1a
) with
main
(
4aa62b0
)
-2%
IMPROVEMENTS
0
REGRESSIONS
0
UNTOUCHED
66
NEW
0
DROPPED
0
IGNORED
0

Benchmarks

Passed

test_emit_time[partial-2]
tests/test_bench.py::test_emit_time[partial-2]
+2%
61.5 µs
60.2 µs
test_connect_time[setattr-]
tests/test_bench.py::test_connect_time[setattr-]
+2%
62.7 µs
61.3 µs
test_create_signal
tests/test_bench.py::test_create_signal
+2%
75.3 µs
74 µs
test_connect_time[lambda-]
tests/test_bench.py::test_connect_time[lambda-]
+2%
140.9 µs
138.7 µs
test_connect_time[setitem-]
tests/test_bench.py::test_connect_time[setitem-]
+1%
62.9 µs
62.1 µs
test_connect_time[setitem-check_types]
tests/test_bench.py::test_connect_time[setitem-check_types]
+1%
67.8 µs
67 µs
test_connect_time[print-]
tests/test_bench.py::test_connect_time[print-]
+1%
146.5 µs
144.8 µs
test_connect_time[setattr-check_types]
tests/test_bench.py::test_connect_time[setattr-check_types]
+1%
68.1 µs
67.6 µs
test_connect_time[print-check_types]
tests/test_bench.py::test_connect_time[print-check_types]
0%
206.1 µs
205.1 µs
test_dataclass_group_create[msgspec]
tests/test_bench.py::test_dataclass_group_create[msgspec]
0%
480.3 µs
479.6 µs
test_connect_time[real_func-]
tests/test_bench.py::test_connect_time[real_func-]
0%
123 µs
122.9 µs
test_connect_time[lambda-check_types]
tests/test_bench.py::test_connect_time[lambda-check_types]
0%
145.3 µs
145.2 µs
test_connect_time[real_func-check_types]
tests/test_bench.py::test_connect_time[real_func-check_types]
0%
126 µs
126 µs
test_connect_time[partial-check_types]
tests/test_bench.py::test_connect_time[partial-check_types]
0%
257.3 µs
257.4 µs
test_connect_time[function-check_types]
tests/test_bench.py::test_connect_time[function-check_types]
0%
154.7 µs
154.8 µs
test_connect_time[partial_method-]
tests/test_bench.py::test_connect_time[partial_method-]
0%
276.3 µs
276.6 µs
test_dataclass_group_create[attrs]
tests/test_bench.py::test_dataclass_group_create[attrs]
0%
469.6 µs
470.3 µs
test_evented_setattr
tests/test_bench.py::test_evented_setattr
0%
28.4 µs
28.5 µs
test_evented_creation
tests/test_bench.py::test_evented_creation
0%
1.5 ms
1.5 ms
test_connect_time[function-]
tests/test_bench.py::test_connect_time[function-]
0%
139.2 µs
139.6 µs
test_connect_time[method-]
tests/test_bench.py::test_connect_time[method-]
0%
175.2 µs
175.7 µs
test_connect_time[method-check_types]
tests/test_bench.py::test_connect_time[method-check_types]
0%
184.1 µs
184.7 µs
test_connect_time[partial-]
tests/test_bench.py::test_connect_time[partial-]
0%
244.5 µs
245.5 µs
test_create_signal_instance
tests/test_bench.py::test_create_signal_instance
0%
25.3 µs
25.4 µs
test_connect_time[partial_method-check_types]
tests/test_bench.py::test_connect_time[partial_method-check_types]
-1%
284.4 µs
285.8 µs
test_dataclass_setattr[attrs]
tests/test_bench.py::test_dataclass_setattr[attrs]
-1%
765.1 µs
769.6 µs
test_dataclass_setattr[msgspec]
tests/test_bench.py::test_dataclass_setattr[msgspec]
-1%
761.8 µs
766.4 µs
test_dataclass_group_create[dataclass]
tests/test_bench.py::test_dataclass_group_create[dataclass]
-1%
357.6 µs
359.9 µs
test_dataclass_setattr[pydantic]
tests/test_bench.py::test_dataclass_setattr[pydantic]
-1%
850.1 µs
856 µs
test_dataclass_group_create[pydantic]
tests/test_bench.py::test_dataclass_group_create[pydantic]
-1%
466.5 µs
469.9 µs
test_dataclass_setattr[dataclass]
tests/test_bench.py::test_dataclass_setattr[dataclass]
-1%
740 µs
746.8 µs
test_emit_time[partial_method-2]
tests/test_bench.py::test_emit_time[partial_method-2]
-2%
68.8 µs
69.9 µs
test_emit_time[print-50]
tests/test_bench.py::test_emit_time[print-50]
-2%
369.5 µs
376.5 µs
test_emit_time[print-34]
tests/test_bench.py::test_emit_time[print-34]
-2%
271 µs
276.5 µs
test_emit_time[setattr-2]
tests/test_bench.py::test_emit_time[setattr-2]
-2%
54.1 µs
55.4 µs
test_emit_time[print-2]
tests/test_bench.py::test_emit_time[print-2]
-2%
83.1 µs
85.2 µs
test_emit_time[print-18]
tests/test_bench.py::test_emit_time[print-18]
-2%
173.8 µs
178.2 µs
test_emit_time[method-2]
tests/test_bench.py::test_emit_time[method-2]
-3%
59.7 µs
61.3 µs
test_emit_time[real_func-34]
tests/test_bench.py::test_emit_time[real_func-34]
-3%
130.6 µs
134 µs
test_emit_time[real_func-2]
tests/test_bench.py::test_emit_time[real_func-2]
-3%
62.9 µs
64.5 µs
test_emit_time[partial_method-18]
tests/test_bench.py::test_emit_time[partial_method-18]
-3%
91.3 µs
93.8 µs
test_emit_time[partial_method-34]
tests/test_bench.py::test_emit_time[partial_method-34]
-3%
121.9 µs
125.3 µs
test_emit_time[real_func-18]
tests/test_bench.py::test_emit_time[real_func-18]
-3%
97.3 µs
100.1 µs
test_emit_time[lambda-2]
tests/test_bench.py::test_emit_time[lambda-2]
-3%
56.9 µs
58.6 µs
test_emit_time[real_func-50]
tests/test_bench.py::test_emit_time[real_func-50]
-3%
163 µs
168.2 µs
test_emit_time[setitem-2]
tests/test_bench.py::test_emit_time[setitem-2]
-3%
55.8 µs
57.7 µs
test_emit_time[method-34]
tests/test_bench.py::test_emit_time[method-34]
-3%
101.9 µs
105.3 µs
test_emit_time[method-18]
tests/test_bench.py::test_emit_time[method-18]
-3%
80.3 µs
83.1 µs
test_emit_time[lambda-18]
tests/test_bench.py::test_emit_time[lambda-18]
-4%
69.9 µs
72.6 µs
test_emit_time[setitem-18]
tests/test_bench.py::test_emit_time[setitem-18]
-4%
67.9 µs
70.6 µs
test_emit_time[method-50]
tests/test_bench.py::test_emit_time[method-50]
-4%
122.4 µs
127.4 µs
test_emit_time[partial_method-50]
tests/test_bench.py::test_emit_time[partial_method-50]
-4%
151.9 µs
158.2 µs
test_emit_time[partial-34]
tests/test_bench.py::test_emit_time[partial-34]
-4%
105 µs
109.7 µs
test_emit_time[setitem-34]
tests/test_bench.py::test_emit_time[setitem-34]
-4%
80.1 µs
83.7 µs
test_emit_time[partial-18]
tests/test_bench.py::test_emit_time[partial-18]
-4%
82.2 µs
86 µs
test_emit_time[lambda-34]
tests/test_bench.py::test_emit_time[lambda-34]
-4%
84 µs
87.9 µs
test_emit_time[function-2]
tests/test_bench.py::test_emit_time[function-2]
-5%
60.7 µs
63.6 µs
test_emit_time[function-50]
tests/test_bench.py::test_emit_time[function-50]
-5%
98 µs
102.7 µs
test_emit_time[function-18]
tests/test_bench.py::test_emit_time[function-18]
-5%
69.7 µs
73 µs
test_emit_time[function-34]
tests/test_bench.py::test_emit_time[function-34]
-5%
83.8 µs
87.9 µs
test_emit_time[lambda-50]
tests/test_bench.py::test_emit_time[lambda-50]
-5%
100.3 µs
105.3 µs
test_emit_time[setattr-18]
tests/test_bench.py::test_emit_time[setattr-18]
-5%
60.8 µs
63.9 µs
test_emit_time[partial-50]
tests/test_bench.py::test_emit_time[partial-50]
-5%
125.3 µs
131.9 µs
test_emit_time[setitem-50]
tests/test_bench.py::test_emit_time[setitem-50]
-5%
92 µs
97.1 µs
test_emit_time[setattr-34]
tests/test_bench.py::test_emit_time[setattr-34]
-6%
67.9 µs
71.9 µs
test_emit_time[setattr-50]
tests/test_bench.py::test_emit_time[setattr-50]
-7%
74.7 µs
80 µs

Commits

Click on a commit to change the comparison range
base
main
4aa62b0
-12%
fix: ensure proper order of signal emmision
93efe4e
8 months ago
by Czaki
+10%
fix: copy operator
3e8be84
8 months ago
by Czaki
0%
remove exception raise
af5ebfe
8 months ago
by Czaki
+1%
Merge remote-tracking branch 'pyapp-kit/main' into proper_signal_order
9c5e689
8 months ago
by Czaki
0%
ass test for evented set
f62dfd6
8 months ago
by Czaki
-1%
simplify code
eccef1a
8 months ago
by Czaki
ResourcesHomePricingDocsBlogGitHubChangelog
Copyright © 2024 CodSpeed Technology SAS. All rights reserved.