Git Product home page Git Product logo

zecwallet's People

Contributors

adityapk00 avatar denverbdr avatar dependabot[bot] avatar earthorbit avatar garethtdavies avatar interbiznw avatar kimziv avatar kozyilmaz avatar lyoqjrrq avatar miodragpop avatar mitchellpkt avatar neunenak avatar presstab avatar rex4539 avatar s-rah avatar sandakersmann avatar tloriato avatar yusufsahinhamza avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

zecwallet's Issues

Export Sapling HDSeed

Sapling uses a HD wallet and so having the HDSeed (which is available in the z_exportwallet command) is all that is required to restore these addresses. While the zec-qt-wallet currently exports all private keys a user needs to recreate this backup after any new address whereas for Sapling transactions this is no longer an issue if they had the Sapling HDSeed - they would still need to do the Sprout and transparent but they should also be able to export this HDSeed

HDSeed=5fa7753029b99c408e...
fingerprint=5fa7753029b99c408e...

https://z.cash/blog/sapling-in-hd/

Settings window does not remember window size and position

Reproducibility: always

Steps:

  1. zec-qt-wallet -> Preferences
  2. Resize and reposition the Settings window.
  3. Close the Settings window.
  4. zec-qt-wallet -> Preferences

What happened:
Window size and position is reverted back to the default size.

Expected result:
Window size and position is the same as user set it in step 2.

Do not display address in Send validation error window

Reproducibility: always

Steps:

  1. Send -> Address -> Enter a ridiculously long string
  2. Click on "Send" button.

What happened:
screen shot 2018-11-10 at 11 32 15

Expected result:
The error message is a generic "Recipient Address is Invalid", without displaying the actual string.

No error message when trying to send empty memo to ZBoard

Reproducibility: always

Steps:

  1. Apps -> zboard.net
  2. Click on "OK".

What happened:
Action is confirmed and transaction occurs. No message is displayed on ZBoard.

Expected result:
Error message appears, informing the user that the memo field cannot be empty when sending to ZBoard.

Unable to specify a decimal number for sending

Hello,
In version 0.5.0 for Windows, impossible to specify a decimal number in the «amount» field. Keypress «.» doesn't work...
To take over this issue I had to check «Max available» checkbox to get the «.»

However, if I press «,» that works, but it's a separator for thousands, not for decimals...

Wrong label when zcashd is stopped

Reproducibility: always

Prerequisites:
zcashd and zec-qt-wallet are running.

Steps:

  1. From Terminal zcash-cli stop
  2. Hover mouse on "No Connection" at the lower right corner of the main window.

What happened:
Label reads "Connected to zcashd".
screen shot 2018-11-10 at 23 14 28

Expected result:
Label reads "Not Connected to zcashd".

Address book does not remember window size and position

Reproducibility: always

Steps:

  1. Edit -> Address Book
  2. Resize and reposition the Address Book window.
  3. Close the Address Book window.
  4. Edit -> Address Book

What happened:
Window size and position is reverted back to the default size.

Expected result:
Window size and position is the same as user set it in step 2.

Able to enter negative amount after canceling Max Available

Reproducibility: always

Steps:

  1. Send -> Amount -> Check "Max Available"
  2. Send -> Amount -> Uncheck "Max Available"
  3. In Amount field, enter a negative amount like -111111111111.

What happened:
screen shot 2018-11-23 at 22 03 33

Expected result:
User is not able to enter negative amount.

Error on Mac

zcashd said: Error: Cannot find the Zcash network parameters in the following directory:
"/Users/sonya/Library/Application Support/ZcashParams"
Please run 'zcash-fetch-params' or './zcutil/fetch-params.sh' and then restart.

Just downloaded and opened zec-qt-wallet on my Mac for the first time. Not sure why I got this error — apparently related to zcashd, but I was under the impression that the zec-qt-wallet would handle that for me? I'm on macOS High Sierra 10.13.6, if that's helpful.

Copy address from Transactions tab

Reproducibility: always

Steps:
Transactions -> Right click on a address

What happened:
No way to copy the address in clipboard.

