stratum-mining / stratum

stratum
https://stratumprotocol.org
Other
208 stars 124 forks source link

publish libs to `crates.io` on release tags #1142

Closed plebhash closed 3 weeks ago

plebhash commented 1 month ago

currently, release-libs.yaml will publish the libs to crates.io every time we merge to main, which is the main event for releases

with the new conventions proposed in #1124, we want to avoid that, since not every merge to main will be a release

this PR makes release-libs.yaml only be able to run:

plebhash commented 1 month ago

during the review of #1143, @jbesraa asked:

... why do we have continue-on-error ? if one crate does not update while other crates depend on it, and those update, this can break things. is it possible to publish all crates in a single atomic command?

on the header of release-libs.yaml, we have: https://github.com/stratum-mining/stratum/blob/76659580fddfa909aabaaffa5d610b2d12b2091f/.github/workflows/release-libs.yaml#L1-L9

I believe those notes were originally written by @Fi3 .

The part that really gets my attention is:

when too many crates are updated crates.io could fail and ask to rerun the action later

@Fi3 have you ever seen this happen in practice? Or did you read this information somewhere?

Anyways, if that is the case, I think that we should also have a workflow_dispatch for manually triggering the workflow in case of failure.

github-actions[bot] commented 3 weeks ago

🐰Bencher

ReportMon, September 2, 2024 at 13:27:14 UTC
ProjectStratum V2 (SRI)
Branchrelease-libs-manual-trigger
Testbedsv2
Click to view all benchmark results
BenchmarkEstimated CyclesEstimated Cycles Results
estimated cycles | (Δ%)
Estimated Cycles Upper Boundary
estimated cycles | (%)
InstructionsInstructions Results
instructions | (Δ%)
Instructions Upper Boundary
instructions | (%)
L1 AccessesL1 Accesses Results
accesses | (Δ%)
L1 Accesses Upper Boundary
accesses | (%)
L2 AccessesL2 Accesses Results
accesses | (Δ%)
L2 Accesses Upper Boundary
accesses | (%)
RAM AccessesRAM Accesses Results
accesses | (Δ%)
RAM Accesses Upper Boundary
accesses | (%)
client_sv2_handle_message_common✅ (view plot)2,057.00 (-0.47%)2,147.88 (95.77%)✅ (view plot)473.00 (+0.34%)483.88 (97.75%)✅ (view plot)737.00 (+0.51%)752.17 (97.98%)✅ (view plot)5.00 (-19.17%)12.17 (41.07%)✅ (view plot)37.00 (-0.58%)39.46 (93.77%)
client_sv2_handle_message_mining✅ (view plot)8,146.00 (-0.69%)8,312.60 (98.00%)✅ (view plot)2,137.00 (+0.22%)2,167.14 (98.61%)✅ (view plot)3,166.00 (+0.42%)3,208.97 (98.66%)✅ (view plot)30.00 (-18.35%)43.15 (69.53%)✅ (view plot)138.00 (-0.74%)141.49 (97.54%)
client_sv2_mining_message_submit_standard✅ (view plot)6,209.00 (-1.12%)6,377.52 (97.36%)✅ (view plot)1,750.00 (-0.01%)1,761.99 (99.32%)✅ (view plot)2,554.00 (+0.02%)2,572.25 (99.29%)✅ (view plot)17.00 (-1.73%)22.81 (74.52%)✅ (view plot)102.00 (-1.90%)106.65 (95.64%)
client_sv2_mining_message_submit_standard_serialize✅ (view plot)14,632.00 (-0.90%)14,976.25 (97.70%)✅ (view plot)4,694.00 (-0.00%)4,705.99 (99.75%)✅ (view plot)6,762.00 (+0.08%)6,774.08 (99.82%)✅ (view plot)41.00 (-9.08%)52.34 (78.33%)✅ (view plot)219.00 (-1.52%)228.33 (95.92%)
client_sv2_mining_message_submit_standard_serialize_deserialize✅ (view plot)27,486.00 (-0.07%)27,791.66 (98.90%)✅ (view plot)10,585.00 (+0.23%)10,608.99 (99.77%)✅ (view plot)15,406.00 (+0.25%)15,437.08 (99.80%)✅ (view plot)78.00 (-4.93%)88.21 (88.42%)✅ (view plot)334.00 (-0.32%)343.09 (97.35%)
client_sv2_open_channel✅ (view plot)4,337.00 (-2.29%)4,605.09 (94.18%)✅ (view plot)1,461.00 (+0.05%)1,471.62 (99.28%)✅ (view plot)2,162.00 (+0.31%)2,173.20 (99.48%)✅ (view plot)8.00 (-25.10%)15.78 (50.71%)✅ (view plot)61.00 (-4.26%)68.19 (89.46%)
client_sv2_open_channel_serialize✅ (view plot)13,924.00 (-1.57%)14,410.94 (96.62%)✅ (view plot)5,064.00 (+0.02%)5,074.62 (99.79%)✅ (view plot)7,334.00 (+0.17%)7,341.11 (99.90%)✅ (view plot)30.00 (-15.26%)41.20 (72.82%)✅ (view plot)184.00 (-3.12%)197.32 (93.25%)
client_sv2_open_channel_serialize_deserialize✅ (view plot)22,589.00 (-0.24%)22,934.69 (98.49%)✅ (view plot)8,027.00 (+0.31%)8,048.71 (99.73%)✅ (view plot)11,679.00 (+0.33%)11,709.56 (99.74%)✅ (view plot)75.00 (+1.82%)81.94 (91.53%)✅ (view plot)301.00 (-0.94%)312.04 (96.46%)
client_sv2_setup_connection✅ (view plot)4,635.00 (-1.12%)4,753.88 (97.50%)✅ (view plot)1,502.00 (+0.05%)1,512.62 (99.30%)✅ (view plot)2,280.00 (+0.14%)2,295.00 (99.35%)✅ (view plot)9.00 (-4.28%)14.14 (63.67%)✅ (view plot)66.00 (-2.27%)69.43 (95.06%)
client_sv2_setup_connection_serialize✅ (view plot)16,102.00 (-0.71%)16,434.50 (97.98%)✅ (view plot)5,963.00 (+0.01%)5,973.62 (99.82%)✅ (view plot)8,667.00 (+0.10%)8,679.47 (99.86%)✅ (view plot)38.00 (-10.21%)51.41 (73.91%)✅ (view plot)207.00 (-1.38%)215.73 (95.95%)
client_sv2_setup_connection_serialize_deserialize✅ (view plot)35,548.00 (+0.01%)35,709.81 (99.55%)✅ (view plot)14,855.00 (+0.17%)14,877.13 (99.85%)✅ (view plot)21,823.00 (+0.19%)21,861.45 (99.82%)✅ (view plot)92.00 (-3.27%)110.82 (83.02%)✅ (view plot)379.00 (-0.16%)383.47 (98.83%)

Bencher - Continuous Benchmarking
View Public Perf Page
Docs | Repo | Chat | Help
github-actions[bot] commented 3 weeks ago

🐰Bencher

ReportMon, September 2, 2024 at 13:27:12 UTC
ProjectStratum V2 (SRI)
Branchrelease-libs-manual-trigger
Testbedsv2

🚨 1 ALERT: Threshold Boundary Limit exceeded!
BenchmarkMeasure (units)ViewValueLower BoundaryUpper Boundary
client_sv2_mining_message_submit_standardLatency (nanoseconds (ns))🚨 (view plot | view alert)14.71 (+0.35%)14.71 (100.00%)

Click to view all benchmark results
BenchmarkLatencyLatency Results
nanoseconds (ns) | (Δ%)
Latency Upper Boundary
nanoseconds (ns) | (%)
client_sv2_handle_message_common✅ (view plot)44.00 (-1.44%)45.64 (96.40%)
client_sv2_handle_message_mining✅ (view plot)74.45 (+0.69%)82.68 (90.05%)
client_sv2_mining_message_submit_standard🚨 (view plot | view alert)14.71 (+0.35%)14.71 (100.00%)
client_sv2_mining_message_submit_standard_serialize✅ (view plot)260.91 (-2.15%)284.33 (91.76%)
client_sv2_mining_message_submit_standard_serialize_deserialize✅ (view plot)583.85 (-1.69%)627.18 (93.09%)
client_sv2_open_channel✅ (view plot)170.56 (+2.85%)171.77 (99.29%)
client_sv2_open_channel_serialize✅ (view plot)268.44 (-4.56%)295.07 (90.98%)
client_sv2_open_channel_serialize_deserialize✅ (view plot)380.07 (+0.62%)425.01 (89.43%)
client_sv2_setup_connection✅ (view plot)158.50 (-2.94%)174.46 (90.85%)
client_sv2_setup_connection_serialize✅ (view plot)471.71 (+0.27%)520.07 (90.70%)
client_sv2_setup_connection_serialize_deserialize✅ (view plot)1,020.30 (+3.63%)1,074.42 (94.96%)

Bencher - Continuous Benchmarking
View Public Perf Page
Docs | Repo | Chat | Help
github-actions[bot] commented 3 weeks ago

🐰Bencher

