Hello @goatpig
I confirm I had to fix the int issue for the following calls:
setMinimumWidth
setMinimumHeight
setMinimumSize
setMaximumWidth
setMaximumHeight
setMaximumSize
QSize
This apparently was enough to let me run Armory and do some basic tests. Of course I am not sure there aren't other calls with similar problems, I'll know only once I'll be able to do a complete run of all the Armory features.
Let me know if you would like the files I updated so you can avoid hunting all the replaces yourself and can concentrate on the real work. Unfortunately I don't have a github account at the moment so I can't fork and create a pull request. Let me know what's the more useful way for you.
About the tests, I did some checks with wallets (that is, I understand, what you are working on) so it's possible you are already aware of the issues I encountered. I list them anyway for your convenience
First test, I tried to create a new wallet. I checked the flag for creating additional entropy, and got the dialog for the selection of the shuffled cards. All the boxes are black, so I just randomly clicked some until I got enough entropy and went on. I got this errror:
(ERROR) Traceback (most recent call last):
File "/home/lab/BitcoinArmory/ui/Wizards.py", line 133, in initializePage
self.createNewWalletFromWizard()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "/home/lab/BitcoinArmory/ui/Wizards.py", line 185, in createNewWalletFromWizard
self.newWallet = PyBtcWallet().createNewWallet(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
passphrase=self.setPassphrasePage.pageFrame.getPassphrase(),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<3 lines>...
longLabel=self.walletCreationPage.pageFrame.getDescription(),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
extraEntropy=entropy)
^^^^^^^^^^^^^^^^^^^^^
File "/home/lab/BitcoinArmory/armoryengine/PyBtcWallet.py", line 501, in createNewWallet
walletId = TheBridge.utils.createWallet(
addrPoolSize,
...<2 lines>...
shortLabel, longLabel,
extraEntropy)
File "/home/lab/BitcoinArmory/armoryengine/CppBridge.py", line 583, in createWallet
method.extraEntropy = extraEntropy
^^^^^^^^^^^^^^^^^^^
File "capnp/lib/capnp.pyx", line 1417, in capnp.lib.capnp._DynamicStructBuilder.__setattr__
File "capnp/lib/capnp.pyx", line 1410, in capnp.lib.capnp._DynamicStructBuilder._set
File "capnp/lib/capnp.pyx", line 794, in capnp.lib.capnp._setDynamicField
OverflowError: Python int too large to convert to C unsigned long
Additionally, I had the following error:
(ERROR) Traceback (most recent call last):
File "/home/lab/BitcoinArmory/ui/WalletFrames.py", line 1042, in clickedDoIt
isBackupCreated = OpenPaperBackupDialog('Single', self.parent(), self.main, self.wlt)
^^^^^^^^
AttributeError: 'WalletBackupFrame' object has no attribute 'wlt'
This might relatedto the previous though, since a wallet wan't actually created.
After that, I tried creating a wallet without asking for additional entropy, and was able to complete the task. Though, even if I asked to print a backup wallet, this didn't happened. Are there some dependencies needed for the print feature?
I'm on an offline session (and I don't have bitcoind running on this test machine) so I stopped here assuming the wallet is working.
Later, I tried restoring a paper backup I had. It's a 1.35c plain one. The restoring process was apparently successful, but even if I set a password on the walled when required (and confirmig it the third time) I got this error on console:
-WARN - 2025-02-28 - 13:16:00.807: (../../cppForSwig/Wallets/WalletFileInterface.cpp:404) No control passphrase provided, wallet file will not be encrypted
-WARN - 2025-02-28 - 13:16:16.237: (../../cppForSwig/Wallets/Accounts/AddressAccounts.cpp:349) empty inner account id, defaulting to outer account id
-ERROR - 2025-02-28 - 13:16:25.956: (../../cppForSwig/BridgeAPI/CppBridge.cpp:552) failed to register walletwith error: bdvPtr is not set
(ERROR) Traceback (most recent call last):
File "/home/lab/BitcoinArmory/ui/WalletFrames.py", line 1034, in clickedDoIt
unlockProgress = DlgProgress(self, self.main, HBar=1,
Title=self.tr("Unlocking Wallet"))
TypeError: 'module' object is not callable
The restored wallet was not shown in the wallets list at first, but when I closed and restarted Armory it was there, with "Encrypted" under the Security column.
Since the strange error, I wanted to try if the password I entered was correctly applied, so I opened the wallet properties page and clicked the "Click to Test" under "Unlock Time:" but I got the following error:
(ERROR) Traceback (most recent call last):
File "/home/lab/BitcoinArmory/qtdialogs/qtdefines.py", line 375, in mouseReleaseEvent
self.linkActivated.emit(ev)
~~~~~~~~~~~~~~~~~~~~~~~^^^^
TypeError: linkActivated(self, link: Optional[str]).emit(): argument 1 has unexpected type 'QMouseEvent'
That's all for now. Please let me know if you prefer a different way for reporting those issues.
Regards