* ability to specify custom TopologyProvider in TopologyRefresher
* topology provider builder method for base client
* ability to take manual control over topology
* wasm fixes
* added topology injection to nym-sdk API
* added examples to nym-sdk and exposed additional helper methods
* 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
* 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
* Setting default 'id' if not provided
* Modified 'NymConfig' to always require 'id'
* moved creation of nym-api directories away from 'override_config'
* missing optional id usage in nym-connect
* changelog
* Removed default value for '--id' argument
* clients: make surb storage more flexible
- in the rust-sdk we make the surb storage generic and pluggable, with
the fs_backend the default.
- make it possible to disable fs_backend at runtime
* Add comment
* changelog: add note
* client-core: tidy up some minor things
* 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'
* Defined OptionalSet trait
* extended the trait to handle environment
* sample implementation for the gateway
* implementation for mixnode
* Added the same feature to nym-api config + made some config types stricter
* fixed compilation and linter issues
* keeping track of parsing error
* attempt at using the trait for the client configs
* Streamlined more arguments
* Removed deprecation on setters
* fixed incorrect test constructor
* missed rebase fixes