Commit Graph

2333 Commits

Author SHA1 Message Date
4ad6401449
Logic error in download reset
- fix requesting the same object over and over again, now it continues to
  iterate through the other objects and only resets the queue after a timeout
  after the last received object
2019-01-02 22:25:25 +01:00
c3939875d3
Fix repeated downloads
- a bug in RandomTrackingDict caused requesting to download the same objects
  over and over
- the bug is that the lastObject wasn't properly initalised, this caused the
  write buffer to fill with "getdata" requests until the first object was
  received
- this PR should address both the excessive bandwidth as well as excessive CPU
  usage during downloading
2019-01-02 08:50:17 +01:00
Justin Ramos
2f422d46c5
use /usr/local/opt/openssl symlink, ignore a.out 2018-12-31 22:47:00 -08:00
1cdbb90f22
Get rid of map 2018-12-20 20:34:09 +01:00
3a4eed0f8b
getdata performance optimisation
- reduce number of calls to time.time()
- no need to shuffle, that's done by the upload thread
- get rid of unused import
2018-12-20 20:34:06 +01:00
ca567acab3
Put uploads into a separate thread
- instead of being processed in the ReceiveQueue thread, uploads are now done
  in a dedicated thread. Only the parsing is done in ReceiveQueue thread.
- the UploadThread is modelled based on the DownloadThred, but simpler.
- it checks for intersection attack, eliminates duplicates and restricts the
  write buffer size to 2MB (may still grow slightly higher if too many big
  objects are requested, but the absolute limit appears to be about 4.5MB in the
  worst case scenario).
- the restriction of the write buffer may cause some upload throttling (to
  about 2MB per second per connection), but can be optimised later
- fixes #1414
2018-12-20 20:34:01 +01:00
PyBitmessage Translations
2457643426
Auto-updated language ja from transifex 2018-12-19 11:33:23 +01:00
e1d5604674
Fix #1408 (duplicate connections to some hosts), got from chan 2018-12-18 19:36:46 +02:00
PyBitmessage Translations
4e7cd784ad
Auto-updated language zh_cn from transifex 2018-12-17 16:09:07 +01:00
PyBitmessage Translations
328302f936
Auto-updated language eo from transifex 2018-12-16 19:35:30 +01:00
PyBitmessage Translations
ee2b957296
Auto-updated language pl from transifex 2018-12-16 18:02:39 +01:00
38318150bd
Moved missingObjects dict from state to network.objectracker 2018-12-16 17:44:26 +02:00
GONQ
b2af007280
PGP-signed spelling fix for the connection warning dialog. 2018-12-10 03:37:29 -06:00
coffeedogs
6d98a4ef44
Changes based on style and lint checks. (final_code_quality_17) 2018-11-26 14:58:16 +00:00
PyBitmessage Translations
881e523877
Auto-updated language zh_cn from transifex 2018-11-14 08:46:18 +01:00
coffeedogs
0a30eb0225
Changes based on style and lint checks. (final_code_quality_7) 2018-11-12 14:21:56 +00:00
ea38e91839
Fixing namecoin button again (broken in c7d3784):
* separate method MyForm.resetNamecoinConnection() - sets MyForm.namecoin
    to fresh instance of namecoin.namecoinConnection, tests it and shows or
    hides "Fetch Namecoin ID" button;
  * that method is called when MyForm initializes and when settingsDialog
    instance is accepted;
  * namecoin.namecoinConnection.query() checks found address and always
    prepends it with display name, if query result doesn't contain "name"
    field it will be the query string.
2018-11-07 15:54:14 +02:00
8ad064dcac
Fix: Shift handling when deleting from Sent
Due to the way Qt.KeyboardModifiers works, treating it as an integer results in
unexpected behaviour. As a result, When deleting from Sent, it always deleted
rather than moved an item to trash, when selecting "Move to Trash" from the
context menu. This fixes it.
2018-11-05 01:33:34 +01:00
0e63392ee3
Fix #1385: not check for pyqt if daemon = true set in config 2018-11-04 15:16:56 +02:00
58bc170bda
Fix #1383 - formatting artifact in 7ed459b 2018-11-01 16:53:53 +02:00
ae2cebb2a6
Minimal test for clientStatus consistency 2018-11-01 16:52:33 +02:00
9ef928b4a9
Removed extra call of shared.thisapp.cleanup() in bitmessageqt 2018-11-01 11:32:14 +02:00
ff04bf072e
Allow re-call of MyForm.quit() if user selected to wait at first 2018-11-01 11:32:14 +02:00
4383b49be8
flake8 for bitmessageqt.MyForm.quit() 2018-11-01 11:32:14 +02:00
coffeedogs
10128b7560
Changes based on style and lint checks. (final_code_quality_2) 2018-10-31 17:06:26 +00:00
coffeedogs
78ddb2f2f2
Changes based on style and lint checks. (final_code_quality_12) 2018-10-31 16:20:42 +00:00
coffeedogs
0bceeca524
Changes based on style and lint checks. (final_code_quality_5) 2018-10-31 14:04:35 +00:00
coffeedogs
c875769b15
Changes based on style and lint checks. (final_code_quality_3) 2018-10-31 12:58:46 +00:00
coffeedogs
a72da271d5
Changes based on style and lint checks. (final_code_quality_1) 2018-10-31 12:37:10 +00:00
1c914d8cd8
flake8 and style correction for network.udp 2018-10-27 17:55:38 +03:00
625e83f4b4
Corrected style a bit 2018-10-27 17:55:02 +03:00
49985a435f
Special class BMStringParser for sending ACK (resolves #1374) 2018-10-27 17:55:02 +03:00
7c7d6781a2
Removed old code from protocol, shared, state
and class_objectProcessor modules (#1374), temporarily commented
  shared.checkAndShareObjectWithPeers() call
2018-10-27 17:55:01 +03:00
1c2bef46c1
e417b62 allows to remove sleep from cleaner test 2018-10-22 17:18:25 +03:00
5572e6b3a1
Suppress pylint warning about 'relative import' 2018-10-22 17:18:24 +03:00
daf556ca50
Added tests for knownnodes:
- import of pickled knownnodes;
  - default knownnodes if nothing imported;
  - knownnodes starvation (#1335), demanded changes in networkthread.
2018-10-22 17:18:24 +03:00
2bbda63b9c
Added address length check 2018-10-22 17:18:24 +03:00
c8a781c7c5
Marked use of random, subprocess and xmlrpclib in tests
for skipping by bandit
2018-10-22 17:18:24 +03:00
cfdb6beb54
Moved tests from helper_msgcoding into TestCore.test_msgcoding() 2018-10-22 17:18:24 +03:00
ea8991c05b
Test case for config, not runs pybitmessage yet 2018-10-22 17:18:24 +03:00
d8b4682ee9
Style fixes and docstrings for tests 2018-10-22 17:18:23 +03:00
a3300ba8f1
A test case for core (which will be ran in main thread) 2018-10-22 17:18:23 +03:00
51df0507e2
Fixed signal files creation 2018-10-22 17:18:23 +03:00
589900f7c3
Added a test for chan creation/joining 2018-10-22 17:18:23 +03:00
c49c131929
New test case class hierarchy:
- TestProcessProto has common setUpClass and tearDownClass methods
  - TestProcess is for testing the PyBitmessage process (using psutil)
2018-10-22 17:18:23 +03:00
c28d463261
Added doctstrings for all tests and a test for sendBroadcast API command 2018-10-22 17:18:23 +03:00
981dddade4
Added test for createRandomAddress API command 2018-10-22 17:18:23 +03:00
10346c84aa
Basic API tests and simple apinotify handler 2018-10-22 17:18:22 +03:00
5b1d2e56a1
Changes into test mode:
run in background, stop after 30 sec since last API response
2018-10-22 17:18:22 +03:00
coffeedogs
7ed459b644
Changes based on style and lint checks. (final_code_quality_6) 2018-10-18 19:46:01 +01:00
d8be7cd19a
Right check in module tr - right import order 2018-10-16 14:48:58 +03:00
533df80ce9
Resolving pylint warnings 2018-10-12 11:58:02 +03:00
bd5bdda009
Moved class singleAPI to api module and import api below config check 2018-10-12 11:58:02 +03:00
ef54bcaf82
The changes in #1325 are buggy. Implementing it properly. 2018-10-12 11:28:13 +03:00
b2c8b77938
Closes #1360: validate knownnodes received from the network 2018-10-12 11:16:57 +03:00
6969ec0ec9
Removed commented config check and added module docstring 2018-10-10 14:14:08 +03:00
e417b6257f
Fixes #1335:
- moved knownnodes cleanup to knownnodes module,
  - added a check for last node in stream initiating DNS based bootstrap.
2018-10-10 14:14:02 +03:00
4c184d8ffe
Fix import of pickled knownnodes.dat 2018-10-05 12:25:14 +03:00
95e300d7ca
Fix pylint Too many arguments Issue 2018-09-04 18:54:59 +05:30
a5833be1b7
Fix pylint Instance of 'str' has no 'ids' member issue 2018-09-04 18:35:22 +05:30
abd3e02d72
Fix pylint global variable undefined at the module level issue 2018-09-04 18:21:27 +05:30
f4d25ab0ed
Fix pylint global variable warning issue 2018-09-04 18:14:28 +05:30
f004021c6d
Fix pylint issues based on no-self 2018-09-01 17:15:39 +05:30
30fc79ed45
Fix pylint issues 2018-08-31 18:26:22 +05:30
686967c36d
Fix flake8 issues 2018-08-31 18:26:22 +05:30
f98acd3ae0
Implementing swipe left to right delete feature for inbox, sent message to be archieved in Kivy 2018-08-31 18:26:22 +05:30
d8a5b9356f
Implement sent item message loading feature for current account logged with dynamic dispatching of accounts 2018-08-31 18:26:22 +05:30
c163001ee8
Loadmessage list feature with current account get and ngletters images icon 2018-08-31 18:26:22 +05:30
b1f7489b09
Implemement Ui for Inbox Load feature with create new address based on random number 2018-08-31 18:26:22 +05:30
Alexx Saver
50ee7fa740
Fix subprocess.check_call 2018-08-20 06:50:46 +04:00
b0446ab4ab
Improve pickle knownnodes error handling
- Fixes #1333 (untested)
2018-08-05 09:07:31 +02:00
PyBitmessage Translations
62024ca7e9
Auto-updated language fr from transifex 2018-08-02 13:14:57 +02:00
358e621710
Round peer rating to 2 decimal places before saving knownnodes 2018-08-02 12:26:41 +03:00
342e2a209c
Use DNS seed only if knownnodes are empty 2018-07-30 17:39:12 +03:00
3ce4694591
Lower log_level for IOError while reading namecoin.conf 2018-07-30 11:48:16 +03:00
a1a8d3a05d
Fixed undesirable log_level replacement in depends 2018-07-30 11:48:11 +03:00
5115425a61
Debian forgotten in e92a85e 2018-07-29 15:56:19 +03:00
PyBitmessage Translations
5a5f94eb3d
Auto-updated language zh_cn from transifex 2018-07-29 14:38:23 +02:00
PyBitmessage Translations
5934648da2
Auto-updated language eo from transifex 2018-07-29 14:34:52 +02:00
PyBitmessage Translations
6552662d83
Auto-updated language pl from transifex 2018-07-29 14:31:51 +02:00
PyBitmessage Translations
b99511ce2b
Auto-updated language ja from transifex 2018-07-29 14:26:41 +02:00
27d64df26e
Suggested Review changes in import statement sequence 2018-07-25 15:55:47 +05:30
8d5ff9abba
Added changes for create new message feature for send button and cancel button 2018-07-24 18:12:53 +05:30
b0809c3c23
Added images for create message icon and new idenetity 2018-07-24 15:45:18 +05:30
178194dd4c
Implement Ui for adding New Identity feature with navigation Enhancement 2018-07-24 15:41:00 +05:30
1adcf7f3f4
Changes made for Exit application button feature with trash enhancement 2018-07-24 15:40:47 +05:30
bb8d4c5a1f
Added Navigation Drawer UI with create feature 2018-07-24 15:40:35 +05:30
e1d2ead701
Fix exception 'KeyError: None' in checkdeps introduced in e92a85e,
Fixes #1316
2018-07-22 13:37:12 +03:00
996a48f298
Confirmation for network switch 2018-07-22 12:10:13 +03:00
PyBitmessage Translations
8537fbb2cc
Auto-updated language fr from transifex 2018-07-09 14:27:58 +02:00
13d41c7647
added imports for wrapper main file kivy running 2018-07-09 17:36:28 +05:30
956f689eeb
Fixes some issue of kivy running 2018-07-09 17:22:24 +05:30
a859dd78e7
moving a kivy module to a separate folder having Ui too 2018-07-09 17:22:08 +05:30
c22fd4e8a7
Changes made on UI for Desktop and Mobile Clients with suggested review changes 2018-07-09 17:22:08 +05:30
7aac991c4f
Changes made on UI for Desktop and Mobile Clients 2018-07-09 17:22:08 +05:30
4770790597
Added kivy for making it run on Desktop and Mobile Clients 2018-07-09 17:22:08 +05:30
6b2f82a7cd
Added suggested review changes for PR 1297 2018-07-09 17:22:08 +05:30
d7efd746f2
fix Missing module docstring issue with other pep8 2018-07-09 17:22:08 +05:30
b4a0d8ad37
fix codacy coding standards issue 2018-07-09 17:22:08 +05:30
c1868456df
Added kivy basic architecture for support mobile client PyBitmessage 2018-07-09 17:22:08 +05:30
529559d06a
Reduced BMConfigParser in the sake of readability 2018-07-04 17:59:58 +03:00
ba5caf3fda
Sorted out configuration loading/updating a bit:
- used BMConfigParser.safeGet.. methods instead of try .. except
  - moved all config checks from class_sqlThread into helper_startup
  - commented out initialization of settings which are then rewritten
    by updateConfig()
2018-07-04 17:59:58 +03:00
2504c80da6
Fix an issue from #1153 for setup without plugins package 2018-07-01 12:18:12 +03:00
c7d3784b80
No need to import namecoin early because it's really used only in Qt UI 2018-06-30 16:11:11 +03:00
795b855c65
Returned logger setting to debug though slightly deduplicated 2018-06-30 01:28:22 +03:00
PyBitmessage Translations
da3e72186d
Auto-updated language ru from transifex 2018-06-29 17:15:30 +02:00
coffeedogs
4139c69212
Merge branch 'v0.6' into issue_1288 2018-06-28 13:07:53 +01:00
coffeedogs
d0c2759c41
Fix issue #1288 2018-06-28 12:42:05 +01:00
46f5ead960
Import email related stuff only if configured 2018-06-27 12:27:46 +03:00
96773c5d6d
Import numpy after pyopencl 2018-06-27 12:27:41 +03:00
e92a85e1c5
Rewritten detectOSRelease() to pull values from dict 2018-06-27 01:27:37 +03:00
4eb3a00625
Minimum supported python is 2.7.4. Changed the check and log msg. 2018-06-27 01:27:37 +03:00
953ea4e950
Slightly rewritten bitmessagemain to use depends properly 2018-06-27 01:27:37 +03:00
9f8955ccdd
Reused depends in checkdeps script and formatted it also,
made checkdeps executable instead of depends
2018-06-27 01:27:37 +03:00
701521c55a
flake8: depends 2018-06-27 01:22:37 +03:00
PyBitmessage Translations
b27cc071a2
Auto-updated language pl from transifex 2018-06-26 22:46:22 +02:00
PyBitmessage Translations
ab95ae1263
Auto-updated language eo from transifex 2018-06-26 21:23:11 +02:00
57ddf8f2fd
flake8: state 2018-06-26 16:28:31 +03:00
354bf45d54
Merge branch 'v0.6' into readthedocs 2018-06-26 15:25:27 +02:00
65b7079895
Merge branch 'v0.6' into codeQ-2805 2018-06-26 15:15:58 +02:00
da8e7a246e
Returning bitmessageqt package back to normal
reverting all changes to __init__
2018-06-26 13:34:29 +03:00
a01d5a378c
Merge branch 'v0.6' into readthedocs 2018-06-26 08:50:21 +02:00
coffeedogs
86a7311a78
Merge branch 'v0.6' into issue_1277 2018-06-19 11:50:13 +01:00
coffeedogs
e5e9f70c2a
Fixed: Code style and lint issues 2018-06-15 12:54:41 +01:00
coffeedogs
d9f0a8708b
Fixed: Chan-provided diff to revert changes from boolean operators to any()/all(). Closes #1277. 2018-06-15 12:25:10 +01:00
coffeedogs
02f40f5036
Fixed: ERROR - Too many items in inv message! Closes 1274 2018-06-14 11:57:04 +01:00
coffeedogs
3b75d900f6
Added: Sphinx docs, testing readthedocs integration
* Added: Sphinx configuration including readthedocs config
 * Added: Sphinx fabric task to auto-document the project
 * Fixed: Some issues in the code causing autodoc to fail when parsing
 * Added: Manual docs - structure, proof of concepts and RsT examples
 * Fixed: RsT formatting in docstrings
 * Fixed: Some adjacent minor style and lint issues
2018-06-13 10:07:45 +01:00
coffeedogs
6f5c261fb4
Merge branch 'v0.6' into codeQ-2805 2018-06-12 00:24:48 +01:00
649fda5b81
Merge PR 1261 into v0.6 2018-06-12 00:10:34 +02:00
c7917efbd9
Merge PR 1250 into v0.6 2018-06-11 23:50:25 +02:00
7878f83552
Merge PR 1235 into v0.6 2018-06-11 23:24:10 +02:00
coffeedogs
759b760977
Fixed: Style and lint violations for three more of the worst violating files 2018-05-28 14:35:30 +01:00
f97ada87
5221f6a883
adding docstring and integer typecast 2018-05-25 06:13:01 +00:00
coffeedogs
e1c2e8ec46
Fixed: Responded to PR comments 2018-05-24 16:59:40 +01:00
coffeedogs
ab1dd319e3
Fixed: Code style and lint fixes 2018-05-24 10:53:11 +01:00
f97ada87
609a4a92e2
enable delayed POW checks
enable delayed POW checks via optional "receive time" argument
2018-05-23 03:38:05 +00:00
659d45bb15
Create default knownnodes if cannot read from file 2018-05-21 18:49:39 +03:00
b499e1bd22
Start without knownnodes if JSON got corrupted 2018-05-21 18:49:39 +03:00
5e72fdba17
Simplified addKnownNode() and added docstrings 2018-05-21 18:49:38 +03:00
67feb8fee9
Serialize knownnodes to json by default
Fixes #1232
2018-05-21 18:49:38 +03:00
f87ce4ad50
Moved reading knownnodes.dat into knownnodes module 2018-05-21 18:49:38 +03:00
ca42b4be63
flake8 for knownnodes 2018-05-21 18:49:38 +03:00
74ddda8775
helper_generic: imports in alphabetical order, import multiprocessing 2018-05-21 13:37:28 +03:00
4cf73675c2
flake8: bitmessagemain, class_singleCleaner, helper_generic, shutdown
and singleinstance
2018-05-21 13:37:23 +03:00
cb0996c6c8
flake8: api, debug 2018-05-21 12:20:57 +03:00
4610e1a0d7
Merge PR 1254 into v0.6 2018-05-21 11:03:21 +02:00
a43efc5b20
Merge PR 1253 into v0.6 2018-05-21 10:20:27 +02:00
78aa263964
Merge PR 1252 into v0.6 2018-05-21 09:07:56 +02:00
7313a4687e
Merge PR 1249 into v0.6 2018-05-21 08:56:36 +02:00
40dc7d330d
flake8: class_objectProcessor 2018-05-18 13:55:55 +03:00