Pages:
Author

Topic: [BOUNTY] Help test next major release of Armory! [0.04 BTC/bug] - page 5. (Read 12572 times)

legendary
Activity: 1428
Merit: 1093
Core Armory Developer
OSX errors: frustrating I might not be able to claim 10.9 support yet.   I think I have to limit it (and bug bounties) to 10.8.

The print issue predates Mavericks, I can replicate it on 10.8 in both the latest stable and the latest beta.

I completely understand your reluctance to support 10.9, it's foreign territory especially as you're not a native developer.

Oh, that's right... I do remember having to do some special stuff on OSX with the print dialog.  But I seem to remember that it was fixed with the OSX-specific code... I guess not?

newbie
Activity: 16
Merit: 0
OSX errors: frustrating I might not be able to claim 10.9 support yet.   I think I have to limit it (and bug bounties) to 10.8.

The print issue predates Mavericks, I can replicate it on 10.8 in both the latest stable and the latest beta.

I completely understand your reluctance to support 10.9, it's foreign territory especially as you're not a native developer.
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
@whault:

OSX errors: frustrating I might not be able to claim 10.9 support yet.   I think I have to limit it (and bug bounties) to 10.8.  

EC & Key Calculators:  Ack!  The Key calculator was meant to be gone, and I normally would've specified that it's off-limits for bug bounties.  But I'll give you a bounty for it, because it is a bug that it's still there!  I need to remove it.

I will update the top post to specify that both key calculator and EC calculator are off-limits for bug bounties, and key calc will be removed.
newbie
Activity: 16
Merit: 0
From the terminal, you can just "cd /Applications; open Armory.app"

You probably want to direct users to run this instead:

Code:
/Applications/Armory.app/Contents/MacOS/Armory

The command you have will execute the app but not print any log output back to the terminal.



Can you please run from the terminal and confirm that the printed error messages look like this:

There's a lot of output like that, mainly when in the wallet properties view.

Code:
2013-11-15 14:18:28.350 Python[22287:507] modalSession has been exited prematurely - check for a reentrant call to endModalSession:
2013-11-15 14:18:28.830 Python[22287:507] modalSession has been exited prematurely - check for a reentrant call to endModalSession:
2013-11-15 14:18:28.846 Python[22287:507] modalSession has been exited prematurely - check for a reentrant call to endModalSession:
2013-11-15 14:18:28.847 Python[22287:507] -[NSApplication runModalSession:]: Use of freed session detected. Do not call runModalSession: after calling endModalSesion:.
2013-11-15 14:18:38.313 Python[22287:507] modalSession has been exited prematurely - check for a reentrant call to endModalSession:
2013-11-15 14:18:38.328 Python[22287:507] modalSession has been exited prematurely - check for a reentrant call to endModalSession:

For the crash in the print dialogue:

Code:
/Applications/Armory.app/Contents/MacOS/Armory: line 16: 22555 Segmentation fault: 11  $DIRNAME/Python $ARMORYDIR/ArmoryQt.py

The full crash log has been DM'd to you.



EC Calculator:

The labels in this view are a little squashed:

http://i.imgur.com/DKIs5MF.png

Clicking the "address book" icon to select a private key hangs the app.

Code:
(ERROR) armoryengine.py:12767 - Waited 20s for addrbook to be returned.  Abort
(ERROR) armoryengine.py:12768 - ID: getTxByHash (86700430)
(ERROR) Traceback (most recent call last):
  File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/qtdialogs.py", line 10549, in execAddrBook
    dlg = DlgAddressBook(parent, parent.main, targWidget,  defaultWlt, actionStr, selectExistingOnly, selectMineOnly)
  File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/qtdialogs.py", line 10213, in __init__
    self.setAddrBookTxModel(defaultWltID)
  File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/qtdialogs.py", line 10340, in setAddrBookTxModel
    self.addrBookTxModel = SentToAddrBookModel(wltID, self.main)
  File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/armorymodels.py", line 807, in __init__
    for abe in TheBDM.getAddressBook(self.wlt.cppWallet):
TypeError: 'NoneType' object is not iterable

Traceback (most recent call last):
  File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/qtdialogs.py", line 10549, in execAddrBook
    dlg = DlgAddressBook(parent, parent.main, targWidget,  defaultWlt, actionStr, selectExistingOnly, selectMineOnly)
  File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/qtdialogs.py", line 10213, in __init__
    self.setAddrBookTxModel(defaultWltID)
  File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/qtdialogs.py", line 10340, in setAddrBookTxModel
    self.addrBookTxModel = SentToAddrBookModel(wltID, self.main)
  File "/Applications/Armory.app/Contents/MacOS/py/usr/lib/armory/armorymodels.py", line 807, in __init__
    for abe in TheBDM.getAddressBook(self.wlt.cppWallet):    
