pyapp-kit
/
psygnal
Blog
Docs
Overview
Branches
Benchmarks
Runs
feat: make Signal and SignalInstance Generic, support static type validation of signal connections
(
#304
)
Comparing
tlambert03:generic-signal
(
cdb2ec3
) with
main
(
019232e
)
-57%
IMPROVEMENTS
2
REGRESSIONS
5
UNTOUCHED
59
NEW
1
DROPPED
0
IGNORED
0
Benchmarks
Failed
test_create_signal_instance
Regression
tests/test_bench.py::test_create_signal_instance
-57%
33.4 µs
77.6 µs
test_dataclass_group_create[attrs]
Regression
tests/test_bench.py::test_dataclass_group_create[attrs]
-21%
536.8 µs
676.7 µs
test_dataclass_group_create[dataclass]
Regression
tests/test_bench.py::test_dataclass_group_create[dataclass]
-20%
523.1 µs
657.7 µs
test_dataclass_group_create[msgspec]
Regression
tests/test_bench.py::test_dataclass_group_create[msgspec]
-19%
544.9 µs
676 µs
test_dataclass_group_create[pydantic]
Regression
tests/test_bench.py::test_dataclass_group_create[pydantic]
-20%
541.2 µs
677.9 µs
Improved
test_create_signal
tests/test_bench.py::test_create_signal
×2.4
68.8 µs
28.2 µs
test_emit_time[partial-2]
tests/test_bench.py::test_emit_time[partial-2]
+12%
69 µs
61.6 µs
New
test_emit_fast
tests/test_bench.py::test_emit_fast
N/A
N/A
21.7 µs
Passed
test_emit_time[lambda-2]
tests/test_bench.py::test_emit_time[lambda-2]
+2%
60.1 µs
59 µs
test_connect_time[function-]
tests/test_bench.py::test_connect_time[function-]
+2%
143.4 µs
141.1 µs
test_emit_time[setattr-2]
tests/test_bench.py::test_emit_time[setattr-2]
+1%
56.2 µs
55.5 µs
test_emit_time[setitem-2]
tests/test_bench.py::test_emit_time[setitem-2]
+1%
58.2 µs
57.4 µs
test_emit_time[setitem-18]
tests/test_bench.py::test_emit_time[setitem-18]
+1%
70.4 µs
69.4 µs
test_connect_time[setattr-]
tests/test_bench.py::test_connect_time[setattr-]
+1%
62.3 µs
61.6 µs
test_connect_time[setitem-]
tests/test_bench.py::test_connect_time[setitem-]
+1%
62.8 µs
62.1 µs
test_emit_time[real_func-34]
tests/test_bench.py::test_emit_time[real_func-34]
+1%
131.3 µs
129.8 µs
test_emit_time[setattr-34]
tests/test_bench.py::test_emit_time[setattr-34]
+1%
70.2 µs
69.4 µs
test_emit_time[setattr-18]
tests/test_bench.py::test_emit_time[setattr-18]
+1%
63.1 µs
62.4 µs
test_emit_time[partial-50]
tests/test_bench.py::test_emit_time[partial-50]
+1%
131.9 µs
130.6 µs
test_connect_time[method-check_types]
tests/test_bench.py::test_connect_time[method-check_types]
+1%
186.1 µs
184.5 µs
test_emit_time[real_func-18]
tests/test_bench.py::test_emit_time[real_func-18]
+1%
99.1 µs
98.4 µs
test_emit_time[setitem-34]
tests/test_bench.py::test_emit_time[setitem-34]
+1%
82.3 µs
81.7 µs
test_emit_time[print-2]
tests/test_bench.py::test_emit_time[print-2]
+1%
86.8 µs
86.2 µs
test_connect_time[method-]
tests/test_bench.py::test_connect_time[method-]
+1%
177.8 µs
176.5 µs
test_emit_time[lambda-50]
tests/test_bench.py::test_emit_time[lambda-50]
+1%
105 µs
104.3 µs
test_emit_time[setitem-50]
tests/test_bench.py::test_emit_time[setitem-50]
+1%
94.1 µs
93.5 µs
test_emit_time[real_func-2]
tests/test_bench.py::test_emit_time[real_func-2]
+1%
65.9 µs
65.5 µs
test_connect_time[partial-check_types]
tests/test_bench.py::test_connect_time[partial-check_types]
+1%
256.1 µs
254.6 µs
test_emit_time[function-18]
tests/test_bench.py::test_emit_time[function-18]
+1%
74.3 µs
73.9 µs
test_connect_time[lambda-check_types]
tests/test_bench.py::test_connect_time[lambda-check_types]
+1%
145.2 µs
144.5 µs
test_dataclass_setattr[pydantic]
tests/test_bench.py::test_dataclass_setattr[pydantic]
+1%
865.6 µs
861.2 µs
test_emit_time[setattr-50]
tests/test_bench.py::test_emit_time[setattr-50]
0%
76.9 µs
76.5 µs
test_emit_time[function-34]
tests/test_bench.py::test_emit_time[function-34]
0%
89.4 µs
89.1 µs
test_connect_time[lambda-]
tests/test_bench.py::test_connect_time[lambda-]
0%
140.9 µs
140.5 µs
test_connect_time[setitem-check_types]
tests/test_bench.py::test_connect_time[setitem-check_types]
0%
67.4 µs
67.2 µs
test_emit_time[function-50]
tests/test_bench.py::test_emit_time[function-50]
0%
104.9 µs
104.5 µs
test_connect_time[print-check_types]
tests/test_bench.py::test_connect_time[print-check_types]
0%
205.5 µs
205 µs
test_emit_time[real_func-50]
tests/test_bench.py::test_emit_time[real_func-50]
0%
163.8 µs
163.4 µs
test_dataclass_setattr[dataclass]
tests/test_bench.py::test_dataclass_setattr[dataclass]
0%
755.7 µs
753.7 µs
test_emit_time[partial-34]
tests/test_bench.py::test_emit_time[partial-34]
0%
107.6 µs
107.4 µs
test_emit_time[lambda-34]
tests/test_bench.py::test_emit_time[lambda-34]
0%
89.3 µs
89.2 µs
test_dataclass_setattr[msgspec]
tests/test_bench.py::test_dataclass_setattr[msgspec]
0%
773.6 µs
772.4 µs
test_emit_time[print-18]
tests/test_bench.py::test_emit_time[print-18]
0%
179.3 µs
179 µs
test_evented_setattr
tests/test_bench.py::test_evented_setattr
0%
27.8 µs
27.8 µs
test_connect_time[setattr-check_types]
tests/test_bench.py::test_connect_time[setattr-check_types]
0%
67.9 µs
67.8 µs
test_connect_time[real_func-check_types]
tests/test_bench.py::test_connect_time[real_func-check_types]
0%
126.9 µs
126.8 µs
test_emit_time[method-18]
tests/test_bench.py::test_emit_time[method-18]
0%
83.7 µs
83.6 µs
test_connect_time[function-check_types]
tests/test_bench.py::test_connect_time[function-check_types]
0%
156.4 µs
156.3 µs
test_connect_time[real_func-]
tests/test_bench.py::test_connect_time[real_func-]
0%
123.6 µs
123.5 µs
test_connect_time[partial_method-]
tests/test_bench.py::test_connect_time[partial_method-]
0%
275.4 µs
275.5 µs
test_emit_time[lambda-18]
tests/test_bench.py::test_emit_time[lambda-18]
0%
74.2 µs
74.2 µs
test_connect_time[partial-]
tests/test_bench.py::test_connect_time[partial-]
0%
243.2 µs
243.6 µs
test_connect_time[partial_method-check_types]
tests/test_bench.py::test_connect_time[partial_method-check_types]
0%
282.5 µs
282.9 µs
test_emit_time[partial_method-34]
tests/test_bench.py::test_emit_time[partial_method-34]
0%
122 µs
122.3 µs
test_emit_time[partial_method-50]
tests/test_bench.py::test_emit_time[partial_method-50]
0%
151.2 µs
151.7 µs
test_emit_time[partial_method-18]
tests/test_bench.py::test_emit_time[partial_method-18]
0%
93.4 µs
93.7 µs
test_emit_time[method-2]
tests/test_bench.py::test_emit_time[method-2]
0%
62.1 µs
62.4 µs
test_emit_time[print-34]
tests/test_bench.py::test_emit_time[print-34]
0%
277.1 µs
278.2 µs
test_emit_time[method-34]
tests/test_bench.py::test_emit_time[method-34]
0%
105.5 µs
106 µs
test_connect_time[print-]
tests/test_bench.py::test_connect_time[print-]
0%
145.9 µs
146.5 µs
test_emit_time[method-50]
tests/test_bench.py::test_emit_time[method-50]
-1%
127.4 µs
128.1 µs
test_emit_time[function-2]
tests/test_bench.py::test_emit_time[function-2]
-1%
64.7 µs
65.1 µs
test_dataclass_setattr[attrs]
tests/test_bench.py::test_dataclass_setattr[attrs]
-1%
772.3 µs
777.8 µs
test_emit_time[print-50]
tests/test_bench.py::test_emit_time[print-50]
-1%
376.3 µs
379.4 µs
test_emit_time[partial_method-2]
tests/test_bench.py::test_emit_time[partial_method-2]
-1%
64.1 µs
64.8 µs
test_emit_time[partial-18]
tests/test_bench.py::test_emit_time[partial-18]
-1%
83.7 µs
84.8 µs
test_evented_creation
tests/test_bench.py::test_evented_creation
-4%
1.7 ms
1.7 ms
Commits
Click on a commit to change the comparison range
base
main
019232e
-23%
install ruff
ff18b86
8 months ago
by tlambert03
-1%
skip test
4156847
8 months ago
by tlambert03
+1%
Add mypy to pip install command
330cfd1
8 months ago
by tlambert03
-33%
prebuild sig
66a86ce
8 months ago
by tlambert03
0%
Merge branch 'main' into generic-signal
cdb2ec3
18 days ago
by tlambert03
Resources
Home
Pricing
Docs
Blog
GitHub
Changelog
Getting Started
Sample repository
Explore repositories
Support
About
Careers
Twitter
Discord
Contact Us
Terms of Service
Privacy Policy
Copyright © 2024 CodSpeed Technology SAS. All rights reserved.