Expected result:
There is a Copy address option in the contextual menu.

Sapling turnstile migration window does not remember window size and position

Reproducibility: always

Steps:

  1. Apps -> Sapling Turnstile
  2. Resize and reposition the Turnstile Migration window.
  3. Close the Turnstile Migration window.
  4. Apps -> Sapling Turnstile

What happened:
Window size and position is reverted back to the default size.

Expected result:
Window size and position is the same as user set it in step 2.

Memo validation bug when recipient address is labeled

Reproducibility: always

Pre-requisites:
Have an Address Book entry with a label.

Steps:

  1. Send -> Address Book -> Select a labeled address and click on "Pick".
  2. In the Address field, manually remove the label (everything before zs...)

What happened:

  1. Memo button is not active.
  2. Memo button becomes active.

Expected result:

  1. Memo button becomes active.

Copying address adds a line break

Tested with 0.1.6. If you copy an address on the “Balance” tab and right click “copy address” it adds a line break in there (which means it is invalid when you try and paste it in) i.e. pasting an address then looks like this

ztestsapling17nl3a6w42m6ydzqvrhgf93pvn78sedd
m4gh8qucwwjlkeylyhf3vcsg0x6vtzdqzalp4u5qe92r

zcashd tab appearing momentarily on launch if daemon is syncing

Reproducibility: always

Prerequisites:
zcashd is reindexing.

Steps:
Launch zec-qt-wallet.

What happened:
There is a zcashd tab appearing momentarily and then it disappears.

screen shot 2018-11-15 at 07 44 30

Expected result:
This tab appears to be a feature, showing zcashd metrics. It should either stay as a permanent tab or not shown at all. Showing and then hiding it seems like a bug.

Export transaction history

The ability to export your transaction history is useful for tax/accounting reasons.

Can get as simple or advanced as you can invest time on it :)

Export all history or export by selecting a date range.

Option to export both transparent and shielded, just transparent or just shielded.

Export as CSV (simple) or Excel (fancy) document.

[Question] Localization?

Hello! Your GUI for Zcash is amazing, thank you for your work.
But Bitcoin-qt, Dash-qt and many others have localizations for many languages. Are you going to make possibility of translation for your project? Thanks.
I think that translation possibility could attract users from all over the world and they will use Zcash.

Compiling on Debian Stretch

Hey,

I have an error when i try compiling on debian :

