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: documentation/operators/src/changelog.md
+157Lines changed: 157 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,6 +2,160 @@
2
2
3
3
This page displays a full list of all the changes during our release cycle from [`v2024.3-eclipse`](https://github.com/nymtech/nym/blob/nym-binaries-v2024.3-eclipse/CHANGELOG.md) onwards. Operators can find here the newest updates together with links to relevant documentation. The list is sorted so that the newest changes appear first.
- nym-api: make report/avg_uptime endpoints ignore blacklist ([#4599])
16
+
- removed blocking for coconut in the final epoch state ([#4598])
17
+
- allow using explicit admin address for issuing freepasses ([#4595])
18
+
- Use rfc3339 for last_polled in described nym-api endpoint ([#4591])
19
+
- Explicitly handle constraint unique violation when importing credential ([#4588])
20
+
- [bugfix] noop flag for nym-api for nymvisor compatibility ([#4586])
21
+
- Chore/additional helpers ([#4585])
22
+
- Feature/wasm coconut ([#4584])
23
+
- upgraded axum and related deps to the most recent version ([#4573])
24
+
- Feature/nyxd scraper pruning ([#4564])
25
+
- Run cargo autoinherit on the main workspace ([#4553])
26
+
- Add rustls-tls to reqwest in validator-client ([#4552])
27
+
- Feature/rewarder voucher issuance ([#4548])
28
+
29
+
[#4605]: https://github.com/nymtech/nym/pull/4605
30
+
[#4604]: https://github.com/nymtech/nym/pull/4604
31
+
[#4601]: https://github.com/nymtech/nym/pull/4601
32
+
[#4599]: https://github.com/nymtech/nym/pull/4599
33
+
[#4598]: https://github.com/nymtech/nym/pull/4598
34
+
[#4595]: https://github.com/nymtech/nym/pull/4595
35
+
[#4591]: https://github.com/nymtech/nym/pull/4591
36
+
[#4588]: https://github.com/nymtech/nym/pull/4588
37
+
[#4586]: https://github.com/nymtech/nym/pull/4586
38
+
[#4585]: https://github.com/nymtech/nym/pull/4585
39
+
[#4584]: https://github.com/nymtech/nym/pull/4584
40
+
[#4573]: https://github.com/nymtech/nym/pull/4573
41
+
[#4564]: https://github.com/nymtech/nym/pull/4564
42
+
[#4553]: https://github.com/nymtech/nym/pull/4553
43
+
[#4552]: https://github.com/nymtech/nym/pull/4552
44
+
[#4548]: https://github.com/nymtech/nym/pull/4548
45
+
~~~
46
+
47
+
### Features
48
+
49
+
- New `nym-node` API endpoint `/api/v1/auxiliary-details`: to expose any additional information. Currently it's just the location. `nym-api` will then query all nodes for that information and put it in the `self-described` endpoint.
50
+
- New `nym-node` location available - use one of the three options to add this to your node config:
51
+
1. Update the `location` field under `[host]` section of `config.toml`
52
+
2. For new nodes: Initialise the node with `--location` flag, where they have to provide the country info. Either full country name (e.g. 'Jamaica'), two-letter alpha2 (e.g. 'JM'), three-letter alpha3 (e.g. 'JAM') or three-digit numeric-3 (e.g. '388') can be provided.
53
+
3. For existing nodes: It's also possible to use exactly the same `--location` argument as above, but make sure to also provide `--write-changes` (or `-w`) flag to persist those changes!
54
+
-[Feature/unstable tested nodes endpoint](https://github.com/nymtech/nym/pull/4601): Adds new data structures (`TestNode`, `TestRoute`, `PartialTestResult`) to handle test results for Mixnodes and Gateways. With the inclusion of pagination to handle large API responses efficiently. Lastly, introducing a new route with the tag `unstable` thus meaning not to be consumed without a user risk, prefixes in endpoints with unstable, are what it says on the tin.
55
+
~~~admonish example collapsible=true title="Testing steps performed"
56
+
- Deploy new api changes to sandbox environment
57
+
- Ensure current operations are transactional and standed operations are working
58
+
- Run a script to ensure that the new endpoints are working as expected with pagination
-[`nym-api`: make report/avg_uptime endpoints ignore blacklist](https://github.com/nymtech/nym/pull/4599): When querying for node specific data, it's no longer going to go through the entire list of all cached (and filtered nodes) to find it; instead it will attempt to retrieve a single unfiltered entry.
63
+
~~~admonish example collapsible=true title="Testing steps performed"
64
+
- Build the project and deployed it in a test environment.
65
+
- Manually test API endpoints for mixnode and gateway data.
66
+
- Verify that the endpoints return the expected data and handle blacklists correctly.
67
+
- API performance improved due to the efficient `HashMap` lookups
68
+
- Data in mainnet will differ from test nets due to the increased amount of gateways and mixnodes in that environment
-[Use rfc3339 for last_polled in described nym-api endpoint](https://github.com/nymtech/nym/pull/4591): Fix issue where the validator-client can't parse the nym-api response for the described endpoint, in particular the `latest_polled` field that was recently added, by making the field use `rfc3339`
76
+
-**Note:** This will require upgrading `nym-api` and everything that depends on the described endpoint.
77
+
~~~admonish example collapsible=true title="Testing steps performed"
78
+
- Update a `nym-api` to the binary built from this branch, then restart the api
79
+
- Check the `journalctl` for error messages
80
+
- Connected via client and could not see the error messages, this is backwards compatible
81
+
- Local testing using sdk examples:
82
+
```sh
83
+
cd <PATH_TO>/nym/sdk/rust/nym-sdk
84
+
cargo run --example simple
85
+
86
+
# outcome
87
+
thread 'main' panicked at sdk/rust/nym-sdk/examples/simple.rs:9:64:
88
+
called Result::unwrap() on an Err value: ClientCoreError(ValidatorClientError(NymAPIError { source: ReqwestClientError { source: reqwest::Error { kind: Request, url: Url { scheme: "https", cannot_be_a_base: false, username: "", password: None,
89
+
```
90
+
~~~
91
+
92
+
-[Upgrade `axum` and related dependencies to the most recent version](https://github.com/nymtech/nym/pull/4573)
93
+
-[Run cargo autoinherit on the main workspace](https://github.com/nymtech/nym/pull/4553): Move several dependencies to the workspace level using cargo autoinherit, to make it easier to keep our dependencies up to date.
94
+
- Run cargo autoinherit in the root
95
+
- Merge in the new workspace deps in the main list
96
+
- We made sure to not mix in other changes as well - all features flags for all crates should be the same as before
97
+
~~~admonish example collapsible=true title="Testing steps performed"
98
+
- Run `cargo autoinherit` in the root directory to move dependencies to the workspace level
99
+
- Merge the new workspace dependencies into the main list
100
+
- Ensure no other changes were mixed in during the process
101
+
- Verify that all feature flags for all crates remained the same as before
102
+
- Build all the binaries from this branch to confirm successful compilation
103
+
- Deploy the built binaries across different environments to ensure there were no issues
104
+
~~~
105
+
106
+
-[Add rustls-tls to reqwest in validator-client](https://github.com/nymtech/nym/pull/4552): An attempt to make possible to end up in a situation where use use the validator-client but without functioning TLS support. For the monorepo this is masked by cargo feature unification, but becomes a problem for outside consumers, as as been noticed in many of the vpn client implementations.
107
+
- In `validator-client`: `reqwest`, enable `rustls-tls` for `non-wasm32`
108
+
- In `client-core`: Use default features enabled for `non-wasm32` and switch to `webpki` roots, since that's what we're using with `reqwest` anyway
109
+
- In `gateway-client`: Switch to `webpki` roots, since that's what we're using with `reqwest` anyway
110
+
111
+
#### Crypto
112
+
113
+
-[Remove blocking for coconut in the final epoch state](https://github.com/nymtech/nym/pull/4598)
114
+
~~~admonish example collapsible=true title="Testing steps performed"
115
+
- Build the project to ensure no compilation errors
116
+
- Run tests to verify the functionality of the `issue_credential` function
117
+
- Execute integration tests to check the behaviour during an epoch transition.
118
+
~~~
119
+
120
+
-[Allow using explicit admin address for issuing freepasses](https://github.com/nymtech/nym/pull/4595)
121
+
-[Explicitly handle constraint unique violation when importing credential](https://github.com/nymtech/nym/pull/4588): Add a strong type for when a duplicate credential is imported so the vpn lib can handle this.
122
+
-[Feature/wasm coconut](https://github.com/nymtech/nym/pull/4584): This pull request requires [\#4585](https://github.com/nymtech/nym/pull/4585) to be merged first
123
+
-[Feature/nyxd scraper pruning](https://github.com/nymtech/nym/pull/4564): This PR introduces storage pruning to `nyxd` scraper which is then used by the validators rewarder.
124
+
~~~admonish example collapsible=true title="Testing steps performed"
125
+
- Add a `main.rs` file in the `nyxd` scraper dir, underneath `lib.rs`, amend `config.pruning_options.validate()?;` to be `let _ = config.pruning_options.validate();` in the mod.rs file
126
+
- Test the different variations of `pruning_options`:
127
+
- Check the *default* option: `pruning_options: PruningOptions::default()`
128
+
- Check the *nothing* option: `pruning_options: PruningOptions::nothing()`
- Introduces signature checks on issued credential data
136
+
- Stores evidence of any failures/malicious behaviour in the internal db
137
+
138
+
### Bugfix
139
+
140
+
-[`noop` flag for `nym-api` for `nymvisor` compatibility](https://github.com/nymtech/nym/pull/4586)
141
+
- The application starts correctly and logs the starting message
142
+
- The `--no_banner` flag works as intended, providing compatibility with `nymvisor`
143
+
~~~admonish example collapsible=true title="Testing steps performed"
144
+
- Build the project to ensure no compilation errors
145
+
- Run the binary with different command-line arguments to verify the CLI functionality
146
+
- Test with and without the `--no_banner` flag to ensure compatibility and expected behavior
147
+
- Verify logging setup and configuration file parsing
148
+
~~~
149
+
150
+
### Operators Guide updates
151
+
152
+
-[`nym-gateway-probe`](testing/gateway-probe.md): A CLI tool to check in-real-time networking status of any Gateway locally.
153
+
-[Where to host your `nym-node`?](legal/isp-list.md): A list of Internet Service Providers (ISPs) by Nym Operators community. We invite all operators to add their experiences with different ISPs to strengthen the community knowledge and Nym mixnet performance.
154
+
- Make sure you run `nym-node` with `--wireguard_enabled false` and add a location description to your `config.toml`, both documented in [`nym-node` setup manual](nodes/setup.md#mode-exit-gateway).
Copy file name to clipboardExpand all lines: documentation/operators/src/nodes/nym-node.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -26,7 +26,7 @@ Once VPS and Nym wallet are configured, binaries ready, the operators of `nym-no
26
26
27
27
During the testing events series [Fast and Furious](https://nymtech.net/events/fast-and-furious) we found out, that after introducing IP Packet Router and [Nym exit policy](https://nymtech.net/.wellknown/network-requester/exit-policy.txt) as default features, only a fragment of Exit Gateways routes correctly through IPv4 and IPv6. We built a useful monitor to check out your Gateway (`nym-node --mode exit-gateway`) at [harbourmaster.nymtech.net](https://harbourmaster.nymtech.net/).
28
28
29
-
Below is a fast - ten commands - deployment for seasoned operators to migrate and setup the node, configure networking and connectivity and verify that it all works as it should by getting two free jokes through the Mixnet.
29
+
Below is a fast - *ten command* - deployment for seasoned operators to migrate and setup the node, configure networking and connectivity and verify that it all works as it should by getting two free jokes through the Mixnet.
30
30
31
31
```admonish caution
32
32
If you are not well familiar with `nym-node` setup, automation, and `nymtun0` configuration, follow the [steps above](#steps-for-nym-node-operators) page by page. You can use this flow as a reference later on.
0 commit comments