TypeError: 'NoneType' object is not utterable



Sometimes after a crash when doing a full rescan, the app will crash out again with the output:

Code:
-ERROR - 1384487000: (StoredBlockObj.cpp:1063) Cannot get tx copy, because don't have full StoredTx!
-ERROR - 1384487000: (StoredBlockObj.cpp:1063) Cannot get tx copy, because don't have full StoredTx!
/Applications/Armory.app/Contents/MacOS/Armory: line 16: 23075 Segmentation fault: 11  $DIRNAME/Python $ARMORYDIR/ArmoryQt.py

This crash log has been DM'd to you as well.
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
OSX 10.9, general feeling is that the app is not ready for prime-time. Almost constant crashes, for which I only know a couple of the triggers.

Can you please run from the terminal and confirm that the printed error messages look like this:

Quote
modalSession has been exited prematurely - check for a reentrant call to endModalSession

From the terminal, you can just "cd /Applications; open Armory.app"
newbie
Activity: 16
Merit: 0
OSX 10.9, general feeling is that the app is not ready for prime-time. There's a number of crashes that I've encountered, this is the only one I can reliably trigger though.

Print wallet:

Opening "wallet properties" > "backup this wallet" > "create paper backup" will open a standard OSX print window, after about two seconds the window loses focus and will ignore all clicks. Clicking a button before the window loses focus will sometimes cause Armory to crash.


http://i.imgur.com/sVgSxwu.gif
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
Here's a list of things that are already known that do not qualify for a bounty:

  • Yes, Armory requires having the whole blockchain.  Yes, it requires running Bitcoin-Qt in the background.  Yes, sometimes it's difficult to point Armory to the correct bitcoind location.  Yes, Armory now duplicates the blockchain data (will be reduced in the next version...this way was simpler for the overhaul).  Most reports related to general setup will be unrewarded.
  • Bugs in online mode must be reported after a full synchronization.  I don't need help finding synchronization/setup bugs (I get plenty of emails).  All bugs assume you are in either in offline mode or fully sync'd in online mode.  
  • I know the auto-install bitcoind buttons don't work
  • The app initiates a rescan on unclean shutdown.  Yeah, it's kinda slow on mainnet.  Shutdown cleanly as much as possible
  • Fee calculations.  Max tx size.  Min tx value.  I know they're outdated.  I will fix them soon.
  • The new version is not very usable on OSX 10.9.  I can only accept bugs for 10.8 and lower.  If you run in 10.9,  compare your error messages to this before reporting.  These are actually Apple+PyQt bugs, not mine.
  • In some Linux distros/environments, URI-handling is broken.  I can tell you how to fix it if needed.  Should work in Ubuntu+Unity, as well as all Windows verisons.
  • WinXP support is hosed.  Goatpig is trying to figure that one out...
  • Occasionally the DB gets corrupted and automatically rebuilds.  It takes a while.  And may be inconsistent.  Yeah, it sucks.
  • Key Calculator and EC Calculator are both off-limits.  Key calc was meant to be removed, and EC calc is both only for expert users and not very maintained (though it technically works if you have the screen space for it).

I will not be maintaining this list for every reported bug.  You may have to read subsequent posts to find out what's been reported.  Or just post your bug and I'll tell you if I fixed it yet.



Usage notes:

This version maintains a full database between loads.  If you find yourself with incorrect balances or corrupted DB errors, you can use the "Help" menu to reset the DB.  A rescan typically takes about 10-20 min.  A rebuild takes 30-90 minutes followed by the rescan.  I'd like to think this will largely be unnecessary, but it's always useful to someone.

Similarly, you can run with " --rescan" or "--rebuild" on the command line.  Or if you're desperate (or on OSX where CLI options don't work), you can simply "touch ~/.armory/rebuild.txt" or "touch ~/.armory/rescan.txt".  Also "touch ~/.armory/clearmempool.txt" will remove stuck transactions.
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
Make some money helping test the new version of Armory (0.89.99-testing)!

Download 0.89.99.14: Windows (32- and 64-bit)
Download 0.89.99.14: Ubuntu/Debian 32-bit
Download 0.89.99.14: Ubuntu/Debian 64-bit
Download 0.89.99.14: Mac/OSX (not very usable in 10.9)




