General release information:
This release is focused on improving the protocol crates documentation and adding more testing abilities to the project. Moreover, we have refined our release and git branching process.
noise-sv2
, codec-sv2
, and const_sv2
crates documentation have been re-written. All the public functions should now have documentation accessible easily for the library users through https://www.docs.rs. Documentation was also added for non public functions to make it easier for developers to maintain the code-base. In addition to the documentation, example folder was added for both crates, demonstrating how to use library code in practice.
With a goal to improve our CI checks and code reliability, we developed a new integration test framework. This testing framework allows us to run multiple roles and intercept messages exchanged between them, giving us the ability to assert the roles behavior in different scenarios. While we are not going to remove the Message Generator testing framework completely, we aim to migrate most of the current Message Generator tests to the new testing framework.
We have also changed our release and contributing process. For the contributing process, we stopped using dev
branch and now we are developing and making pull requests against main
branch. and for the release we are tagging every release through Github and creating a specific branch for it. For more info about the release and contributing process please refer to RELEASE.md
and CONTRIBUTING.md
.
From this release we are stopping to release the following crates, as they are only in PoC phase. It is planned to stabilize and start releasing them again during Q1/Q2 2025.
pool_sv2
jd_client
jd_server
mining_proxy_sv2
translator_sv2
Breaking Changes
None
Fixed Bugs
None
Other Notable Changes
None
Changelog
- Consider using release branches by @jbesraa in #1124
- merge
CONTRIBUTING.md
+README-DEV.md
by @plebhash in #1140 - stop publishing some crates by @plebhash in #1143
- update
roles/Cargo.lock
by @plebhash in #1150 pre-push
githook for fmt only + removeact
by @rrybarczyk in #1039- add
lockfiles.yaml
+ rm and gitignore some unnecessary lockfiles by @plebhash in #1102 - Auto rebase workflow addition by @GitGab19 in #1152
- Move
PoolSv2
lib code out ofmain.rs
by @jbesraa in #1097 - Move
TranslatorSv2
lib code out ofmain.rs
by @jbesraa in #1092 - Move
JDServer
lib code out ofmain.rs
by @jbesraa in #1095 - publish libs to
crates.io
on release tags by @plebhash in #1142 - Add PAT in auto-rebase workflow by @GitGab19 in #1153
- test: timeout sv-1 test by @average-gary in #1099
- global release docs by @plebhash in #1154
- ignore
test_diff_management
by @plebhash in #1074 - Fix bencher false alarms on CI by @GitGab19 in #1158
- Add integration tests project by @jbesraa in #1155
- Add Template Provider to integration test project by @jbesraa in #1156
- Use version 1.75.0 of toolchain in scripts by @lorbax in #1168
- Upgrade
cbindgen
to v0.21.0 by @jbesraa in #1170 - use 1.75.0 toolchain on sv2-header-check.yaml by @plebhash in #1172
- Separate
lib
code frombin
inmining-device
by @jbesraa in #1163 - use fixed
temp_dir
for TP on integration tests by @plebhash in #1177 - Remove dev branch occurances in ci by @Shourya742 in #1182
- Rust docs for
protocols::v2::const-sv2
by @GitGab19 in #1160 - fix
network_helpers_sv2
import onmining_pool
mod by @plebhash in #1187 - add
--nominal-hashrate-multiplier
tomining-device
by @plebhash in #1195 const_sv2
- README update to comply with docs standards by @GitGab19 in #1198- move metadata away from workspace manifests by @Shourya742 in #1193
- fix cargo warnings in roles by @jbesraa in #1191
PoolSv2
integration tests by @jbesraa in #1066- add codecov upload action in coverage.yaml by @Shourya742 in #1197
- Rust docs
noise_sv2
by @Shourya742 in #1111 - Enable
all-feature
flag for rust-docs by @GitGab19 in #1211 - Remove image referring to old git flow by @jbesraa in #1214
- update release process by @plebhash in #1216
- fix license formatting by @plebhash in #1218
New Contributors
- @average-gary made their first contribution in #1099
Full Changelog: v1.0.2...v1.1.0