Commit graph

251 commits

Author SHA1 Message Date
ack-chai
8843e2f064
fix: retry wallet import with widened range on shrink-refusal (#2604) (#2666)
Some checks failed
Build Docker container on push / Build image (push) Has been cancelled
Electron smoketest / smoketest (push) Has been cancelled
Extension Compatibility Check / extension-compat (push) Has been cancelled
Tests / test (push) Has been cancelled
Tests / cypress (push) Has been cancelled
Tests / extension-smoketest (push) Has been cancelled
TOC Generator / TOC Generator (push) Has been cancelled
Black Python Linter / black (push) Has been cancelled
Co-authored-by: k9ert <117085+k9ert@users.noreply.github.com>
2026-08-08 22:34:48 +02:00
al-munazzim
bf0780d6bc
Protect HWI bridge settings with auth and CSRF (#2679)
Co-authored-by: Nazim <nazim@openclaw.ai>
Co-authored-by: k9ert <117085+k9ert@users.noreply.github.com>
2026-08-08 22:09:44 +02:00
Bunlong Heng
693338d3af
fix(swan): add timeout to remote HTTP requests to prevent hang (#2687)
Co-authored-by: k9ert <117085+k9ert@users.noreply.github.com>
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
2026-08-08 19:13:31 +02:00
k9ert
48fea77b8a
fix: validate active API tokens (#2685) 2026-08-08 14:57:14 +02:00
k9ert
0b027f49fd
fix: dev-server crash in the specter-desktop repo after the project-rename (#2686)
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
2026-08-08 14:12:46 +02:00
k9ert
314a8579a0
deps: bump hwi 2.4.0 -> 3.1.0 (drops Python 3.7/3.8) (#2616) 2026-05-22 09:08:28 +02:00
al-munazzim
64139ebdb7
ci: harden elements GPG key import in install_noded.sh (#2621)
Co-authored-by: Nazim <nazim@openclaw.ai>
2026-05-11 21:22:50 +02:00
k9ert
a793e2dce8
test: bump tested bitcoind to v27.2.0 (#2609)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-19 22:27:32 +02:00
k9ert
a24df2eb50
ci: add GHA test workflow + GPG-verify bitcoind/elementsd downloads (#2606)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-17 20:50:12 +02:00
al-munazzim
041df50d0d
Fix open redirect bypass via percent-encoded characters (issue #2590) (#2596)
Co-authored-by: Nazim <nazim@openclaw.ai>
Co-authored-by: k9ert <117085+k9ert@users.noreply.github.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-09 15:17:11 +02:00
k9ert
5546b1f068
fix: auto-create BTC node from env vars on fresh install (#2598)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-09 14:56:36 +02:00
k9ert
15d5c414b5
Fix floating point rounding in wallet balance properties (#2583)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 14:02:00 +02:00
Oren
8ebf175b4b
Install specterext-timelockrecovery (#2489) 2026-03-28 22:09:34 +01:00
Copilot
248bed824f
Fix KeyError on malformed Bitcoin Core RPC responses (#2532)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: k9ert <117085+k9ert@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-03-27 11:12:18 +01:00
al-munazzim
31524e43b9
fix: guard spectrum_endpoint.wallets_get behind extension check (#2535)
Co-authored-by: Nazim <al-munazzim@users.noreply.github.com>
2026-03-21 12:40:06 +01:00
al-munazzim
485bbbf5be
fix: skip missing extensions gracefully instead of crashing (#2536)
Co-authored-by: Nazim <al-munazzim@users.noreply.github.com>
Co-authored-by: Nazim <nazim@openclaw.ai>
2026-03-21 12:21:04 +01:00
Copilot
5743b58035
Mock external API calls in price provider tests (#2523)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: k9ert <117085+k9ert@users.noreply.github.com>
2026-02-01 13:27:34 +01:00
roshii
50b5d6330e
The alias function is used to create a unique_id out of a user input, e.g. for device and most importantly for wallet names. The naming of this function now reflect this. (#2439)
Signed-off-by: Simon Castano <roshii@riseup.net>
Co-authored-by: k9ert <k9ert@gmx.de>
2024-05-29 14:58:20 +02:00
roshii
0229bb7d62
Fix node2 RPC port & add missing elm mark (#2438)
- Set second test bitcoin node RPC port to 18545 (i/o 18544) to avoid P2P port conflict with first node
- Add missing "elm" mark to test_node_controller.py::test_node_running_elements

Signed-off-by: Simon Castano <roshii@riseup.net>
Co-authored-by: k9ert <k9ert@gmx.de>
2024-05-16 22:23:51 +02:00
Wim van der Ham
0ba9de2de9
Add support for more languages for mnemonics (#2424)
* Add more languages for mnemonics

* Remove check for english if french

* remove dev artifact

---------

Co-authored-by: Wim van der Ham <wfjvdham@gmail.com>
Co-authored-by: Kim Neunert <kim@swanbitcoin.com>
Co-authored-by: k9ert <k9ert@gmx.de>
2024-05-16 18:35:08 +02:00
Wim van der Ham
a52fec89d8
Fix install_noded.sh (#2422)
* Fix install_noded.sh

* reestablish finally

---------

Co-authored-by: Wim van der Ham <wfjvdham@gmail.com>
Co-authored-by: k9ert <k9ert@gmx.de>
Co-authored-by: Kim Neunert <kim@swanbitcoin.com>
2024-05-16 17:58:38 +02:00
k9ert
e9dc494d22
Kn/macos signing (#2432)
* chore: migrate from altool to notarytool

* fix litte things in build-common

* add pyenv install in build-osx

* add pyinstaller/electron/signing_logs to gitignore

* chore: migrate from altool to notarytool

* fix little things in build.common

* add pyenv install in build osx

* add pyinatsller electron signing logs to gitignore

* updated build-osx.sh

* fix entitlement

* heavily refactoring the electron app

* polish and improve

* further bugfixing and polishing

* tiny change to improve support of MacOS

* Fix dependency issues

---------

Co-authored-by: Manolis <moneymanolis@protonmail.com>
2024-05-01 12:31:32 +02:00
Manolis Mandrapilias
622e111ba0
Bugfix: Add missing signet key (#2368)
* add missing signet key
* fix rpc tests
2023-08-23 17:05:39 +02:00
Manolis Mandrapilias
9261245faf
Feature: Enable import of a multisig wallet that uses a multi-descriptor (#2349)
* Use imported descriptor for wallet creation and delete old_format

* test for new descriptor util function

* copy changes backup pdf

* add uses_multi property and adapt wallet pdf with it

* copy change new wallet screen

* fix util descriptor tests

* make convert_receive_descriptor_to_combined_descriptor work with single sig descriptors

* Update src/cryptoadvance/specter/templates/wallet/new_wallet/new_wallet.jinja

* simplify convert_receive_descriptor_to_combined_descriptor

* fix typos
2023-06-29 17:23:52 +02:00
k9ert
e8c5e3f4e6
Bugfix: method getaddressinfo not implemented (#2313)
This PR fixes #2312 which are four things:
* getaddressinfo was not implemented in spectrum which results in "method not found"
* There was an unrelated KeyError which occured in Transactions where one the output was a change-address. It's a bit unknown why that hasn't occured earlier. At least it was diffcult to spot as the fetch_transactions call was way to huge and very confusing. So ...
* the fetch_transactions call was refactored in its own class, TxFetcher. As we did that,  we also moved two other related files in a newly created wallet-package.
* Tiny bug around tx["amount"] which only exists as tx["flow_amount"] for transactions.
2023-03-27 21:22:56 +02:00
k9ert
66326dece0
Chore: Random improvements (#2292)
* remove lots of  wallet_manager logging

* make tiny perf-logging a bit more usefull

* bump spectrum

* limit logging in Spectrum

* deactivating swan plugin

* set devstatus to beta

* checker frequency and enabling env-var SPECTER_LOGFORMAT even in dev

* extension-framework refactorings and improvements

* fix tests

* extension discovery bugfixes

* better logging and discovery control

* fix test

* more reasonable speech

* remove that unwanted code
2023-03-09 12:34:44 +01:00
k9ert
2f21a03c26
Feature: More robust wallet recreation and support tool "Wallet management" for Spectrum (#2273)
* having a very limites spectrum wallet-backend-admin tool

* remove renumbering of wallets

* enriched alias function

* add wallets_aliases property to wallet manager

* use alias when checking names at wallets endpoint

* get rid of scary "ERROR" in base.jinja

* change title for input field for creating a new wallet

* strip leading and trailing whitespaces in alias()

* pytest added

* fix pytests

* Moving Wallet Link to settings

* a bit of styling

---------

Co-authored-by: moneymanolis <moneymanolis@protonmail.com>
Co-authored-by: Manolis Mandrapilias <70536101+moneymanolis@users.noreply.github.com>
2023-03-02 19:59:33 +01:00
Manolis Mandrapilias
c1413e4f82
Bugfix: Multiple outputs in the same tx are smashed together in one UTXO (#2259)
* have multiple tx items with different vouts in the same tx

* pytest added

* additions to pytest

* account for the funding utxo

---------

Co-authored-by: k9ert <k9ert@gmx.de>
2023-03-02 10:20:50 +01:00
k9ert
d2a5bc4a9c
Bugfix: Do not use cache when checking sync status (#2258)
* added linux and macOS binary. Created linux test

* add tor binaries for osx

* packaging of tor and now also win-binaries

* fix windows script

* Bugfix: Do not use cache for sync status and keep compatibility

* update Spectrum and don't use cache when spinning

* remove torbrowser directory entirely

* fix "node is not defined"

---------

Co-authored-by: moneymanolis <moneymanolis@protonmail.com>
Co-authored-by: Manolis Mandrapilias <70536101+moneymanolis@users.noreply.github.com>
2023-02-27 18:33:12 +01:00
k9ert
09e6a4255e
Chore: shrink tor binaries (#2255)
* added linux and macOS binary. Created linux test

* add tor binaries for osx

* packaging of tor and now also win-binaries

* fix windows script

* fix windows reflection

* some chore

* remove torbrowser directory entirely

* mentioning limited usability

* improved writing

---------

Co-authored-by: moneymanolis <moneymanolis@protonmail.com>
2023-02-27 17:07:24 +01:00
k9ert
69c836bd04
Chore: Upgrading dependencies (#2217)
* upgrade deps
* removing babel as dependency in test
* pin flask_login and more project urls
* also allow for gateway timeout in failsafe test

---------

Co-authored-by: moneymanolis <moneymanolis@protonmail.com>
2023-02-17 15:01:36 +01:00
k9ert
ef364ce1bc
Chore: refurbish release infrastructure (#2198)
* change release infra

* syntax error

* fix buildscript (hopefully)

* fix pip generation too

* fix build (hopefully)

* fix bloated sdid (mainly MANIFEST.in)

* adjust tests, remove importlib_meta

* fix dependency issue in release jobs

* fix tests and remove pytest.ini entirely

* fix install_noded script

* fix test

* fix tests

* stupid versioin parsing does not work!

* try to fix version guessing

* and again
2023-02-15 14:58:33 +01:00
Manolis Mandrapilias
c653689139
Porting #2084 (Additional tests for auto-detection edge cases) to uiux-revamp (#2204) 2023-02-14 16:37:33 +01:00
k9ert
816726b935
Feature: Extension Framework upgrade incl. middleware, extensionsdependencies and -callbacks (#2186)
This PR brings the ability of having your own callbacks for extensions, depending on other extensions and callbacks now have a return_style either collect (default) or middleware
2023-02-11 11:21:31 +01:00
k9ert
99f5404705
Feature: Notification system (#1766) (#2103)
A feature for a notification system has been added, including websockets and SSL support, improved error handling, and better logging. There have been various bug fixes, refactoring, and documentation updates throughout the process. The feature is now complete and includes new functionality for managing and displaying notifications, as well as testing and debugging tools.m>

Co-authored-by: relativisticelectron <60378539+relativisticelectron@users.noreply.github.com>
2023-02-07 19:00:44 +01:00
k9ert
3ee881805e
Chore: Porting chore/rid_of_defaultnode to uiux-revamp (#2098)
* Chore: Remove default node (#2072)

* change passwordaspin auth implementation

* env-var for RASPIBLITZ_SPECTER_RPC_LOGIN_BITCOIN_CONF_LOCATION

* remove default

* fix tests

* fix the tests part2

* fix cypress tests

* docstrings and other default removals

* improve error_handling

* do not raise exception

* fixed debugging artifact

* Spinning refresh icon if node is still syncing

* Cypress test for sync status

* remove notification of fully synced node

* Set timeout for sync check to 5min

---------

Co-authored-by: moneymanolis <moneymanolis@protonmail.com>
Co-authored-by: Manolis Mandrapilias <70536101+moneymanolis@users.noreply.github.com>
2023-01-31 11:06:29 +01:00
moneymanolis
b74a1a73a3 Merge branch 'master' into design-revamp 2023-01-26 16:24:11 +01:00
k9ert
d367e93df6
Chore: Refactor device_types and disable change to hotwallet for Spectrum_Node (#2048)
* adding fullpath fixes spectrum issue 13

* Add Spectrum node delte capability

* refactor and enable get_subclass_for_clazz for all classes

* get rid of DeviceTypes references part 1

* get rid of DeviceTypes references part 2

* add check for device-type when changing device_type

* added return type hint

* remove fatal logging

* Change flash message

* Disable setting unsupported device typ in UI

Co-authored-by: Manolis Mandrapilias <70536101+moneymanolis@users.noreply.github.com>
Co-authored-by: moneymanolis <moneymanolis@protonmail.com>
2023-01-26 15:05:45 +01:00
Manolis Mandrapilias
826274ee1d
Merge branch 'master' into design-revamp 2023-01-20 21:31:05 +01:00
k9ert
9c9ae4d62e
Feature: Adding extension stacktrack (#2062)
* Feature: Adding extension stacktrack

* adjust number of packages
2023-01-20 12:05:34 +01:00
Kim Neunert
e1654d906f Merge branch 'master' into design-revamp 2023-01-20 10:15:07 +01:00
k9ert
fa9605d6c9
Bugfix: Clarification of Amounts in tables (fixes #1861) (#2026)
* refactoring categories and amounts + improvements of amounts

* clear cache functionality in wallet settings

* refactoring of wallet settings

* clean up and frontend wallet-refactoring

* some documentation about psbt and embit

* intermediate commit

* moar testing

* proper descriptor

* updated tests

* finalize WalletAwareTxItem Test

* coming closer

* fix tests

* Update src/cryptoadvance/specter/templates/includes/tx-table.html

Co-authored-by: Manolis Mandrapilias <70536101+moneymanolis@users.noreply.github.com>

* Update src/cryptoadvance/specter/templates/includes/tx-table.html

Co-authored-by: Manolis Mandrapilias <70536101+moneymanolis@users.noreply.github.com>

* Update src/cryptoadvance/specter/templates/wallet/settings/wallet_settings.jinja

Co-authored-by: Manolis Mandrapilias <70536101+moneymanolis@users.noreply.github.com>

* Update src/cryptoadvance/specter/templates/wallet/settings/wallet_settings.jinja

Co-authored-by: Manolis Mandrapilias <70536101+moneymanolis@users.noreply.github.com>

* Update src/cryptoadvance/specter/server_endpoints/wallets/wallets.py

Co-authored-by: Manolis Mandrapilias <70536101+moneymanolis@users.noreply.github.com>

* fix cypress

* refactoring  some parts of the psbt-creation-process and wallet.txlist

* fix cypress

* fix broken csv-download

* bugfix confirmations: null

* Bugfix: accidental Speed-up-button on confirmed TXs

* fix test

* fix test (part2)

* Liquid specific fixes

* improve cache usage

* refactoring wallet.check_utxo()

* reimplemented the whole check_utxo method

Co-authored-by: Manolis Mandrapilias <70536101+moneymanolis@users.noreply.github.com>
2023-01-20 09:45:40 +01:00
k9ert
31954a51a0
Chore: testing bridge_rpc errorhandling (#2055) 2023-01-17 12:42:32 +01:00
k9ert
db8e413891
Chore: Remove docker support (#2054)
* Chore: Remove docker support

* use pip instead of pip3

* kick

* kick

Co-authored-by: Manolis Mandrapilias <70536101+moneymanolis@users.noreply.github.com>
2023-01-16 18:33:59 +01:00
moneymanolis
979c6887bd fix rpc test 2023-01-11 16:43:14 +01:00
moneymanolis
83ce369441 Merge branch 'master' into design-revamp 2023-01-11 16:35:09 +01:00
kexkey
2a03ec1718
Bugfix: autodetect from bitcoin.conf file with network set (#2037)
* autodetect from bitcoin.conf file with network set

* added a test

* forgot testfile

* make black happy

Co-authored-by: Kim Neunert <k9ert@gmx.de>
2023-01-11 14:38:48 +01:00
moneymanolis
626bd4f5f7 adjusted node manager test 2023-01-10 20:03:03 +01:00
relativisticelectron
1f0915054c
Bugfix: Addressinfo (#2001) 2022-12-19 21:30:17 +01:00
k9ert
5b737974e0
Bugfix: Version has not been properly detected (#2020)
* Bugfix: current version was not properly detected

* fix version stuck in ext_gen
2022-12-16 19:14:56 +01:00