Author

Topic: Armory - Discussion Thread - page 160. (Read 521749 times)

hero member
Activity: 547
Merit: 500
Decor in numeris
November 25, 2012, 04:13:20 PM
Should I still use the "threading" branch, or has it been merged into the trunk?
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
November 25, 2012, 03:50:20 PM
Hi is it possible to create many bitcoin addresses from Armory? I need to create 10.000 BTC addresses in Armory. Any hack?

Daniel

Funny you ask -- I just added a feature for doing this in the latest version (0.84.5)!

If you install the latest version, run Armory, then switch to "Expert" usermode, your wallet properties will have a new button allowing you to generate more addresses.  You can have it generate 10,000 addresses (though it might take a few minutes).  Once they are created, you can go into "Backup Individual Keys" and export just the private keys.  Now, I don't know how you intend to read them, but they may not be in the best format for importing into another application.   If you really need them formatted another way, I can create a very short python script for you to export them however you want (or if you are capable of it yourself, I can tell you exactly how to read the wallet files and pull private keys out of it (using armoryengine.py).

EDIT - Sorry, running the script yourself will be difficult unless you are on a Linux-based system.  It is rather difficult to get it all setup in Windows.  Let me know if the GUI interface is not sufficient and we'll figure something out Smiley
newbie
Activity: 56
Merit: 0
November 25, 2012, 03:41:31 PM
Hi is it possible to create many bitcoin addresses from Armory? I need to create 10.000 BTC addresses in Armory. Any hack?

Daniel
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
November 25, 2012, 12:21:47 AM
64 bit crashes all the time when pressing "go online"
happened after switched to expert mode, after that nothing matters: constant crashes.

My QT has an account, I could not import it into Armory. Armory doesn't see it.

PS Now it crashes on starting it all the time...

What OS?   What version?  There's a ArmorySettings.txt file and mempool.bin file in the home directory.  Delete both.   Or if you can open it in Offline mode,  Help-> Revert all Settings (does the same thing without digging into directories)

If it continues to keep crashing then please email me a copy of the log file.
member
Activity: 86
Merit: 10
November 24, 2012, 11:06:21 PM
64 bit crashes all the time when pressing "go online"
happened after switched to expert mode, after that nothing matters: constant crashes.

My QT has an account, I could not import it into Armory. Armory doesn't see it.

PS Now it crashes on starting it all the time...
hero member
Activity: 547
Merit: 500
Decor in numeris
November 22, 2012, 03:44:48 PM
Is the save dialog problem on the offline computer?  I just did it online with the update and it works (created unsigned, saved, next window, loaded, signed, broadcast).  What OS are you in?

No, it is all save dialogs on the online computer.  Both when saving the unsigned TX, and when saving a CSV file with all the transactions in a wallet.

I am on Mac OS X 10.8.2.  The offline computer is running Ubuntu, and there I have the last official release of Armory.

Maybe I should try reinstalling Qt.

EDIT: Recompiling qt and pyqt seems to have helped, at least partly.  It is too late to test more now, I will test more in the weekend (no time tomorrow, unfortunately).
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
November 22, 2012, 12:57:45 PM
I shouldn't have said "malicious." 
You didn't - you said it almost looked malicious.

Quote
Sorry for the trouble!  Getting there...

I am sure you are - and don't apologize, we really appreciate all your hard work!

In principle, the problem with the save dialog could be a Qt problem, although I do not think I have updated Qt.


Is the save dialog problem on the offline computer?  I just did it online with the update and it works (created unsigned, saved, next window, loaded, signed, broadcast).  What OS are you in?
hero member
Activity: 547
Merit: 500
Decor in numeris
November 22, 2012, 11:47:17 AM
I shouldn't have said "malicious." 
You didn't - you said it almost looked malicious.

Quote
Sorry for the trouble!  Getting there...

I am sure you are - and don't apologize, we really appreciate all your hard work!

In principle, the problem with the save dialog could be a Qt problem, although I do not think I have updated Qt.

legendary
Activity: 1428
Merit: 1093
Core Armory Developer
November 22, 2012, 11:31:25 AM
I updated, and tried again.  I wanted to make a test transaction from the offline wallet.  Now I can specify the payment, and get all the way to the window where I should save the transaction.  Unfortunately, that window is totally unresponsive, and I can neither save the transaction nor get rid of the window (short of killing the Python process with Ctrl-C).

