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

DO NOT MERGE #563

Merged
merged 704 commits into from
Jan 26, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
704 commits
Select commit Hold shift + click to select a range
6da2a19
MG test fix
GitGab19 Nov 6, 2023
61d3ffa
Merge pull request #663 from GitGab19/last-fix
Fi3 Nov 6, 2023
1f5ee1e
Use Release instead of Relaxed how indicated by the comment in main
UnidenifiedUser Nov 6, 2023
703aca1
Fix JDC use correct template id for internal matcing of templates and…
UnidenifiedUser Nov 6, 2023
458d0db
Fix clippy
UnidenifiedUser Nov 6, 2023
129fb41
Fix deadlock network-helpers noise
UnidenifiedUser Nov 6, 2023
7da072b
Merge pull request #664 from Fi3/MinorFixJDC
Fi3 Nov 6, 2023
d9eb45b
rust-analyzer fix for bip32-derivation in utils
GitGab19 Nov 6, 2023
00f10cd
ping message from tProxy removal
GitGab19 Nov 6, 2023
1b9e1ed
fmt fix
GitGab19 Nov 6, 2023
7e52a23
original test restored (diff management)
GitGab19 Nov 6, 2023
96779ed
Merge pull request #665 from GitGab19/translator-ping-removal
Fi3 Nov 7, 2023
816db1a
clean_jobs fix
GitGab19 Nov 7, 2023
6b5f26a
cleanup
GitGab19 Nov 7, 2023
37613b3
Merge pull request #666 from GitGab19/fix-translator-clean-jobs
Fi3 Nov 8, 2023
cd6a367
add tarpaulin.toml
plebhash Nov 11, 2023
a975fdc
Fix Sv2 Messages parser
UnidenifiedUser Nov 13, 2023
21895c3
Merge pull request #669 from Fi3/FixSv2MessageParser
Fi3 Nov 13, 2023
ea57c4e
Fix remove possible panic from the sv2 binary codec
UnidenifiedUser Nov 15, 2023
53ceff8
Fix MG test
UnidenifiedUser Nov 15, 2023
cf7b487
Merge pull request #671 from Fi3/FixDecoderPanic
Fi3 Nov 15, 2023
a575762
Add logic for update channels
UnidenifiedUser Nov 15, 2023
e1987ef
Delete roles/pool/pool-config.toml
Fi3 Nov 15, 2023
2b89fd5
Merge pull request #672 from Fi3/AddPoolLogicForUpdatedChannel
Fi3 Nov 15, 2023
ab01867
Merge pull request #670 from plebhash/tarpaulin.toml
Fi3 Nov 16, 2023
6b40174
add test for update_miner_hashrate
lorbax Nov 9, 2023
7d8b63f
fix division by zero and error management
lorbax Nov 6, 2023
3561dc6
format and fix rust tests
lorbax Nov 10, 2023
e1552fe
changed signatures of functions
lorbax Nov 13, 2023
520812d
back to old signature
lorbax Nov 16, 2023
0e88e2a
checking functions' calls
lorbax Nov 16, 2023
f913d45
increased time before MG tests fail
lorbax Nov 16, 2023
3370b60
tProxy difficulty adjustments fix
GitGab19 Nov 16, 2023
4b979d1
Merge branch 'stratum-mining:dev' into dev
GitGab19 Nov 16, 2023
c11aa53
fmt fix
GitGab19 Nov 16, 2023
d560901
clippy fix
GitGab19 Nov 16, 2023
9a14d81
last test fixes
GitGab19 Nov 17, 2023
0126ff6
Fix JDC, exit process on TP error
UnidenifiedUser Nov 17, 2023
7f948f5
avoid calling hash_rate_from_target function
GitGab19 Nov 17, 2023
a9ce5bf
Fix const value
UnidenifiedUser Nov 17, 2023
98ec6a7
new way to manage set_diff TESTING
GitGab19 Nov 17, 2023
524cd7d
Merge pull request #674 from Fi3/FixTerminateJdcOnTPErrors
Fi3 Nov 17, 2023
7e9c6b4
fix tests
lorbax Nov 16, 2023
c483ce5
cleaning
lorbax Nov 18, 2023
518d4dd
Merge commit 'refs/pull/675/head' of https://github.com/stratum-minin…
GitGab19 Nov 19, 2023
dc92231
integration of function correcte by Lorban
GitGab19 Nov 19, 2023
652f4ec
fmt fix
GitGab19 Nov 19, 2023
c7aec5b
test fix
GitGab19 Nov 19, 2023
99713f7
fmt & clippy fix
GitGab19 Nov 19, 2023
40a204e
test fix
GitGab19 Nov 20, 2023
931313f
fmt fix
GitGab19 Nov 20, 2023
7207354
Merge branch 'stratum-mining:dev' into dev
GitGab19 Nov 20, 2023
117b5de
add test for update_miner_hashrate
lorbax Nov 9, 2023
1115620
fix division by zero and error management
lorbax Nov 6, 2023
dcec920
format and fix rust tests
lorbax Nov 10, 2023
5029bf5
changed signatures of functions
lorbax Nov 13, 2023
f1bfd06
back to old signature
lorbax Nov 16, 2023
42b01b4
checking functions' calls
lorbax Nov 16, 2023
dd8c8a4
increased time before MG tests fail
lorbax Nov 16, 2023
48e9645
fix tests
lorbax Nov 16, 2023
bca9d05
cleaning
lorbax Nov 18, 2023
caddfb1
remove prints
GitGab19 Nov 21, 2023
25a1ed0
clippy fix
GitGab19 Nov 21, 2023
604adde
test fix
GitGab19 Nov 21, 2023
d4608d3
Renamed error
lorbax Nov 21, 2023
56d81ea
new way to manage set_diff TESTING
GitGab19 Nov 17, 2023
97ac786
test fix
GitGab19 Nov 19, 2023
e3256ca
remove prints
GitGab19 Nov 21, 2023
8b1086c
tProxy difficulty adjustments fix
GitGab19 Nov 16, 2023
b8cea7b
fmt fix
GitGab19 Nov 16, 2023
6e4a66a
clippy fix
GitGab19 Nov 16, 2023
bec9261
last test fixes
GitGab19 Nov 17, 2023
ce26dc0
new way to manage set_diff TESTING
GitGab19 Nov 17, 2023
b006666
cleaning
lorbax Nov 18, 2023
b222fa8
fmt fix
GitGab19 Nov 19, 2023
cfee789
test fix
GitGab19 Nov 19, 2023
465d688
fmt & clippy fix
GitGab19 Nov 19, 2023
fc9d5ce
test fix
GitGab19 Nov 20, 2023
059e9aa
remove prints
GitGab19 Nov 21, 2023
aaf5719
test fix
GitGab19 Nov 21, 2023
667258e
new way to manage set_diff TESTING
GitGab19 Nov 17, 2023
feb6b8f
test fix
GitGab19 Nov 19, 2023
2a31417
remove prints
GitGab19 Nov 21, 2023
7c1ba08
Merge branch 'dev' of https://github.com/GitGab19/stratum into dev
GitGab19 Nov 22, 2023
2c98b45
fmt + minor fixes
GitGab19 Nov 22, 2023
3ea3957
fix MG test
GitGab19 Nov 22, 2023
375b694
MG retried
GitGab19 Nov 22, 2023
7fbd560
MG test fix
GitGab19 Nov 22, 2023
410b0d3
diff_mgmt test fix
GitGab19 Nov 22, 2023
b24a1b0
last changes requested by Fi3 review
GitGab19 Nov 23, 2023
236a6d9
f32 to f64 in utils functions
GitGab19 Nov 23, 2023
e83a3fc
fmt
GitGab19 Nov 23, 2023
d35a207
last fixes
GitGab19 Nov 23, 2023
46aee1a
test fix
GitGab19 Nov 23, 2023
7d6b29c
fmt
GitGab19 Nov 23, 2023
d43081e
test_diff_mgmt fix
GitGab19 Nov 23, 2023
b5ba956
print in test (to debug)
GitGab19 Nov 23, 2023
63c1fb1
retry
GitGab19 Nov 23, 2023
0aecd39
remove print
GitGab19 Nov 23, 2023
2af3929
test
GitGab19 Nov 23, 2023
c1197a2
fmt
GitGab19 Nov 23, 2023
004f8df
latest fix
GitGab19 Nov 23, 2023
5c799c4
Merge pull request #673 from GitGab19/dev
Fi3 Nov 23, 2023
ae81201
updated timestamp added in min_ntime field
GitGab19 Nov 24, 2023
4bc1374
fmt
GitGab19 Nov 24, 2023
e175051
print added into test to better understand
GitGab19 Nov 24, 2023
2c491c7
test changes in test_diff_management
GitGab19 Nov 24, 2023
f8263ae
remove prints from code
GitGab19 Nov 24, 2023
88d4ad9
Merge pull request #678 from GitGab19/fix-outdated-timestamp
Fi3 Nov 24, 2023
d995af9
pass in message to Sv2Error::PayloadTooBig variant
plebhash Nov 23, 2023
aaf4568
Merge branch 'dev' into ffi-payloadtoobig
plebhash Nov 25, 2023
188a990
replace String with *const c_char
plebhash Nov 25, 2023
acf902f
add PayloadTooBig_Body to sv2.h
plebhash Nov 25, 2023
96878ea
replace *const c_char with CVec
plebhash Nov 26, 2023
38d3aaa
fix clippy warning on naive call to drop()
plebhash Nov 26, 2023
631887c
Add update downstream target for pool channel factory
UnidenifiedUser Nov 26, 2023
b0eb6db
Merge pull request #683 from Fi3/AddUpdateDownstreamTargetForPoolChannel
Fi3 Nov 26, 2023
9ee87ec
Fix diff managmnent
UnidenifiedUser Nov 28, 2023
6b6069e
Remove prints
UnidenifiedUser Nov 28, 2023
0c7196a
fmt
UnidenifiedUser Nov 28, 2023
6f9ae42
clippy
UnidenifiedUser Nov 28, 2023
4885548
fix roles CLI
plebhash Nov 30, 2023
09fc85c
Fix diff managment tests
UnidenifiedUser Dec 7, 2023
1007e9e
Fix pool and jdc channel diff management
UnidenifiedUser Dec 7, 2023
47b4bf1
Fix protocols fuzz tests
UnidenifiedUser Dec 8, 2023
3dab6a8
Fix JDC must not try to send message to bitcoind when no connection
UnidenifiedUser Dec 8, 2023
f6b97cb
Remove reduntant test
UnidenifiedUser Dec 8, 2023
0324011
Hosted VPS IP updated
GitGab19 Dec 8, 2023
c9b0196
Fix mg test
UnidenifiedUser Dec 11, 2023
90ce77c
Fix MG test
UnidenifiedUser Dec 11, 2023
b035e86
Fix script MG executor
UnidenifiedUser Dec 11, 2023
15b2c20
Fix network-helpers close connection on invalid messages
UnidenifiedUser Dec 11, 2023
b6ca394
Merge pull request #692 from Fi3/FixDiffManagment
Fi3 Dec 11, 2023
b3862ec
Merge pull request #679 from plebhash/ffi-payloadtoobig
Fi3 Dec 11, 2023
6e0c551
Merge pull request #689 from plebhash/fix-roles-CLI
Fi3 Dec 11, 2023
0c24cba
Merge branch 'stratum-mining:dev' into dev
GitGab19 Dec 11, 2023
91e721c
upstream update in translator FIX
GitGab19 Dec 11, 2023
e20b7a9
translator bin removal
GitGab19 Dec 11, 2023
26218e6
Merge pull request #693 from GitGab19/dev
Fi3 Dec 12, 2023
4592d85
Fix upstream target update in JDC
UnidenifiedUser Dec 12, 2023
a817a33
Merge pull request #699 from Fi3/FixJdcDiffManagment
Fi3 Dec 12, 2023
c7c7f06
Remove cypher negotiation
UnidenifiedUser Dec 12, 2023
9d2ebdc
Fix role runned without args should use default config
UnidenifiedUser Dec 13, 2023
518483c
Remove 2 bytes header from noise hanshake messages
UnidenifiedUser Dec 14, 2023
40d92d2
Update semantincs and value of SV2_FRAME_CHUNK_SIZE + fmt
UnidenifiedUser Dec 16, 2023
83ad511
Merge pull request #700 from Fi3/UpdateNoise
GitGab19 Dec 18, 2023
1b9c51d
Merge pull request #11 from stratum-mining/dev
GitGab19 Dec 18, 2023
2764dab
mv vendored to roles/jd-server
plebhash Dec 20, 2023
109c299
rm experimental
plebhash Dec 20, 2023
c1d8c61
split workspaces
plebhash Dec 20, 2023
7950d39
pool lib
plebhash Dec 21, 2023
45f06c8
jd-client lib
plebhash Dec 21, 2023
d222895
jd-server lib
plebhash Dec 22, 2023
04b2546
mining-proxy lib
plebhash Dec 22, 2023
3e54734
translator lib
plebhash Dec 22, 2023
afba4fe
fmt
plebhash Dec 24, 2023
c37f241
log: SubmitSolution instead of SubmitSharesSuccess
Sjors Dec 12, 2023
4f9a1f0
log: fix typo in target
Sjors Dec 12, 2023
6aad5df
Bumber rustc to 1.75, Add MSRV, Fix clippy and fmt
UnidenifiedUser Jan 3, 2024
b427c60
Remove async-trait
UnidenifiedUser Jan 3, 2024
6109bf1
Fix JDS, close connection when clien send invalid msg;Add MG test for it
UnidenifiedUser Jan 3, 2024
15934e0
Add some error log to the pool
UnidenifiedUser Jan 3, 2024
9c2a491
Add MG test for JDS
UnidenifiedUser Jan 3, 2024
19e8fa9
Fix coverage action
UnidenifiedUser Jan 3, 2024
9d04b66
Update errors.rs
Fi3 Jan 4, 2024
d5659cb
Merge pull request #710 from Fi3/AddMsrv
Fi3 Jan 4, 2024
023984b
Merge branch 'stratum-mining:dev' into dev
GitGab19 Jan 10, 2024
2476990
mv vendored to roles/jd-server
plebhash Dec 20, 2023
18deae0
rm experimental
plebhash Dec 20, 2023
090f0ef
split workspaces
plebhash Dec 20, 2023
44f8d14
adapt build_header.sh for new workspace structure
plebhash Jan 3, 2024
448d54c
adapt tarpaulin to workspace split
plebhash Jan 3, 2024
2b54078
adapt clippy CI to workspace split
plebhash Jan 3, 2024
e26f3a6
adapt fmt CI to workspace split
plebhash Jan 4, 2024
b94d31b
adapt tests CI to workspace split
plebhash Jan 4, 2024
bc22fb1
adapt MG tests CI to workspace split
plebhash Jan 4, 2024
1d1af89
adapt MG tests for workspace split
plebhash Jan 5, 2024
05200ef
fix clippy
plebhash Jan 5, 2024
fc86d45
adapt jds-do-not-fail-on-wrong-tsdatasucc.json for workspace split
plebhash Jan 5, 2024
13deabc
adapt jds-do-not-panic-if-jdc-close-connection.json for workspace split
plebhash Jan 5, 2024
4e062d1
lint workflows
plebhash Jan 6, 2024
b66442c
adapt message-generator-tests.sh for workspace-split
plebhash Jan 10, 2024
3f07a6a
Merge pull request #706 from plebhash/workspace-split
GitGab19 Jan 12, 2024
9cec29c
Merge branch 'stratum-mining:dev' into dev
GitGab19 Jan 12, 2024
8fbc4e5
Noise: update secp256k1 to v0.28.1
Sjors Jan 12, 2024
641d55b
Parse x-only pubkey for P2TR coinbase output
Sjors Dec 12, 2023
aeb350f
Merge branch 'dev' into roles-libs
plebhash Jan 14, 2024
a1cd30a
add Default implementation for pool SetupConnectionHandler
plebhash Jan 14, 2024
743d517
fix utils/Cargo.lock
plebhash Jan 14, 2024
e723e4f
fix super::MIN_EXTRANONCE_SIZE
plebhash Jan 14, 2024
a8c2fff
add roles/Cargo.lock
plebhash Jan 14, 2024
baf8d22
fmt
plebhash Jan 15, 2024
6b4af04
rename jdc config example
plebhash Jan 22, 2024
f1bb900
rename tproxy config example
plebhash Jan 22, 2024
3dcd85d
automatic diff management enhancement + fix #712
GitGab19 Jan 22, 2024
2fabdfe
invalid-job-id error added
GitGab19 Jan 22, 2024
08c49fb
fix
GitGab19 Jan 22, 2024
db91a87
readjust hashrate values for translator config examples
plebhash Jan 22, 2024
764ae99
'invalid-job-id' added into SubmitShares.Error doc
GitGab19 Jan 23, 2024
4100000
Fix issue #730
GitGab19 Jan 23, 2024
9251f0e
Mempool update timout management
GitGab19 Jan 23, 2024
6029ad7
fmt fix
GitGab19 Jan 23, 2024
88c7c41
clippy fix
GitGab19 Jan 23, 2024
12b3e05
MG fixes
GitGab19 Jan 23, 2024
e67a00e
panic if TP is not responding
GitGab19 Jan 23, 2024
efbd99f
rm roles/*/*-config.toml
plebhash Jan 23, 2024
bdd1064
fmt fixes
GitGab19 Jan 23, 2024
2519367
clippy fix
GitGab19 Jan 23, 2024
8346e17
explaing hashrate values on comments
plebhash Jan 23, 2024
f002d51
Merge pull request #718 from plebhash/roles-libs
Fi3 Jan 23, 2024
2fe8df7
Merge pull request #714 from Sjors/2024/01/noise-secp
Fi3 Jan 23, 2024
55a25fe
Merge pull request #696 from Sjors/2023/12/taproot
Fi3 Jan 23, 2024
2f034b3
Merge pull request #726 from plebhash/rename-config-examples
Fi3 Jan 23, 2024
bebb42b
Upgrade MG executor
UnidenifiedUser Jan 24, 2024
d953605
Add action to check fmt and clippy for MG
UnidenifiedUser Jan 24, 2024
1f7b5d1
Fix fmt
UnidenifiedUser Jan 24, 2024
9361775
Fix clippy
UnidenifiedUser Jan 24, 2024
d4aa07f
Fix clippy
UnidenifiedUser Jan 24, 2024
5ae22fb
Upadte MG test to use late_condition
UnidenifiedUser Jan 24, 2024
cffb5b8
Upgrade MG do not print lines with: unused manifest key
UnidenifiedUser Jan 24, 2024
583d23a
last changes
GitGab19 Jan 24, 2024
b1cbc95
Upgrade MG use tracing instead of println
UnidenifiedUser Jan 24, 2024
7234b99
Remove log file for MD
UnidenifiedUser Jan 24, 2024
1ae68e7
Fix clippy
UnidenifiedUser Jan 24, 2024
c51e49d
Minor fixes
UnidenifiedUser Jan 24, 2024
fd5d1b1
Merge pull request #731 from Fi3/UpgradeMgExecutor
Fi3 Jan 24, 2024
514ceb8
fix JDC stack overflow
plebhash Jan 18, 2024
9cf29e6
block/yield get_last_token based on self.allocated_tokens
plebhash Jan 19, 2024
8db76f8
automatic diff management enhancement + fix #712
GitGab19 Jan 22, 2024
798b842
invalid-job-id error added
GitGab19 Jan 22, 2024
d94fa27
fix
GitGab19 Jan 22, 2024
90158fa
'invalid-job-id' added into SubmitShares.Error doc
GitGab19 Jan 23, 2024
6362640
Fix issue #730
GitGab19 Jan 23, 2024
c365c88
Mempool update timout management
GitGab19 Jan 23, 2024
2c70690
fmt fix
GitGab19 Jan 23, 2024
180db6d
clippy fix
GitGab19 Jan 23, 2024
a14c364
MG fixes
GitGab19 Jan 23, 2024
788481b
panic if TP is not responding
GitGab19 Jan 23, 2024
78f5208
fmt fixes
GitGab19 Jan 23, 2024
e13d166
clippy fix
GitGab19 Jan 23, 2024
4b5f3df
last changes
GitGab19 Jan 24, 2024
b4f62d3
Merge branch 'dev' of https://github.com/GitGab19/stratum into dev
GitGab19 Jan 25, 2024
45010ab
Add mg test for jdc stack overflow
UnidenifiedUser Jan 25, 2024
b1f815b
last fixes
GitGab19 Jan 25, 2024
5c0799a
fix proxy config example pubkey
plebhash Jan 25, 2024
b6f1753
Merge pull request #2 from Fi3/AddMgTestJdcStackOverflow
plebhash Jan 25, 2024
50497c5
Merge pull request #720 from plebhash/fix-jdc-stack-overflow
Fi3 Jan 26, 2024
ddd51ec
Merge pull request #735 from plebhash/fix-proxy-config-example-pubkey
Fi3 Jan 26, 2024
22f43fe
last changes
GitGab19 Jan 26, 2024
cd3ab95
Merge pull request #733 from GitGab19/dev
Fi3 Jan 26, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
21 changes: 0 additions & 21 deletions .codecov.yaml

This file was deleted.

200 changes: 200 additions & 0 deletions .github/workflows/bencher.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,200 @@
name: Tracking benchmarks with Bencher

on:
workflow_run:
workflows: [Run and Cache Benchmarks]
types:
- completed

jobs:
track_sv1_criterion_with_bencher:
name: Track sv1 criterion benchmarks with Bencher
if: ${{ github.event.workflow_run.conclusion == 'success' }}
runs-on: ubuntu-latest
env:
BENCHER_PROJECT: stratum
BENCHER_API_TOKEN: ${{ secrets.BENCHER_API_TOKEN }}
BENCHER_ADAPTER: rust_criterion
BENCHER_TESTBED: sv1
BENCHMARK_RESULTS: criterion_sv1_benchmarks.txt
steps:
- name: Download Benchmark Results
uses: actions/github-script@v6
with:
script: |
let allArtifacts = await github.rest.actions.listWorkflowRunArtifacts({
owner: context.repo.owner,
repo: context.repo.repo,
run_id: context.payload.workflow_run.id,
});
let matchArtifact = allArtifacts.data.artifacts.filter((artifact) => {
return artifact.name == process.env.BENCHMARK_RESULTS
})[0];
let download = await github.rest.actions.downloadArtifact({
owner: context.repo.owner,
repo: context.repo.repo,
artifact_id: matchArtifact.id,
archive_format: 'zip',
});
let fs = require('fs');
fs.writeFileSync(`${process.env.GITHUB_WORKSPACE}/criterion_sv1_benchmarks.zip`, Buffer.from(download.data));

- name: Unzip Benchmark Results
run: unzip criterion_sv1_benchmarks.zip

- name: Setup Bencher
#uses: bencherdev/bencher@main
uses: baptiste0928/cargo-install@v2
with:
crate: bencher_cli
git: https://github.com/bencherdev/bencher
branch: devel

- name: Track Benchmarks with Bencher
run: |
cat criterion_sv1_benchmarks.txt | bencher run \
--github-actions ${{ secrets.GITHUB_TOKEN }}

track_sv2_criterion_with_bencher:
name: Track sv2 criterion benchmarks with Bencher
if: ${{ github.event.workflow_run.conclusion == 'success' }}
runs-on: ubuntu-latest
env:
BENCHER_PROJECT: stratum
BENCHER_API_TOKEN: ${{ secrets.BENCHER_API_TOKEN }}
BENCHER_ADAPTER: rust_criterion
BENCHER_TESTBED: sv2
BENCHMARK_RESULTS: criterion_sv2_benchmarks.txt
steps:
- name: Download Benchmark Results
uses: actions/github-script@v6
with:
script: |
let allArtifacts = await github.rest.actions.listWorkflowRunArtifacts({
owner: context.repo.owner,
repo: context.repo.repo,
run_id: context.payload.workflow_run.id,
});
let matchArtifact = allArtifacts.data.artifacts.filter((artifact) => {
return artifact.name == process.env.BENCHMARK_RESULTS
})[0];
let download = await github.rest.actions.downloadArtifact({
owner: context.repo.owner,
repo: context.repo.repo,
artifact_id: matchArtifact.id,
archive_format: 'zip',
});
let fs = require('fs');
fs.writeFileSync(`${process.env.GITHUB_WORKSPACE}/criterion_sv2_benchmarks.zip`, Buffer.from(download.data));

- name: Unzip Benchmark Results
run: unzip criterion_sv2_benchmarks.zip

- name: Setup Bencher
#uses: bencherdev/bencher@main
uses: baptiste0928/cargo-install@v2
with:
crate: bencher_cli
git: https://github.com/bencherdev/bencher
branch: devel

- name: Track Benchmarks with Bencher
run: |
cat criterion_sv2_benchmarks.txt | bencher run \
--github-actions ${{ secrets.GITHUB_TOKEN }}

track_sv1_iai_with_bencher:
name: Track sv1 iai benchmarks with Bencher
if: ${{ github.event.workflow_run.conclusion == 'success' }}
runs-on: ubuntu-latest
env:
BENCHER_PROJECT: stratum
BENCHER_API_TOKEN: ${{ secrets.BENCHER_API_TOKEN }}
BENCHER_ADAPTER: rust_iai
BENCHER_TESTBED: sv1
BENCHMARK_RESULTS: iai_sv1_benchmarks.txt
steps:
- name: Download Benchmark Results
uses: actions/github-script@v6
with:
script: |
let allArtifacts = await github.rest.actions.listWorkflowRunArtifacts({
owner: context.repo.owner,
repo: context.repo.repo,
run_id: context.payload.workflow_run.id,
});
let matchArtifact = allArtifacts.data.artifacts.filter((artifact) => {
return artifact.name == process.env.BENCHMARK_RESULTS
})[0];
let download = await github.rest.actions.downloadArtifact({
owner: context.repo.owner,
repo: context.repo.repo,
artifact_id: matchArtifact.id,
archive_format: 'zip',
});
let fs = require('fs');
fs.writeFileSync(`${process.env.GITHUB_WORKSPACE}/iai_sv1_benchmarks.zip`, Buffer.from(download.data));

- name: Unzip Benchmark Results
run: unzip iai_sv1_benchmarks.zip

- name: Setup Bencher
#uses: bencherdev/bencher@main
uses: baptiste0928/cargo-install@v2
with:
crate: bencher_cli
git: https://github.com/bencherdev/bencher
branch: devel

- name: Track Benchmarks with Bencher
run: |
cat iai_sv1_benchmarks.txt | bencher run \
--github-actions ${{ secrets.GITHUB_TOKEN }}

track_sv2_iai_with_bencher:
name: Track sv2 iai benchmarks with Bencher
if: ${{ github.event.workflow_run.conclusion == 'success' }}
runs-on: ubuntu-latest
env:
BENCHER_PROJECT: stratum
BENCHER_API_TOKEN: ${{ secrets.BENCHER_API_TOKEN }}
BENCHER_ADAPTER: rust_iai
BENCHER_TESTBED: sv2
BENCHMARK_RESULTS: iai_sv2_benchmarks.txt
steps:
- name: Download Benchmark Results
uses: actions/github-script@v6
with:
script: |
let allArtifacts = await github.rest.actions.listWorkflowRunArtifacts({
owner: context.repo.owner,
repo: context.repo.repo,
run_id: context.payload.workflow_run.id,
});
let matchArtifact = allArtifacts.data.artifacts.filter((artifact) => {
return artifact.name == process.env.BENCHMARK_RESULTS
})[0];
let download = await github.rest.actions.downloadArtifact({
owner: context.repo.owner,
repo: context.repo.repo,
artifact_id: matchArtifact.id,
archive_format: 'zip',
});
let fs = require('fs');
fs.writeFileSync(`${process.env.GITHUB_WORKSPACE}/iai_sv2_benchmarks.zip`, Buffer.from(download.data));

- name: Unzip Benchmark Results
run: unzip iai_sv2_benchmarks.zip

- name: Setup Bencher
#uses: bencherdev/bencher@main
uses: baptiste0928/cargo-install@v2
with:
crate: bencher_cli
git: https://github.com/bencherdev/bencher
branch: devel

- name: Track Benchmarks with Bencher
run: |
cat iai_sv2_benchmarks.txt | bencher run \
--github-actions ${{ secrets.GITHUB_TOKEN }}
110 changes: 110 additions & 0 deletions .github/workflows/benchmark.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
name: Run and Cache Benchmarks

on: pull_request

jobs:
benchmark_sv1_criterion:
name: Run and cache criterion sv1 benchmarks
runs-on: ubuntu-latest
steps:
- name: Set up Rust
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: 1.75.0
override: true

- name: Checkout repository
uses: actions/checkout@v2

- name: Benchmark
run: |
cd benches
cargo bench --bench criterion_sv1_benchmark > criterion_sv1_benchmarks.txt

- uses: actions/upload-artifact@v3
with:
name: criterion_sv1_benchmarks.txt
path: ./benches/criterion_sv1_benchmarks.txt

benchmark_sv2_criterion:
name: Run and cache criterion sv2 benchmarks
runs-on: ubuntu-latest
steps:
- name: Set up Rust
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: 1.75.0
override: true

- name: Checkout repository
uses: actions/checkout@v2

- name: Benchmark
run: |
cd benches
cargo bench --bench criterion_sv2_benchmark > criterion_sv2_benchmarks.txt

- uses: actions/upload-artifact@v3
with:
name: criterion_sv2_benchmarks.txt
path: ./benches/criterion_sv2_benchmarks.txt

benchmark_sv1_iai:
name: Run and cache iai sv1 benchmarks
runs-on: ubuntu-latest
steps:
- name: Set up Rust
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: 1.75.0
override: true

- name: Checkout repository
uses: actions/checkout@v2

- name: Install Valgrind
run: |
sudo apt-get update
sudo apt-get install -y valgrind=1:3.18.1-1ubuntu2

- name: Benchmark
run: |
cd benches
cargo bench --bench iai_sv1_benchmark > iai_sv1_benchmarks.txt

- uses: actions/upload-artifact@v3
with:
name: iai_sv1_benchmarks.txt
path: ./benches/iai_sv1_benchmarks.txt

benchmark_sv2_iai:
name: Run and cache iai sv2 benchmarks
runs-on: ubuntu-latest
steps:
- name: Set up Rust
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: 1.75.0
override: true

- name: Checkout repository
uses: actions/checkout@v2

- name: Install Valgrind
run: |
sudo apt-get update
sudo apt-get install -y valgrind=1:3.18.1-1ubuntu2

- name: Benchmark
run: |
cd benches
cargo bench --bench iai_sv2_benchmark > iai_sv2_benchmarks.txt

- uses: actions/upload-artifact@v3
with:
name: iai_sv2_benchmarks.txt
path: ./benches/iai_sv2_benchmarks.txt
16 changes: 11 additions & 5 deletions .github/workflows/clippy-lint.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,11 @@ on:
push:
branches:
- main
- dev
pull_request:
branches:
- main
- dev
pull_request_review:
types: [submitted]
branches: [bot/versioning]
Expand All @@ -30,10 +32,14 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: 1.65.0
toolchain: 1.75.0
override: true
components: clippy
- uses: actions-rs/cargo@v1
with:
command: clippy
args: -- -D warnings -A dead-code
- name: Run Clippy on different workspaces and crates
run: |
cargo clippy --manifest-path=benches/Cargo.toml -- -D warnings -A dead-code
cargo clippy --manifest-path=common/Cargo.toml -- -D warnings -A dead-code
cargo clippy --manifest-path=protocols/Cargo.toml -- -D warnings -A dead-code
cargo clippy --manifest-path=roles/Cargo.toml -- -D warnings -A dead-code
cargo clippy --manifest-path=utils/Cargo.toml -- -D warnings -A dead-code
cargo clippy --manifest-path=utils/message-generator/Cargo.toml -- -D warnings -A dead-code
Loading
Loading