v0.11.0 (2021-07-21)
Implemented enhancements:
- Investigate why --clients-host and --mix-host are distinct for gateways #435
- Bugfix/verloc fixes and adjustments #618 (jstuczyn)
Fixed bugs:
Closed issues:
- Rename
PagedResponse
intoPagedMixnodeResponse
#657 - Change
u64
layer type in contract code #648 - Change
String
types of sphinx and identity keys in contract code #647 - Remove the terrible
decimal_sub_one
once we update contract/validators #639 - After update: failed to receive reply to our echo packet within 1.5s. Stopping the test #621
- update to v0.10.1, it show ERROR message "failed to receive reply to our echo packet within 1.5s" #620
- Make validator client send as much tokens for bonding as required #614
- Update mixnode
init
to not query for entire topology #610 - Potentially extend metrics with number of dropped packets #595
- Delegated staking for gateways #579
- Delegated staking for mixnodes #578
- Improved mixnode and gateway info #577
- Gateway bonding #576
- No graceful degradation on low traffic #513
- Network monitor should not update when 0 packets come back #456
- Add mixnode statistics endpoint #406
Merged pull requests:
- Return the vec instead of the cache wrapper for topology #695 (neacsu)
- Updated sign command #694 (jstuczyn)
- got rid of denomination error in webwallet bonding interface #691 (mfahampshire)
- Docker testing env #687 (neacsu)
- Changed Layer serde behaviour for easier usage #686 (jstuczyn)
- Merge the nym-wallet-web repo into a nym directory #684 (neacsu)
- Temporarily using non-cached gateways so we can get our next version … #683 (futurechimp)
- Updating wallet URL in mixnode startup output #682 (futurechimp)
- Feature/node status api #680 (jstuczyn)
- Using specific commit of rocket cors #678 (jstuczyn)
- Disables nightly clippy CI #677 (jstuczyn)
- Minimize read/write cache contention #676 (durch)
- Feature/validator client upgrade #675 (futurechimp)
- Use cached topology for clients #674 (neacsu)
- Use rocket 0.5-rc1, remove rocket-contrib #672 (durch)
- Feature/validator api config #671 (jstuczyn)
- Fix a dependabot nag #670 (durch)
- Removed standalone network-monitor #669 (jstuczyn)
- Remove mut where possible, parallel cache requests #668 (durch)
- Rework validator client requests #667 (durch)
- Generalize cache, and cache gateways #666 (durch)
- Validator API server #665 (durch)
- Layer selection #664 (neacsu)
- Removing validator binaries, these should go into Github releases #663 (futurechimp)
- Rename network-monitor #662 (durch)
- Adds @neacsu as code owner #661 (jstuczyn)
- Feature/total delegation field #660 (jstuczyn)
- contracts: Removed mixnode location from the bonding process #659 (neacsu)
- Use thiserror for validator-client #658 (durch)
- Feature/configurable verloc http ports #656 (jstuczyn)
- Feature/describe location #655 (neacsu)
- Feature/host ip split #654 (jstuczyn)
- Feature/cosmwasm 0.14.1 update #653 (jstuczyn)
- Allow passing optional explicit bond value #652 (jstuczyn)
- Introduced type aliases for mixnode and gateway keys #650 (jstuczyn)
- Bugfix/delegation type fixes #649 (jstuczyn)
- Removing the ancient explorer in preparation for a new dawn. #645 (futurechimp)
- Testing code owners again #644 (futurechimp)
- TypeScript client v0.12.0 #641 (jstuczyn)
- Feature/reverse contract mapping #640 (jstuczyn)
- Bump websockets from 8.1 to 9.1 in /clients/native/examples/python-examples/websocket #638 (dependabot[bot])
- Chore/clippy nightly fixes #636 (jstuczyn)
- Feature/delegated staking #635 (jstuczyn)
- Bump ws from 6.2.1 to 6.2.2 in /clients/validator #634 (dependabot[bot])
- Bump ws from 6.2.1 to 6.2.2 in /clients/native/examples/js-examples/websocket #633 (dependabot[bot])
- Bump ws from 6.2.1 to 6.2.2 in /clients/webassembly/js-example #632 (dependabot[bot])
- Feature/stats endpoint #631 (jstuczyn)
- Updated all js related dependencies #629 (jstuczyn)
- Feature/per layer count #628 (jstuczyn)
- Changed rewarding behaviour on not found bonds #627 (jstuczyn)
- Bump dns-packet from 1.3.1 to 1.3.4 in /clients/native/examples/js-examples/websocket #626 (dependabot[bot])
- Bump dns-packet from 1.3.1 to 1.3.4 in /clients/webassembly/js-example #625 (dependabot[bot])
- Feature/update validator binaries #624 (jstuczyn)
- Checking for required bond rather than using hardcoded value #623 (jstuczyn)
- Bump browserslist from 4.14.1 to 4.16.6 in /clients/native/examples/js-examples/websocket #619 (dependabot[bot])
- Changed omitted print to a debug call #617 (jstuczyn)
v0.10.1 (2021-05-25)
Closed issues:
- Prometheus metrics doesn't work #606
- Bonding hostname vs. ip-address does not show up on NYM explorer #593
- Cannot assign requested address #584
- Native client upgrade command is broken #582
- Spread directory requests across good validators #580
- Change network monitor to use currency-based rewareds #540
- Unregistration for protocol ipv6 does not work #511
- Network monitor view on validators #373
Merged pull requests:
- Bugfix/unique node ownership #612 (jstuczyn)
- Decreased log severity for verloc-related functionalities #611 (jstuczyn)
- Disabled metrics reporting to the central server #609 (jstuczyn)
- Feature/network monitor gateway pings #608 (jstuczyn)
- Implemented display traits for identity and encryption keys #607 (jstuczyn)
- Feature/add node description api #605 (futurechimp)
- Feature/updated network monitor #604 (jstuczyn)
- Feature/ping timings #603 (jstuczyn)
- Bump lodash from 4.17.20 to 4.17.21 in /clients/validator #602 (dependabot[bot])
- Bump lodash from 4.17.20 to 4.17.21 in /clients/native/examples/js-examples/websocket #601 (dependabot[bot])
- Feature/add rocket #600 (futurechimp)
- Bump url-parse from 1.4.7 to 1.5.1 in /clients/native/examples/js-examples/websocket #599 (dependabot[bot])
- Bump url-parse from 1.4.7 to 1.5.1 in /clients/webassembly/js-example #598 (dependabot[bot])
- Recalculating reward rates on appropriate value changes #594 (jstuczyn)
- Changed default mixnode query page limit #592 (jstuczyn)
- Feature/more exposed client api #591 (jstuczyn)
- Contract adjustment to check for node ownership before allowing bonding #590 (jstuczyn)
- Bump ssri from 6.0.1 to 6.0.2 in /clients/webassembly/js-example #589 (dependabot[bot])
- Bump ssri from 6.0.1 to 6.0.2 in /clients/native/examples/js-examples/websocket #588 (dependabot[bot])
- Impl Error trait for ValidatorClientError #587 (jstuczyn)
- Checking for tx success when sending coins #586 (jstuczyn)
- Logging adjustment #585 (jstuczyn)
- Feature/multiple validator endpoints #583 (jstuczyn)
- Refreshing nodes gets all available nodes from the contract #575 (jstuczyn)
- Feature/simple payments #571 (jstuczyn)
- Minor cosmetic changes while reading around #568 (huitseeker)
v0.10.0 (2021-04-15)
This release brings a distributed directory authority powered by Cosmos SDK and CosmWasm smart contracts. It is designed to run Testnet Finney, the new Nym testnet.
Closed issues:
- When I run this command :'./nym-mixnode run --id zzznym', an error occurs #548
Merged pull requests:
- Displaying address of the client on init #573 (jstuczyn)
- Fixed nightly clippy warnings #572 (jstuczyn)
- Changed default client topology refresh rate from 30s to 5min #570 (jstuczyn)
- Adding the wallet url in startup instructions #569 (futurechimp)
- Removed unused data from cargo.toml #567 (jstuczyn)
- Feature/cli signing #566 (futurechimp)
- Updated version number on the validator client #565 (jstuczyn)
- Renamed mixnode registration into bonding #564 (jstuczyn)
- A pull request for discussion about contract state variables #563 (futurechimp)
- Feature/mixnet contract ci #562 (jstuczyn)
- Feature/bonding adjustments #561 (jstuczyn)
- Feature/migration additions #560 (jstuczyn)
- Changed default contract execution gas limit to 250_000 (from 9_000_000_000) #559 (jstuczyn)
- Missing quotes in mixnet_contract_address config field #558 (jstuczyn)
- Updated default validator url and contract address #557 (jstuczyn)
- Bump y18n from 4.0.0 to 4.0.1 in /clients/native/examples/js-examples/websocket #556 (dependabot[bot])
- Feature/bonding info on init #555 (jstuczyn)
- Feature/validator client address getter #554 (jstuczyn)
- Added extra step for publishing validator client #553 (jstuczyn)
- Feature/validator client rc3 #552 (jstuczyn)
- Feature/upgrade update #551 (jstuczyn)
- Feature/export coin helper #550 (futurechimp)
- Chore/dependency updates #549 (jstuczyn)
- Feature/validator query client #547 (jstuczyn)
- Feature/validator client rc2 #546 (futurechimp)
- Feature/has node query validator client #545 (jstuczyn)
- Added contract query to check if given address owns a mixnode/gateway #544 (jstuczyn)
validator-client-0.10.0-rc1 (2021-03-24)
Implemented enhancements:
- Add option to whitelist IPv4 ranges to allowed.list in sphinx-socks #415
- Mixmining monitoring for gateways #384
Fixed bugs:
- Network requester should periodically remove stale proxies #424
- Network requester now prints correct version with --version #478 (jstuczyn)
Closed issues:
- Change topology to work with validators. #538
- Unable to rejoin the network after powerdown #514
- nym-socks5-client 0.9.2 issue with outbound_request_filter.check #498
- nym-socks5-client high CPU usage on idle #491
- network requester too many Received a 'Send' before 'Connect' - going to buffer the data #483
- Socks5 client loops on malformed - invalidaddress message #482
- Socks5 client hangs #479
- Network Requester -V flag does not print version #469
- Gateway reconnection (wasm) #458
- Client warning 'No valid topology' #343
- private key file permission bits too open, readable for others #319
- Fix dependabot security notice #267
- Change how time intervals are serialized in configs #141
Merged pull requests:
- RC1 published #543 (futurechimp)
- Feature/prep for publish #542 (futurechimp)
- Feature/bigger better stronger mnemonics #541 (futurechimp)
- Removed a package-lock.json which seems to have been accidentally added #539 (futurechimp)
- Feature/convert to uhal #537 (futurechimp)
- Feature/topology conversion #536 (jstuczyn)
- Feature/hook up url in validator client #535 (futurechimp)
- Feature/upgrade cosm client #534 (futurechimp)
- Feature/mix contract identity key #533 (jstuczyn)
- Feature/validator client rust #532 (jstuczyn)
- Feature/add currency helpers #531 (futurechimp)
- Exporting Coin struct, needed for wallet #530 (futurechimp)
- Getting correct user home dir in Python setup script #528 (futurechimp)
- Temporarily disabling fs access #527 (futurechimp)
- Feature/validator client gateway bonding #526 (jstuczyn)
- Fixed eslint errors in the validator client #525 (jstuczyn)
- Feature/gateway bonding #524 (jstuczyn)
- Fix the remove mixnode test #522 (futurechimp)
- Bump elliptic from 6.5.3 to 6.5.4 in /clients/native/examples/js-examples/websocket #521 (dependabot[bot])
- Feature/fix go errors in examples #516 (futurechimp)
- Feature/initial mixnet contract #515 (futurechimp)
- Running CI also on windows and macOS #512 (jstuczyn)
- Feature/socks5 adjustments #510 (jstuczyn)
- Fixed unused import in non-unix systems #509 (jstuczyn)
- Checking if the delay has already expired before attempting to put it… #508 (jstuczyn)
- Not including gateway non-delay when calculating total packet delay #507 (jstuczyn)
- Allowing for a single topology refresh failure #505 (jstuczyn)
- More restrictive unix key files permissions #504 (jstuczyn)
- More human-readable errors on mixnode/gateway startup #503 (jstuczyn)
- Feature/ip filtering #502 (jstuczyn)
- Feature/wasm client compilation fixes #501 (jstuczyn)
- Fixed possible crash on invalid topology #500 (jstuczyn)
- Feature/gateway monitoring #499 (jstuczyn)
- Feature/GitHub actions and clippy cleanup #493 (jstuczyn)
- Fix typos #492 (rex4539)
- Bump ini from 1.3.5 to 1.3.8 in /clients/native/examples/js-examples/websocket #490 (dependabot[bot])
- Bump ini from 1.3.5 to 1.3.8 in /clients/webassembly/js-example #489 (dependabot[bot])
- display 0 on no validators rather than crash #488 (jstuczyn)
- NGI0 - Updating licensing aspects according REUSE #487 (lnceballosz)
- Feature/removed topology #481 (jstuczyn)
- Bugfix/explorer fixes #477 (jstuczyn)
- Feature/0.9.2+only monitoring #475 (jstuczyn)
v0.9.2 (2020-11-26)
This release brings networking improvements, eliminating blocking calls and improving mixnode and gateway scalability.
Fixed bugs:
Merged pull requests:
- Release/v0.9.2 #474 (jstuczyn)
- Minor mixnet client code simplification and optimization #472 (jstuczyn)
v0.9.1 (2020-11-24)
The main features of this release are:
- explicit
unregister
command for mixnodes - introduced gateway client reconnection in case of obvious network failures
- changed network monitor to send at a constant, adjustable, rate
- changed the way in which packets are delayed by mixnodes that should reduce number of tasks spawned
- changed the way in which packets are forwarded to further mixes that should get rid of possible blocking
See the changelog for detailed release notes.
Implemented enhancements:
- Change how mix packets get delayed #361
- Feature/socks improvements #423 (jstuczyn)
- Feature/instant sending #359 (jstuczyn)
Fixed bugs:
- Update main.js #441 (jstuczyn)
- Bugfix/metrics fixes #434 (jstuczyn)
- Bugfix/upgrade fix #421 (jstuczyn)
- Explicitly handling base58 key recovery errors #396 (jstuczyn)
- Corrected version on client-core #377 (jstuczyn)
Closed issues:
- Gateway reconnections (simple) #457
- Slow down network monitor sending rate #455
- Deploy the new explorer on the same box as metrics. #433
- Too many open files #366
- nym-mixnode doesn't bind to any port (Ubuntu 20.04) #290
Merged pull requests:
- Updated message on shutdown #467 (jstuczyn)
- Additional feedback on unregistration on sigint #466 (jstuczyn)
- Feature/upgrade additions #465 (jstuczyn)
- Feature/nonblocking mix send #464 (jstuczyn)
- Feature/delay queue mixnodes #462 (jstuczyn)
- Feature/slowed down network monitor #461 (jstuczyn)
- Feature/unregister command #460 (jstuczyn)
- Simple gateway client reconnection in obvious network failures #459 (jstuczyn)
- temporarily disabled mixnode status dot #454 (jstuczyn)
- Removed incentives form url #451 (jstuczyn)
- Removed hardcoded 'good gateways' in favour of pseusorandom choice fr… #450 (jstuczyn)
- Fixed the URL of the websocket #449 (futurechimp)
- Extra argument to specify metrics websocket + long attribute #448 (jstuczyn)
- Explorer public folder being relative to the binary #447 (jstuczyn)
- Slightly friendlier upgrade argument description #446 (jstuczyn)
- Updated nym-run gateway id #445 (jstuczyn)
- Adjusted 'fastmode' settings #444 (jstuczyn)
- Added validators to dashboard + validator and block count #443 (jstuczyn)
- Adding keybase to allowed.list.sample #442 (futurechimp)
- Spawning rocket as a blocking task #440 (jstuczyn)
- Passing validator base url as an argument #439 (jstuczyn)
- Changing default validator location to make it clear we're testnet #437 (futurechimp)
- Added nym prefix to binary names #436 (jstuczyn)
- Feature/explorer #431 (jstuczyn)
- Updated default sending rates #430 (jstuczyn)
- Fixed bunch of clippy warnings #427 (jstuczyn)
- Starting cover traffic stream under correct condition #422 (jstuczyn)
- Updated validator topology #420 (jstuczyn)
- Added option to set incentives address during mix and gateway init #419 (jstuczyn)
- Flag to start network requester in open proxy mode #418 (jstuczyn)
- Renamed 'sphinx-socks' to 'network-requester' #417 (jstuczyn)
- Updated upgrade commands to set new default validator #413 (jstuczyn)
- Feature/network monitor file topology #412 (jstuczyn)
- Removed debug print statement #411 (jstuczyn)
- Feature/controlled reinit #410 (jstuczyn)
- Feature/max retry #409 (jstuczyn)
- Renamed directory arguments to validator #408 (jstuczyn)
- Feature/no run config flag #405 (jstuczyn)
- Feature/error on noninit #404 (jstuczyn)
- Using metrics interval received from server #403 (jstuczyn)
- Feature/validator api update #402 (jstuczyn)
- Feature/directory server transition #401 (jstuczyn)
- Feature/wasm client fix #399 (futurechimp)
- Fix compiler warnings for unneeded mut #398 (ethanfrey)
- Feature/fix dependabot alerts #393 (futurechimp)
- moved new_v4_with_node to test only section #392 (jstuczyn)
- Feature/duration cleanup #391 (jstuczyn)
- Feature/mix ed25519 identity #388 (jstuczyn)
- Feature/double init prevention #386 (jstuczyn)
- Feature/upgrade command #381 (jstuczyn)
- Feature/remove validator #380 (futurechimp)
- Feature/version in config #376 (jstuczyn)
- Feature/network monitor #369 (jstuczyn)
- Added sphinx socks to default workspace members #358 (jstuczyn)
- Feature/wasm update #341 (jstuczyn)
v0.9.0 (2020-11-13)
The main features of this release are:
- a reputation tracking system which starts to link node reputation to quality of service
- a new component, the
nym-network-monitor
, which tracks whether nodes are working properly and providing good service - automatic node registration and de-registration at node startup
- working Cosmos validators with a
nym
token - starting to decentralize the old directory server into the validators
- a new block explorer at https://testnet-explorer.nymtech.net which looks the same as the old dashboard but is the basis of something much more advanced. It can be run by anyone.
- de-coupling metrics collection from directory services to make the system scale better overall
- reliability and performance improvements for mixnode networking
See the changelog for detailed release notes.
Implemented enhancements:
- Nicer error if trying to run an uninitialised client/node #389
- Gateway announcement #383
- Add init flag for incentives address #382
- Ed25519 Identity Keys for Mixnodes #379
- Introduce version field to config files #375
- Change
init
to not blow away existing keys (if exist) #368 - Introduce an explicit
upgrade
command #367 - Show remote hostname in socks5 connection messages #365
- Make all
const
duration values more explicit. #333
Fixed bugs:
- React wasm example not compiling #394
Closed issues:
- Make validator URL configurable #438
- Change default directory location #432
- Crank up the default bandwidth settings. #429
- Change "sphinx-socks" to "nym-requester" #428
- Clients should use only "active" nodes #390
- Allow persistently changing config values from command line #387
- Remove
--config
flag inrun
#385 - Metrics server should return a metrics rate value #374
- Integer staking #372
- Mixnode and gateway blockchain registration #371
- Remove presence notifications #370
- Handle invalid base58 encoding for asymmetric key recovery (encryption and identity) #285
- Socks5 nym client + bitcoin service provider #254
- Message reception in webassembly client #204
- Simplest possible staking system #157
- Validator should hold topology #77
Merged pull requests:
v0.8.1 (2020-09-28)
Closed issues:
- Hardcode two gateways for
client init
if none provided #352 - Make mixnodes take layer with fewest nodes #351
- Change default presence/metrics interval for mixnodes/gateways #349
- Mixnodes should only be able to enter layers 1, 2, or 3 #348
- Docs are inaccurate #337
- Figure out the cause of high packet loss on testnet #159
- Change Topology to GraphTopology #76
Merged pull requests:
v0.8.0 (2020-09-10)
This release introduces, among other things, the following improvements:
- SURB-acks for significant boost to the mixnet messaging reliability,
- SURB-replies for allowing for anonymous replies,
- SOCKS5 proxying capabilities,
- replacing the
AuthToken
with a shared key derived between client and its gateway, - encryption and tagging of mix messages exchanged between client and its gateway,
- end-to-end encryption of traffic between clients,
- general performance and reliability improvements.
Implemented enhancements:
- Change how un-ack'd packets are retransmitted #307
- Feature/socks5 sequencing #318 (jstuczyn)
- Feature/socks client config #316 (jstuczyn)
- Explicit proxy runner + closing local connection if remote is over #314 (jstuczyn)
- Feature/ack messing #313 (jstuczyn)
- Removed client list from topology #301 (jstuczyn)
- Feature/reply surbs #299 (jstuczyn)
Fixed bugs:
- Socks client no longer logging dns resolved addresses #329 (jstuczyn)
- Bugfix/remove packet buffering #300 (jstuczyn)
Closed issues:
- Do not buffer packets for mixes we are reconnecting to #291
- Loop cover messages need to be encrypted! #287
- Get rid of instances of Deref polymorphism antipattern #283
- Remove client list from topology #279
- The messages pushed from gateway should be encrypted. #276
- The shared key between client and gateway should be stored in a file. #273
- Refactor topology, NymTopology trait, and related code #200
- Fragment retransmission for split messages #164
- Clean up common/clients/mix-clients #126
- Reliable chunk transmission #84
- Change how topology is obtained #44
- More secured auth token - some signature on request #5
Merged pull requests:
- Recommended testnet gateway #335 (jstuczyn)
- placeholder contact form url #334 (jstuczyn)
- Knocking down delay on message sending default #332 (futurechimp)
- Made gateway mandatory during init #331 (jstuczyn)
- Renaming client binary #330 (futurechimp)
- v0.8.0 Changelog update #328 (jstuczyn)
- Feature/sphinx socks #326 (futurechimp)
- Feature/print client address on startup #325 (jstuczyn)
- Feature/temp wasm example removal #324 (jstuczyn)
- Feature/websocket js example dependency update #323 (jstuczyn)
- snake_cased replySURBs #322 (jstuczyn)
- Feature/outbound request lists #321 (futurechimp)
- Feature/temp fix for ipv6 #317 (futurechimp)
- Removed unused dependencies #315 (jstuczyn)
- Feature/perf messing #311 (futurechimp)
- Upgrades tungstenite libraries to new versions with 64MB message sizes. #310 (futurechimp)
- Assigning connection shared key post registration #308 (jstuczyn)
- Feature/client binary api update #306 (jstuczyn)
- Removes unused Cargo dependencies so we stay slim and trim. #305 (futurechimp)
- Removes unused code from the socks client implementation #304 (futurechimp)
- Feature/client core #303 (futurechimp)
- Feature/socks5 #302 (futurechimp)
- Updated blake3 dependency to 0.3.5 #281 (jstuczyn)
- Feature/ws send confirmation removal #280 (jstuczyn)
- Added simple react example #275 (keviinfoes)
- Feature/topology refactor #274 (jstuczyn)
- Feature/gateway shared key generation #272 (jstuczyn)
- Removed the healthcheck module, it's no longer in use. #271 (futurechimp)
- Adding description field to wasm client to kill warning #270 (futurechimp)
- Running
npm audit fix
on js examples #269 (futurechimp) - Feature/constant length packet payloads #268 (jstuczyn)
- Feature/wasm topology duplication #265 (jstuczyn)
- Removed misplaced WorkingDirectory parameter #264 (ststefa)
- Feature/packet retransmission #263 (jstuczyn)
- could not count to ten properly #262 (ststefa)
- build(deps): bump websocket-extensions from 0.1.3 to 0.1.4 in /clients/webassembly/js-example #261 (dependabot[bot])
- add disabling feature 'offline-test' for network-dependent tests #260 (hyperfekt)
v0.7.0 (2020-06-08)
The main features of this release are:
- the addition of gateway nodes
- the retiring of the store-and-forward providers in favour of gateway nodes
- got rid of TCP connections for clients, everything now happens through websockets
- a new Nym webassembly client, making it possible interact with Nym easily in browser-based runtimes
- reliability and performance improvements for mixnode networking
- initial validator code running (little functionality yet though)
See the changelog for detailed release notes.
Implemented enhancements:
- Use tokio codecs for multi_tcp_client #207
- Consider rewriting sfw_provider_requests using tokio Framed + Codec #181
Fixed bugs:
- Unexplained traffic increase in presence of unroutable node #232
- Gateway won't send to restarted layer1 nodes #231
Closed issues:
- Move to userpubkey@gatewaypubkey addresses. #235
- Get
start_local_network.sh
working with the js example #227 - Fix indeterminate test failure #218
- Remove 'fetch' mechanism from desktop client's client in favour of push #211
- Mixnode - load Sphinx keys like Gateway #209
- Publish NPM package for WebAssembly client #206
- Change --sockettype option on desktop client #203
- Remove TCP sockets from desktop client #202
- Desktop client currently hard-codes first provider #198
- Webassembly client currently hard-codes first provider #197
- Add Rust-based route construction to wasm client #196
- Remove fetch event #195
- Control messages should all be JSON #194
- Desktop Client should attach to gateway websocket #193
- Merge gateway and provider nodes #192
- Remove direct Sphinx dependencies #184
- tests::client_reconnects_to_server_after_it_went_down fails on aarch64-linux #179
- [Windows] Presence notification fill OS socket queue #170
- Figure out connection hiccups between client and provider #162
- Improve the healthchecker #160
- Rethink client addressability #135
- Give some love to the service provider client ledger #116
- Start Gateway node type #80
- Bring health-checker into validator mix-mining #78
- Solidify TCPSocket on client #72
- scripts: run_local_network.sh doesn't die nicely #45
- Persistently store ledger with registered clients and their auth tokens #6
- Persistent socket connection (Websocket with client) #17
- Persistent socket connection (TCP Socket with provider) #18
- Persistent socket connection (Websocket with client) #12
- Persistent socket connection (TCP Socket with client) #13
- WASM version of the Sphinx packet #19
Merged pull requests:
- Filtering compatible node versions #259 (jstuczyn)
- systemd service unit example #257 (ststefa)
- renaming desktop to native client #251 (futurechimp)
- Adding a pipenv dependencies file to the python client example #250 (futurechimp)
- Cleaning up startup messages in native client #249 (futurechimp)
- fixing up readme, bumping version number #246 (futurechimp)
- Feature/sphinx socket packet encoder #245 (jstuczyn)
- Adding some documentation to the webassembly client #244 (futurechimp)
- Simplified some names and used the published npm package #242 (futurechimp)
- Feature/make andrew happy #241 (futurechimp)
- Removed redundant console.log #240 (jstuczyn)
- Feature/explicit gateway addressing #239 (jstuczyn)
- Feature/clean up #238 (futurechimp)
- Feature/addressing update #237 (jstuczyn)
- Added hidden init flag to increase default traffic volume #234 (jstuczyn)
- Bugfix/issue#231 #233 (jstuczyn)
- Fixed unwrap on none value #230 (jstuczyn)
- Bugfix/gateway crash on incomplete ws handshake #229 (jstuczyn)
- Feature/start local network improvements #228 (jstuczyn)
- Updated directory_client reqwest to 0.10 #226 (jstuczyn)
- Updated js-example to get gateway from topology #225 (jstuczyn)
- Requiring explicit timestamp when converting from rest to service mix… #224 (jstuczyn)
- Feature/minor docs fixes #223 (futurechimp)
- Removed having to care about SURB_ID #222 (jstuczyn)
- Moved relevant parts of old mix-client to nymsphinx #221 (jstuczyn)
- Feature/load keys on run #220 (jstuczyn)
- Updated wasm code to work with new gateway and updated the example #219 (jstuczyn)
- validator: removing health checker #217 (futurechimp)
- The great sfw-provider purge of 2020 #216 (jstuczyn)
- Fixed compilation warnings on unreachable code when compiling with fe… #215 (jstuczyn)
- Feature/healthchecker removal #214 (jstuczyn)
- Bugfix/send to correct gateway #213 (jstuczyn)
- Feature/client socket adjustments #212 (jstuczyn)
- Sending sphinx packet independent of the receiver task #210 (jstuczyn)
- Feature/gateway provider merge #208 (jstuczyn)
- Feature/route from topology #201 (futurechimp)
- Intermediate gateway-heart surgery checkpoint #199 (jstuczyn)
- Feature/wasm js demo #191 (futurechimp)
- Feature/improve js example #190 (futurechimp)
- Feature/limit direct sphinx dependency + remove direct curve25519 dependency from wasm client #189 (jstuczyn)
- Feature/very minor refactoring #188 (jstuczyn)
- Feature/persistent ledger #187 (jstuczyn)
- Optimising wasm build size, shaves about 10% size off our wasm output. #186 (futurechimp)
- Ran
npm audit fix
on the wasm demo directory. #185 (futurechimp) - Feature/nym sphinx wasm #183 (futurechimp)
- Improvements to sfw-provider - client communcation #180 (jstuczyn)
- Adding Apache 2 license headers to all files #178 (futurechimp)
- Feature/service persistence #171 (futurechimp)
v0.6.0 (2020-04-07)
This release fixes bugs in v0.5.0. All testnet node operators are advised to upgrade from v0.5.0.
- fixed premature EOFs on socket connections by using the new multi-TCP client
- fixed a bug causing client and mixnode connection hangs for misconfigured nodes
- by default 'Debug' section of saved configs is now empty and default values are used unless explicitly overridden
- introduced packet chunking allowing clients to send messages of arbitrary length. Note that packet retransmission is not implemented yet, so for longer messages, you might not get anything
- mixnodes now periodically log stats regarding number of packets mixed
- fixed possible client hang ups when sending high rates of traffic
- preventing mixes from starting with same announce-host as an existing node
- fixed overflow multiplication if connection backoff was set to a high value
Closed issues:
- Periodic activity summary #172
- Move contents of 'common/addressing' into 'common/nymsphinx' #161
- Make builds simpler for node operators #114
- Chunking in
nym-client
(receive) #83 - Chunking in
nym-client
(send) #82
Merged pull requests:
- Feature/tcp client connection timeout #176 (jstuczyn)
- Feature/mixing stats logging #175 (jstuczyn)
- Preventing multiplication overflow for reconnection backoff #174 (jstuczyn)
- Feature/non mandatory debug config #173 (jstuczyn)
- Feature/addressing move #169 (jstuczyn)
- Checking if any other node is already announcing the same host #168 (jstuczyn)
- Bugfix/closing tcp client connections on drop #167 (jstuczyn)
- Yielding tokio task upon creating loop/real traffic message #166 (jstuczyn)
- Feature/minor healthchecker improvements #165 (jstuczyn)
- Feature/packet chunking #158 (jstuczyn)
v0.5.0 (2020-03-23)
- Introduced proper configuration options for mixnodes, clients and providers. Everything is initialised with the
init
command that creates a saved config.toml file. To run the binary you now usenym-<binary-name> run
, for examplenym-mixnode run
. Each flag can be overwritten at any stage with the following priority: run flags, data in config.toml and finally init flags. - Made mixnet TCP connections persistent. When sending a Sphinx packet, it should no longer go through the lengthy process of establishing a TCP connection only to immediately tear it down after sending a single packet. This significantly boosts throughput.
- A lot of work on code clean up and refactoring including some performance fixes.
- Client now determines its default nym-sfw-provider at startup and should always try to connect to the same one. Note: we still can't reliably run more than a single provider on the network.
- Logging messages now have timestamps and when running at more aggressive log mode (like debug or even trace) we should no longer be overwhelmed with messages from external crates.
- Initial compatibility with Windows. Please let us know if you have problems.
- More work on validator, including initial Tendermint integration in Rust, and the start of the mixmining system.
Closed issues:
- Introduce timestamps to log messages #124
Merged pull requests:
- removing spooky startup warning message #155 (futurechimp)
- Some more startup fixes #154 (futurechimp)
- Entering runtime context when creating mix traffic controller #153 (jstuczyn)
- Friendlification of startup messages #151 (futurechimp)
- Entering runtime context when creating packet forwarder #150 (jstuczyn)
- Feature/add topology to validator #149 (futurechimp)
- Making code work on windows machines #148 (jstuczyn)
- validator: adding HTTP interface #146 (futurechimp)
- Extracting the log setup #145 (futurechimp)
- Feature/optional location in configs #144 (jstuczyn)
- Feature/concurrent connection managers #142 (jstuczyn)
- Defaulting for global 'Info' logging level if not set in .env #140 (jstuczyn)
- Provider not storing loop cover messages #139 (jstuczyn)
- Using log builder to include timestamps + filters #138 (jstuczyn)
- Feature/client ws refactoring #134 (jstuczyn)
- Bugfix/metrics presence delay fix #133 (jstuczyn)
- Removed outdated and redundant sample-configs #131 (jstuczyn)
- If not overridden, 'announce-host' should default to 'host' #130 (jstuczyn)
- Nice to know who we're talking to at startup... #129 (futurechimp)
v0.5.0-rc.1 (2020-03-06)
Closed issues:
- COMPILE: Could not compile project using Cargo #118
- Wherever unbounded mpsc channel is used, prefer unbounded_send() over send().await #90
- Add a
Send
method in nym-client #81 - Start on Tendermint integration #79
- Ditch DummyKeyPair #75
- Replace args with proper config files #69
- Fix incorrectly used Arcs #47
- nym-mixnode mandatory host option #26
- Create config struct for mixnode (possibly also for client) #21
- Check if RwLock on MixProcessingData is still needed #8
- Once implementation is available, wherever appropriate, replace
futures::lock::Mutex
withfutures::lock::RwLock
#9 - Persistent socket connection with other mixes #2
- Reuse TCP socket connection between client and mixnodes #20
- Reuse TCP socket connection between mixnodes and providers #3
Merged pull requests:
- Feature/client refactoring #128 (jstuczyn)
- Feature/provider refactoring #125 (jstuczyn)
- all: fixing mis-spelling #123 (futurechimp)
- Feature/further clippy fixes #121 (jstuczyn)
- Feature/tokio tungstenite dependency fix #120 (jstuczyn)
- Feature/config files cleanup #119 (jstuczyn)
- Feature/config files #117 (jstuczyn)
- Feature/un genericize keys #111 (futurechimp)
- Feature/abci #110 (futurechimp)
- Simplified the use of generics on identity keypair by using output types #109 (jstuczyn)
v0.4.1 (2020-01-29)
Closed issues:
- Change healthcheck to run on provided topology rather than pull one itself #95
Merged pull requests:
v0.4.0 (2020-01-28)
Nym 0.4.0 Platform
In this release, we're taking a lot more care with version numbers, so that we can ensure upgrade compatibility for mixnodes, providers, clients, and validators more easily.
This release also integrates a health-checker and network topology refresh into the Nym client, so that the client can intelligently choose paths which route around any non-functional or incompatible nodes.
0.4.0-rc.2 (2020-01-28)
v0.4.0-rc.2 (2020-01-28)
Merged pull requests:
v0.4.0-rc.1 (2020-01-28)
Closed issues:
- Check Sphinx packet length in client #98
- workflow test #97
- Client SemVer #85
- Move PemStore #74
- Periodic client refresh #70
- Logging #68
- Nym-client refactor #67
- Stop panicking! #66
- Fix Mixnode Panic on Sphinx packet replay #65
- Convert older code to start using logging #35
- Convert to non-url-safe base64 (everywhere) #28
- If a thread blows at startup, panic the entire application #15
- Split provider/mod.rs #10
Merged pull requests:
- Feature/health checker with existing keys #105 (jstuczyn)
- Feature/remove topology equality check #104 (futurechimp)
- Feature/base58 #102 (futurechimp)
- Feature/panic improvements #101 (jstuczyn)
- Feature/fix sphinx unwraps #100 (futurechimp)
- Feature/check packet length #99 (futurechimp)
- Feature/version filtering improvements #96 (futurechimp)
- Feature/refreshing topology #94 (jstuczyn)
- Feature/consistent logging #93 (futurechimp)
- Feature/semver client #92 (futurechimp)
- Feature/client refactor #91 (jstuczyn)
- Release builds should no longer silently fail - everything will be im… #89 (jstuczyn)
v0.3.3 (2020-01-20)
Fixed bugs:
- Nym client crashing and disconnecting local websocket with complaint about binary data #56
Closed issues:
- Websocket text fix #64
- Restore nym-client lib in crate #63
- Make websocket not crash on ping or pong messages #62
- Messages returned by fetch are base64 encoded #55
- Check layer 1 connectivity at client start #38
- Check required sfw-provider args #27
- Take version numbers into account when picking routes #14
- Make Electron app work with new Rust mixnet client #16
Merged pull requests:
- Feature/websocket improvements #88 (jstuczyn)
- Using println rather than log for startup banner, it's not an error #87 (futurechimp)
- Feature/nym client lib #61 (jstuczyn)
v0.3.2 (2020-01-17)
Merged pull requests:
v0.3.1 (2020-01-16)
Merged pull requests:
v0.3.0 (2020-01-14)
Closed issues:
- Error referring to mismatched types caused by topology #46
- Provider needs to announce two of its addresses (+ issue of hardcoded port) #32
- Port run_network.sh from old Go mixnet #30
- Health Checker inside Validator #29
- Combine Rust repositories into a single master repo containing multiple crates #24
- Fix the version numbers on provider and mixnode #23
- Travis releases for Nym #22
- Add version number to presence #4
- Add version number to presence #1
Merged pull requests:
- Feature/client topology filtering #54 (jstuczyn)
- print public key for nym client tools #53 (ghost)
- Showing binding warning on binding to localhost, 0.0.0.0 or 127.0.0.1 #52 (jstuczyn)
- validator: moving sample config files into sample configs directory #51 (futurechimp)
- Feature/validator health checker #50 (jstuczyn)
- Improving websocket connection errors #49 (futurechimp)
- Feature/crypto crate #48 (jstuczyn)
- Feature/chill log messages #43 (futurechimp)
- persistence: improving PEM file reading and parsing failure messages #42 (futurechimp)
- Providing a nicer error than "failed on unwrap()" when topology retri… #41 (futurechimp)
- Prettying up sfw-provider start sequence a bit. #40 (futurechimp)
- Removing the run command from code and documentation #39 (futurechimp)
- Feature/script/localnet #37 (futurechimp)
- Feature/arguments fix #36 (jstuczyn)
- Feature/crates cleanup #34 (jstuczyn)
- Features/version number to presence #25 (aniampio)
- Feature/minor client changes #7 (jstuczyn)
v0.2.0 (2020-01-07)
0.2.0 (2020-01-06)
* This Changelog was automatically generated by github_changelog_generator