The second time I tried, the file name did not appear in the Save window.  I could type in a name myself, but again I could not save the file or close the window, and had to kill Python.

EDIT:  Thank god for git.  Showed me exactly what disappeared (two things, one of which was that "createTxAndBroadcast" function), and I was able to copy it right back in.  The bizarre thing is, it almost looks malicious -- not only did it destroy functionality, but everything that has disappeared still ran and "compiled".  The code was continuous and valid... just not correct.

I will investigate further, but for now I recommitted to 0.84.4 all those updates.

Your words "it almost looks malicious" makes me slightly nervous - and I actually refrained from testing the online wallets!  Wink

What are the odds that a part of a file drops out in such a way that it is still syntactically correct??  On the other hand, if it was malicious, why remove the part of the code leading the user to enter the password - why not just steal the password....

In any case, I suppose git can show you exactly what was changed, and when.


I shouldn't have said "malicious."  This was all timed with a hard system crash.  Yes, large chunks of code went missing in a conveniently-transparent way, but if it was malicious, they wouldn't be doing it just to waste my time bug hunting.  I will instead attribute this to vim + hard crash...  I've lost code before with vim (like, two other times in 10 years), but git makes it easy to recover.

I will go back into testing mode, and start testing send-transactions, offline tx, etc.  Though, I might not get to it until tomorrow...

Sorry for the trouble!  Getting there...
hero member
Activity: 547
Merit: 500
Decor in numeris
November 22, 2012, 11:25:32 AM
I updated, and tried again.  I wanted to make a test transaction from the offline wallet.  Now I can specify the payment, and get all the way to the window where I should save the transaction.  Unfortunately, that window is totally unresponsive, and I can neither save the transaction nor get rid of the window (short of killing the Python process with Ctrl-C).

The second time I tried, the file name did not appear in the Save window.  I could type in a name myself, but again I could not save the file or close the window, and had to kill Python.

EDIT:  Thank god for git.  Showed me exactly what disappeared (two things, one of which was that "createTxAndBroadcast" function), and I was able to copy it right back in.  The bizarre thing is, it almost looks malicious -- not only did it destroy functionality, but everything that has disappeared still ran and "compiled".  The code was continuous and valid... just not correct.

I will investigate further, but for now I recommitted to 0.84.4 all those updates.

Your words "it almost looks malicious" makes me slightly nervous - and I actually refrained from testing the online wallets!  Wink

What are the odds that a part of a file drops out in such a way that it is still syntactically correct??  On the other hand, if it was malicious, why remove the part of the code leading the user to enter the password - why not just steal the password....

In any case, I suppose git can show you exactly what was changed, and when.
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
November 22, 2012, 10:39:13 AM
Okay, something is definitely not right.  At all.  There are parts of my source files missing.  This happened before ... a chunk of wallet code disappeared was causing my wallets to break.   I assumed I had done something stupid in vim, but now looking at qtdialogs.py, there seem to be other things missing.

This all happened after a hard crash happened two days ago.  I wonder if it somehow corrupted some files...

I'll be investigating...


EDIT:  Thank god for git.  Showed me exactly what disappeared (two things, one of which was that "createTxAndBroadcast" function), and I was able to copy it right back in.  The bizarre thing is, it almost looks malicious -- not only did it destroy functionality, but everything that has disappeared still ran and "compiled".  The code was continuous and valid... just not correct.

I will investigate further, but for now I recommitted to 0.84.4 all those updates.
hero member
Activity: 547
Merit: 500
Decor in numeris
November 22, 2012, 08:06:15 AM
I pulled the latest version (git pull) and compiled it.  Unfortunately, it does not work very well :-(  I did a "make clean" followed by a "make" just in case something was not recompiled, but that did not help.


BUG 1:

I tried to generate a transaction from an offline wallet.  I clicked "Send Bitcoins" and selected the offline wallet.  Then I pressed OK and got this error:

Code:
(ERROR) Traceback (most recent call last):
  File "ArmoryQt.py", line 2680, in clickSendBitcoins
    dlgSend = DlgSendBitcoins(wlt, self, self)
  File "/Users/schiotz/src/BitcoinArmory/qtdialogs.py", line 4703, in __init__
    self.connect(btnSend, SIGNAL('clicked()'), self.createTxAndBroadcast)
AttributeError: 'DlgSendBitcoins' object has no attribute 'createTxAndBroadcast'

Traceback (most recent call last):
  File "ArmoryQt.py", line 2680, in clickSendBitcoins
    dlgSend = DlgSendBitcoins(wlt, self, self)
  File "/Users/schiotz/src/BitcoinArmory/qtdialogs.py", line 4703, in __init__
    self.connect(btnSend, SIGNAL('clicked()'), self.createTxAndBroadcast)
AttributeError: 'DlgSendBitcoins' object has no attribute 'createTxAndBroadcast'
(yes, the error appears twice).

I get the same error when sending from a normal wallet, by the way.  Just tried it.

BUG 2:

Previously to this, I tried to export all transaction from an online wallet.  I chose File / Export Transactions, chose .csv format and selected a wallet (an unencrypted online wallet).  When I click export, a normal Save window appears, but it is dead.  It does not react to pressing any body, and I cannot get rid of it or quit Armory.  In the end I had to press Ctrl-C in the Terminal window where I started Armory.



I am running Mac OS X version 10.8.2 (Mountain Lion).  It is the first time I have any trouble with Armory's basic functionality (although I have never tried the export transaction menu point before).

EDIT:  I use the threading branch.
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
November 22, 2012, 02:35:24 AM
Major bug fix!:  Windows 32-bit installers were not compiled with multi-threading support!!!   It was 1-2 months between when I figured out how to enable multi-threading, and the next time I fired up my Win32 dev environment.  I thought my VM was just behaving wacky when it didn't work, but it was a real problem!

This also means that if you were a good samaritan and actually installed the 32-bit version on your 64-bit Windows system, then you probably didn't get to experience the months of multi-threading upgrades. 

Below is the Windows 32-bit installer for 0.84.4 which also has all the other bug fixes I mentioned before. 

Armory 0.84.4-almost-beta .msi installer for Windows (32-bit and 64-bit)

This has all the major bug fixes of the last 24 hours.  Windows users, please test it!
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
November 22, 2012, 12:01:23 AM
Pulled the latest threading branch, and all seems smooth. Had no crash on load, as before. I'm quite pleased with it.
Have you got any more features planned, as I can't think of any thing else that I personally would need; it seems to have everything.

That's quite a relief!  I caught two big bugs today.   It looked like there might still be the occasional crash, but I have to give in some time and just release it.  It can't be perfect...

I have mostly only polishing left for beta, no major features.  Though, all this seg faulting and issues with file-reading has encouraged me to bump up the priority on making Armory maintain its own blockchain files.  This would not only solve a great many instabilities related to sharing the blkXXXX.dat files with Bitcoin-Qt, but it would load faster, use less RAM (it will be HDD-heavy instead of RAM-heavy), and allow users to connect to any trusted full node not necessarily localhost.  But it means blockchain data would be duplicated on the HDD.

I think I'll stick to my plan to do the new wallets first.  There's too many benefits of the new wallet format, like finally supporting compressed public keys (and migrating Bitcoin-Qt wallets), encrypted-backupable comment/label files, and multi-sig preparation (won't be implemented just yet, but I need the new wallet format to support P2SH).  Plus, some users have expressed pleasure that Armory is so lightweight in terms of HDD space, so I think it's a good idea to lock in the current stable design, and change around the CONOPs (concept of operations) later.

I'll do a semi-official release in the next day or two, and get some more users clicking on it.  Perhaps within a week of feedback I can officially tag it Beta.  Once again, please let me know about any issues/polishing, or any minor feature requests.
full member
Activity: 238
Merit: 100
November 21, 2012, 08:43:02 PM
Pulled the latest threading branch, and all seems smooth. Had no crash on load, as before. I'm quite pleased with it.
Have you got any more features planned, as I can't think of any thing else that I personally would need; it seems to have everything.
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
November 21, 2012, 06:29:14 PM
Anyone running from the git repo, please pull the threading branch and try again.

I feel like I've been going in circles, but I'm think I'm better off than a week ago.  I re-enabled most operations during scanning, and so far they work most of the time without crashing.  Wallet recovery, sweeping, importing, keypool extension, should all be queued up for execution when Armory is currently scanning. 

I haven't built any installers yet, but I was pleasantly surprised with how many people are running from the git repo... so maybe that's enough.

@Red Emerald:  there was a wallet recovery bug I introduced somehow... I don't know how long it's been there but it's definitely fixed, now.  Can you please re-restore the wallet you were having issues with? 

full member
Activity: 238
Merit: 100
November 21, 2012, 09:26:08 AM
For reasons described somewhere in the last 72 pages, I static compile python into the C++ utilities, ....

This makes me wonder if I am doing something wrong.  I have compiled the git source on Mac OS X, and start the program with
Code:
python ArmoryQt.py

Am I missing an executable I should run instead?  If I am starting the Python executable that will load libpython - if Armory then has the same library built-in, that should be asking for trouble.

Try following my steps in the OSX thread.

https://bitcointalksearch.org/topic/m.1321639

Thanks, but I managed to get it sorted with a simple symbolic link.
hero member
Activity: 742
Merit: 500
November 19, 2012, 02:44:17 PM
For reasons described somewhere in the last 72 pages, I static compile python into the C++ utilities, ....

This makes me wonder if I am doing something wrong.  I have compiled the git source on Mac OS X, and start the program with
Code:
python ArmoryQt.py

Am I missing an executable I should run instead?  If I am starting the Python executable that will load libpython - if Armory then has the same library built-in, that should be asking for trouble.

Try following my steps in the OSX thread.

https://bitcointalksearch.org/topic/m.1321639
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
November 19, 2012, 11:42:11 AM
For reasons described somewhere in the last 72 pages, I static compile python into the C++ utilities, ....

This makes me wonder if I am doing something wrong.  I have compiled the git source on Mac OS X, and start the program with
Code:
python ArmoryQt.py

Am I missing an executable I should run instead?  If I am starting the Python executable that will load libpython - if Armory then has the same library built-in, that should be asking for trouble.


Picobit, it's complicated.  Python libraries are needed for "swig" in order to compile the C++ utilities.  But Armory itself still needs python on your system in order to run.   Don't worry, nothing is wrong Smiley

Quote from: etotheipi
For reasons described somewhere in the last 72 pages, I static compile python into the C++ utilities, but not all systems have the static libraries.  However, if you modify the Makefile to look for .so instead of .a, it will work.   I should try to add an autodetect branch in the Makefile to automatically do that.  Alternatively, if you are using Ubuntu, installing python-dev should resolve it.
I'm on Arch. I did a quick work around of symlinking it instead.

First use of "threading" branch: Very nice work etotheipi, it's great! Having Armory starting instantly is great. I'll have a play around with it to see if I can find any bugs, and report back.
Hope you can incorporate it to the master branch soon.

Edit:

I got a seg fault after a few minutes of starting Armory - threading branch. (I presume just as it had finished scanning the blockchain).
Code:
Executing numBlocksToRescan
Finishing numBlocksToRescan
Executing rescanBlocks
Segmentation fault

And here's the log:
http://pastebin.ca/2253021

Whoops, it looks like I left the makefile in debug mode.  I will recommit it not in debug...

There is a known bug that I just isolated, that has to do with creating addresses while Armory is scanning, and then it attempts to rescan right away.  I just isolated it (and prints the same message you showed), and will be examining it in the debugger later this evening.  This is what I was referring to in my previous message about "gotta figure this out sometime".

Life is hard...
full member
Activity: 238
Merit: 100
November 19, 2012, 09:03:47 AM
Quote from: etotheipi
For reasons described somewhere in the last 72 pages, I static compile python into the C++ utilities, but not all systems have the static libraries.  However, if you modify the Makefile to look for .so instead of .a, it will work.   I should try to add an autodetect branch in the Makefile to automatically do that.  Alternatively, if you are using Ubuntu, installing python-dev should resolve it.
I'm on Arch. I did a quick work around of symlinking it instead.

First use of "threading" branch: Very nice work etotheipi, it's great! Having Armory starting instantly is great. I'll have a play around with it to see if I can find any bugs, and report back.
Hope you can incorporate it to the master branch soon.

Edit:

I got a seg fault after a few minutes of starting Armory - threading branch. (I presume just as it had finished scanning the blockchain).
Code:
Executing numBlocksToRescan
Finishing numBlocksToRescan
Executing rescanBlocks
Segmentation fault

And here's the log:
http://pastebin.ca/2253021
Jump to: