Sander van Grieken
74e9c848cc
qml: QEAmount returns 0 when amount is undefined
an undefined amount triggers a hard to debug crash when None/undefined is passing the
python/QObject boundary, so let's default to 0
2 years ago
SomberNight
13570a465c
kivy request dialog: follow-up c95791d7ee
related https://github.com/spesmilo/electrum/pull/7929
2 years ago
ThomasV
fceceaec97
lnwatcher: set future_tx regardless of tx_was_added, because it is not persisted
2 years ago
ThomasV
9058000791
lnwatcher: fix adding of local tx to history
2 years ago
Sander van Grieken
1c852328c0
qml: try-except around data query, history is very unpredictable what's present and what's not
2 years ago
Sander van Grieken
0c3ce4a6b6
qml: add address to bolt11>bip21>address QR caroussel and remove address copy button
(conform qt and kivy)
2 years ago
Sander van Grieken
0d7bcb5dd2
qml: refactor HistoryItemDelegate into separate file
2 years ago
ThomasV
f65368f1d0
kivy request dialog: follow-up c95791d7eeff6f64968e391c78e344e0a02e1669:
- toggle between text and qr code
- fix minor issues
2 years ago
SomberNight
c95791d7ee
qt/kivy: receive tab: add wallet.ReceiveRequestHelp and refactor
2 years ago
SomberNight
0a6265ef58
qt new_channel_dialog: fix None-handling for lnworker.suggest_peer()
fixes https://github.com/spesmilo/electrum/issues/7931
2 years ago
SomberNight
767b058946
qt history tab: fix "View Channel" in context menu
related: https://github.com/spesmilo/electrum/issues/7930
2 years ago
SomberNight
ba72abdbf5
kivy request_dialog: default to LN if there is no URI
2 years ago
SomberNight
bd7a6a8f77
qt/kivy receive tab: show error msg when creating req with amt<dust
2 years ago
SomberNight
5f5e6b3cf3
kivy request_dialog: disable "lightning" btn if no LN part
2 years ago
SomberNight
1b2d46722c
kivy request_dialog: rm some magic numbers
note: not sure how to use IntEnum with kivy's NumericProperty
2 years ago
SomberNight
7d481935e2
qt ReceiveTab: handle case with URI==""
2 years ago
SomberNight
0e15d7a973
qt RequestList: allow copying URI even if there is no bitcoin addr
(when there is LN part but no on-chain part)
2 years ago
SomberNight
659d6890d9
wallet.get_request_URI: rm code duplication
2 years ago
SomberNight
7daeccdf85
qt ReceiveTab: ensure TabWidget has frame in more cases
2 years ago
SomberNight
bd2ca30f95
kivy: fix creating dust amount receive requests
fixes https://github.com/spesmilo/electrum/issues/7928
2 years ago
SomberNight
ea5c49b3ab
wallet.delete_request(key): piggyback on get_request(key)
So that the two methods are consistent with each other.
As concrete motivation, see e.g.
- how the `getrequest(key)` command calls `wallet.get_request(key)`, and
- the `delete_request(address)` command calls `wallet.delete_request(address)`
2 years ago
SomberNight
0c81dc13a0
wallet: rm confusing get_request_by_address method
The _receive_requests dict is keyed by either 'address' or 'rhash' (see get_key_for_receive_request):
- 'rhash' is used if `req.lightning_invoice is not None`
- address is used otherwise
The `get_request_by_address` method was quite error-prone: it only worked for requests that had an LN part...
2 years ago
SomberNight
396a68cb58
wallet: delete_{invoice,request}: add "write_to_disk=True" param
to support faster batch-deletion
2 years ago
SomberNight
7e2fab809d
appimage build: better parameterise python version
2 years ago
SomberNight
388811296e
qt: replace some hardcoded pixel sizes for better high-dpi support
2 years ago
SomberNight
05863a611f
tests: test_lnpeer.py: clean-up temp dirs created in /tmp, in tearDown
2 years ago
SomberNight
bc8edd2928
Add .editorconfig file
Default to LF EOL, UTF-8 and space indent. 4 space indent for .py/.sh files.
See https://editorconfig.org/
based on de392bb92c
2 years ago
Axel Gembe
07ee204c9c
Qt Console: Fix font reset when moving between screens
When the console was moved between screen boundaries with different scaling
settings, the font was reset. This is because QPlainTextEdit sets the
documents default font back to its own font property when Qt has a font
change event. This patch sets the font property of the editor instead of
the document.
this ports 60d63b3272
related: https://github.com/Electron-Cash/Electron-Cash/issues/1314
2 years ago
avirgovi
b5d2b3c512
create chmod aware of XDG_RUNTIME_DIR
closes https://github.com/spesmilo/electrum/pull/7681
related https://github.com/spesmilo/electrum/issues/6334
Co-authored-by: avirgovi <avirgovi@cisco.com>
Co-authored-by: SomberNight <somber.night@protonmail.com>
3 years ago
SomberNight
233d2373df
util: implement is_subpath
2 years ago
ghost43
3c964c9ea0
Merge pull request #7923 from SomberNight/202208_wallet_labels
wallet: add get_label_for_address, and make get_label private
2 years ago
SomberNight
7b095158bf
wallet: add get_label_for_address, and make get_label private
fixes https://github.com/spesmilo/electrum/issues/7919
In the past, when creating payment requests, we keyed them by on-chain address,
and set/saved the msg of the request as label for the address.
Many places in the code were calling wallet.get_label(addr) with the expectation that
relevant payment requests are found and their message/description (if any) is considered.
wallet.get_label(key) is now made private, and instead the explicit non-polymorphic
wallet.get_label_for_{address,rhash,txid} alternatives should be used.
2 years ago
ghost43
9279463fae
Merge pull request #7918 from SomberNight/202208_build_tighten1
mac/win build: `pip install --no-binary :all:` in more places
2 years ago
SomberNight
73ba00d7dd
wallet.restore_wallet_from_text: support creating wallet in-memory
2 years ago
ThomasV
48bb4867a4
fix #7920
2 years ago
ThomasV
e8a8c8c3f1
fix #7921
2 years ago
SomberNight
0c2a885c66
mac build: force using source dist for most of our python dependencies
We compile from tar.gz, instead of using pre-built binary wheels from PyPI.
(or if the dep is pure-python, use tar.gz instead of "source-only" wheel)
-----
Some unorganised things below for future reference.
```
$ dsymutil -dump-debug-map dist1/hid.cpython-39-darwin.so
warning: (x86_64) /private/var/folders/1n/zc14m3td0rg4nt0ftklmm7z00000gn/T/pip-install-bm88zvc1/hidapi_cd307bc31ab34252b77d11d6d7212fc5/build/temp.macosx-10.9-x86_64-3.9/hid.o unable to open object file: No such file or directory
warning: (x86_64) /private/var/folders/1n/zc14m3td0rg4nt0ftklmm7z00000gn/T/pip-install-bm88zvc1/hidapi_cd307bc31ab34252b77d11d6d7212fc5/build/temp.macosx-10.9-x86_64-3.9/hidapi/mac/hid.o unable to open object file: No such file or directory
---
triple: 'x86_64-apple-darwin'
binary-path: 'dist1/hid.cpython-39-darwin.so'
...
```
```
$ nm -pa dist1/hid.cpython-39-darwin.so
```
- https://stackoverflow.com/questions/10044697/where-how-does-apples-gcc-store-dwarf-inside-an-executable
- https://github.com/pypa/pip/issues/6505
- https://github.com/pypa/pip/issues/7808#issuecomment-770275723
- https://github.com/NixOS/nixpkgs/pull/91272
- https://github.com/cython/cython/pull/1576
- 9d2ba1611b/Cython/Compiler/ModuleNode.py (L913)
2 years ago
SomberNight
87904e2c7e
win build: force using source dist for some of our python dependencies
Instead of using pre-built binary wheels from PyPI.
We should tighten this more (re other requirements-*.txt files),
but there is no C compiler available inside the wine environment atm...
2 years ago
SomberNight
caa6983f81
contrib/{add_cosigner,make_download}: cd to project root
to make it agnostic of cwd
2 years ago
SomberNight
548b7d4b23
(trivial) RELEASE-NOTES: fix some typos
2 years ago
SomberNight
bf4482ce1e
(trivial) replace URL in comment to include git hash instead of branch
2 years ago
SomberNight
787dd69282
win build: clear $CONTRIB_WINE/dist between builds
2 years ago
SomberNight
150ebe116a
mac build: maybe fix reproducibility fail (_cbor.cpython-39-darwin.so)
vagrants-iMac:electrum vagrant$ ./contrib/osx/compare_dmg dist/electrum-4.3.0-ghost43.dmg /Users/vagrant/Desktop/electrum-4.3.0-thomas1.dmg
[...]
Extracting signatures from release app...
Created mac_extracted_sigs.tar.gz
Applying extracted signatures to unsigned app...
Done. .app with sigs applied is at: /tmp/electrum_compare_dmg/signed_app
++ diff -qr /tmp/electrum_compare_dmg/signed_app /tmp/electrum_compare_dmg/dmg2
+ diff='Files /tmp/electrum_compare_dmg/signed_app/Electrum.app/Contents/MacOS/cbor/_cbor.cpython-39-darwin.so and /tmp/electrum_compare_dmg/dmg2/Electrum.app/Contents/MacOS/cbor/_cbor.cpython-39-darwin.so differ'
+ diff='diff errored'
+ set +x
diff errored
DMGs do *not* match.
failure
user@user-VirtualBox:~/wspace/tmp$ vbindiff comp/signed_app/_cbor.cpython-39-darwin.so comp/dmg2/_cbor.cpython-39-darwin.so
comp/signed_app/_cbor.cpython-39-darwin.so
0000 6AC0: 00 5F 50 79 49 6E 69 74 5F 5F 63 62 6F 72 2E 6D ._PyInit __cbor.m
0000 6AD0: 6F 64 65 66 00 5F 43 62 6F 72 4D 65 74 68 6F 64 odef._Cb orMethod
0000 6AE0: 73 00 2F 70 72 69 76 61 74 65 2F 76 61 72 2F 66 s./priva te/var/f
0000 6AF0: 6F 6C 64 65 72 73 2F 35 36 2F 64 38 36 70 35 39 olders/5 6/d86p59
0000 6B00: 37 31 31 67 7A 63 62 38 73 31 71 37 31 36 78 31 711gzcb8 s1q716x1
0000 6B10: 6C 63 30 30 30 30 67 6E 2F 54 2F 70 69 70 2D 69 lc0000gn /T/pip-i
0000 6B20: 6E 73 74 61 6C 6C 2D 36 6D 69 36 68 6C 75 65 2F nstall-6 mi6hlue/
comp/dmg2/_cbor.cpython-39-darwin.so
0000 6AC0: 00 5F 50 79 49 6E 69 74 5F 5F 63 62 6F 72 2E 6D ._PyInit __cbor.m
0000 6AD0: 6F 64 65 66 00 5F 43 62 6F 72 4D 65 74 68 6F 64 odef._Cb orMethod
0000 6AE0: 73 00 2F 70 72 69 76 61 74 65 2F 76 61 72 2F 66 s./priva te/var/f
0000 6AF0: 6F 6C 64 65 72 73 2F 37 68 2F 70 33 30 7A 5F 74 olders/7 h/p30z_t
0000 6B00: 79 31 35 30 31 32 70 66 5F 33 64 79 78 62 73 39 y15012pf _3dyxbs9
0000 6B10: 33 34 30 30 30 30 67 6E 2F 54 2F 70 69 70 2D 69 340000gn /T/pip-i
0000 6B20: 6E 73 74 61 6C 6C 2D 30 68 64 39 63 35 6D 65 2F nstall-0 hd9c5me/
related: https://github.com/pypa/pip/issues/6505
2 years ago
ThomasV
4fcc5a580a
prepare release 4.3.0: update version.py and locale
2 years ago
ThomasV
db794949ae
update release notes
2 years ago
SomberNight
c421bdaff4
(trivial) qml/qedaemon.py: add missing import
2 years ago
SomberNight
752b37a03b
dependencies: bundle older hidapi in binaries
closes https://github.com/spesmilo/electrum/issues/7738
2 years ago
SomberNight
d4f76143b0
qt ReceiveTabWidget: revert prev, and add frame in a different way
This reverts commit b97d080617
.
2 years ago
SomberNight
b97d080617
qt ReceiveTabWidget: add frame to "help label", and rm some nesting
2 years ago
ThomasV
58b56b3039
receive_tab: use QStackedWidget instead of QTabWidget
2 years ago