* Ci improvements (#103)
* pin bitcoin to new v0.21.1 tag
* fix binary installation
* for binary install, pytest.ini is the file to use
* kick
* adjusted Dockerfile to have at least wget to download artifacts
* investigate test_hwibridge timing out
* restest with v0.20.1
* implements timeout, hope that was reason to hang
* remove livelogging again
* fix hanging test
* Enable bitcoind-log-output on demand
* Timeouts now raising SpecterErrors
* catch a bit more generic Exception
* increase timeout
* fix abandontx test
* simplified code
* increase timeout
* increased timeout also for pytest
* separate timeouts for liquid/bitcoin
* forget checkin
* increase timeout for bitcoin as well
* bugfix: node specific timeouts
* increase timeout for elm hotwallet
* Now timeouts for all occurences of broadcasting
* global vars done right
* Yet another ReadTimeoutError to take account for
* fix assertion
* fix not-defined issue
* proper status_code checking instead of error_code
* increase wait-time
* increase btc:mine wait to 15 s
Co-authored-by: Stepan Snigirev <snigirev.stepan@gmail.com>
* rollback to v0.20.1
* rollback - it is a src-install, stupid
* mixed up bitcoin and elements
* forgot to fix reference
* rollback test_abandon_purged_tx
* increase timeout to 30 s
* increase Liquid on cypress to 40s
Co-authored-by: Stepan Snigirev <snigirev.stepan@gmail.com>
* Included API end points
Included 3 API end points:
###/api/specter ["GET"]
Basic Specter info from app.specter class
###/api/full_txlist/ ["GET"]
Full Transaction list for all wallets
###"/api/wallet_info/<wallet_alias>/ ["GET"]
More detailed wallet info and transactions from the app.specter.wallet_manager class
* Update src/cryptoadvance/specter/controller.py
Include `wallet.check_unused()`
Co-authored-by: benk10 <ben.kaufman10@gmail.com>
* API Update
Made a few changes:
- Flattened the wallet list to be similar to full transaction list
- included versioning on url `/v1alpha/`
- Included `wallet.utxo` data
- Improved `safe_serialize` for better json output
Pending Updates:
- Create a separate file for API (as a blueprint)
- Explore using Flask-restful for improved authentication (downside is that it is another dependency - not sure if already a requirement for specter)
* adding a rest-api
* Implemented API end points inside of example.py
* Merging with remote
* Fixed API.md
* Removing example-resources
* migrating to focal due to cryptography needs newer pip
* fix the image
* black and tidy up
* Deleted more useless stuff
* first take for psbt (still broken)
* get tests to work
* fix devices_signed undefined
* fix part2
* fix part 3
* fix part 4
* Rest Get-Requests for psbt working
* fix part 5
* extending psbt_creator with json format
* tests finished. bitcoind_regtest changed to scope session
* speed up tests
* fix tests
* tiny test for LiquidRpc, probes improvements
* try fixing testing-infra
* kick
* finally fix infra, hopefully
* removing assertion
* refactoring and fixing API
* fix the rest-tests
* fix last liquid failing test
* polishing: error_handling via decorator
* split-up docs
* fix requirements.in
* polishing REST-API
* optimize startup for internal_nodes
* Update src/cryptoadvance/specter/internal_node.py
Co-authored-by: benk10 <ben.kaufman10@gmail.com>
Co-authored-by: Alpha Zeta <40473443+pxsocs@users.noreply.github.com>
Co-authored-by: benk10 <ben.kaufman10@gmail.com>
Co-authored-by: Alpha Zeta <alphazeta@protonmail.com>
Co-authored-by: Stepan Snigirev <snigirev.stepan@gmail.com>
* kick
* release-notes
* updating black
* Slightly changes rule for black
* version now v1.3.1
* pin pre-commit and black-version used for linting
* black
* Package bitcoind with specter WIP
* fixes
* Setup wizard
* Fix non default datadir
* Update bitcoind.py
* Data folder config
* UI and text fixes
* Tor setup (macOS)
* Tor setup Windows and Linux support
* Wizard!
* action btns
* About page update
* Tor controller
* Update specter.py
* tor_controller getter
* Fix wizard bug
* Fix wallet json export backup
* remove docker dependency for main
* refactoring docker-requirement out of the way
* fix import
* Fix bitcoind docker issue
* Update tor_daemon.py
* latest pruned node
* Tor options and fixes
* Fix bitcoind for wondows
* Windows process stop fixes
* Moar windows fix attempts
* Fix exit windows
* Update src/cryptoadvance/specter/cli/cli_server.py
Co-authored-by: Kim Neunert <kneunert@gmail.com>
* Cleanups
* Cleanups
* Add Bitcoin Core Tor support
* Update specter bitcoind and tord
* Small UI update
Co-authored-by: Kim Neunert <kneunert@gmail.com>
Co-authored-by: Kim Neunert <k9ert@gmx.de>
* Initial commit
* configuring Black excludes
* fixing black excludes
* Interim commit
Mempool tx purge is working!
* Server side implementation and front end UI flow
* Remove debugging
* Updated docs, more comments
* Reverting datadir changes
No longer necessary to support final test case.
* final cleanup
* Improved guidance shown with the "Abandon transaction" button
* Optimize the is_tx_purged call
* spelling fix
* Test bugfixes
* remove assumption that we're running with `--docker` and already have 100 blocks mined.
* Pass `rpcport` into BitcoindPlainController so it can differentiate between the default port and the one-off instance used in the test.
* Test suite improvements
* Implement stop_bitcoind for BitcoindPlainController.
* The first `test_wallet_manager` tests were behaving differently between local bitcoind vs docker. Updated to instantiate their own bitcoind just for the two tests.
* Fixing merge
* Removing debugging
* new file
* commited changes before master pull
* copied embit tests and adapted to specter
* max blackify
* ultra max blackify
* ultra ultra max blackify
* Integration of base58 functions from embit + tests to ensure correct refactoring.
* Integration of base58 functions from embit + tests to ensure correct refactoring.
* Consistent rescan labels (#843)
* added indirect dependencies because pip-compile did not detect them (#842)
Co-authored-by: benk10 <ben.kaufman10@gmail.com>
* descriptor
* removed suspicious bitcoin-submodule-link bla
* Added tests/bitcoin to gitignore
* just renaming by adding _util_
* fix of bugs in hwi lib clone + tests
* test of mainnet address from desc now correct
Co-authored-by: Justin Moon <mail@justinmoon.com>
Co-authored-by: Kim Neunert <k9ert@gmx.de>
Co-authored-by: benk10 <ben.kaufman10@gmail.com>
* -add rate limiting to login and register endpoints
-change otp codes to be harder to guess
* allow user to view/change login and registration rate limiting value
* - add registration link expiry
- make it harder for attackers to discover usernames
- disallow empty usernames
- disallow short passwords
- move "generate registration link" button to the bottom to try and make it clearer that it wont update settings
* create "auth" config subsection
* dont show rate limit and registration timeout inputs unless user is admin
* blackify
* fix mistakes in expiration logic
* fix missed changes to use method field of the auth structure
* fix registration_link_timeout input not present when user is admin
Co-authored-by: benk10 <ben.kaufman10@gmail.com>
* Add Tor url to sidebar
* Dynamic start/ stop Tor
* Start Tor hidden service by default (if possible)
* Updates
* fixes
* Update tor_address.jinja
* Update tor_address.jinja
* Allow starting Tor after running specter
* Delete .env_example
* automate pip-packages-gen + upload for gittags
release documentation
proper package including and static + templates
* Change import- and start logic, removed cli.py
* project-renaming to cryptoadvance.specter
propoer packaging
include proper dependencies
* Adding requirements.txt
* Specify maintainers and thanks to contributors
* Removing test-url for pip-uload. This is now live!
* refactoring sidebar
* Flask-Login, refactoring bootup
* Move logout-button and beautify
* remove arg_config and add -p to mkdir
* Make authentication optional in settings
* fix tests
* reestablished some changes
* style fix and hide login if no auth
* show error mesasge on login if bitcoind is not running
* better logging, skipping tests, renaming rpcpassword and other things
Co-authored-by: Stepan Snigirev <snigirev.stepan@gmail.com>
* automate pip-packages-gen + upload for gittags
release documentation
proper package including and static + templates
* Change import- and start logic, removed cli.py
* project-renaming to cryptoadvance.specter
propoer packaging
include proper dependencies
* Adding requirements.txt
* Specify maintainers and thanks to contributors
* Removing test-url for pip-uload. This is now live!
* Some minor things to consolidate and some guidelines for Development.md
* Add a SpecterError derived from Exception
* Adding vue.js, see #63
* bugfix introduced in #66 missing import pyserial and serial
* some test-refactoring and getting rid of python-bitcoinrpc
* Improvements of Errorhandling of Bitcoin-API, faucet and tests based on that
* testing createpsbt method using unconfirmed outputs