2024-06-08 11:07:00 +00:00
|
|
|
|
# Contributing
|
2024-06-07 03:52:16 +00:00
|
|
|
|
|
2024-06-08 11:07:00 +00:00
|
|
|
|
## Testing
|
2024-06-07 03:52:16 +00:00
|
|
|
|
|
2024-06-08 11:07:00 +00:00
|
|
|
|
Testing the [`vdf`](./vdf) and [`node`](./node) packages requires linking the
|
|
|
|
|
[native VDF](./crates/vdf). The `test.sh` scripts in the respective directories
|
|
|
|
|
help with this.
|
|
|
|
|
|
|
|
|
|
## Pull Requests
|
|
|
|
|
|
|
|
|
|
Contributions are welcome – a new network is rife with opportunities. We are
|
|
|
|
|
in the process of updating our JIRA board so that it can be made public. The
|
|
|
|
|
repository has basic coding guidelines:
|
|
|
|
|
|
|
|
|
|
- 80 character line limit, with the exception where gofmt or the syntax is
|
|
|
|
|
impossible to achieve otherwise
|
|
|
|
|
- Error wrapping matching function names
|
|
|
|
|
- Interface composition and dependency injection with Wire
|
2024-06-07 03:52:16 +00:00
|
|
|
|
|
2024-06-08 11:07:00 +00:00
|
|
|
|
## Building release binaries
|
2024-06-07 03:52:16 +00:00
|
|
|
|
|
2024-06-08 11:07:00 +00:00
|
|
|
|
The following software is required to build release binaries (assuming MacOS
|
|
|
|
|
ARM):
|
2024-06-07 03:52:16 +00:00
|
|
|
|
|
2024-06-08 11:07:00 +00:00
|
|
|
|
- [Running from source](README.md#running-from-source) dependencies
|
2024-06-07 03:52:16 +00:00
|
|
|
|
- Docker
|
|
|
|
|
- [Taskfile](https://taskfile.dev/)
|
|
|
|
|
|
|
|
|
|
Then from the repo root use the following commands to build the release binaries
|
|
|
|
|
that statically link the [native VDF](./crates/vdf) for the supported platforms:
|
|
|
|
|
|
|
|
|
|
```shell
|
|
|
|
|
task build_node_arm64_macos
|
|
|
|
|
task build_node_arm64_linux
|
2024-06-08 11:07:00 +00:00
|
|
|
|
task build_node_amd64_linux
|
2024-06-07 03:52:16 +00:00
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
The output binaries will be in `node/build`.
|
|
|
|
|
|