* removed mnemonic from gateway config struct
scaffolding for common mixnet listener
running verloc unconditionally in a nym-node
remove filtering by mixnode
extracted verloc to separate crate
integrated nym-node-http-server more tightly with the binary
most logic for handling forward packets
running all mixnode-related tasks natively inside nymnode
removed gateway storage trait in favour of the only concrete implementation
most logic for handling final hop packets
using nym-node owned socket listener for gateways
utility for sending plain message through mixnet + gateway fix
using common packet forwarding in both modes
nifying nym-node metrics
reproduce behaviour of the console logger
cleaned up cli args
redesigned gateway tasks startup procedure
removing dead code
scaffolding for old config v6
config migration
implemented MixnetMetricsCleaner
* clippy
* require entry/exit for wireguard
* removed dead code in migration code
* updated config template
* use custom user agent for verloc queries
* fixed premature shutdown of gateway tasks
* hidden nym-api flag to allow illegal node ips
* experiment: final hop handing with wireguard
* added additional startup logs
* typo
* fixed legacy stats endpoint data
* additional logs
* apply review comments
* fixed local testnet manager
* Stop ActionController only after both incoming channels closed
* Downgrade task getting dropped message to debug level
* The warning to the user is not a warning that things didn't work
* rustfmt
* fix channel close logic
* Don't close real traffic stream and sent notification listener too aggressively
* [wasm-client] keeping ownership over 'ReceivedBufferRequestSender' channel when spawning 'ResponsePusher'
* Bump version of Typescript SDK to RC.10
* GitHub Actions workflow to publish SDK to NPM
* Bump package version manually
---------
Co-authored-by: Mark Sinclair <mmsinclair@users.noreply.github.com>
* js error message
* Ability to explicitly disconnect mixfetch
* removed unused import
* added disconnect method directly to sdk package
* simplifying error throw
Co-authored-by: Mark Sinclair <14054343+mmsinclair@users.noreply.github.com>
* added onunload event listener handler
* Using global instance of mixfetch to disconnect
Co-authored-by: Mark Sinclair <14054343+mmsinclair@users.noreply.github.com>
* Bump RC versions
* MixFetch, move unload handler to creation and check for undefined `window`
* Bump RC version
* Force TLS on mixFetch demo
* Add info about working around mixed content errors for mixFetch
---------
Co-authored-by: Mark Sinclair <14054343+mmsinclair@users.noreply.github.com>
Co-authored-by: Mark Sinclair <mmsinclair@users.noreply.github.com>
* changed NymConfigTemplate trait to call 'template' by reference
* network requester lib
* introduced generic parameter to 'MixTrafficController' to allow non-remote gateways
* allowing for custom gateway sender
* types cleanup
* minor gateway cmds refactor + initial NR work
* wip
* running a NR inside gateway
note: this NR isnt tied to the gateway yet
* rebase fixes
* propagating same shutdown handle
* wip
* starting NR with appropriate local transceiver
* fixed premature shutdown
* wiring up PacketRouter
* both ends wired together
* actually working
so much cleanup to do now
* started removing dead code
* wip
* temp: hardcode gateway
* further cleanup
* fixed build of other binaries
* setup-network-requester subcmd
* overriding NR config in gateway init/run
* wip making it wasm-compatible [again]
* refactored 'GatewaySetup'
* clippy and friends
* removed debug code
* rust 1.72 lints
* ensuring local gateway is available + some comments
* correctly putting network requester data in the same underlying details struct
* improved gateway errors
* changed 'network_requester_config' deserialization
* missing clap annotation for 'enabled' flag in 'setup-network-requester' command
* saving config file after 'setup-network-requester'
* removed dead code
* review comments
* make embedded NR wait for gateway to come online (for at most 70min)
* fixed shutdown on successful gateway wait
* updated NR config override
* Ability to disconnect and reconnect GatewayClient
* usage of ibid. inside NodeTester
* example
* wasm-compatible `wait_for_shutdown` (for the future)
* added cargo config file to explicitly specify build target
* wip
* Config option to disable topology refreshing
* extracted common parsing code
* helper trait for working on wasm topology
* wasm topology parsing
* restored (slightly modified) old js-example
* wip
* Moved message preparation into a trait
* wip
* long-winded way of sending test packet
* standalone NymNodeTester
* finishing the test upon receiving all packets even if timeout wasnt reached
* initial round of cleanup
* sending multiple test packets in normal NymClient
* javascript-side cleanup
* starting mixnode test on btn click
* Improved NymNodeTester constructors
* improved error handling and constructors
* tester utils error handling
* further cleanup + using BTreeMap for NymTopology mixnodes
* handling missed errors
* splitting up 'test_node'
* split up and cleaned up generation of test result
* clippy + fixed example
* post rebase fixes
* another broken test
* prevent running multiple parallel tests
* cargo fmt
* Added nym- prefix to node tester utils
* 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'
* socks5: send network-requester error in status channel
* Minor tidy
* task-manager: send status msg to indicate ready
* changelog: add note
* coconut/tests: fix clippy for rustc 1.66
* cleaned up MixProcessingError
* Added Error impl to (hopefully) all error enums in the codebase
* Replaced all occurences of error("{0}") with error(transparent)
* Changelog entry
* nym-connect: send status messages from socks5 task to tauri backend
* common/tasks: fix spawn for wasm
* Tidy up some names
* make status channel bounded in case there is no one listening
* experimenting with extracting more common client code
* drying up the wasm client
* allowing some dead code for the time being
* fixed formatting in nym-connect
* made socks5 client inside nym-connect immutable
* made clippy a bit happier
* hidden away target locking for recv timeout
* Rewarded set updater shutdown (partial) handling
* Shutdown handling in monitor
* Remove shutdown from packet receiver
* Configurable shutdown timeout
* Select on test_run too
* Remove unnecessary await/async
* Add bias to shutdown select and concurrency for big tasks
* Put cpu-bound packet prep on separate thread, to avoid blocking
* Use a better fit timeout value
* Fix clippy warnings
* Update changelog
* Fix wasm client