For anyone who's been waiting for the new version of Armory, we're almost there!  But we desperately need more testing.   I tested this bug-bounty idea about a year ago, and it seemed to work pretty well.  Besides bugs, Armory got a ton of polishing, too.  So let's try this again!  If you want to claim a full 0.04 BTC (about $17 USD at the time of writing):

  • (1) You must be the first to post the buggy behavior.  If there's an error in the log file, you must copy that error here.
  • (2) The bug must be reproducible by me and impact the usability or security in a non-negligible way (things like grammatical error or sub-optimal design choices are welcome, but won't be rewarded with BTC)
  • (3) Certain categories of bugs, along with already-known issues are not rewarded (the list is at the end of this post)
  • (4) I get the final word in who receives a bounty and how much.  Double-bounties and partial-bounties are possible
  • (5) I will cap the payouts to 1 BTC total.  If this is productive, I'll happily increase the limit.  
  • (6) You are expected to know how to run and use Armory already.  It's an advanced tool with a bit of a learning curve.  This space is not for teaching you how to use it.  (there's an Armory sub-forum for that).
  • (7) Not responsible for lost Bitcoins (though I've never seen even a hint of a problem that would lead to loss of coins).  To use it on testnet, you may have to run Bitcoin-Qt yourself and unselect the first checkbox in the Armory settings window.  Remember that Armory uses "--testnet", Bitcoin-Qt/bitcoind uses "-testnet"

This offer ends at 11:59pm EST, Nov 23, 2013!

The following is a list of new features in Armory.  Yeah, there's a lot!  Please test all aspects of the application, though you might be more likely to find bugs in these new features:

  • RAM usage and startup time reduction: RAM reduced to less than 300MB, and startup time typically under 60 seconds after initial DB build!
  • Persistent database: Armory now maintains its own blockchain database for fast startup.  Make sure you have space to duplicate the blockchain (will be reduced in a subsequent version; this way was easier for now).
  • Full MacOSX support: thanks to picobit for the builder, though the Apple+PyQt bugs prevent full usability in 10.9.  Only accepting bug reports in OSX 10.8.
  • New Backup Center:  Better organization and description of backup options.  Includes unencrypted digital backups, now.
  • Fragmented Backups:  Shamir's Secret Sharing (M-of-N secret splitting); balance your physical security and redundancy.  Create up to 5-of-6 backups in Standard & Advanced modes.  Up to 8-of-12 in Expert mode.  Fragments are also deterministic for a given M value.  For example, if you make a 3-of-5 backup, you can later make a 3-of-7 and the first 5 will be the same as the 3-of-5
  • SecurePrint: Paper backups optionally encrypted with code on screen to prevent private key exposure to printer and other network devices.  SecurePrint code should be identical across all backup types for a given wallet
  • Half-sized paper backups:  The chaincode is now derived from the private key, meaning only two lines of data for wallets created with the new version of Armory.  Yet, all backup features work with older wallet without a hitch -- they'll all show four lines (if you don't believe me, prove me wrong and collect your 0.04 BTC!)
  • Paper backup tester: test any kind of paper backup before you bury it in your backyard.  Includes subset testing of fragmented backups.
  • Message Sign & Verify: Finally Bitcoin-Qt-compatible signing and verification.  Will have a new ASCII-armored version like PGP signing, soon
  • Fixed broadcasting non-std signatures:  Older versions of Armory produced signatures that have non-standard padding.  If an older version is used on your offline system, you can't broadcast those signed transactions with 0.88.1 online.  This version will fix the padding and broadcast successfully
  • Improve *nix Makefile:  Improved Makefile that should work out of the box on most Linux distros once the proper depedencies are installed.  See the osx_picobit directory for compiling on OSX.

As a reminder, here's some pre-existing features that would benefit from testing:

  • Importing & sweeping of private keys.  Single and multi.
  • Creating deterministic wallets with customizable unlock time/RAM.
  • Restoring paper and digital backups without restarting the app
  • Coin control (in Expert usermode)
  • Customizable change addresses
  • "bitcoin:" URI-handling (with known deficiency on some Linux distros)
  • "File" -> "Export Transaction History"
  • OFFLINE WALLETS (no offline bundle for this version yet)



Claimed:

whault:  1 x bounty (key calculator not removed)
duxZero:  1 x bounty (tool tips and squashed buttons)
jyyst:  1 x bounty (unicode issues)
simonL: 1 x bounty (corrupt wallet file confusion)
Cyberdyne:  1 x bounty (lingering sys tray icon)
idoB:  1 x bounty (links, grammar and backup fields)
cp1:  2 x bounty (confusing --datadir DNE behavior)
devthedev:  1 x bounty (bad autoscrolling of dashboard)

flipperfish:  1x for the "Send Bitcoins" first five entries bug (I knew about that one... long story)
PRab:  1x for the lots of little issues:  (4 time pwd asking, focus issues, let user choose backup)
greBit:  1x for shutdown hanging (I think this is fixed now, isn't it?)
Zomdifros: 1x for... I don't know what that error is... sending issues... definitely a bug!
elbandi:  1x for UAC issues (will be fixed in 0.91)
tc23emp:  1x for maxConnections error (I've been looking for the src of that bug!  Thanks!)

Pages:
Jump to: