* oak-2
* oak-8
* oak-13
* oak-15
* oak-18
* Minor clippy nit
* 2023-01-13-OAK-6
* 2023-01-13-OAK-3
* 2023-01-13-OAK-13
Implemented via direct dependency on cw2 and calling the appropriate code on migration
* Removed few instances of password being unecessarily copied
* 2023-01-13-OAK-10
* 2023-01-13-OAK-12
* 2021-09-13-JP-S-NYM-02
* 2021-09-13-JP-S-NYM-03
* Removed further instances of needlessly copying the mnemonic
* 2021-09-13-JP-O-PROT-03
* 2021-09-13-JP-S-NYM-01*
*: we still have one vulnerability on 'time' pulled from chrono via sqlx. However, apparently its usage is fine... Having said that, I'd still recommend removing all dependencies on chrono, but this will require some database migrations...
* 2023-01-13-OAK-11 (#3009)
* wip
* Introducing the concept of starting epoch transition in `nym-api`
* split epoch operations into multiple files
* epoch operation failure recovery
* sending rewarding transactions in correct order
* tests and fixes due to epoch state progression
* lint
* missed rebasing import changes
* Setting cw2 contract version during first migration run
* calling 'reconcile_epoch_events' at least once
* Made message to BeginEpochTransition more consistent with other variants
* Merge layer assignment updates
---------
Co-authored-by: Jędrzej Stuczyński <jedrzej.stuczynski@gmail.com>
* wip
* new option to select gateways based on latency
* further changes for wasm-compatibility
* post rebase fixes + clippy
I know, I should have probably included them properly during rebasing ¯\_(ツ)_/¯
* android change
* wasm: the gift that keeps on giving
* Rename to nym-task
* Update imports to use nym_task
* Update to nym_task in explicit module prefix
* Touchups and rustfmt
* rustfmt
* crate metadata
* fix nym-connect-android
* network-requester: replace websocket with mixnet client
* network-requester: mini tidy
* network-requester: add info line about own address
* network-requester: update to nym-crypto rename
* feat(nc-android): fit the design to mobile
* refactor(nc-android): resync with nc desktop
* fix(nc-android): tauri version
* refactor(nc-android): resync with nc desktop (rust)
* chore(nc-android): format code
* chore(nc-android): bump version
* added additional workspace-wide dependencies
* Added conditional serialization on 'BinaryBuildInformationOwned'
* initial framework for service provider messages
* updated request/response tags to account for existing variants of Socks5Message
* handling legacy deserialization
* another serialization revamp to account for legacy version
* legacy client working with versioned network requester
* socks5 client deserializing responses into updated structures
* using new structures for sending in socks5 client
* SendRequest wrapper for Request::Send variant
* created named fields for all variants of 'ControllerCommand'
* Versioning socks5 requests + moving to proper Socks5Request struct
* Updated backwards compatible Socks5Response
* unused imports
* poc ServiceProvider trait
* wip
* implemented 'ServiceProvider' trait on the Network Requester
* Socks5RequestError
* added properly serialized ErrorResponse to ControlResponse
* fixed version serialization + feature selection
* handling of version control requests
* improved SocksProxyError by providing more concrete variants and removing generic case
* got rid of ServiceProviderClient trait and wrote simple example showing control requests
* tests for serialisation backwards compatibility
* post-merge fixes due to method renaming
* enum boxing to make clippy happier
* making sure to not drop buffer channel when starting `DirectClient`
* Using nym-sdk in the example
* Replaced printing version to stdout with proper log call
* connect: keep track of connectivity state
* nym-connect: query connection state
* nym-connect: function for kicking of the health check task
* rustfmt
* nym-connect: extract out into function
* nym-connect: extract out events.rs
* Reset contract state when dkg needs rerun
* Reset nym-api for rerun
* Gateway updates signer APIs at runtime
* Fix clippy
* Add epoch id
* Use IndexedMap for shares
* Query with epoch id
* Add Clone to client traits
* Pass nyxd client instead of api data
* Get the specific epoch vk
* Make wasm work
* Remove wasm test runs
As there are no wasm tests and the target_arch macros are not compatible
with the cargo test environment, we can safely remove (for now) the wasm
test target runs.
* Put epoch_id in storage pk
* Gateway uses old keys but current verifiers
* Add group contract to env
* Move group msg in common
* Only run DKG if part of group
* Clippy test
* Rename wasm_storage to wasm_mockups
* Update changelog
* task dependency
* unifying some startup code and passing TaskClient around
* graceful shutdown handling for mix socket listener
* graceful shutdown handling for clients listener
* graceful shutdown handling for packet forwarding
* unified waiting for interrupt across binaries
* made 'validate_bech32_address_or_exit' into a function that returns proper Result
* printing formatted message on main error
* fixed failing test
* removed duplicate code that should have been gone ages ago
* ibid
* removed biased selection for authenticated handler
* minor refactoring to 'ensure_config_version_compatibility'
* Fixed typo in node_status_cache constant
* ibid
* Moved some caching stuff around so I can see what depends on what
* Finishing merge of conflicted files
* Minor smoothing
* Got cache reads working for circ supply and refactored common cache
* Refactored nyxd client usages to make things bit more clear
* Moved caching support stuff into the support folder
* Moved storage code into support module
* Removed dead code
* Tweaks
* Handling cases a little more nicely in circulating supply api
* Renamed nymd_client to nyxd_client
* Pulled CacheNotification into the caching support module
* Pulled some domain-specific helpers out of cache refresher
* Moving some more helper methods out of the cache refresher
* Deleting unused code
* Extracted a few more functions out of the cache refresher
* A few comments as breadcrumbs
* Renaming the anemic "helpers" to "node_sets"
* Renaming the validator_cache module to nym_contract_cache
* Renaming nym contract cache stuff to make things clearer
* Renamging a few things in comments
* Renaming validator_cache to nym_contract_cache
* foomp
* Started refactoring http and cli
* Extracted cli arg parsing into its own module
* Cleanup
* Extracted start methods into various modules to clean main up
* WIP commit
* Build working, swagger not
* Fixed swagger docs metadata
* Removed log statement
* Circulating supply cache now working with simple logic
* Fixed up circulating supply method names
* Starting to work in some (wrong) constants
* Documented the cache
* Renaming circulating-supply route
* nym-api compiling after the rebasing
but most likely not fully working yet
* removed unused imports
* only starting RewardedSetUpdater if the config flag is set
* nym-api compiling with coconut feature
* removed redundant process_runner
* removed generic aspect of nym-api nyxd::Client
* signle entry point for starting nym_contract_cache
* do not eagerly grab instances of managed state
* inlining openapi route spec
* CirculatingSupplyResponse type
* fixed compilation of coconut tests
* calculating circulating supply based on mixmining reserve and vesting tokens
* separated different variants of caching intervals
* allow nym-api to specify address of the vesting contract
* fixed types export
* renamed the query on the vesting contract
* reorganised startup procedure and made all start methods independent from rocket
* cleaned up startup procedure for nym-api
* startup checks for rewarding permisssions
* updated changelog
* added config flag to control whether circulating supply should be updated
Co-authored-by: Dave Hrycyszyn <futurechimp@users.noreply.github.com>
* fixed all uses of deprecated clap methods
* updated all uses of clap to 4.0
* unified obtaining build information
* moved around the imports
* Moved all nym-api arguments to ApiArgs and simplified parsing
* Using common shutdown signal code
* Using clap for parsing Vec<Url>
* stricter validation of socks5-client arguments
* ibid for the native client
* ibid for the gateway
* ibid for the mixnode
* clippy