ReportMon, September 2, 2024 at 13:27:10 UTC
ProjectStratum V2 (SRI)
Branchrelease-libs-manual-trigger
Testbedsv1

🚨 2 ALERTS: Threshold Boundary Limits exceeded!
BenchmarkMeasure (units)ViewValueLower BoundaryUpper Boundary
serialize_deserialize_authorizeEstimated Cycles (estimated cycles)🚨 (view plot | view alert)24,897.00 (+1.37%)24,864.72 (100.13%)
serialize_deserialize_authorizeRAM Accesses (accesses)🚨 (view plot | view alert)306.00 (+2.85%)305.11 (100.29%)

Click to view all benchmark results
BenchmarkEstimated CyclesEstimated Cycles Results
estimated cycles | (Δ%)
Estimated Cycles Upper Boundary
estimated cycles | (%)
InstructionsInstructions Results
instructions | (Δ%)
Instructions Upper Boundary
instructions | (%)
L1 AccessesL1 Accesses Results
accesses | (Δ%)
L1 Accesses Upper Boundary
accesses | (%)
L2 AccessesL2 Accesses Results
accesses | (Δ%)
L2 Accesses Upper Boundary
accesses | (%)
RAM AccessesRAM Accesses Results
accesses | (Δ%)
RAM Accesses Upper Boundary
accesses | (%)
get_authorize✅ (view plot)8,511.00 (+0.90%)8,681.62 (98.03%)✅ (view plot)3,772.00 (+0.70%)3,843.36 (98.14%)✅ (view plot)5,296.00 (+0.81%)5,386.97 (98.31%)✅ (view plot)6.00 (-18.88%)10.11 (59.33%)✅ (view plot)91.00 (+1.29%)93.35 (97.48%)
get_submit✅ (view plot)95,408.00 (-0.10%)96,022.31 (99.36%)✅ (view plot)59,522.00 (+0.09%)59,707.10 (99.69%)✅ (view plot)85,508.00 (+0.11%)85,744.42 (99.72%)✅ (view plot)48.00 (-3.56%)64.49 (74.43%)✅ (view plot)276.00 (-1.87%)287.54 (95.99%)
get_subscribe✅ (view plot)8,030.00 (+0.39%)8,253.80 (97.29%)✅ (view plot)2,848.00 (+0.48%)2,928.18 (97.26%)✅ (view plot)3,985.00 (+0.58%)4,086.87 (97.51%)✅ (view plot)11.00 (-20.36%)20.21 (54.42%)✅ (view plot)114.00 (+0.55%)117.48 (97.03%)
serialize_authorize✅ (view plot)12,294.00 (+0.45%)12,510.28 (98.27%)✅ (view plot)5,343.00 (+0.49%)5,414.36 (98.68%)✅ (view plot)7,459.00 (+0.58%)7,549.29 (98.80%)✅ (view plot)8.00 (-16.79%)13.21 (60.55%)✅ (view plot)137.00 (+0.41%)141.09 (97.10%)
serialize_deserialize_authorize🚨 (view plot | view alert)24,897.00 (+1.37%)24,864.72 (100.13%)✅ (view plot)9,920.00 (+0.23%)10,011.03 (99.09%)✅ (view plot)14,017.00 (+0.35%)14,133.22 (99.18%)✅ (view plot)34.00 (-5.32%)41.60 (81.74%)🚨 (view plot | view alert)306.00 (+2.85%)305.11 (100.29%)
serialize_deserialize_handle_authorize✅ (view plot)30,401.00 (+0.60%)30,502.82 (99.67%)✅ (view plot)12,097.00 (+0.04%)12,192.31 (99.22%)✅ (view plot)17,141.00 (+0.14%)17,256.98 (99.33%)✅ (view plot)55.00 (-4.70%)63.81 (86.20%)✅ (view plot)371.00 (+1.33%)373.58 (99.31%)
serialize_deserialize_handle_submit✅ (view plot)126,497.00 (+0.04%)126,974.87 (99.62%)✅ (view plot)73,363.00 (+0.13%)73,553.98 (99.74%)✅ (view plot)105,197.00 (+0.16%)105,436.49 (99.77%)✅ (view plot)109.00 (-3.29%)133.05 (81.93%)✅ (view plot)593.00 (-0.51%)601.81 (98.54%)
serialize_deserialize_handle_subscribe✅ (view plot)27,975.00 (+1.26%)28,152.53 (99.37%)✅ (view plot)9,666.00 (+0.26%)9,738.06 (99.26%)✅ (view plot)13,680.00 (+0.31%)13,770.47 (99.34%)✅ (view plot)59.00 (-9.01%)72.18 (81.74%)✅ (view plot)400.00 (+2.44%)404.11 (98.98%)
serialize_deserialize_submit✅ (view plot)115,445.00 (+0.26%)115,643.59 (99.83%)✅ (view plot)68,223.00 (+0.22%)68,347.82 (99.82%)✅ (view plot)97,935.00 (+0.26%)98,087.24 (99.84%)✅ (view plot)65.00 (-0.27%)76.60 (84.85%)✅ (view plot)491.00 (+0.27%)495.51 (99.09%)
serialize_deserialize_subscribe✅ (view plot)23,435.00 (+1.67%)23,566.60 (99.44%)✅ (view plot)8,225.00 (+0.36%)8,293.09 (99.18%)✅ (view plot)11,590.00 (+0.40%)11,677.78 (99.25%)✅ (view plot)38.00 (-0.80%)43.09 (88.19%)✅ (view plot)333.00 (+3.00%)336.31 (99.02%)
serialize_submit✅ (view plot)99,801.00 (-0.09%)100,378.16 (99.43%)✅ (view plot)61,566.00 (+0.09%)61,754.76 (99.69%)✅ (view plot)88,351.00 (+0.11%)88,594.85 (99.72%)✅ (view plot)50.00 (-1.87%)63.67 (78.53%)✅ (view plot)320.00 (-1.60%)330.87 (96.72%)
serialize_subscribe✅ (view plot)11,371.00 (-0.05%)11,648.43 (97.62%)✅ (view plot)4,195.00 (+0.32%)4,275.18 (98.12%)✅ (view plot)5,841.00 (+0.38%)5,943.90 (98.27%)✅ (view plot)14.00 (-3.55%)19.51 (71.77%)✅ (view plot)156.00 (-0.45%)162.03 (96.28%)

