Skip to content

Latest commit

 

History

History
952 lines (796 loc) · 70.2 KB

CHANGELOG.md

File metadata and controls

952 lines (796 loc) · 70.2 KB

Changelog

Post 1.0.0 release, the changelog format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

[v1.1.22] (2023-06-20)

  • CLI tool for querying network-requesters (#3539)
  • Statically link OpenSSL (#3510)
  • NymConnect - add sentry.io reporting (#3421)
  • init command does not change version number in config.toml (#3336)
  • [Bug] Config version does not correspond to binary version (#3434)

[v1.1.21] (2023-06-13)

  • mixFetch: Change socks5 SendRequest to include OrderedMessage index as a field rather than making it serialized inside the data field (#3534)
  • Explorer - add more data columns to the Service Provider section: (#3474)
  • network-requester: support report if they run an open proxy using ControlRequest API (#3461)
  • Refactor client configs (London discussion) (#3444)
  • Increase DEFAULT_MAXIMUM_CONNECTION_BUFFER_SIZE to 2000 to improve reliability (#3433)
  • socks5: sender waits for lanes to clear even though the connection is closed (#3366)
  • version bump for variables (#3545)

[v1.1.20] (2023-06-06)

  • Explorer - Fix SP supported apps list (#3458)
  • Investigate if we need to lower SHUTDOWN_TIMEOUT in socks5 to zero (or almost zero) (#3438)
  • Explorer - show all gateways in the default view regardless of the version number (#3427)
  • service-provider-directory: add signature check when announcing (#3360)
  • Support functionality for nym-name-service (nym-api, nym-cli, etc) (#3355)
  • Edit the nym-network-requester to support the enabled-credentials-mode flag (#3101)
  • [BUG] network requester documentation update (#3493)
  • removing hardcoded version numbers (#3485)
  • [BUG] network requester documentation update (#3481)
  • [BUG] network requester documentation update (#3469)
  • Sign when announcing service providers to the directory contract (#3459)
  • mixnode documentation update (#3435)
  • updated readme with new developer chat links + new docs links (#3141)

[v1.1.19] (2023-05-16)

  • nym-name-service endpoint in nym-api (#3403)
  • Implement key storage for WASM client using IndexedDB (for browser) (#3329)
  • Initial version of nym-name-service contract providing name aliases for nym-addresses (#3274)
  • Update Cargo.lock (#3410)

[v1.1.18] (2023-05-09)

  • Implement heartbeat messages between socks5 proxy and network requester (#3215)

[v1.1.17] (2023-05-02)

  • Add service-provider-directory-contract support to nym-cli (#3334)
  • Start using the node-testing-utils (implemented in #3270) in nym-api Network monitor to simplify the logic there (#3312)
  • Add service-provider-directory support to validator-client (#3296)
  • Allow topology injection in our WASM client ('test my node' feature) (#3270)
  • Expose service-provider-directory contract data in nym-api endpoints (#3242)
  • Cache service provider contract in nym-api (#3241)
  • Feature/1 1 17 docs (#3370)
  • adding a test for SP endpoint (#3367)
  • Feature/store cipher (#3350)

[v1.1.16] (2023-04-25)

  • Explorer - Fix sorting function on Stake Saturation. It is currently working per page and not globally (#3320)
  • Poisson process gets stuck at too slow rate. Rework to more aggressively up-regulate (#3309)
  • decrease the logging level of warnings associated with clients dropping packets due to gateway being overloaded (I'd say reduce it to debug/trace) - there are few sources of those, e.g. in real and cover traffic streams (#3299)
  • Make the buffer size in AvailableReader depend on packet sizes the client is using + introduce read timeouts (#3213)
  • Rust SDK - Support coconut, credential storage etc (#2755)
  • version bump for next release (#3349)
  • added coconut credential generation example (#3339)
  • update mix-node setup docs with node description (#3325)
  • exposed missing gateway commands in nym-cli (#3324)
  • make sure to clear inner 'ack_map' in 'GatewaysReader' (#3300)

[v1.1.15] (2023-04-18)

  • Fix verloc being stuck waiting for shutdown signal (#3250)
  • Introduce --output json flag to sign command to allow to more easily capture the output (#3249)
  • Explorer - Dont fetch Service Provider list on Testnet (#3245)
  • When determining active set, rather than weighting the nodes by just the stake, use stake * performance (#3234)
  • Introduce dual packet sizes to our clients (as in use two packet sizes at the same time depending on message size) (#3189)
  • Experiment with offline signing in our validator client (#3174)
  • Modify network requester binary to reload allowed.list periodically to pull in any changes made upstream without having to restart the service (#3149)
  • Standardise all --output json on binary inits, we pass the output json at different points for different binaries. (#3080)
  • Service provider directory contract: initial version (#2759)
  • Fix issue where network-requester run failed on fresh init due to missing allow file (#3316)

[v1.1.14] (2023-04-04)

  • Investigate cause of qwerty validator being in invalid rewarding state (#3224)
  • Fix NR config due to changes in #3199 (#3223)
  • [Issue] Mixnodes and gateway do not close connections properly (#3187)
  • disable sign-ext when using wasm-opt + update wasm-opt (#3203)
  • chore: tidy up client Debug config section (#3199)

master

[v1.1.13] (2023-03-15)

  • NE - instead of throwing a "Mixnode/Gateway not found" error for blacklisted nodes due to bad performance, show their history but tag them as "Having poor performance" (#2979)
  • NE - Upgrade Sandbox and make below changes: (#2332)
  • Explorer - Updates (#3168)
  • Website v2 - deploy infrastructure for strapi and CI (#2213)
  • add blockstream green to sp list (#3180)
  • mock-nym-api: fix .storybook lint error (#3178)
  • Validating new interval config parameters to prevent division by zero (#3153)

[v1.1.12] (2023-03-07)

  • Fix generated docs for mixnet and vesting contract on docs.rs (#3093)
  • Introduce a way of injecting topology into the client (#3044)
  • Update mixnet TypeScript client methods #1 (#2783)
  • Update tooltips for routing and average score (#3133)
  • update selected service provider description style (#3128)

[v1.1.11] (2023-02-28)

  • Fix empty dealer set loop (#3105)
  • The nym-api db.sqlite is broken when trying to run against it it in enabled-credentials-mode true there is an ordering issue with migrations when using the credential binary to purchase bandwidth (#3100)
  • Feature/latency based gateway selection (#3081)
  • Fix the credential binary to handle transactions to sleep when in non-inProgress epochs (#3057)
  • Publish mixnet contract to crates.io (#1919)
  • Publish vesting contract to crates.io (#1920)
  • Feature/update checker to use master (#3097)
  • Feature/improve binary checks (#3094)

[v1.1.10] (2023-02-21)

  • Verloc listener causing mixnode unexpected shutdown (#3038)
  • rust-sdk - update API following implementation experience with the network-requester (#3001)
  • Prevent coconut deposits in incompatible states (#2991)
  • Support unavailable signer within threshold (#2987)
  • Implement DKG re-sharing (#2935)
  • contracts: add nym prefix to mixnet and vesting contract packages (#2855)
  • Introduce common interface for all service providers to allow obtaining information such as whether they're online, what binary version they're running, etc. (#2758)
  • Add client functionality to nym-network-requester (#1900)
  • nym-api: uptime rework (#3053)
  • ci: update typescript-lint.yml (#3035)
  • contracts: add nym prefix to mixnet and vesting contract packages (#2855)

[v1.1.9] (2023-02-07)

Added

  • Remove Coconut feature flag (#2793)
  • Separate nym-api endpoints with values of "total-supply" and "circulating-supply" in nym (#2964)

Changed

  • native-client: is now capable of listening for requests on sockets different than 127.0.0.1 (#2912). This can be specified via --host flag during init or run. Alternatively a custom host can be set in config.toml file under socket section.
  • mixnode, gateway: fix unexpected shutdown on corrupted connection (#2963)

[v1.1.8] (2023-01-31)

Added

  • Rust SDK - Support SURBS (anonymous send + storage) (#2754)
  • dkg rerun from scratch and dkg-specific epochs (#2810)
  • Rename 'initial_supply' field to 'total_supply' in the circulating supply endpoint (#2931)
  • Circulating supply api endpoint (read the note inside before testing/deploying) (#1902)

Changed

  • nym-api: an --id flag is now always explicitly required (#2873)

[v1.1.7] (2023-01-24)

Added

  • Gateways now shut down gracefully (#2019).
  • Rust SDK - Initial version for nym-client (#2669).
  • Introduce vesting contract query for addresses of all vesting accounts (required for the circulating supply calculation) (#2778).
  • Add threshold value to the contract storage (#1893)

Changed

  • Refactor vesting account storage (and in particular, ACCOUNTS saving) (#2795).
  • Move from manual advancing DKG state to an automatic process (#2670).

Fixed

  • Gateways now shut down gracefully (#2019).

[v1.1.6] (2023-01-17)

Added

  • nym-sdk: added initial version of a Rust client sdk
  • nym-api: added /circulating-supply endpoint (#2814)
  • nym-api: add endpoint listing detailed gateway info by @octol in nymtech#2833

Changed

  • streamline override_config functions -> there's a lot of duplicate if statements everywhere (#2774)
  • clean-up nym-api startup arguments/flags to use clap 3 and its macro-derived arguments (#2772)
  • renamed all references to validator_api to nym_api
  • renamed all references to nymd to nyxd (#2696)
  • all-binaries: standarised argument names (note: old names should still be accepted) (#2762

Fixed

  • nym-api: should now correctly use rewarding.enabled config flag (#2753)

[v1.1.5] (2023-01-10)

Added

  • socks5: send status message for service ready, and network-requester error response in nymtech#2715

Changed

  • all-binaries: improved error logging in nymtech#2686
  • native client: bring shutdown logic up to the same level as socks5-client in nymtech#2695
  • nym-api, coconut-dkg contract: automatic, time-based dkg epoch state advancement in nymtech#2670
  • DKG resharing unit test by @neacsu in nymtech#2668
  • Renaming validator-api to nym-api by @futurechimp in nymtech#1863
  • Modify wasm specific make targets by @neacsu in nymtech#2693
  • client: create websocket handler builder by @octol in nymtech#2700
  • Outfox and Lion by @durch in nymtech#2730
  • Feature/multi surb transmission lanes by @jstuczyn in nymtech#2723

[v1.1.4] (2022-12-20)

This release adds multiple Single Use Reply Blocks (SURBs) to allow arbitrarily-sized anonymized replies. At the moment this is turned off by default, but available for use by application developers. We will need to wait for network-requesters to upgrade to this new release, after which multi-SURB anonymization will become the default setting for the SOCKS proxy clients.

The release also include some additional work for distributed key generation in the Coconut signing authority nodes.

Changed

  • Feature/dkg contract threshold by @neacsu in nymtech#1885
  • Multi-surbs by @jstuczyn in nymtech#2667
  • Fix multi-surb backwards compatibility in pre 1.1.4 client config files by @jstuczyn in nymtech#2703
  • fix: ignore corrupted surb storage and instead create fresh one by @jstuczyn in nymtech#2711
  • socks5: rework waiting in inbound.rs by @octol in nymtech#1880

[v1.1.3] (2022-12-13)

Changed

  • validator-api: can recover from shutdown during DKG process (#1872)
  • clients: deduplicate gateway initialization, part of work towards a rust-sdk
  • clients: keep all transmission lanes going at all times by making priority probabilistic
  • clients: ability to use multi-reply SURBs to send arbitrarily long messages fully anonymously whilst requesting additional reply blocks whenever they're about to run out (#1796, #1801, #1804, #1835, #1858, #1883))

Fixed

  • network-requester: fix bug where websocket connection disconnect resulted in success error code
  • clients: fix a few panics handling the gateway-client
  • mixnode, gateway, validator-api: Use mainnet values as defaults for URLs and mixnet contract (#1884)
  • socks5: fixed bug where connections sometimes where closed too early
  • clients: improve message logging when received message fails to get reconstructed (#1803)

[v1.1.2]

Changed

  • gateway: Renamed flag from enabled/disabled_credentials_mode to only-coconut-credentials
  • "Family" feature for node families + layers
  • Initial coconut functionality including credentials and distributed key generation

v1.1.1 (2022-11-29)

Added

  • binaries: add -c shortform for --config-env-file
  • websocket-requests: add server response signalling current packet queue length in the client
  • contracts: DKG contract that handles coconut key generation (#1678#1747)
  • validator-api: generate coconut keys interactively, using DKG and multisig contracts (#1678#1747)

Changed

  • clients: add concept of transmission lanes to better handle multiple data streams (#1720)
  • clients,validator-api: take coconut signers from the chain instead of specifying them via CLI (#1747)
  • multisig contract: add DKG contract to the list of addresses that can create proposals (#1747)
  • socks5-client: wait closing inbound connection until data is sent, and throttle incoming data in general (#1783)
  • nym-cli: improve error reporting/handling and changed vesting-schedule queries to use query client instead of signing client

Fixed

  • gateway-client: fix decrypting stored messages on reconnect (#1786)

Fixed

  • gateway-client: fix decrypting stored messages on reconnect (#1786)
  • socks5-client: fix shutting down all tasks if anyone of them panics or errors out (#1805)

v1.1.0 (2022-11-09)

Added

  • clients: add testing-only support for two more extended packet sizes (8kb and 16kb).
  • common/ledger: new library for communicating with a Ledger device (#1640)
  • native-client/socks5-client/wasm-client: disable_loop_cover_traffic_stream Debug config option to disable the separate loop cover traffic stream (#1666)
  • native-client/socks5-client/wasm-client: disable_main_poisson_packet_distribution Debug config option to make the client ignore poisson distribution in the main packet stream and ONLY send real message (and as fast as they come) (#1664)
  • native-client/socks5-client/wasm-client: use_extended_packet_size Debug config option to make the client use 'ExtendedPacketSize' for its traffic (32kB as opposed to 2kB in 1.0.2) (#1671)
  • network-requester: added additional Blockstream Green wallet endpoint to example.allowed.list (#1611)
  • validator-api: add interval_operating_cost and profit_margin_percent to compute reward estimation endpoint
  • validator-client: added query_contract_smart and query_contract_raw on NyxdClient (#1558)
  • wasm-client: uses updated wasm-compatible client-core so that it's now capable of packet retransmission, cover traffic and poisson delay (among other things!) (#1673)

Fixed

  • socks5-client: fix bug where in some cases packet reordering could trigger a connection being closed too early (#1702,#1724)
  • validator-api: mixnode, gateway should now prefer values in config.toml over mainnet defaults (#1645)
  • validator-api: should now correctly update historical uptimes for all mixnodes and gateways every 24h (#1721)

Changed

  • clients: bound the sphinx packet channel and reduce sending rate if gateway can't keep up (#1703,#1725)
  • gateway-client: will attempt to read now as many as 8 websocket messages at once, assuming they're already available on the socket (#1669)
  • moved Percent struct to contracts-common, change affects explorer-api
  • socks5 client: graceful shutdown should fix error on disconnect in nym-connect (#1591)
  • validator-api: changed error serialization on inclusion_probability, stake-saturation and reward-estimation endpoints to provide more accurate information (#1681)
  • validator-client: made fee argument optional for execute and execute_multiple (#1541)
  • wasm-client: fixed build errors on MacOS and changed example JS code to use mainnet (#1585)
  • validator-api: changes to internal SQL schema due to the mixnet contract revamp (#1472)
  • validator-api: changes to internal data structures due to the mixnet contract revamp (#1472)
  • validator-api: split epoch-operations into multiple separate transactions (#1472)

Added

  • socks5 client/websocket client: add --force-register-gateway flag, useful when rerunning init (#1353)
  • all: added network compilation target to --help (or --version) commands (#1256).
  • explorer-api: learned how to sum the delegations by owner in a new endpoint.
  • explorer-api: add apy values to mix_nodes endpoint
  • gateway: Added gateway coconut verifications and validator-api communication for double spending protection (#1261)
  • network-explorer-ui: Upgrade to React Router 6
  • rewarding: replace circulating supply with staking supply in reward calculations (#1324)
  • validator-api: add estimated_node_profit and estimated_operator_cost to reward-estimate endpoint ([#1284])
  • validator-api: add detailed mixnode bond endpoints, and explorer-api makes use of that data to append stake saturation
  • validator-api: add Swagger to document the REST API (#1249).
  • validator-api: Added new endpoints for coconut spending flow and communications with coconut & multisig contracts (#1261)
  • validator-api: add uptime, estimated_operator_apy, estimated_delegators_apy to /mixnodes/detailed endpoint (#1393)
  • validator-api: add node info cache storing simulated active set inclusion probabilities
  • network-statistics: a new mixnet service that aggregates and exposes anonymized data about mixnet services (#1328)
  • mixnode: Added basic mixnode hardware reporting to the HTTP API (#1308).
  • validator-api: endpoint, in coconut mode, for returning the validator-api cosmos address (#1404).
  • validator-client: add denom argument and add simple test for querying an account balance
  • gateway, validator-api: Checks for coconut credential double spending attempts, taking the coconut bandwidth contract as source of truth (#1457)
  • coconut-bandwidth-contract: Record the state of a coconut credential; create specific proposal for releasing funds (#1457)
  • inclusion-probability: add simulator for active set inclusion probability

Fixed

  • mixnode, gateway: attempting to determine reconnection backoff to persistently failing mixnode could result in a crash (#1260)
  • mixnode: the mixnode learned how to shutdown gracefully
  • mixnode: listen out for SIGTERM and SIGQUIT too, making it play nicely as a system service.
  • native & socks5 clients: fail early when clients try to re-init with a different gateway, which is not supported yet (#1322)
  • native & socks5 clients: rerun init will now reuse previous gateway configuration instead of failing (#1353)
  • native & socks5 clients: deduplicate big chunks of init logic
  • validator: fixed local docker-compose setup to work on Apple M1 (#1329)
  • explorer-api: listen out for SIGTERM and SIGQUIT too, making it play nicely as a system service (#1482).
  • network-requester: fix filter for suffix-only domains (#1487)
  • validator-api: listen out for SIGTERM and SIGQUIT too, making it play nicely as a system service; cleaner shutdown, without panics (#1496, #1573).

Changed

  • validator-client: created internal Coin type that replaces coins from cosmrs and cosmwasm for API entrypoints [#1295]
  • all: updated all cosmwasm-related dependencies to 1.0.0 and cw-storage-plus to 0.13.4 [#1318]
  • all: updated rocket to 0.5.0-rc.2.
  • network-requester: allow to voluntarily store and send statistical data about the number of bytes the proxied server serves (#1328)
  • gateway: allow to voluntarily send statistical data about the number of active inboxes served by a gateway (#1376)
  • gateway & mixnode: move detailed build info back to --version from --help.
  • socks5 client/websocket client: upgrade to latest clap and switched to declarative commandline parsing.
  • validator-api: fee payment for multisig operations comes from the gateway account instead of the validator APIs' accounts (#1419)
  • multisig-contract: Limit the proposal creating functionality to one address (coconut-bandwidth-contract address) (#1457)
  • All binaries and cosmwasm blobs are configured at runtime now; binaries are configured using environment variables or .env files and contracts keep the configuration parameters in storage (#1463)
  • gateway, network-statistics: include gateway id in the sent statistical data (#1478)
  • network explorer: tweak how active set probability is shown (#1503)
  • validator-api: rewarder set update fails without panicking on possible nyxd queries (#1520)
  • network-requester, socks5 client (nym-connect): send and receive respectively a message error to be displayed about filter check failure (#1576)

v1.0.1 (2022-05-04)

Added

  • validator-api: introduced endpoint for getting average mixnode uptime (#1238)

Changed

  • all: the default behaviour of validator client is changed to use broadcast_sync and poll for transaction inclusion instead of using broadcast_commit to deal with timeouts (#1246)

Fixed

  • nym-network-requester: is included in the Github Actions for building release binaries

v1.0.0 (2022-05-03)

Full Changelog

Merged pull requests:

nym-binaries-1.0.0 (2022-04-27)

Full Changelog

Full Changelog

Full Changelog

Fixed bugs:

  • [Issue]cargo build --release issue #1101
  • appimage fail to load in Fedora #1098
  • [Issue] React Example project does not compile when using @nymproject/nym-client-wasm v0.9.0-1 #878

Closed issues:

  • Make mainnet coin transfers work #1096
  • Make Nym wallet validators configurable at runtime #1026
  • Project Platypus e2e / integration testing #942
  • [Coconut]: Replace ElGamal with Pedersen commitments #901

Merged pull requests:

v0.12.1 (2021-12-23)

Full Changelog

Implemented enhancements:

  • Add version check to binaries #967

Fixed bugs:

  • [Issue] NYM wallet doesn't work after login #995
  • [Issue] #993
  • NYM wallet setup trouble[Issue] #958

v0.12.0 (2021-12-21)

Full Changelog

Implemented enhancements:

  • Introduces query for contract build information #919 (jstuczyn)

Fixed bugs:

  • Mixnodes - claim tokens scenario does not work with telegram bot #938
  • [Issue]"create account" button does not work on Ubuntu 20.04.03 LTS #916
  • [Issue] NodeJS 17.1.0 and webpack issues causing nym-wallet build to fail on Pop!OS 21.04(Ubuntu) #914
  • Prevent overwriting of Mixnodes if the mixnode is already bonded #912
  • Pasting mnemonic doesn't work on MacOS #908
  • Wallet - investigate nav freezes #716
  • Wallet - Fix console errors #707
  • Fixed invalid nodes being counted twice in unroutable category #963 (jstuczyn)
  • Don't reset total delegation on mixnode rebond #940 (jstuczyn)
  • Bugfix/remove mixnode bonding overwrite #917 (jstuczyn)
  • Fixes crash condition in validator API when calculating last day uptime #909 (jstuczyn)
  • Bugfix/monitor initial values wait #907 (jstuczyn)
  • Bug fix: Network Explorer: Add freegeoip API key and split out tasks for country distributions #806 (mmsinclair)
  • Explorer API: port test now split out address resolution and add units tests #755 (mmsinclair)

Closed issues:

  • Feature gate ts-rs everywhere and only build use it to export types during CI runs #893
  • Error when init Nym client for Nym requester #800
  • Website updates - Add new team members and translations #775
  • Update Run Nym Nodes Documentation #773
  • Upgrade prost to 0.8 #768
  • How can I get 100punk(Version: 0.11.0) #743
  • Wallet - Fix Bond Form validation issue #717
  • help!!! #712
  • UX feature request: show all delegated nodes in wallet #711
  • UX feature request: add current balance on wallet pages #710
  • got sign issue from bot #709
  • As a wallet user, I would like to be able to log out of the wallet #706
  • As a wallet user, I would like to have a "receive" page where I can see my own wallet address #705
  • Update native client/socks client/mixnode/gateway upgrade command #689
  • Update mixnode/gateway/client to use query for cached nodes rather than use validator #688
  • '--directory' not expected error starting local mixnet #520
  • nym-socks5-client is painfully slow #495
  • nym-socks5-client crash after opening Keybase team "Browse all channels" #494
  • Mixed Content problem #400
  • Gateway disk quota #137
  • Simplify message encapsulation with regards to topology #127
  • Create constants for cli argument names #115
  • Using Blake3 as a hash function #103
  • Validator should decide which layer a node is in #86
  • Clean shutdown for all processes #73
  • Client API consistency #71
  • Simplify concurrency with a proper actor framework #31
  • Database for gateway #11

Merged pull requests:

* This Changelog was automatically generated by github_changelog_generator