Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

publish libs to crates.io on release tags #1142

Merged
merged 1 commit into from
Sep 2, 2024

Conversation

plebhash
Copy link
Collaborator

@plebhash plebhash commented Aug 23, 2024

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:

  • once new release tags are added
  • via manual trigger

Copy link
Contributor

@jbesraa jbesraa left a comment

Choose a reason for hiding this comment

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

@plebhash plebhash changed the title publish libs to crates.io on manual trigger publish libs to crates.io on release Aug 26, 2024
@plebhash plebhash changed the title publish libs to crates.io on release publish libs to crates.io on release tags Aug 27, 2024
@plebhash plebhash changed the base branch from dev to main August 28, 2024 12:23
@plebhash plebhash force-pushed the release-libs-manual-trigger branch 2 times, most recently from 462714d to 13abac4 Compare August 28, 2024 16:28
@plebhash
Copy link
Collaborator Author

plebhash commented Aug 28, 2024

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:

# This workflow is used to publish SV2 crates to crates.io
# The workflow tries to update all the library crates, so if a crate is not to updated, the step will fail
# for that each step have continue-on-error set to true.
# Since each step can fail, the output ot the action must be manually checked to make sure that all
# the library intended to be published are published.
# Running cargo release in the various workspace help to prepare the version number and everything.
# ATTENTION
# Is very important to check the output manually cause when too many crates are updated crates.io could fail
# and ask to rerun the action later

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.

@plebhash plebhash force-pushed the release-libs-manual-trigger branch 3 times, most recently from a1b1167 to c7916d0 Compare August 30, 2024 12:54
@stratum-mining stratum-mining deleted a comment from github-actions bot Sep 2, 2024
@stratum-mining stratum-mining deleted a comment from github-actions bot Sep 2, 2024
@stratum-mining stratum-mining deleted a comment from github-actions bot Sep 2, 2024
@stratum-mining stratum-mining deleted a comment from github-actions bot Sep 2, 2024
Copy link
Contributor

github-actions bot commented Sep 2, 2024

🐰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

Copy link
Contributor

github-actions bot commented Sep 2, 2024

🐰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

Copy link
Contributor

github-actions bot commented Sep 2, 2024

🐰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

Copy link
Contributor

github-actions bot commented Sep 2, 2024

🐰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

@plebhash plebhash merged commit e257971 into stratum-mining:main Sep 2, 2024
34 checks passed
@plebhash plebhash deleted the release-libs-manual-trigger branch September 2, 2024 14:07
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.

3 participants