Commit Graph

635 Commits

Author SHA1 Message Date
ThomasV f1a7473ae2 do not use old servers 2012-11-04 11:08:05 +01:00
thomasv 4cbee7554f new protocol: the server sends serialized tx, deserialize it in the client 2012-11-04 10:56:39 +01:00
ThomasV ea42a74824 default ports to be used if we cannot get a list of peers 2012-11-01 11:43:59 +01:00
ThomasV 2a572a185a get_string 2012-10-30 22:04:37 +01:00
ThomasV 5fac0ecfc4 simplification 2012-10-30 21:28:46 +01:00
thomasv e2add776bc text gui: spacing between tabs 2012-10-30 18:42:39 +01:00
thomasv 43ceb6b52a text gui: dialogs 2012-10-30 18:36:09 +01:00
thomasv 05c09ac9ac popups and messages 2012-10-30 16:56:58 +01:00
thomasv d2711ac757 popup windows, selectors 2012-10-30 14:56:16 +01:00
thomasv 60bac7257e show active tab in bold 2012-10-29 17:23:50 +01:00
thomasv 5e28ccd09d Improve text gui. Disable print_error when text gui is used. 2012-10-29 16:22:53 +01:00
thomasv cdb52c30d2 do not request merkle root for unconfirmed transactions 2012-10-29 09:31:42 +01:00
ThomasV ea7dabe640 fix proxy index 2012-10-28 21:59:51 +01:00
ThomasV 5874457df2 fix: subscriptions 2012-10-28 10:22:12 +01:00
ThomasV 6df9eb491a revert label change: this was breaking i18n translations. 2012-10-28 07:49:15 +01:00
ThomasV f40ca9efa6 disable text gui, as it is not ready for release 2012-10-28 07:45:11 +01:00
ThomasV 76eff7fdb6 increasing version number, and wiki translation version 2012-10-28 07:41:44 +01:00
ThomasV 71357cfb23 merkle root too 2012-10-27 20:52:32 +02:00
ThomasV 1a7f1daebd fix flags 2012-10-27 20:04:08 +02:00
ThomasV 69c56c5b8d open file with b flag 2012-10-27 19:57:28 +02:00
ThomasV 6de8a946eb use callback instead of wallet.was_updated 2012-10-27 19:20:50 +02:00
thomasv 2307323bb7 redo verifications if a header verification fails 2012-10-27 16:56:04 +02:00
thomasv 8152072938 fix: self.s is None if we are not connected 2012-10-27 16:46:42 +02:00
ThomasV cfb3aa6a12 move 'peers.subscribe' and 'server.version' calls into the interface 2012-10-27 14:15:03 +02:00
ThomasV 18c9c2f369 request headers chunk if we need more than 50 blocks 2012-10-27 13:02:59 +02:00
ThomasV be6aab538d cosmetic change 2012-10-27 12:31:43 +02:00
ThomasV 5edf41f2e0 cosmetic change 2012-10-27 12:10:16 +02:00
ThomasV 35882f7fb7 catch ssl exception caused by timeout 2012-10-27 10:24:43 +02:00
ThomasV 03199dcf2e minor fix for settings dialog combo 2012-10-27 01:19:27 +02:00
ThomasV 208e789af4 fix: synchronizer 2012-10-27 00:02:52 +02:00
ThomasV faa002f53c fix: below or equal in var_int encoding 2012-10-26 22:51:33 +02:00
ThomasV 4038c0273f fix: var_int encoding 2012-10-26 22:49:06 +02:00
ThomasV 3216c0467d use print_error 2012-10-26 18:25:43 +02:00
ThomasV 1ecce5dffc bugfix: default to [], so that we do not create new addresses if the history was deleted 2012-10-26 18:00:32 +02:00
ThomasV a63b9e527e by default, use user dir 2012-10-26 17:44:07 +02:00
thomasv 1f37a330b3 bugfix: add channel when calling send 2012-10-26 16:06:54 +02:00
thomasv b78fd6b3b6 bugfix: address->addr 2012-10-26 15:48:57 +02:00
thomasv b6729b3aab verifier: download chunks first for efficiency 2012-10-26 15:08:12 +02:00
thomasv 15a7626b14 spv: request previous headers recursively in order to support blockchain reorgs 2012-10-26 13:43:20 +02:00
thomasv 1e15dbab81 protocol v0.4: use position for branching 2012-10-26 11:29:11 +02:00
thomasv ee84e5c007 document public methods of verifier 2012-10-26 10:20:47 +02:00
thomasv ee4de40c37 use WalletVerifier.add() method to register transactions 2012-10-26 10:02:09 +02:00
ThomasV 927bbda591 callback everytime there is an update 2012-10-26 07:06:43 +02:00
ThomasV b59e20a1ad return zero if unconfirmed 2012-10-26 06:59:33 +02:00
ThomasV 2a06a5b493 tie confirmation icons to payment verifier 2012-10-26 00:40:19 +02:00
ThomasV 46eabd1dab sort pending headers before they get processed 2012-10-25 22:49:01 +02:00
thomasv 8b865983c6 make the Verifier class usable without a wallet instance 2012-10-25 16:03:16 +02:00
thomasv f91dde55dd subscribe to / verify headers 2012-10-25 15:40:30 +02:00
thomasv b3b31fdc07 alt path for headers 2012-10-25 10:00:11 +02:00
ThomasV b018e0ae53 simple payment verification: check targets, use block headers file. 2012-10-24 21:45:45 +02:00
ThomasV e5c19b64af handle empty string (!= None) 2012-10-23 22:40:52 +02:00
ThomasV 52d72a527a fix: break the loop 2012-10-23 08:15:53 +02:00
ThomasV c9ffb1b4ba fix order 2012-10-23 07:45:56 +02:00
ThomasV 0d68926da2 fix: copy the default servers array 2012-10-22 18:50:17 +02:00
thomasv 3a23e54a1a window title 2012-10-22 17:36:52 +02:00
thomasv 37b0737f6d wait until connected 2012-10-22 17:31:37 +02:00
thomasv c735fcd228 more robust connection procedure: let the user start with proxy 2012-10-22 17:18:07 +02:00
thomasv af0d8d664b save list of verified tx only when needed 2012-10-22 15:44:54 +02:00
thomasv 10d6db468a save to disk the list of verified transactions 2012-10-22 15:40:39 +02:00
thomasv f4b95244c3 typo: expected -> unexpected 2012-10-22 15:17:43 +02:00
thomasv a4d17d3cb9 new 'disconnecting' callback for requested disconnection 2012-10-22 15:15:52 +02:00
thomasv 3cc382b7a0 send another banner request on reconnect 2012-10-22 15:01:13 +02:00
thomasv 4038b81a22 catch exception when client is disconnected 2012-10-22 14:56:59 +02:00
thomasv 8e95706763 init_up_to_date when connected 2012-10-22 14:49:29 +02:00
thomasv 0b76e16d04 allow multiple callbacks for a given name 2012-10-22 13:43:58 +02:00
thomasv 82531131ee interface: do not connect inside the constructor 2012-10-22 12:58:57 +02:00
thomasv 4fbd2ea66e use named callbacks with the interface 2012-10-22 11:34:21 +02:00
ThomasV 33eb749c6a interface for command line mode 2012-10-21 23:22:46 +02:00
ThomasV 2da0c0b77e big refactoring of the interface
addition of the wallet verifier class for SPV
2012-10-21 22:55:16 +02:00
ThomasV 1212982fec pass config to randomly selected server 2012-10-20 17:41:12 +02:00
ThomasV fff922b5d7 fix: random_choice -> random.choice 2012-10-20 17:21:12 +02:00
thomasv a361a05b08 text gui 2012-10-20 10:30:29 +02:00
thomasv 5d01831090 text ui: first commit 2012-10-20 10:30:29 +02:00
thomasv 5717b43661 separate bitcoin related functions from wallet.py 2012-10-19 14:55:01 +02:00
thomasv 728ae0d184 move theme_path functions from util to gui_lite 2012-10-19 14:36:12 +02:00
thomasv e165c13a84 synchronous_get batch method for interface 2012-10-19 14:16:02 +02:00
thomasv 3760486a6a fix side effect and handle case where the initial server was not connected 2012-10-19 11:02:22 +02:00
thomasv fb6a1a0720 better protocol handling in gui 2012-10-19 10:41:20 +02:00
thomasv f1c9aa6603 fix connection_msg 2012-10-19 10:30:51 +02:00
thomasv c5f5e92d17 rename qt gui -> classic 2012-10-19 10:26:35 +02:00
ThomasV 8668e923ce update message: cannot change -> not changing 2012-10-18 22:13:09 +02:00
ThomasV 5919141f0d version 1.1 2012-10-18 20:56:37 +02:00
ThomasV 456d3d5b55 add SSL protocols to network dialog 2012-10-18 20:29:53 +02:00
thomasv 8957c705ac use SSLv23 2012-10-17 12:54:32 +02:00
thomasv 87a28d31a4 client-side support for SSL 2012-10-17 11:35:24 +02:00
ThomasV 27f4a0c28e fix: update history when label changed 2012-10-17 07:18:48 +02:00
thomasv ada24d2463 set default button in seed dialog 2012-10-16 16:39:34 +02:00
thomasv 4600eeef48 use a small timeout value initially because the server might be unreachabe 2012-10-16 09:52:39 +02:00
thomasv 14da12921d gtk: on create, use the server already picked by the interface 2012-10-16 09:29:08 +02:00
thomasv 8220b0f743 on create, use the server already picked by the interface 2012-10-16 09:27:58 +02:00
thomasv da4b974dfd simplification: hex encode master_public_key directly 2012-10-16 09:24:38 +02:00
ThomasV 486ebf93e2 move is_up_to_date method 2012-10-15 07:43:00 +02:00
ThomasV fb5ceb5167 bootstrap: test all hardcodedservers until one is found that is online 2012-10-14 14:40:07 +02:00
ThomasV 69e68e9203 show waiting dialog during transaction broadcast 2012-10-14 08:25:09 +02:00
ThomasV d8bebdccf6 Adding confirmation icons in Tachikoma's pull request, following considerations on security 2012-10-13 08:57:22 +02:00
ThomasV cdf81f370b save config after checking qt version 2012-10-13 07:38:22 +02:00
ThomasV 799654dd74 catch NoSectionError in simple_config 2012-10-12 21:31:30 +02:00
ThomasV 9f36ef3931 fix: call read_wallet_config only if there is a wallet_path value in options 2012-10-12 20:42:45 +02:00
thomasv cc32b01bd3 another small fix 2012-10-12 18:46:34 +02:00
thomasv 29671f55b6 fix 2012-10-12 18:44:30 +02:00
thomasv 23f7ee2fb9 disable labels too 2012-10-12 18:01:35 +02:00
thomasv 65b13b88f4 disable setting widgets when setting is not modifiable. 2012-10-12 17:40:37 +02:00
thomasv ef2f832116 add gui selector to gtk interface 2012-10-12 17:04:16 +02:00
thomasv d2832563e4 improved warning message 2012-10-12 16:38:56 +02:00
thomasv 81b29a48a1 allow config to be None in constructor of Interface 2012-10-12 16:31:05 +02:00
thomasv 1a781036cf move init_socket in constructor 2012-10-12 16:09:20 +02:00
thomasv a95e834e2e fix: needs parentheses 2012-10-12 16:00:47 +02:00
thomasv 8d0b81a3b7 system config file is read-only, user config file can be written 2012-10-12 14:44:56 +02:00
thomasv db730dd179 minor fix for proxy type 2012-10-12 11:56:41 +02:00
thomasv 5e76b8caab fix type for settings in configuration file 2012-10-12 11:26:30 +02:00
thomasv c53c3f2195 network_dialog: disable fields that are not modifiable 2012-10-12 11:10:58 +02:00
thomasv 91609dab9e improved network dialog 2012-10-12 11:01:09 +02:00
thomasv 8fe6673814 typo 2012-10-12 09:41:49 +02:00
thomasv d25724a621 simplify read_common_config. do not break loop so that we read both files 2012-10-12 09:35:09 +02:00
ThomasV d92f1991a9 move prompt_password from wallet.py to main script 2012-10-12 01:50:54 +02:00
ThomasV c7311a1e7f fix for gtk gui 2012-10-12 01:32:26 +02:00
ThomasV 7959417751 small fixes for gtk gui 2012-10-12 01:21:50 +02:00
ThomasV 10119dfed3 fix: inheritance 2012-10-12 01:13:54 +02:00
ThomasV ca3fa8c6dd cleanup 2012-10-11 22:27:48 +02:00
ThomasV d0c8a48274 encapsulate parse_proxy_options 2012-10-11 21:37:02 +02:00
ThomasV f0556bb0d3 rename conf file section as 'client'. add gui to conf 2012-10-11 21:07:49 +02:00
thomasv 5444f55e6b big refactoring: command line options and electrum.conf options override settings in wallet file. 2012-10-11 20:10:12 +02:00
thomasv 0d11aa75c4 encapsulation: that kind of exception handling should be done in the gui module 2012-10-11 13:43:04 +02:00
thomasv 299d54c6ec fix: the gtk gui was broken since server_list_changed was introduced... 2012-10-11 13:18:04 +02:00
thomasv 596bddbf7e replace expert mode with a button for gui_detailed_view 2012-10-11 12:56:57 +02:00
thomasv da9351260c move proxy fallback away from send method 2012-10-10 10:16:18 +02:00
Maran c1fa13d0f6 Disabled the proxy input fields when None is selected 2012-10-09 22:07:39 +02:00
Maran 3ce5eef076 Merge branch 'master' of https://github.com/spesmilo/electrum 2012-10-09 17:15:05 +02:00
Maran 8833555b35 Add fallback for users who ran master with the old default config 2012-10-09 17:13:26 +02:00
thomasv 93ac0e806b make connection message slightly less invasive 2012-10-09 16:52:16 +02:00
thomasv cfce1420c5 proxy: allow '-p none' 2012-10-09 16:16:00 +02:00
thomasv fd13d19cb8 fix proxy issues: override config with command line option, and use interface.proxy in gui 2012-10-09 15:48:06 +02:00
thomasv 880b08f337 remove remote wallet (broken, will be replaced) 2012-10-05 15:49:03 +02:00
thomasv c479261043 restored initial text (users should know what seed means), and added a warning against phishing 2012-10-02 13:41:38 +02:00
thomasv e7e9e8916b fix set_server. keep compatibility with the gtk interface 2012-10-02 12:52:47 +02:00
thomasv 385b515439 fix proxy config: read from simpleconfig object 2012-10-02 12:40:08 +02:00
thomasv 287c7fc643 split create_new_address, so that get_new_address can be used without the context of a wallet 2012-10-01 18:31:54 +02:00
thomasv 8d9e5a4f2e remove ecdsa.org from default servers; too much downtime 2012-10-01 18:25:32 +02:00
thomasv f3ff9b5cf6 make proxy an optional parameter 2012-10-01 18:14:50 +02:00
thomasv 44dd7713e5 debugging options should not be parameters, it makes the code unnecessarily complictated 2012-10-01 17:41:47 +02:00
thomasv 8fd1dbadf6 use https for aliases 2012-10-01 15:10:51 +02:00
Maran ae991f4407 Added the ability to make a copy of your wallet so ungeeky people can still create a backup in a place they can easily reach 2012-09-24 18:11:30 +02:00
Maran 504ea37c79 Made cfg an class attribute and fixed server changing for lite gui since proxy got added 2012-09-21 23:18:32 +02:00
Maran a08f2660df Use True flag for set key 2012-09-21 23:13:46 +02:00
Maran 23ffbc3e48 Fixed merged conflict and added folder creation on first load 2012-09-21 16:57:54 +02:00
Maran H. c486c6d55f Merge pull request #33 from bkkcoins/startup-gui-option
Startup gui option
2012-09-21 07:20:59 -07:00
bkkcoins 23b1ccaf39 Merge branch 'socks-support' into merged 2012-09-21 15:14:48 +07:00
bkkcoins 2bf2f76a2a small edit to config syntax 2012-09-21 15:14:16 +07:00
bkkcoins 43d9710cac Merge branch 'startup-gui-option' into merged 2012-09-21 15:11:24 +07:00
bkkcoins 413e5b9cc4 Merge branch 'window-position' into merged 2012-09-21 15:11:19 +07:00
bkkcoins ad24870a03 small edit to config syntax 2012-09-21 15:10:43 +07:00
bkkcoins 38acaf0a3a small change to config syntax 2012-09-21 15:06:21 +07:00
bkkcoins 4c65822f32 merged current branches 2012-09-21 13:05:37 +07:00
bkkcoins 1ca0595653 Merge branch 'startup-gui-option' into merged 2012-09-21 13:03:36 +07:00
bkkcoins 3007d95ceb Added code to remember window position 2012-09-21 10:53:14 +07:00
bkkcoins fccd9921eb adjust whitespace only 2012-09-21 08:52:33 +07:00
bkkcoins e43264538d adjust whitespace only 2012-09-21 08:51:28 +07:00
bkkcoins 01b300562e Added settings dialog option for gui startup mode 2012-09-21 08:47:56 +07:00
bkkcoins 8244768654 Changed how load_config works so it always supports new config vars 2012-09-21 04:48:03 +07:00
bkkcoins 9121654e8a Added proxy settings save to config.json 2012-09-20 18:24:36 +07:00
bkkcoins 09c90c0971 Revert "Revert "Added proxy options to network dialog""
This reverts commit 6e0b3620d2.
2012-09-20 16:55:28 +07:00
bkkcoins 6e0b3620d2 Revert "Added proxy options to network dialog"
This reverts commit 83bb644135.
2012-09-20 16:55:15 +07:00
Maran 7969b62b55 Removed uncle-enzo from default servers since it's not syncing 2012-09-19 18:51:13 +02:00
Amir Taaki 15eb4d7cb8 reformat simple_config to comply with electrum and create config dir if it doesnt exist. 2012-09-19 16:47:39 +01:00
bkkcoins 83bb644135 Added proxy options to network dialog 2012-09-19 22:29:58 +07:00
bkkcoins 1af17baafb sockssipy support module provides SOCKS and HTTP proxy wrapper 2012-09-19 17:37:43 +07:00
bkkcoins aa6f631f2e Added SOCKS support, with cmdline and SimpleConfig options 2012-09-19 17:37:20 +07:00
Samuel Tardieu 593b2552d1 Do not qualify relative imports
This is unneeded and fails while installed.
2012-09-07 11:27:00 +02:00
Maran 9407dd3f2f Small fix to make sure the cursor stays where it is using the Pro GUI 2012-09-04 19:54:01 +02:00
Maran 3f499d7048 Merge branch 'fallback' 2012-09-04 17:30:19 +02:00
Amir Taaki 89a4045e3a Dump problem tx to temporary file when error happens. This allows developers to debug failed transactions from users by having access to the raw tx dump to see what is wrong.
This would useful in the pro-mode GUI. There should be implemenation for the send method between both these GUIs rather than having their own copy-pasted version. Also the fee system needs fixing.
2012-09-02 19:13:11 +02:00
Maran 6da25727f8 Refactored user_dir to utils and replaced it in wallet and config 2012-08-30 18:00:08 +02:00
Maran fbf854bcb8 Added a set_key setter method that can also write out the changes to file 2012-08-30 17:52:03 +02:00
Maran 3252b5ae4e Added SimpleConfig class to deal with simple config options added for fallback to other gui when missing deps 2012-08-30 00:03:38 +02:00
Amir Taaki 9c122c23ea Fixed issue 19 by jimboman77: https://github.com/spesmilo/electrum/issues/19
"Right now the only check thats being done is making sure that the length isn't 0, ie something is being entered before the send button becomes clickable."

Also check that entered amount is <= btc_balance before enabling send button.
2012-08-29 21:43:34 +01:00
Amir Taaki ca4473c620 If wallet does not exist, then it does not even attempt to read the config (read returns on IOError exception). Ergo a new wallet will not ever set the theme name and it will stay as None. We change this to a sensible default so new wallets have a themed GUI. 2012-08-29 21:27:22 +01:00
Amir Taaki 4c1bc14104 Remove assert which isn't true for the commands (only the GUI). 2012-08-29 20:54:28 +01:00
Amir Taaki b3b910d926 WalletSynchronizer had a race condition caused by calling the callback before the Qt event loop (or other initialisation) finished. Ergo we split initialisation and the running of the thread, then use Qt SIGNALs to yield back into the Qt event loop. This ensures that the callback for the servers_list_changed is not called until the main Qt event loop is actually running. 2012-08-29 20:53:22 +01:00
Amir Taaki e61d478a80 Tidy up of code to comply with style guide. 2012-08-29 20:53:22 +01:00
Maran 3216a86773 Merge branch '1.0' 2012-08-28 11:04:30 +02:00
Maran 4e3e4b90ea Fix port number for bytesized 2012-08-28 11:04:11 +02:00
Amir Taaki 6dfb9e12c7 Fixed bug where switching servers causes assert failure. 2012-08-27 04:02:15 +02:00
Amir Taaki 3fe5ba85b2 Added QObject to MiniActuator. 2012-08-27 03:50:42 +02:00
Amir Taaki 10e3aa7c1e Merge branch 'servers'
Conflicts:
	lib/gui_lite.py
2012-08-27 03:48:57 +02:00
Amir Taaki 2b6d5ebd55 Change server in lite mode. 2012-08-27 03:47:40 +02:00
Amir Taaki b25e93c4bc Update servers list once fetched from remote. 2012-08-27 03:32:31 +02:00
Amir Taaki 26c0b786e9 RAII open of wallet file. 2012-08-24 22:02:58 +01:00
Amir Taaki 3d836ebc38 Revert "Don't need two try/catch statments if nothing happens when exception is caught"
This reverts commit 6b86942ccb.
2012-08-24 22:01:08 +01:00
Amir Taaki 5c4be3196a Better looking set_path(wallet_path) method. Flattened function that's easier to read. 2012-08-24 10:34:38 +01:00
Amir Taaki 58e6050f52 Better looking set_path(wallet_path) method. Flattened function that's easier to read. 2012-08-24 09:34:30 +01:00
Jimbo77 25ad5fcd06 got rid of print_error 2012-08-23 18:38:28 -07:00
Jimbo77 a6239764d2 small cosmetic change 2012-08-23 18:36:40 -07:00
Jimbo77 34a3eea0bf changed imports to fit pep8 styleguide 2012-08-23 18:21:17 -07:00
Jimbo77 2de8df6758 getting rid of another BaseExceptions 2012-08-23 18:17:30 -07:00
Jimbo77 e12699ae75 getting rid of more BaseExceptions 2012-08-23 18:16:27 -07:00
Jimbo77 cdc16acabb changed to more descriptive exception 2012-08-23 18:11:57 -07:00
Jimbo77 6b86942ccb Don't need two try/catch statments if nothing happens when exception is caught 2012-08-23 18:02:55 -07:00
Jimbo77 719b9d7d33 Small cosmetic fix 2012-08-23 18:01:06 -07:00
Jimbo77 407070bba0 Didn't need a seperate variable just for string 2012-08-23 17:59:54 -07:00
Jimbo77 cb67ec4454 changed to more descriptive exception 2012-08-23 17:50:44 -07:00