* squashing work on using cancellation in nym crates
making nym-task wasm compilable
removed sending of status messages
replaced TaskManager with ShutdownManager in the validator rewarder
additional helpers for ShutdownManager
simplified ShutdownToken by removing the name field
TaskClient => ShutdownToken within all client tasks
wip: remove TaskHandle
* track all long-living client tasks
* add task tracking for most top level tasks within nym-node
* improved default builder
* split up cancellation module
* module documentation and unit tests
* nym node fixes and naming consistency
* wasm fixes
* assert_eq => assert
* wasm fixes and made 'run_until_shutdown' take reference instead of ownership
* linux-specific fixes to IpPacketRouter
* post rebasing fixes for signing monitor
* add ShutdownManager constructor to build it from an external token
* applying PR review suggestions
* move stats types from vpn-client to here
* base stats api
* change storage schema
* add link to nymAPI for whitelisting
* remove outdated comment
* more comments update
* example of chrono vs time
* Add build.rs
- exports DATABASE_URL so cargo check works
- exports SQLX_OFFLINE for CI
- added pg_up.sh which spawns PG container
- required for cargo sqlx prepare
* fixes time vs chrono issue and cleaner build with docker
* add correct swagger types, with feature locking where relevant
* apply dynco suggestions
---------
Co-authored-by: dynco-nym <173912580+dynco-nym@users.noreply.github.com>
* make packet statistics wasm-compatible
* fixed possible overflow issue in delay controller
* updated wasm-client to be compatible with the current network
* applied same logic to mixfetch client
* removed dead imports
* updated versions
* add stats_reporting_config in config and env var
* fix serializazion issue
* remove duplicate stats reporting config
* cargo toml cleanup
* more cleanup
* draft of wasm sdk for stats reporting
* fix wasm sdk?
* again
* make stats sending possible from outside the sdk
* make sure stats_id from client and gateway reported ared different
* draft of client data collection
* refactor gateway stats collection to fit client stats collection in same common crate
* moved client stats event and reporter to common crate
* basic os reporting
* add stats reporting address in sdk
* integrate stats scaffolding changes
* remove tokio spawn to potentially accomodate wasm32
* fmt
* fix typo
* add client_stats_id
* unify stats reporting
* avoid shutdown handle drop
* add client_type to stats reporting
* better way to build statsReportingconfig
* disarm shutdown on sink
* remove sink reporter and env dev-dependency
* cherrypick from jon/send-packet-stats
* uncoditionally start controller + licensing
* improve ClientStatsReport serialization
* better time handling
* reintroduce proper local reporting
* Let task wait for shutdown when exiting
* Log tweak
---------
Co-authored-by: jmwample <jmwample@users.noreply.github.com>
Co-authored-by: Jon Häggblad <jon.haggblad@gmail.com>