Bencher - Continuous Benchmarking
View Public Perf Page
Docs | Repo | Chat | Help
github-actions[bot] commented 3 weeks ago

🐰Bencher

ReportMon, September 2, 2024 at 13:27:10 UTC
ProjectStratum V2 (SRI)
Branch1142/merge
Testbedsv1

🚨 2 ALERTS: Threshold Boundary Limits exceeded!
BenchmarkMeasure (units)ViewValueLower BoundaryUpper Boundary
client-sv1-subscribe-serialize-deserialize/client-sv1-subscribe-serialize-deserializeLatency (nanoseconds (ns))🚨 (view plot | view alert)656.40 (+6.11%)646.52 (101.53%)
client-sv1-subscribe-serialize/client-sv1-subscribe-serializeLatency (nanoseconds (ns))🚨 (view plot | view alert)225.58 (+8.47%)220.07 (102.50%)

Click to view all benchmark results
BenchmarkLatencyLatency Results
nanoseconds (ns) | (Δ%)
Latency Upper Boundary
nanoseconds (ns) | (%)
client-submit-serialize✅ (view plot)7,105.40 (+3.88%)7,281.45 (97.58%)
client-submit-serialize-deserialize✅ (view plot)8,202.20 (+5.29%)8,273.02 (99.14%)
client-submit-serialize-deserialize-handle/client-submit-serialize-deserialize-handle✅ (view plot)8,682.40 (+3.75%)8,788.93 (98.79%)
client-sv1-authorize-serialize-deserialize-handle/client-sv1-authorize-serialize-deserialize-handle✅ (view plot)930.20 (+2.63%)943.25 (98.62%)
client-sv1-authorize-serialize-deserialize/client-sv1-authorize-serialize-deserialize✅ (view plot)732.68 (+3.81%)736.25 (99.51%)
client-sv1-authorize-serialize/client-sv1-authorize-serialize✅ (view plot)246.00 (-1.28%)255.97 (96.10%)
client-sv1-get-authorize/client-sv1-get-authorize✅ (view plot)157.44 (+0.05%)162.42 (96.94%)
client-sv1-get-submit✅ (view plot)6,867.50 (+3.76%)7,043.09 (97.51%)
client-sv1-get-subscribe/client-sv1-get-subscribe✅ (view plot)277.73 (+0.34%)291.66 (95.22%)
client-sv1-subscribe-serialize-deserialize-handle/client-sv1-subscribe-serialize-deserialize-handle✅ (view plot)784.67 (+3.66%)794.96 (98.71%)
client-sv1-subscribe-serialize-deserialize/client-sv1-subscribe-serialize-deserialize🚨 (view plot | view alert)656.40 (+6.11%)646.52 (101.53%)
client-sv1-subscribe-serialize/client-sv1-subscribe-serialize🚨 (view plot | view alert)225.58 (+8.47%)220.07 (102.50%)

Bencher - Continuous Benchmarking
View Public Perf Page
Docs | Repo | Chat | Help