Skip to content

Make library items more private - #3090

Draft
djc wants to merge 1 commit into
mainfrom
depub
Draft

djc wants to merge 1 commit into
mainfrom
depub

Conversation

@djc

@djc djc commented Jun 12, 2026

Copy link
Copy Markdown
Member

Tried out depub on rustls.

Not sure if worth it? But seems interesting.

@rustls-benchmarking

rustls-benchmarking Bot commented Jun 12, 2026

Copy link
Copy Markdown

Benchmark results

Instruction counts

Significant differences

⚠️ There are significant instruction count differences

Click to expand
Scenario Baseline Candidate Diff Threshold
handshake_session_id_1.3_no_crypto_client 2312421 2325321 ⚠️ 12900 (0.56%) 0.20%
handshake_tickets_1.3_no_crypto_client 2322654 2335554 ⚠️ 12900 (0.56%) 0.20%
handshake_session_id_1.2_no_crypto_client 1169406 1175886 ⚠️ 6480 (0.55%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_rsa_aes_client 2382161 2395193 ⚠️ 13032 (0.55%) 0.20%
handshake_tickets_1.2_no_crypto_client 1250705 1257185 ⚠️ 6480 (0.52%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_aes_server 2282651 2276014 -6637 (-0.29%) 0.20%

Other differences

Click to expand
Scenario Baseline Candidate Diff Threshold
handshake_no_resume_aws_lc_rs_1.3_rsa_aes_server 10917811 10984152 66341 (0.61%) 0.89%
handshake_no_resume_aws_lc_rs_1.2_rsa_aes_server 10400751 10433161 32410 (0.31%) 1.09%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_chacha_client 8772349 8790333 17984 (0.21%) 1.08%
handshake_session_id_ring_1.2_rsa_aes_client 3502702 3509182 6480 (0.19%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_rsa_chacha_server 10916538 10935538 19000 (0.17%) 1.43%
handshake_tickets_ring_1.2_rsa_aes_client 3890150 3896630 6480 (0.17%) 0.20%
handshake_session_id_aws_lc_rs_1.2_rsa_aes_client 3920034 3926514 6480 (0.17%) 0.20%
handshake_tickets_aws_lc_rs_1.2_rsa_aes_client 4309887 4316367 6480 (0.15%) 0.20%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_aes_client 42696084 42757369 61285 (0.14%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_aes_client 8791042 8781563 -9479 (-0.11%) 1.03%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_aes_client 42723729 42762874 39145 (0.09%) 0.30%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_aes_client 42527561 42556171 28610 (0.07%) 0.25%
handshake_tickets_aws_lc_rs_1.3_rsa_chacha_client 42702699 42730940 28241 (0.07%) 0.20%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_aes_server 38727527 38752752 25225 (0.07%) 0.20%
handshake_session_id_aws_lc_rs_1.3_rsa_chacha_client 42497567 42521997 24430 (0.06%) 0.32%
handshake_no_resume_ring_1.3_ecdsap256_aes_client 3273296 3271497 -1799 (-0.05%) 0.20%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_chacha_client 42672661 42695597 22936 (0.05%) 0.21%
handshake_session_id_ring_1.3_rsa_chacha_client 30572896 30585796 12900 (0.04%) 0.20%
handshake_session_id_ring_1.3_ecdsap384_chacha_client 30574995 30587895 12900 (0.04%) 0.20%
handshake_session_id_ring_1.3_ecdsap256_chacha_client 30581409 30594309 12900 (0.04%) 0.20%
handshake_session_id_ring_1.3_rsa_aes_client 30664596 30677496 12900 (0.04%) 0.20%
handshake_session_id_ring_1.3_ecdsap384_aes_client 30666685 30679585 12900 (0.04%) 0.20%
handshake_session_id_ring_1.3_ecdsap256_aes_client 30673099 30685999 12900 (0.04%) 0.20%
handshake_tickets_ring_1.3_rsa_chacha_client 30680985 30693885 12900 (0.04%) 0.20%
handshake_tickets_ring_1.3_ecdsap256_chacha_client 30698948 30711848 12900 (0.04%) 0.20%
handshake_tickets_ring_1.3_ecdsap384_chacha_client 30699290 30712190 12900 (0.04%) 0.20%
handshake_tickets_ring_1.3_ecdsap256_aes_client 30743678 30756578 12900 (0.04%) 0.20%
handshake_tickets_ring_1.3_ecdsap384_aes_client 30747811 30760711 12900 (0.04%) 0.20%
handshake_tickets_ring_1.3_rsa_aes_client 30753245 30766145 12900 (0.04%) 0.20%
handshake_tickets_1.3_no_crypto_server 2170005 2170875 870 (0.04%) 0.20%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_aes_server 38743939 38758592 14653 (0.04%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_aes_client 3554762 3556063 1301 (0.04%) 0.20%
handshake_session_id_1.3_no_crypto_server 2219408 2220218 810 (0.04%) 0.20%
handshake_no_resume_1.3_no_crypto_server 61659 61681 22 (0.04%) 0.20%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_chacha_client 42700913 42685790 -15123 (-0.04%) 0.26%
handshake_tickets_aws_lc_rs_1.3_rsa_aes_client 42746029 42731335 -14694 (-0.03%) 0.20%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_chacha_server 37374242 37361671 -12571 (-0.03%) 0.20%
handshake_tickets_aws_lc_rs_1.3_rsa_aes_server 38744355 38731764 -12591 (-0.03%) 0.20%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_chacha_client 42488920 42475227 -13693 (-0.03%) 0.34%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_chacha_server 38699431 38687050 -12381 (-0.03%) 0.20%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_chacha_client 42460546 42473798 13252 (0.03%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_chacha_server 1357270 1356893 -377 (-0.03%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_chacha_client 3557038 3557904 866 (0.02%) 0.23%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_aes_server 37446887 37455603 8716 (0.02%) 0.20%
handshake_tickets_aws_lc_rs_1.3_rsa_chacha_server 38701795 38710560 8765 (0.02%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_rsa_aes_server 46043979 46033672 -10307 (-0.02%) 0.20%
handshake_no_resume_1.2_no_crypto_server 41423 41414 -9 (-0.02%) 0.20%
handshake_session_id_1.2_no_crypto_server 1103342 1103132 -210 (-0.02%) 0.20%
handshake_tickets_1.2_no_crypto_server 1249939 1249729 -210 (-0.02%) 0.20%
handshake_session_id_aws_lc_rs_1.3_rsa_chacha_server 37373428 37379663 6235 (0.02%) 0.20%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_chacha_server 38683057 38689095 6038 (0.02%) 0.20%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_aes_server 37455022 37450275 -4747 (-0.01%) 0.20%
handshake_session_id_aws_lc_rs_1.3_rsa_aes_server 37452445 37448038 -4407 (-0.01%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_rsa_chacha_server 80221451 80212198 -9253 (-0.01%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_rsa_chacha_client 2388509 2388737 228 (0.01%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_chacha_server 2278933 2279093 160 (0.01%) 0.20%
handshake_session_id_ring_1.2_rsa_aes_server 3411818 3411608 -210 (-0.01%) 0.20%
handshake_session_id_aws_lc_rs_1.3_rsa_aes_client 42547566 42550159 2593 (0.01%) 0.20%
handshake_session_id_aws_lc_rs_1.2_rsa_aes_server 3827772 3827562 -210 (-0.01%) 0.37%
handshake_tickets_ring_1.2_rsa_aes_server 3991705 3991495 -210 (-0.01%) 0.20%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_aes_client 42553134 42555150 2016 (0.00%) 0.27%
handshake_tickets_aws_lc_rs_1.2_rsa_aes_server 4927050 4926840 -210 (-0.00%) 0.23%
transfer_no_resume_aws_lc_rs_1.2_rsa_aes_server 45996795 45994915 -1880 (-0.00%) 0.20%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_chacha_server 37355221 37356262 1041 (0.00%) 0.20%
handshake_no_resume_1.3_no_crypto_client 72261 72259 -2 (-0.00%) 0.20%
handshake_tickets_ring_1.3_rsa_chacha_server 31981080 31981950 870 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap384_chacha_server 32005352 32006222 870 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap256_chacha_server 32009012 32009882 870 (0.00%) 0.20%
handshake_tickets_ring_1.3_rsa_aes_server 32084310 32085180 870 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap256_aes_server 32099647 32100517 870 (0.00%) 0.20%
handshake_tickets_ring_1.3_ecdsap384_aes_server 32106496 32107366 870 (0.00%) 0.20%
handshake_session_id_ring_1.3_rsa_chacha_server 31720484 31721294 810 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap384_chacha_server 31723738 31724548 810 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap256_chacha_server 31724315 31725125 810 (0.00%) 0.20%
handshake_session_id_ring_1.3_rsa_aes_server 31842944 31843754 810 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap384_aes_server 31846198 31847008 810 (0.00%) 0.20%
handshake_session_id_ring_1.3_ecdsap256_aes_server 31846775 31847585 810 (0.00%) 0.20%
handshake_no_resume_ring_1.3_ecdsap256_aes_server 1236306 1236330 24 (0.00%) 0.20%
handshake_no_resume_ring_1.3_ecdsap256_chacha_server 1237484 1237508 24 (0.00%) 0.20%
handshake_no_resume_1.2_no_crypto_client 60742 60743 1 (0.00%) 0.20%
handshake_no_resume_aws_lc_rs_1.2_rsa_aes_client 1684732 1684754 22 (0.00%) 0.20%
handshake_no_resume_ring_1.3_ecdsap256_chacha_client 3274713 3274673 -40 (-0.00%) 0.21%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_aes_client 58178253 58177613 -640 (-0.00%) 0.20%
handshake_no_resume_ring_1.3_ecdsap384_chacha_server 7185977 7186014 37 (0.00%) 0.20%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_aes_server 1355201 1355195 -6 (-0.00%) 0.20%
handshake_no_resume_ring_1.3_ecdsap384_aes_server 7184028 7184052 24 (0.00%) 0.20%
handshake_no_resume_ring_1.3_rsa_aes_server 11082832 11082856 24 (0.00%) 0.20%
handshake_no_resume_ring_1.3_rsa_chacha_server 11088584 11088608 24 (0.00%) 0.20%
handshake_no_resume_ring_1.2_rsa_aes_client 2174766 2174769 3 (0.00%) 0.20%
handshake_no_resume_ring_1.3_rsa_aes_client 2302870 2302868 -2 (-0.00%) 0.20%
handshake_no_resume_ring_1.3_rsa_chacha_client 2308522 2308520 -2 (-0.00%) 0.20%
handshake_no_resume_ring_1.2_rsa_aes_server 10927227 10927218 -9 (-0.00%) 0.20%
handshake_no_resume_ring_1.3_ecdsap384_chacha_client 34716584 34716601 17 (0.00%) 0.20%
handshake_no_resume_ring_1.3_ecdsap384_aes_client 34714869 34714867 -2 (-0.00%) 0.20%
transfer_no_resume_ring_1.2_rsa_aes_client 57890766 57890766 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap384_aes_client 58037397 58037397 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.2_rsa_aes_client 58064969 58064969 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_rsa_chacha_client 92631790 92631790 0 (0.00%) 0.20%
transfer_no_resume_1.2_no_crypto_client 117121994 117121994 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_chacha_client 92635853 92635853 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_chacha_server 80234763 80234763 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_rsa_chacha_client 92586190 92586190 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_aes_server 46045706 46045706 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_aes_client 58177541 58177541 0 (0.00%) 0.20%
transfer_no_resume_1.3_no_crypto_server 104823129 104823129 0 (0.00%) 0.20%
transfer_no_resume_1.3_no_crypto_client 117150586 117150586 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap256_aes_server 45878879 45878879 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_rsa_chacha_server 80109221 80109221 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_chacha_client 92635781 92635781 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_chacha_server 80224266 80224266 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap384_aes_server 45878966 45878966 0 (0.00%) 0.20%
transfer_no_resume_ring_1.2_rsa_aes_server 45814132 45814132 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_aes_server 46056843 46056843 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap256_chacha_server 80109279 80109279 0 (0.00%) 0.20%
transfer_no_resume_1.2_no_crypto_server 104789752 104789752 0 (0.00%) 0.20%
transfer_no_resume_aws_lc_rs_1.3_rsa_aes_client 58178091 58178091 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_rsa_aes_server 45879461 45879461 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_rsa_aes_client 58058830 58058830 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap256_chacha_client 92564106 92564106 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap384_chacha_client 92564117 92564117 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap384_chacha_server 80109366 80109366 0 (0.00%) 0.20%
transfer_no_resume_ring_1.3_ecdsap256_aes_client 58037386 58037386 0 (0.00%) 0.20%

Wall-time

Significant differences

There are no significant wall-time differences

Other differences

Click to expand
Scenario Baseline Candidate Diff Threshold
handshake_tickets_1.3_no_crypto 714.58 µs 699.61 µs -14.97 µs (-2.10%) 8.09%
handshake_session_id_1.3_no_crypto 731.89 µs 719.55 µs -12.34 µs (-1.69%) 6.11%
handshake_tickets_1.2_no_crypto 406.90 µs 411.15 µs 4.25 µs (1.05%) 3.15%
handshake_tickets_aws_lc_rs_1.2_rsa_aes 1.81 ms 1.82 ms 0.01 ms (0.79%) 2.73%
transfer_no_resume_aws_lc_rs_1.3_rsa_aes 5.53 ms 5.49 ms -0.04 ms (-0.64%) 2.60%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_aes 4.91 ms 4.88 ms -0.03 ms (-0.63%) 3.41%
handshake_tickets_ring_1.2_rsa_aes 1.57 ms 1.58 ms 0.01 ms (0.46%) 1.20%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_aes 5.58 ms 5.56 ms -0.03 ms (-0.45%) 2.61%
transfer_no_resume_ring_1.3_ecdsap256_aes 5.75 ms 5.73 ms -0.02 ms (-0.40%) 3.44%
handshake_no_resume_1.2_no_crypto 78.88 µs 79.19 µs 0.32 µs (0.40%) 7.19%
handshake_no_resume_1.3_no_crypto 75.95 µs 75.66 µs -0.29 µs (-0.38%) 7.26%
handshake_tickets_ring_1.3_ecdsap256_aes 5.62 ms 5.64 ms 0.02 ms (0.38%) 1.00%
handshake_session_id_1.2_no_crypto 376.66 µs 375.29 µs -1.37 µs (-0.36%) 4.01%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_aes 518.45 µs 516.58 µs -1.87 µs (-0.36%) 2.02%
handshake_tickets_ring_1.3_rsa_aes 6.09 ms 6.11 ms 0.02 ms (0.35%) 1.00%
handshake_session_id_ring_1.2_rsa_aes 1.48 ms 1.48 ms -0.01 ms (-0.35%) 1.33%
handshake_tickets_ring_1.3_ecdsap384_chacha 8.68 ms 8.71 ms 0.03 ms (0.34%) 1.00%
handshake_tickets_ring_1.3_ecdsap256_chacha 5.56 ms 5.57 ms 0.02 ms (0.34%) 1.00%
handshake_session_id_ring_1.3_ecdsap384_chacha 8.62 ms 8.65 ms 0.03 ms (0.33%) 1.00%
handshake_tickets_ring_1.3_rsa_chacha 6.04 ms 6.06 ms 0.02 ms (0.31%) 1.00%
transfer_no_resume_ring_1.2_rsa_aes 6.14 ms 6.12 ms -0.02 ms (-0.31%) 2.66%
transfer_no_resume_ring_1.3_rsa_aes 6.22 ms 6.21 ms -0.02 ms (-0.31%) 2.91%
handshake_tickets_ring_1.3_ecdsap384_aes 8.73 ms 8.76 ms 0.03 ms (0.30%) 1.00%
transfer_no_resume_1.2_no_crypto 12.07 ms 12.04 ms -0.03 ms (-0.29%) 1.19%
handshake_session_id_ring_1.3_ecdsap384_aes 8.66 ms 8.69 ms 0.02 ms (0.29%) 1.00%
handshake_no_resume_ring_1.2_rsa_aes 942.77 µs 945.44 µs 2.67 µs (0.28%) 1.00%
handshake_session_id_ring_1.3_ecdsap256_chacha 5.50 ms 5.51 ms 0.01 ms (0.26%) 1.04%
handshake_session_id_ring_1.3_rsa_aes 6.03 ms 6.05 ms 0.02 ms (0.25%) 1.00%
handshake_session_id_ring_1.3_rsa_chacha 5.99 ms 6.01 ms 0.01 ms (0.25%) 1.00%
handshake_no_resume_ring_1.3_rsa_aes 942.16 µs 944.23 µs 2.07 µs (0.22%) 1.00%
transfer_no_resume_aws_lc_rs_1.3_ecdsap256_chacha 13.38 ms 13.35 ms -0.03 ms (-0.22%) 1.30%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_chacha 6.62 ms 6.60 ms -0.01 ms (-0.21%) 1.35%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_chacha 7.28 ms 7.27 ms -0.02 ms (-0.21%) 1.53%
handshake_session_id_aws_lc_rs_1.3_rsa_chacha 7.26 ms 7.25 ms -0.01 ms (-0.20%) 1.35%
handshake_no_resume_ring_1.3_ecdsap384_chacha 3.58 ms 3.59 ms 0.01 ms (0.20%) 1.00%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_chacha 6.82 ms 6.81 ms -0.01 ms (-0.19%) 1.33%
transfer_no_resume_ring_1.3_ecdsap256_chacha 13.29 ms 13.27 ms -0.02 ms (-0.18%) 1.55%
handshake_tickets_aws_lc_rs_1.3_rsa_chacha 7.47 ms 7.46 ms -0.01 ms (-0.18%) 1.06%
transfer_no_resume_ring_1.3_ecdsap384_aes 8.87 ms 8.85 ms -0.02 ms (-0.18%) 1.91%
handshake_session_id_ring_1.3_ecdsap256_aes 5.56 ms 5.57 ms 0.01 ms (0.18%) 1.00%
transfer_no_resume_aws_lc_rs_1.3_rsa_chacha 14.02 ms 14.00 ms -0.03 ms (-0.18%) 1.19%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_chacha 7.50 ms 7.49 ms -0.01 ms (-0.16%) 1.34%
handshake_no_resume_ring_1.3_ecdsap384_aes 3.58 ms 3.59 ms 0.01 ms (0.15%) 1.00%
transfer_no_resume_aws_lc_rs_1.3_ecdsap384_chacha 14.06 ms 14.04 ms -0.02 ms (-0.14%) 1.26%
handshake_session_id_aws_lc_rs_1.3_ecdsap256_aes 6.67 ms 6.66 ms -0.01 ms (-0.14%) 1.85%
handshake_no_resume_ring_1.3_rsa_chacha 936.79 µs 938.12 µs 1.33 µs (0.14%) 1.00%
transfer_no_resume_aws_lc_rs_1.2_rsa_aes 5.35 ms 5.34 ms -0.01 ms (-0.14%) 3.75%
handshake_session_id_aws_lc_rs_1.2_rsa_aes 1.64 ms 1.65 ms 0.00 ms (0.13%) 1.00%
handshake_session_id_aws_lc_rs_1.3_ecdsap384_aes 7.33 ms 7.32 ms -0.01 ms (-0.12%) 1.46%
transfer_no_resume_ring_1.3_ecdsap384_chacha 16.42 ms 16.40 ms -0.02 ms (-0.12%) 1.00%
transfer_no_resume_1.3_no_crypto 12.09 ms 12.08 ms -0.01 ms (-0.10%) 1.12%
handshake_session_id_aws_lc_rs_1.3_rsa_aes 7.29 ms 7.28 ms -0.01 ms (-0.09%) 1.25%
transfer_no_resume_ring_1.3_rsa_chacha 13.77 ms 13.76 ms -0.01 ms (-0.09%) 1.28%
handshake_no_resume_aws_lc_rs_1.2_rsa_aes 1.04 ms 1.04 ms 0.00 ms (0.07%) 1.00%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_aes 1.20 ms 1.20 ms -0.00 ms (-0.07%) 1.00%
handshake_no_resume_ring_1.3_ecdsap256_chacha 450.04 µs 449.76 µs -0.28 µs (-0.06%) 2.09%
handshake_no_resume_ring_1.3_ecdsap256_aes 461.30 µs 461.02 µs -0.28 µs (-0.06%) 1.98%
handshake_no_resume_aws_lc_rs_1.3_rsa_chacha 1.14 ms 1.14 ms -0.00 ms (-0.05%) 1.00%
handshake_tickets_aws_lc_rs_1.3_ecdsap256_aes 6.88 ms 6.88 ms -0.00 ms (-0.05%) 1.41%
handshake_no_resume_aws_lc_rs_1.3_ecdsap256_chacha 501.78 µs 501.65 µs -0.12 µs (-0.02%) 2.16%
handshake_tickets_aws_lc_rs_1.3_ecdsap384_aes 7.54 ms 7.54 ms -0.00 ms (-0.02%) 1.33%
handshake_no_resume_aws_lc_rs_1.3_rsa_aes 1.13 ms 1.13 ms -0.00 ms (-0.02%) 1.00%
handshake_tickets_aws_lc_rs_1.3_rsa_aes 7.49 ms 7.49 ms -0.00 ms (-0.01%) 1.31%
handshake_no_resume_aws_lc_rs_1.3_ecdsap384_chacha 1.18 ms 1.18 ms -0.00 ms (-0.01%) 1.00%

Memory usage

Key:

  • ∑: sum usage for entire benchmark run
  • 🔝: peak usage
  • B: bytes
  • a: allocations

Significant differences

⚠️ There are significant memory usage differences

Click to expand
Scenario Baseline Candidate Diff Threshold
handshake_no_resume_aws_lc_rs_1.3_rsa_chacha_server ∑ 445325B 706a
🔝 196344B 230a
∑ 446317B 713a
🔝 196344B 230a
⚠️ ∑ +992B +7a
🔝 +0B +0a (0.22%)
0.10%

Additional information

Historical results

Checkout details:

@djc
djc force-pushed the depub branch 7 times, most recently from 33c9c15 to c1b5e44 Compare June 17, 2026 14:54
@codecov

codecov Bot commented Jun 17, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 97.48744% with 5 lines in your changes missing coverage. Please review.
✅ Project coverage is 93.27%. Comparing base (95410c3) to head (9e53925).
⚠️ Report is 191 commits behind head on main.

Files with missing lines Patch % Lines
rustls/src/msgs/deframer/buffers.rs 71.42% 2 Missing ⚠️
rustls/src/vecbuf.rs 87.50% 2 Missing ⚠️
rustls/src/conn/send.rs 87.50% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3090      +/-   ##
==========================================
+ Coverage   93.16%   93.27%   +0.11%     
==========================================
  Files          98       98              
  Lines       22369    22329      -40     
  Branches      641      641              
==========================================
- Hits        20839    20827      -12     
+ Misses       1382     1354      -28     
  Partials      148      148              

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@djc
djc marked this pull request as draft June 17, 2026 15:21
@djc
djc force-pushed the depub branch 2 times, most recently from 2931cd2 to d696a97 Compare June 17, 2026 15:41

@ctz ctz left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

depub probably ought to operate on code/tokens rather than with sed-like blind textual replacement

Comment thread rustls/src/client/ech.rs
{
debug!(
"selected ECH config ID {:?} suite {:?} public_name {:?}",
"selected ECH config ID {:?} suite {:?} lic_name {:?}",

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

seems like a bad change

/// Convert a public key and algorithm identifier into [`SubjectPublicKeyInfoDer`].
///
/// In the returned encoding, `alg_id` is used as the `algorithm` field, and `public_key` is
/// In the returned encoding, `alg_id` is used as the `algorithm` field, and `lic_key` is

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

bad change

///
/// Custom implementations should complete the key exchange by calling
/// `kx.complete(peer_pub_key)` and then using this as the input keying material to
/// `kx.complete(peer__key)` and then using this as the input keying material to

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

bad change

Comment thread rustls/src/msgs/macros.rs
///
/// ```no_compile
#[doc = concat!("pub const MyValue: ", stringify!($struct_name), " = ", stringify!($struct_name), "(123);")]
#[doc = concat!(" const MyValue: ", stringify!($struct_name), " = ", stringify!($struct_name), "(123);")]

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

doesn't seem well-motivated

Comment thread rustls/src/msgs/macros.rs
/// Remove the extension identified by `typ` from `self`.
#[allow(dead_code)]
pub(crate) fn clear(&mut self, typ: ExtensionType) {
fn clear(&mut self, typ: ExtensionType) {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

whitespace


/// Return true if there are no certificates.
pub fn is_empty(&self) -> bool {
pub(super) fn is_empty(&self) -> bool {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

public API

Comment thread rustls/src/lib.rs

/// APIs abstracting over locking primitives.
pub mod lock;
mod lock;

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

public API

Comment thread rustls/src/lock.rs
@@ -1,18 +1,17 @@
pub use std_lock::*;
pub(super) use std_lock::*;

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

probably revert this entire file

Comment thread rustls/src/suites.rs
///
/// This means all the constituent parts that do cryptography return `true` for `fips()`.
pub fn fips(&self) -> FipsStatus {
pub(super) fn fips(&self) -> FipsStatus {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

public API

Comment thread rustls/src/versions.rs
TLS13(&'static Tls13Version),
}

impl SupportedProtocolVersion {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

public API

@djc

djc commented Jun 19, 2026

Copy link
Copy Markdown
Member Author

depub probably ought to operate on code/tokens rather than with sed-like blind textual replacement

Yeah -- I already reverted a bunch of these cases. In the meantime, this will hopefully help:

tgeoghegan added a commit to tgeoghegan/rustls that referenced this pull request Aug 31, 2026
The DTLS 1.3 AAD consists of the encoded unified header, which is very different
from DTLS 1.2 or TLS 1.3 [1]. This requires plumbing that unified header all the
way into the record layer DecryptionState, which would take some dramatic
refactoring. For now, we hack around the issue by making it behave like TLS 1.3,
forcing content type to ApplicationData.

All this will require some beefy refactoring of the crypto providers along the
lines of what I proposed in that issue, maybe rustls#3090.

We should also get rid of the ContentType::Dtls13Ciphertext variant. Instead we
should probably be using whatever the content type in a deprotected record is.

[1]: https://datatracker.ietf.org/doc/html/draft-ietf-tls-rfc9147bis-02#section-4-16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants