You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: ARCHITECTURE.md
+6-6
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ This document describes the high-level architecture of Union and associated pack
4
4
5
5
## Repository Structure
6
6
7
-
At the root of the repository, you'll find directories such as `uniond`, `unionvisor`, and `unionpd`, which are binaries necessary to run the network. To see how to build one of these binaries, check the `flake.nix` file. These binaries can be built by running
7
+
At the root of the repository, you'll find directories such as `uniond`, `unionvisor`, and `unionpd`, which are binaries necessary to run the network. To see how to build one of these binaries, check the `flake.nix` file. These binaries can be built by running
8
8
9
9
```nix
10
10
nix build .\#uniond # or unionvisor or unionpd
@@ -14,15 +14,15 @@ To see all packages/apps that we define, run `nix flake show`. To see how these
14
14
15
15
### Generated Code
16
16
17
-
Currently generated code, such as protobuf definitions and a vendor directory, are checked into the repo. This will be removed later once we add support for private repos and proto derivations.
17
+
Currently generated code, such as protobuf definitions and a vendor directory, are checked into the repo. This will be removed later once we add support for private repos and proto derivations.
18
18
19
19
### READMEs
20
20
21
-
We attempt to have a README.md for every significant component, describing what it is and how to work on it.
21
+
We attempt to have a README.md for every significant component, describing what it is and how to work on it.
22
22
23
23
### Documentation
24
24
25
-
Source code is always the source of truth. The best location to get into the nitty-gritty details is doc comments. We currently do not publish these, but might in the future.
25
+
Source code is always the source of truth. The best location to get into the nitty-gritty details is doc comments. We currently do not publish these, but might in the future.
26
26
27
27
We refrain from separating docs and links from the actual code, as refactors can create dead links and stale docs. It's best to use text search to find where components are defined, as PRs are still adding significant components.
28
28
@@ -34,7 +34,7 @@ We refrain from separating docs and links from the actual code, as refactors can
34
34
`unionvisor` is a supervisor of `uniond`, which makes deployments easier and more resilient. It is not required for node operations but is recommended.
35
35
`unionpd` is the ZK prover. Validators do not need to run it, but IBC relayers and MEV searchers will need to process transactions and capture value.
36
36
37
-
### Support
37
+
### Support
38
38
39
-
`tools` is used to bring in 3rd party tooling and development tools.
39
+
`tools` is used to bring in 3rd party tooling and development tools.
40
40
`networks` is used to define docker-compose configurations of Union and Ethereum networks for local testing.
Copy file name to clipboardexpand all lines: CONTRIBUTING.md
+3-5
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
# Welcome to Union
2
2
3
-
Thank you for investing your time in contributing to our project!
3
+
Thank you for investing your time in contributing to our project!
4
4
5
5
In this guide, you will get an overview of the contribution workflow from opening an issue, creating a PR, reviewing, and merging the PR.
6
6
@@ -16,7 +16,6 @@ We evaluate the need for a PR based on:
16
16
2. Maintainability: will this become a burden for little gain, or add value?
17
17
3. Can the core team understand the code additions being made, and maintain them, or will they rely on you in the future?
18
18
19
-
20
19
## Working on a PR
21
20
22
21
Make sure to check the ARCHITECTURE.md document to get a feel for the repository structure. It explains our build system more in-depth. If you want to run approximately the same tests as CI does, run `nix flake check`. For this, you will need to install [nix](https://zero-to-nix.com/start/install).
@@ -25,7 +24,7 @@ Make sure to check the ARCHITECTURE.md document to get a feel for the repository
25
24
26
25
Sometimes you might need to extend the CI. For this always use nix. You'll need to keep a few things into account:
27
26
28
-
1. Your additions must ensure compatibility with our supported targets:
27
+
1. Your additions must ensure compatibility with our supported targets:
29
28
30
29
```nix
31
30
systems = [ "x86_64-linux" "aarch64-linux" "aarch64-darwin" "x86_64-darwin" ];
@@ -49,5 +48,4 @@ Finally, remain polite and friendly. Reviewing can feel harsh, but it is a learn
49
48
50
49
## Post-Merge
51
50
52
-
You'll be an official contributor and mentioned in the release, as well as visible in GitHub's analytics.
53
-
51
+
You'll be an official contributor and mentioned in the release, as well as visible in GitHub's analytics.
Copy file name to clipboardexpand all lines: VERSIONING.md
+3-3
Original file line number
Diff line number
Diff line change
@@ -8,15 +8,15 @@ Two main versioning processes are elaborated on below: our use of semantic versi
8
8
9
9
Our implementation of semantic versioning is in the form of `v{X}.{Y}.{Z}` where:
10
10
11
-
*`{X}` indicates the major version. Major versions contain new features that may be incompatible with older versions and alter union's consensus. Detailed release notes and announcements can be expected for major versions.
11
+
-`{X}` indicates the major version. Major versions contain new features that may be incompatible with older versions and alter union's consensus. Detailed release notes and announcements can be expected for major versions.
12
12
13
13
Node Update: `required`
14
14
15
-
*`{Y}` indicates the minor version. Minor versions may contain non-feature changes that may still be breaking. Usually these are reserved for security updates and bug fixes. Detailed release notes and announcements can be expected for minor versions.
15
+
-`{Y}` indicates the minor version. Minor versions may contain non-feature changes that may still be breaking. Usually these are reserved for security updates and bug fixes. Detailed release notes and announcements can be expected for minor versions.
16
16
17
17
Node Update: `required`
18
18
19
-
*`{Z}` indicates the patch version. Patch versions will not contain breaking changes or new features. Release notes will be auto-generated from git commits for patch versions, announcements should not be expected.
19
+
-`{Z}` indicates the patch version. Patch versions will not contain breaking changes or new features. Release notes will be auto-generated from git commits for patch versions, announcements should not be expected.
The union.fi testnet acts as a production-like staging environment, tracking the release candidates of [uniond](https://github.com/unionfi/union).
7
+
The union.fi testnet acts as a production-like staging environment, tracking the release candidates of [uniond](https://github.com/unionfi/union).
8
8
9
-
## Genesis
9
+
## Genesis
10
10
11
11
The network was bootstrapped with 6 validators from the founding team. The genesis config may be found [here](https://github.com/UnionFi/genesis).
12
12
13
13
## Architecture
14
14
15
15
### Topology
16
16
17
-
The private testnet has 6 validators. It is not configured to be proof of authority (POA), but since tokens are not available until the public testnet, it is effectively a POA chain. The genesis validators are used as boot and RPC nodes.
17
+
The private testnet has 6 validators. It is not configured to be proof of authority (POA), but since tokens are not available until the public testnet, it is effectively a POA chain. The genesis validators are used as boot and RPC nodes.
Copy file name to clipboardexpand all lines: docs/docs/nodes-validators/running-uniond.md
+6-8
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,5 @@
1
1
---
2
-
title: 'Running uniond'
2
+
title: "Running uniond"
3
3
---
4
4
5
5
# Running `uniond`
@@ -12,11 +12,11 @@ To run `uniond` without manually installing `nix` or NixOS, you can use docker.
12
12
13
13
## Pre-requisites
14
14
15
-
* A working installation of docker
15
+
- A working installation of docker
16
16
17
17
## Login
18
18
19
-
*Note: This section will not be required once the [union](https://github.com/unionfi/union) repository is public*
19
+
_Note: This section will not be required once the [union](https://github.com/unionfi/union) repository is public_
20
20
21
21
We use the GitHub Container Registry to host our docker images. Given the [union](https://github.com/unionfi/union) repository is under a private organization, you will first need to authenticate docker with ghcr.io before downloading and running the `uniond` docker image.
22
22
@@ -30,7 +30,7 @@ docker login ghcr.io
30
30
31
31
Supply `docker` with your GitHub username. When asked for your password, instead supply your GitHub PAT that you just created and noted.
32
32
33
-
*Note: By default, `docker` will insecurely store your GitHub PAT. For alternatives, see: [docker login: Credentials Store](https://docs.docker.com/engine/reference/commandline/login/#credentials-store)*
33
+
_Note: By default, `docker` will insecurely store your GitHub PAT. For alternatives, see: [docker login: Credentials Store](https://docs.docker.com/engine/reference/commandline/login/#credentials-store)_
34
34
35
35
You should now be able to download and run docker images from ghcr.io.
36
36
@@ -48,7 +48,7 @@ You should now be able to run this version of `uniond` locally.
48
48
49
49
Running `uniond` with `docker run` has a few caveats. These tips will help ensure you're able to accomplish everything you need with `uniond` using `docker`.
50
50
51
-
***Storing your `uniond` configuration:**
51
+
-**Storing your `uniond` configuration:**
52
52
53
53
When interacting with `uniond` it is helpful to have a persistent and accessible location to store your `uniond` configuration.
54
54
@@ -62,7 +62,7 @@ Running `uniond` with `docker run` has a few caveats. These tips will help ensur
62
62
docker run --mount type=bind,source="$HOME/uniond-config",target=/uniond-config $DOCKER_FLAGS ghcr.io/unionfi/uniond:$UNIOND_VERSION$UNIOND_SUB_COMMAND --home "/uniond-config"
63
63
```
64
64
65
-
***Publish your docker container ports:**
65
+
-**Publish your docker container ports:**
66
66
67
67
When running a validator node, you will need to publish the necessary TCP ports to communicate with and receive request from other nodes.
68
68
@@ -72,5 +72,3 @@ Running `uniond` with `docker run` has a few caveats. These tips will help ensur
72
72
# Include both ports for traffic to flow through
73
73
docker run -p 26656:26656 -p 26657:26657 $DOCKER_FLAGS ghcr.io/unionfi/uniond:$UNIOND_VERSION$UNIOND_SUB_COMMAND
*NOTE: the `uniond` executable is stored as `./result/bin/uniond`*
41
+
_NOTE: the `uniond` executable is stored as `./result/bin/uniond`_
41
42
42
43
# Environment Variables
43
44
44
45
This document will often refer to environment variables you likely don't have set. You can either manually replace them before running commands, or set them before starting with the rest of the tutorial.
45
46
46
47
Here's a list of the environment variables we'll use and hints for setting them:
47
48
48
-
*` $CHAIN_ID` - either `union-1` for mainnet, or `union-testnet-1` for testnet.
49
+
-` $CHAIN_ID` - either `union-1` for mainnet, or `union-testnet-1` for testnet.
49
50
50
51
```sh
51
52
# Example $CHAIN_ID
52
53
CHAIN_ID=union-testnet-1
53
54
```
54
55
55
-
*` $MONIKER` - The name used for your validator node.
56
+
-` $MONIKER` - The name used for your validator node.
56
57
57
58
```sh
58
59
# Example $MONIKER
59
60
MONIKER="Unionized Goblin"
60
61
```
61
62
62
-
*` $KEY_NAME` - The name you've assigned to the key pair you'll use for this tutorial.
63
+
-` $KEY_NAME` - The name you've assigned to the key pair you'll use for this tutorial.
63
64
64
65
```sh
65
66
# Example $KEY_NAME
@@ -68,7 +69,7 @@ Here's a list of the environment variables we'll use and hints for setting them:
68
69
69
70
# Connect to the Public RPC
70
71
71
-
*NOTE: The public RPC is currently not available.*
72
+
_NOTE: The public RPC is currently not available._
72
73
73
74
Now to connect the `uniond` binary to the public RPC.
0 commit comments