Week 4 summary:
Reading:
Researching HTTP client e2e for requests (integration testing):
- https://blog.logrocket.com/best-rust-http-client/
- https://blog.logrocket.com/making-http-requests-rust-reqwest/
CI/CD:
- https://github.blog/2022-06-03-a-beginners-guide-to-ci-cd-and-automation-on-github/
- https://docs.github.com/en/actions/using-workflows/caching-dependencies-to-speed-up-workflows
Rust log/tracing:
- https://blog.logrocket.com/comparing-logging-tracing-rust/
- https://www.reddit.com/r/rust/comments/tryk3q/tracingactixweb_equivalent_for_axumtower/
- https://carlosmv.hashnode.dev/adding-logging-and-tracing-to-an-axum-app-rust
Troubles:
- [x] dealt with btrfs hiccup, docker container compromise. Brief @ blog
btrfs balance -m /
is your friend (no warranties here)
Also backups! You never know when you need `em. Always keep ready.
Action items (Week 4)
- [x] Pick a framework: Axum!
Communicated with Miroslav on Tuesday, and so after taking everyone's thoughts into consideration and personally trying out both, settle on Axum. - [x] Added some checkpoints to readme as instructional material.
- [x] Established ci @ Github repo
- [x] Added CI for integration tests.
- [x] Optimised CI using cache to speed up builds
Also removed separate redundant run of unit test as per Bodgan's suggestion - [x] Added strong linting. (ie clippy declines test pass on warn)
clippy --verbose --no-deps --all-targets --all-features -- -D warnings
- [x] Had a chat Friday with Bodgan Mircea about
sqlx
(and other things),
This week I will be doing that (study sqlx) - [x] Searched online and collected some resources for
sqlx
Todo @ (Week 5):
- [x] Add logging using env_logger
Studied about log and env_logger modules yesterday and configured it in the repo- [x] Configure default logging level within the source code.
commit @ Github Repo
- [x] Configure default logging level within the source code.
- [x] Set up
main
branch protection and (soft) review requirement for merging PRs- [ ] Add mentors to reviewer pool on repo
- [ ] Sqlx, Seaorm: take a look and implement json store to db.
- [ ] Study Pick up protocol in depth
- [ ] Create serializable, deserializable struct for pick up protocol message
In summary we are on schedule.
All of the tasks from stage 1 are done.
Project plan @ Hyperledger Wiki
Questions:
- Would Pick up Protocol message be json like?
- Should I go for json storage or break into struct
Notice:
Sorry about the missed call. I couldn't find the right call link in calendar either, so thought none was scheduled.