"src/balancestablemodel.cpp: In member function ‘void BalancesTableModel::setNewData(const QMap<QString, double>, const QList)’:
src/balancestablemodel.cpp:23:26: error: ‘const class QMap<QString, double>’ has no member named ‘constKeyValueBegin’; did you mean ‘constBegin’?
std::for_each(balances->constKeyValueBegin(), balances->constKeyValueEnd(), [=] (auto it) {
^~~~~~~~~~~~~~~~~~
src/balancestablemodel.cpp:23:58: error: ‘const class QMap<QString, double>’ has no member named ‘constKeyValueEnd’; did you mean ‘constEnd’?
std::for_each(balances->constKeyValueBegin(), balances->constKeyValueEnd(), [=] (auto it) {
"

Links in About window are not clickable

Reproducibility: always

Steps:

  1. zec-qt-wallet -> About zec-qt-wallet
  2. Click on any link in the About window.

What happened:
Links are not clickable.

Expected result:
Links are clickable.

Ability to read memos on transactions tab

With the newly formatted transactions tab 👍 given you can now see the incoming transactions to shielded addresses the ability to view a memo using the context menu would be helpful i.e. in addition to "Copy txid" and "View on block explorer" a new item called "View memo".

Custom Fee

It would be nice if there was a way to set a custom fee. Using WinZEC, I was able to manually set a fee all the way down to 0. Right now the zcash network isn't really full, so the fee doesn't actually do much.

Compilation fails after latest merge

src/connection.cpp:407:10: error: use of undeclared identifier 'paramsLocation'
    if (!paramsLocation.exists()) {
         ^
src/connection.cpp:408:23: error: use of undeclared identifier 'paramsLocation'
        QDir().mkpath(paramsLocation.absolutePath());
                      ^
src/connection.cpp:411:12: error: use of undeclared identifier 'paramsLocation'
    return paramsLocation.absolutePath();
           ^

It was introduced here -> 3cbb1ca#diff-a2a82fe964a7b85f20cd5239d386184aR236

Default fee 0.0002 TAZ

On testnet the fee defaults to 0.0002. I'm guessing there is a dev fee in this which is fine but it shouldn't be hidden like this and should be a separate input as using the standard 0.0001 fee is strongly encouraged (as fees are visible on the blockchain). I think this layout confuses the matter.

image

Tested on v0.1.9

ZBoard window does not remember window size and position

Reproducibility: always

Steps:

  1. Apps -> z-board.net
  2. Resize and reposition the ZBoard window.
  3. Close the ZBoard window.
  4. Apps -> z-board.net

What happened:
Window size and position is reverted back to the default size.

Expected result:
Window size and position is the same as user set it in step 2.

could not connet to any display

root@ubuntu-s-1vcpu-1gb-blr1-01:~/mqw/zec-qt-wallet# ./zec-qt-wallet
qt.qpa.screen: QXcbConnection: Could not connect to display
Could not connect to any X display.
i am following all steps the are given in github,i install all dependencies ,
but gives that error
machine secification
os : ububtu18.04_x64
ram :1gb
space : 25gb
image

Restrict size of memo input field

Would be helpful to restrict this field to 512 bytes in length as at the moment you can enter any arbitrary length and then it just errors when sending. Even better if it showed you a character count/characters remaining.

Error building on macOS

In file included from src/balancestablemodel.cpp:2:
src/addressbook.h:48:23: error: extra qualification on member 'updateLabel'
    void AddressBook::updateLabel(QString oldlabel, QString address, QString newlabel);
         ~~~~~~~~~~~~~^
In file included from src/mainwindow.cpp:2:
src/addressbook.h:48:23: error: extra qualification on member 'updateLabel'
    void AddressBook::updateLabel(QString oldlabel, QString address, QString newlabel);
         ~~~~~~~~~~~~~^
In file included from src/rpc.cpp:3:
src/addressbook.h:48:23: error: extra qualification on member 'updateLabel'
    void AddressBook::updateLabel(QString oldlabel, QString address, QString newlabel);
         ~~~~~~~~~~~~~^

[macOS] just to confirm it works!

Tried with my macOS builds of zcashd v2.0.1 (https://github.com/kozyilmaz/zcash-apple/releases) and Qt 5.11.1. Confirm it works, great job!

$ /Users/loki/Qt5.11.1/5.11.1/clang_64/bin/qmake -v
QMake version 3.1
Using Qt version 5.11.1 in /Users/loki/Qt5.11.1/5.11.1/clang_64/lib
$ sw_vers 
ProductName:	Mac OS X
ProductVersion:	10.13.6
BuildVersion:	17G65
$ clang -v
Apple LLVM version 10.0.0 (clang-1000.10.44.2)
Target: x86_64-apple-darwin17.7.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
Found CUDA installation: /usr/local/cuda, version unknown

Address Book label should have a hard limit

Reproducibility: always

Steps:

  1. Edit -> Address Book
  2. In the Label field, enter a ridiculously long string.

What happened:
Entering a ridiculously long string is accepted.

Expected result:
The field has a hard limit.

Wrong behavior when stopping zcashd while zec-qt-wallet is running

Reproducibility: always

Prerequisites:
zcashd and zec-qt-wallet are running.

Steps:
From Terminal zcash-cli stop

What happened:
The app "appears" to be working properly, except the following error popping up.
screen shot 2018-11-10 at 12 17 53

Expected result:
The app should clear everything and enter the same state as when you launch it without zcashd running.
screen shot 2018-11-10 at 12 22 52

Crash when trying to import invalid private key and zcashd is not running

Reproducibility: always

Prerequisites:
zcashd is not running.

Steps:

  1. Launch zec-qt-wallet.
  2. File -> Import Private Key
  3. Enter any character and click on "OK" button.

What happened:
zec-qt-wallet crashes.

Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
Exception Codes:       KERN_INVALID_ADDRESS at 0x0000000000000028
Exception Note:        EXC_CORPSE_NOTIFY

Termination Signal:    Segmentation fault: 11
Termination Reason:    Namespace SIGNAL, Code 0xb
Terminating Process:   exc handler [0]

VM Regions Near 0x28:
--> 
    __TEXT                 00000001063d6000-00000001065b2000 [ 1904K] r-x/rwx SM=COW  /Users/USER/*/zec-qt-wallet.app/Contents/MacOS/zec-qt-wallet

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   com.yourcompany.zec-qt-wallet 	0x000000010650c1bc Connection::doRPC(nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer> const&, std::__1::function<void (nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer>)> const&, std::__1::function<void (QNetworkReply*, nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer> const&)> const&) + 60 (connection.cpp:520)
1   com.yourcompany.zec-qt-wallet 	0x000000010650cc67 Connection::doRPCWithDefaultErrorHandling(nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer> const&, std::__1::function<void (nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer>)> const&) + 135 (connection.cpp:551)
2   com.yourcompany.zec-qt-wallet 	0x0000000106440ace RPC::importTPrivKey(QString, bool, std::__1::function<void (nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer>)> const&) + 1550 (rpc.cpp:181)
3   com.yourcompany.zec-qt-wallet 	0x00000001063f2c82 MainWindow::doImport(QList<QString>*) + 1026 (mainwindow.cpp:578)
4   com.yourcompany.zec-qt-wallet 	0x00000001063e5fe6 MainWindow::importPrivKey() + 1894 (mainwindow.cpp:609)
5   com.yourcompany.zec-qt-wallet 	0x0000000106401bde QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, void (MainWindow::*)()>::call(void (MainWindow::*)(), MainWindow*, void**) + 126 (qobjectdefs_impl.h:134)
6   com.yourcompany.zec-qt-wallet 	0x0000000106401b53 void QtPrivate::FunctionPointer<void (MainWindow::*)()>::call<QtPrivate::List<>, void>(void (MainWindow::*)(), MainWindow*, void**) + 99 (qobjectdefs_impl.h:168)
7   com.yourcompany.zec-qt-wallet 	0x0000000106401a86 QtPrivate::QSlotObject<void (MainWindow::*)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) + 166 (qobjectdefs_impl.h:397)
8   org.qt-project.QtCore         	0x0000000107217eef QMetaObject::activate(QObject*, int, int, void**) + 1933
9   org.qt-project.QtWidgets      	0x00000001067c5bf9 QAction::activate(QAction::ActionEvent) + 307
10  org.qt-project.QtCore         	0x0000000107211c7c QObject::event(QEvent*) + 124
11  org.qt-project.QtWidgets      	0x00000001067cd6ff QApplicationPrivate::notify_helper(QObject*, QEvent*) + 269
12  org.qt-project.QtWidgets      	0x00000001067cea66 QApplication::notify(QObject*, QEvent*) + 728
13  org.qt-project.QtCore         	0x00000001071f1fba QCoreApplication::notifyInternal2(QObject*, QEvent*) + 154
14  org.qt-project.QtCore         	0x00000001071f2adc QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) + 436
15  libqcocoa.dylib               	0x000000010b63353f 0x10b60d000 + 156991
16  libqcocoa.dylib               	0x000000010b633cbb 0x10b60d000 + 158907
17  com.apple.CoreFoundation      	0x00007fff461dabe1 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
18  com.apple.CoreFoundation      	0x00007fff462924bc __CFRunLoopDoSource0 + 108
19  com.apple.CoreFoundation      	0x00007fff461bdb90 __CFRunLoopDoSources0 + 208
20  com.apple.CoreFoundation      	0x00007fff461bd00d __CFRunLoopRun + 1293
21  com.apple.CoreFoundation      	0x00007fff461bc867 CFRunLoopRunSpecific + 487
22  com.apple.HIToolbox           	0x00007fff4549cd96 RunCurrentEventLoopInMode + 286
23  com.apple.HIToolbox           	0x00007fff4549ca0f ReceiveNextEventCommon + 366
24  com.apple.HIToolbox           	0x00007fff4549c884 _BlockUntilNextEventMatchingListInModeWithFilter + 64
25  com.apple.AppKit              	0x00007fff4374ca73 _DPSNextEvent + 2085
26  com.apple.AppKit              	0x00007fff43ee2e34 -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 3044
27  com.apple.AppKit              	0x00007fff43741885 -[NSApplication run] + 764
28  libqcocoa.dylib               	0x000000010b632d36 0x10b60d000 + 154934
29  org.qt-project.QtCore         	0x00000001071ee9ce QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 318
30  org.qt-project.QtCore         	0x00000001071f246c QCoreApplication::exec() + 116
31  com.yourcompany.zec-qt-wallet 	0x00000001063d9c62 main + 1234 (main.cpp:43)
32  libdyld.dylib                 	0x00007fff6e18c015 start + 1

Expected result:
zec-qt-wallet does not crash.

Created new recieving tAddr when new address is not created

If you click on the t-Addr radio button it displays in the footer "Created new recieving tAddr)" even if you don't create one.

Also minor but worth fixing with this is recieving is spelt incorrectly and also there is an inconsistent usage of t-Addr and tAddr. If space allows while these terms are used frequently address might be more appropriate?

image

Inform user when a transaction is sent but internet connection is not active

Reproducibility: always

Prerequisites:
zcashd and zec-qt-wallet are running.

Steps:

  1. Kill your internet connection.
  2. Send a transaction.

What happened:
The app acts like the transaction is sent normally.

Expected result:
A window appears "Your internet connection appears to be inactive. Your transaction is queued and will be sent to the Zcash network the next time your connection becomes active." or something along those lines.

Notes:
I believe the user will assume that the "Connected" info in the lower right of the main window is about the connection to the Zcash network when in fact it is about the connection to zcashd. I believe the explanation window will help clear up some of the confusion on the user's part regarding this matter. Perhaps, as an additional measure, you could add extra info to the "Connected" label when you hover the mouse over it. Right now it reads "1 ZEC = $XXX.XX". Maybe it should read "You are successfully connected to the Zcash daemon - 1 ZEC = $XXX.XX".

Issue with RPC password

I had an issue with the auto-detection of my RPC password. Is it trimming this or removing speciial characters as I had a = sign stripped off the end and needed to remove this from my RPC password to get it to work.

Selective disclosure

It would be nice if there was support for selective disclosure.

https://z.cash/blog/viewing-keys-selective-disclosure
https://github.com/zcash/zcash/blob/master/doc/payment-disclosure.md

This is, of course, an experimental feature but it's a good opportunity to test it out and figure out the UI/UX.

Since it's still experimental and requires special flags to be passed to zcashd or zcash.conf you could enable this functionality (for now) only if those flags are already passed to zcashd or zcash.conf before starting zec-qt-wallet.

Utilize Zcash URI

Reproducibility: always

Steps:
Click on a Zcash URI eg. zcash:zs1du0cfxytxjjauyr2lv68qd6jd2d4shcllt5y60fx2hhdlhq4c9r6a9kttfdynpgkygpv2asu5ak

What happened:
Address is not recognized.

Expected result:
Address is recognized. zec-qt-wallet is launched (or brought in focus if already open) and the "Pay From" field in Send tab gets filled with the Zcash address.

Notes:
Feel free to test with my website http://www.dimitrisapostolou.com

Latest binary archive places zcash-qt-wallet-v0.1.6 in bin directory

Thanks for the wallet! Really cool. 👍

I noticed that the latest binary archive placed the zcash-qt-wallet-v0.1.6 directory within an initial bin/ directory, though the preceding release didn't do similarly.

Thus, the readme to do this is off:

tar -xvf zcash-qt-wallet-v0.1.6.tar.gz
./zcash-qt-wallet-v0.1.6/zcash-qt-wallet

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.