commit cddd9e8e4c
Merge: 40fbdff0976dd7aa
Author: Drazen Urch <durch@users.noreply.guthub.com>
Date: Thu Sep 16 17:27:27 2021 +0200
Merge branch 'develop' into tauri-wallet
commit 976dd7aae2
Author: Drazen Urch <drazen@urch.eu>
Date: Wed Sep 15 17:28:49 2021 +0200
Add block_height method to Delegation (#778)
Co-authored-by: Drazen Urch <durch@users.noreply.guthub.com>
commit 0d21f4e937
Merge: e84af4f61403449a
Author: Fouad <fmtabbara@hotmail.co.uk>
Date: Wed Sep 15 12:41:29 2021 +0100
Merge pull request #776 from nymtech/update/re-enable-bonding
re-enable bonding
commit 1403449ad5
Author: fmtabbara <fmtabbara@hotmail.co.uk>
Date: Tue Sep 14 16:00:21 2021 +0100
enable bonding
commit e84af4f601
Author: Drazen Urch <drazen@urch.eu>
Date: Tue Sep 14 15:15:26 2021 +0200
Migrate legacy delegation data (#771)
* Skip ReadOnlyBucket deserialization errors
* empty migration
* clippy
* cargo schema
* Drop invalid delegation data
* Dont drop old data
* Add todo
* Unify on type param
* gateways are different
* cargo fmt
Co-authored-by: Drazen Urch <durch@users.noreply.guthub.com>
commit 26b032c15c
Merge: e1ddaff0cba36253
Author: Mark Sinclair <mmsinclair@gmail.com>
Date: Tue Sep 14 10:09:14 2021 +0100
Merge pull request #774 from nymtech/feature/explorer-api-delegations
Explorer-api: add API resource to show the delegations for each mix node
commit cba3625394
Author: Mark Sinclair <mmsinclair@gmail.com>
Date: Mon Sep 13 10:33:41 2021 +0100
explorer-api: add API resource to show the delegations for each mix node
commit e1ddaff04d
Merge: 0b9c03ca66ab5de4
Author: Fouad <fmtabbara@hotmail.co.uk>
Date: Fri Sep 10 17:17:14 2021 +0100
Merge pull request #772 from nymtech/update/disable-bonding
add app alert
commit 66ab5de442
Author: fmtabbara <fmtabbara@hotmail.co.uk>
Date: Fri Sep 10 16:16:58 2021 +0100
add app alert
commit 0b9c03ca90
Author: Dave Hrycyszyn <futurechimp@users.noreply.github.com>
Date: Fri Sep 10 11:23:21 2021 +0300
Adding deps for building the Tauri wallet under Ubuntu (#770)
commit c9dce0c1da
Author: Bogdan-Ștefan Neacşu <bogdan@nymtech.net>
Date: Thu Sep 9 11:21:45 2021 +0200
Feature/consumable bandwidth (#766)
* Set actual value for bandwidth
Also put it as a public attribute, such that it can be actively used
by the credential consumer
* Switch from sending Attribute structs to sending the actual attribute bytes over the wire
* Add atomic bandwidth value to gateway
* Consume bandwidth based on the mix packet size
* Use Bandwidth struct for specific functionality
* Move bandwidth code outside the dependency path of wasm client
* Use u64 instead of AtomicU64, as the handling is not parallel
commit e00e77db15
Author: Bogdan-Ștefan Neacşu <bogdan@nymtech.net>
Date: Wed Sep 8 15:07:24 2021 +0200
Feature/bond blockstamp (#760)
* Add block_height to MixNode/GatewayBond
* Reward based on blockstamp of bonded node or of delegation
* Add specific tests
* Add migration code
* Apply doc nit
commit 1074449f91
Merge: 08276e6e9a3d824a
Author: Fouad <fmtabbara@hotmail.co.uk>
Date: Tue Sep 7 23:45:10 2021 +0100
Merge pull request #767 from nymtech/update/remove-app-alert
remove alert
commit 08276e6e42
Author: Bogdan-Ștefan Neacşu <bogdan@nymtech.net>
Date: Tue Sep 7 16:33:30 2021 +0200
Remove migration code (#759)
commit 9a3d824a4a
Author: fmtabbara <fmtabbara@hotmail.co.uk>
Date: Mon Sep 6 20:39:24 2021 +0100
remove alert
commit 2789ee8f18
Author: Bogdan-Ștefan Neacşu <bogdan@nymtech.net>
Date: Fri Sep 3 15:30:45 2021 +0300
Update coconut-rs and use hash_to_scalar from there (#765)
Failed tests are due to some nightly issue, not related to this PR
commit a7ba643c35
Merge: 28be53eec42f3c68
Author: Fouad <fmtabbara@hotmail.co.uk>
Date: Fri Sep 3 09:14:50 2021 +0100
Merge pull request #762 from nymtech/feature/app-alert
add app alert banner
commit 28be53eefb
Author: Bogdan-Ștefan Neacşu <bogdan@nymtech.net>
Date: Thu Sep 2 18:26:40 2021 +0300
Add block_height in the Delegation structure as well (#757)
commit 219c45a352
Author: Jędrzej Stuczyński <jedrzej.stuczynski@gmail.com>
Date: Thu Sep 2 15:48:29 2021 +0100
Updated cosmos-sdk (#761)
* Updated cosmos-sdk
* Re-exposing more things
commit 1a3b83752e
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date: Thu Sep 2 15:45:56 2021 +0100
Bump next from 11.1.0 to 11.1.1 in /wallet-web (#758)
Bumps [next](https://github.com/vercel/next.js) from 11.1.0 to 11.1.1.
- [Release notes](https://github.com/vercel/next.js/releases)
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js)
- [Commits](https://github.com/vercel/next.js/compare/v11.1.0...v11.1.1)
---
updated-dependencies:
- dependency-name: next
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
commit c42f3c6844
Author: fmtabbara <fmtabbara@hotmail.co.uk>
Date: Thu Sep 2 12:29:47 2021 +0100
add app alert banner
commit a5d3ba3900
Merge: 92e13a5dcdf0d443
Author: Mark Sinclair <mmsinclair@gmail.com>
Date: Tue Aug 31 15:59:11 2021 +0100
Merge pull request #755 from nymtech/bugfix/explorer-api-ping
Explorer API: port test now split out address resolution and add units tests
commit cdf0d44341
Author: Mark Sinclair <mmsinclair@gmail.com>
Date: Tue Aug 31 14:37:28 2021 +0100
explorer-api: turned down logging from `error` to `warn`
commit 92f976a45d
Author: Mark Sinclair <mmsinclair@gmail.com>
Date: Fri Aug 27 11:34:21 2021 +0100
explorer-api: sanitize hostname before running checks to avoid leading or trailing spaces that are known to exist in the current test net
commit 2bc858cde3
Author: Mark Sinclair <mmsinclair@gmail.com>
Date: Fri Aug 27 09:32:26 2021 +0100
explorer-api: port test: split out address resolution and add units tests
commit 92e13a5d00
Author: Bogdan-Ștefan Neacşu <bogdan@nymtech.net>
Date: Tue Aug 31 14:51:15 2021 +0300
Feature/add blockstamp (#756)
* Add RawDelegationData
* Fix current tests for the new stored data
* Added migration commit. Will be reverted after doing the migration
* New tests for block height
* Use current blockstamp instead of 24h old one
* Put _alot_ of migration stuff in the migrate function scope
commit 122f5d9f2e
Author: Bogdan-Ștefan Neacşu <bogdan@nymtech.net>
Date: Mon Aug 30 10:27:20 2021 +0300
Feature/cred after handshake (#745)
* Call perform_initial_authentication instead of register in clients
* Refactor the register/authenticate functions a bit
* Introduce Bandwidth request type
* Add encryption layer to cred
* Remove cred pass and check from handshake
* Replaced unreachable! with error
* Changed decrypt_tagged signature to not take mutable ownership of data
* Put handle_bandwidth work inside a function
* Add check before unwrap
* Remove unnecessary async
* Decouple bandwidth credential from authentication
* Use new_error for ServerResponse:Error
* Send a fresh IV each time the BandwidthCredential request is sent
* Remove unwrap of bincode::serialize
* Add comment regarding Bandwidth response
* Remove _mut from naming
* Leave Debug trait alone, as the initial error doesn't reproduce anymore
* Pass iv as Vec<u8> instead of base58 string
* Renamed AuthenticationIV to IV, as it is now used for more the just authentication
* Did some IV refactorization
commit 982ee0266c
Author: Bogdan-Ștefan Neacşu <bogdan@nymtech.net>
Date: Fri Aug 27 16:02:34 2021 +0300
Feature/get own delegations (#748)
* Introduce reverse delegation bucket
* Add client command
* Fix clippy error
* Added tests in queries
* Add tests in transactions
* Migration code. Will be reverted after it's called on testnet
* Replace unwrap with expect
* Move some test code in the right file...
... to remove unnecessary auxiliary function.
* Reduce the scope to migration auxiliary functions
* Rename everything from [node]reverse to reverse[node]
* Fix fmt
commit 5f42a9bd05
Author: Jędrzej Stuczyński <jedrzej.stuczynski@gmail.com>
Date: Fri Aug 27 13:52:18 2021 +0100
NetworkMonitorBuilder - starting the monitor after rocket has launched (#754)
* NetworkMonitorBuilder - starting the monitor after rocket has launched
* Removed unused import
commit 1811df9ddb
Author: Jędrzej Stuczyński <jedrzej.stuczynski@gmail.com>
Date: Fri Aug 27 13:52:10 2021 +0100
Enabled validators api argument (#753)
commit 6bdfe7f895
Author: Jędrzej Stuczyński <jedrzej.stuczynski@gmail.com>
Date: Thu Aug 26 11:21:01 2021 +0100
Correctly bounding nominator of uptime calculation (#752)
commit c6b286a1db
Author: Jędrzej Stuczyński <jedrzej.stuczynski@gmail.com>
Date: Wed Aug 25 14:50:57 2021 +0100
Fixed argument parsing for ipv6 'good' topology (#751)
commit b3568a26f5
Author: Bogdan-Ștefan Neacşu <bogdan@nymtech.net>
Date: Tue Aug 24 11:25:05 2021 +0300
Revert "Migration commit, will be reverted after the testnet contract is updated" (#749)
This reverts commit 38d868bcce.
commit 15ae0f521e
Author: Jędrzej Stuczyński <jedrzej.stuczynski@gmail.com>
Date: Mon Aug 23 10:26:51 2021 +0100
Feature/more reliable uptime calculation (#747)
* New database table holding monitor run info
* SQL interface for new table
* Updated uptime calculation to instead rely on number of monitor test runs
commit 2923d4b872
Author: Bogdan-Ștefan Neacşu <bogdan@nymtech.net>
Date: Thu Aug 19 22:03:07 2021 +0300
Update template toml key (#746)
* Calculating gas fees
* Ability to set custom fees
* Added extra test
* Removed commented code
* Moved all msg types to common contract crate
* Temporarily disabling get_tx method
* Finishing up nymd client API
* Comment fix
* Remaining fee values
* Some cleanup
* Removed needless borrow
* Fixed imports in contract tests
* Moved error types around
* New ValidatorClient
* Experiment with new type of defaults
* Removed dead module
* Dealt with unwrap
* Migrated mixnode to use new validator client
* Migrated gateway to use new validator client
* Mixnode and gateway adjustments
* More exported defaults
* Clients using new validator client
* Fixed mixnode upgrade
* Moved default values to a new crate
* Changed behaviour of validator client features
* Migrated basic functions of validator api
* Updated config + fixed startup
* Fixed wasm client build
* Integration with the explorer api
* Removed tokio dev dependency
* Needless borrow
* Fixex wasm client build
* Fixed tauri client build
* Needless borrows
* Fixed client upgrade print
* Removed redundant comments
* Made note on aggregated verification key into a doc comment
* Removed mixnet contract references from verloc
* Modified default validators structure
* Reformatted validator-api Cargo.toml file
* Removed commented code
* Made the doc comment example a no-run
* Fixed a upgrade print... again
* Adjusted the doc example
* Removed unused import
* Hand coconut issuance off the validator-api
* git to cargo
* Move to own module
* Integrate tauri-client, extract common interface
* cargo fmt
* Ergonomics
* Facelift
* Wrap up tauri client
* Set up publish
* Fix fmt
* Install CI dependencies
* Inline deps
* Remove mac deps
* Add dist dir
* Fix beta clippy nag
* Commit some gateway work
* Thread coconut creds through gateway handshake
* Push in progress patch
* Move State from tauri client to coconut interface
* Move get_aggregated_signature from tauri client to coconut interface
* Move prove_credential from tauri client to coconut interface
* Update sphinx version
* Mount coconut routes and manage config file in rocket
* Split default validator endpoint into host and port
* Add init for simple credential initialization
* Fix common gateway client
* Add coconut cred to webassembly client
* Add coconut cred to socks5 client
* Add coconut cred to native client
* Remove direct coconut-rs dependency
* Use only coconut interface in validator api
* Leave validator-api out of workspace and update Cargo.lock
* Fix clippy warnings and update Cargo.lock after rebase
* Switch from attohttpc to reqwest for async gets
This is not only needed for using async requests, but also because attohttpc
causes OpenSSL issues when cross compiling the webassembly client.
* Replace attohttpc with reqwest for puts too
* Make tauri client commands async
* Fix borrow error
* Guard gateway server code from compiling for wasm (client)
* Fix clippy wasm client
* Fix tests
* Fix clippy in tauri client
* Remove commented code
* Update comment of init message
* Remove unnecessary hex dependency
* Replace config argument with key_pair
* Use `trim()` for whitespace removal
* Move verification key query higher up the function calls
* Put KeyPair instead of Config into rocket's managed items
* Re-enable tauri client verify button
* Move verification key up the function calls for prove_credential
* Use consts for verification_key and blind_sign routes of validator-api
* Replace `match` with `map_err`
* Fix typo
* Remove now unnecessary `Clone` derives
... as config is no longer managed by rocket
* Replace `match` with `map_err`
* Make `InternalSignRequest` really internal to validator-api
* Make `with_keypair` live up to its name
* Update Cargo.lock after rebase
* Replace String error with HandshakeError
* Add CoconutInterfaceError to coconut-interface
* Format the new error in tauri client
* Remove from default, as wasm client doesn't build
* Put public key as init argument...
... for the public attributes of the credential
* Use the hash_to_scalar function to make public key into attribute
Use the function from cli-demo-rs from https://github.com/nymtech/coconut
to make the identity public key into a public attribute.
* Replace vector with array for InitMessage
As we know beforehand the size of the keys, we can use fixed size array
instead of vectors. This eliminates the need for a prefixed length in
the serialized form of the InitMessage structure and enables a easy
deserialization of the remote identity before the actual bincode
deserialization that we do in the handshake process.
Before this, the `extract_remote_identity_from_register_init` function
attempted to deserialize into a public key the length-prefixed public key
received from the client, thus failing sporadically with a `Cannot decompress
Edwards point` error.
* Pass public and private attributes to state `init` instead of PublicKey
* Make tauri call with dummy attributes
* Make clients call with their keypairs
* Revert "Make clients call with their keypairs"
This reverts commit b348f47f7a.
* Put dummy, bandwidth private attribute
Co-authored-by: Bogdan-Ștefan Neacșu <bogdan@nymtech.net>
* Put endpoints and contract address in one place
* Put common ports in one place
* Split cache version from route
* Share validator-api port value between server and client
* Put BECH32 prefix in defaults
* Put DENOM in defaults
* Put network monitor address in defaults
* Fix clippy
* Fix another clippy + tests import of DENOM
* Update the version to 0.11.0 for non-upgradable crates
* Fix target version for the current upgrade functions
* Upgrade native client
* Upgrade socks5 client
* Upgrade mixnode
* Upgrade gateway
* Basic storage stub
* New models for new node status api
* Route handling
* Mounting new routes
* Missing selective commit
* Moved network monitor related files to separate package
* Starting to see some sqlx action
* Schema updates
* Log statement upon finished migration
* Removed old diesel related imports
* Converted mixnode cache initialisation into a fairing
* Moved cache related functionalities to separate package
Also defined staging there
* Created run method for validator cache + removed unwrap
* Removed old node-status-api types and left bunch of todo placeholders in their place
* Fixed managing validatorcache
* Status reports are starting to get constructed
* Submitting some dummy results to the database
* Removing duplicate code for generating reports
* Removed statuses older than 48h
* Initial attempt at trying to obtain reports for all active nodes
* Removed duplicates from the full report
* Grabbing uptime history
* Updating historical uptimes of active nodes
* Updated sqlx-data.json
* Removed all placeholder foomp owner values
* Changed Layer serde behaviour for easier usage
* Extended validator api config
* Initial (seems working !) integration with network monitor
* Added database path configuration to config
* Using ValidatorCache in NetworkMonitor
* Flag indicating whether validator cache has been initialised
* Introduced a locla-only route for reward script to perform daily chores
* Flag to save config to a file
* Moved spawning of receiving future to run method rather than new
* Removed arguments that dont make sense to be configured via CLI
* Removed dead code from config file
* More dead code removal
* Added validator API to CI
* Corrected manifest-path arguments
* Constructing network monitor by passing config
* Combined validator API CI with the main CI file
* Using query_as for NodeStatus
* Checking if historical uptimes were already calculated on particular day
* Making id field NOT NULL
* More query_as! action
* Updated sqlx-data.json
* Removed unused chrono feature
* Renamed the migration file
* Changed default validator endpoint to point to local validator
* Removing unnecessary clone
* More appropriate naming
* Removed dead code
* Lock file updates
* Updated network monitor address in contract code
* Don't stage node status api if network monitor is disabled
* cargo fmt
* Updated all license notices to SPDX
* Add validator-api common client
* Call validator-api from different clients for gateway topology
* Call validator-api from different clients for mixnode topology
* Use consts for the validator-api queries
* Rename the new query_validator function to query_validator_api
* Add mut to mixnode validator client
* Add refreshValidatorAPIGateways as a way to get the gateways...
... from validator-api
* Add refreshValidatorAPIGateways as a way to get the mixnodes...
... from validator-api
* Add yet another mut
* Change the port to validator-api service when querying the topology
* Add parsing check on the config phase...
... to make sure the validator URLs are in the correct format.
* Fix another clippy error
* Use all provided validators instead of just the first one
* The mutable reference was not actually needed, so remove it
* Use global variable for validator-api port
* Use url crate for checking the format and changing the port
* Use URL for parsing and move constants of validator-api to index.ts...
... until we find a way to link to the values from the validator-api
crate.
* Change global variables naming and have the API version into each API query
* Revert the changes to the index on connect...
... as they were working correctly before.
* Use all provided validators for mixnodes as well
* Remove location and layer
* Modified NymConfig trait to make id optional
* Basic validator-api config definition
* Optionally using the config during startup + flag to enable monitoring
* Rocket main stub
* Add anyhow
* Stub cache reads and writes
* Finalize stubs
* Add generic Rocket.toml
* Put back targets
* Have cache own its validator client
* allow dead code
* Update rocket.toml for 0.5