Commit Graph

986 Commits (3a1eafb203d054a34b8929227e7563ae34aff108)

Author SHA1 Message Date
Zlatin Balevsky ffc7f1748a
fix conversion logic 2020-10-19 17:43:05 +01:00
Zlatin Balevsky 798125e645
csv conversion tool 2020-10-19 17:14:56 +01:00
Zlatin Balevsky 52fb67b35c
use Timestamp intead of java.sql.Date 2020-10-19 17:14:37 +01:00
Zlatin Balevsky a7d25a1b75
verify hosts every hour, record results in db 2020-10-19 16:49:19 +01:00
Zlatin Balevsky 1ed74768fb
fix assignment 2020-10-18 19:48:45 +01:00
Zlatin Balevsky 7dd47c6fcb
better filtering of candidate hosts 2020-10-18 19:13:04 +01:00
Zlatin Balevsky 749bfaa532
more plumbing 2020-10-18 18:54:33 +01:00
Zlatin Balevsky 84f6091935
more of the plumbing for using DB/ML 2020-10-18 18:05:28 +01:00
Zlatin Balevsky 4a261ed724
split HostCache into base class and SimpleHostCache. Skeleton of H2HostCache. 2020-10-18 16:38:30 +01:00
Zlatin Balevsky 16c755e6c6
Release 0.7.7 2020-10-16 08:06:09 +01:00
Zlatin Balevsky 5bddfc10e9
assume all persisted sources were successful 2020-10-12 14:54:55 +01:00
Zlatin Balevsky 9fc2a0c4c5
show total up & down speeds 2020-10-11 17:42:47 +01:00
Zlatin Balevsky fca3478698
make excludePeerCaps configurable by the user, exclude KLMNO by default 2020-10-11 15:49:16 +01:00
Zlatin Balevsky e5815bed88
reuse header parsing code 2020-10-11 15:34:16 +01:00
Zlatin Balevsky 8f923ec06e
do not steal pieces from already queued requests 2020-10-11 15:32:56 +01:00
Zlatin Balevsky d4eb8631d0
check for updates later 2020-10-11 14:12:47 +01:00
Zlatin Balevsky 9e3a9e2737
Send browse results to UI in batches. Github issue #49 2020-10-10 16:18:50 +01:00
Zlatin Balevsky 45c2bec0ad
Release 0.7.6 2020-10-09 18:31:09 +01:00
Zlatin Balevsky ef34291124
use the new bandwidth tracker for downloads as well 2020-10-07 08:17:12 +01:00
Zlatin Balevsky 7cbf466b9b
move bandwidth smoothing logic in its own class, use it in uploader 2020-10-07 07:51:45 +01:00
Zlatin Balevsky 3e188f5d4a
Implement variable length request queue, size based on piece size 2020-10-06 22:49:46 +01:00
Zlatin Balevsky fdf3a46ad4
rework the upload speed smoothing to persist across requests 2020-10-06 20:28:00 +01:00
Zlatin Balevsky 56e02c4981
do not update speed reading if the sampling is too frequent 2020-10-06 20:25:56 +01:00
Zlatin Balevsky cac3ff0bcf
flush only the first GET request, let the passive flusher do the subsequent ones 2020-10-06 18:51:26 +01:00
Zlatin Balevsky ef71a42dd4
rewrite the smoothing of download speed 2020-10-06 17:47:26 +01:00
Zlatin Balevsky 0046694173
ignore InterruptedExceptions in chat links 2020-10-06 15:14:05 +01:00
Zlatin Balevsky e1ebb2208c
fix race condition that would cause new connections to stop being established 2020-10-06 12:38:31 +01:00
Zlatin Balevsky 034e706d17
Release 0.7.5 2020-10-05 07:03:18 +01:00
Zlatin Balevsky a8c91d4a3c
update unit test 2020-10-05 00:19:40 +01:00
Zlatin Balevsky 4b8e1705d8
pipeline download requests 2020-10-04 23:45:59 +01:00
Zlatin Balevsky 8dfb5cbd84
double ping interval 2020-10-04 13:05:00 +01:00
Zlatin Balevsky 72985bacb6
add ability to disable updates completely, intended for 3rd party packaging 2020-09-26 17:53:29 +01:00
Zlatin Balevsky 3387d22a6c
remove HOPELESS downloads from the download list via an event 2020-09-26 17:10:24 +01:00
Zlatin Balevsky 10bd566d58
Release 0.7.4 2020-09-25 16:51:40 +01:00
Zlatin Balevsky 964e315367
add a hopeless state for a download where all sources are hopeless 2020-09-23 14:17:40 +01:00
Zlatin Balevsky 140231e362
Give up on download sources after a number of attempts 2020-09-23 14:00:52 +01:00
Zlatin Balevsky c73a821c67
put verified sources in the responder cache as well 2020-09-23 11:30:20 +01:00
Zlatin Balevsky 0ebe00b526
reduce hopeless interval to 1hr and purge interval to 24hrs 2020-09-22 16:08:17 +01:00
Zlatin Balevsky b2a3bfce54
make sure we have the Persona of the altloc 2020-09-22 16:07:18 +01:00
Zlatin Balevsky c490a511bd
distinguish between discovered sources and verified sources. Only propagate and persist verified sources 2020-09-22 13:34:49 +01:00
Zlatin Balevsky cbaa3470d2
make responder cache size configurable 2020-09-22 12:17:27 +01:00
Zlatin Balevsky 84d61fccd5
cache recent responders and always forward queries to them. Thanks to qtm for the idea 2020-09-21 15:28:15 +01:00
Zlatin Balevsky a88db8f50f
FixedSizeFIFOSet 2020-09-21 15:13:44 +01:00
Zlatin Balevsky 5a38154e15
make sure the pongs uuid matches the last sent ping uuid 2020-09-20 18:42:26 +01:00
Zlatin Balevsky e5891de136
send and read up to 2 hosts per pong 2020-09-20 18:26:29 +01:00
Zlatin Balevsky 1e729bae1c
implement forgetting of hopeless hosts after some time 2020-09-20 17:49:07 +01:00
Zlatin Balevsky 3e6e0c7e9f
cache calls to System.currenTimeMillis() 2020-09-20 17:34:28 +01:00
Zlatin Balevsky 44af23c162
restrict forwarding of queries to sqrt of neighboring connections. Thanks to 'qtm' for the idea 2020-09-19 17:28:19 +01:00
Zlatin Balevsky a262c99efe
reduce limit on peer connections 2020-09-19 17:16:36 +01:00
Zlatin Balevsky 9eff723dd3
Release 0.7.3 2020-09-18 18:44:15 +01:00
Zlatin Balevsky 944cb29901
show error messages if the command is not in the appropriate room 2020-09-18 18:15:15 +01:00
Zlatin Balevsky f20b23434f
one more 2020-09-18 16:13:23 +01:00
Zlatin Balevsky 8d523a6265
update to api 2020-09-18 15:56:39 +01:00
Zlatin Balevsky 38b9ab5200
gui browse/feed/chat actions from upload table 2020-09-18 15:42:35 +01:00
Zlatin Balevsky f6fdf9e33f
parse browse/feed/chat headers on the uploader side 2020-09-18 14:59:58 +01:00
Zlatin Balevsky b729a89672
Advertise browse/feed/chat abilities in download headers 2020-09-18 14:50:49 +01:00
Zlatin Balevsky e531093b28
do not try to connect to hopeless hosts 2020-09-17 19:58:36 +01:00
Zlatin Balevsky b18772465c
limit the number of hosts read from each pong 2020-09-17 16:19:48 +01:00
Zlatin Balevsky 20aac03789
send an uuid with pings and echo it in pongs 2020-09-17 16:11:32 +01:00
Zlatin Balevsky 4cdb383b9f
fix minutes-to-milliseconds conversion of feed update interval in desktop gui. Make default feed update interval one hour 2020-09-16 14:37:08 +01:00
Zlatin Balevsky 9c6f6bf266
Make number of connections for ultrapeer a property 2020-09-16 12:30:41 +01:00
Zlatin Balevsky 31e0962b73
fix test target by excluding testng dependency 2020-09-14 14:38:12 +01:00
Zlatin Balevsky 253603cac7
add a log statement for infohash parsing 2020-09-12 14:37:54 +01:00
Zlatin Balevsky fec042ec36
check if watched directories disappeared while MW was down 2020-09-04 14:44:04 +01:00
Zlatin Balevsky af218a369c
migrate to groovy 3.0.4 2020-06-01 13:40:28 +01:00
Zlatin Balevsky f0aaa83b7f
clean up most of noise on console when running without a log file 2020-06-01 13:14:33 +01:00
Zlatin Balevsky c25546e1e1
Release 0.7.1 2020-05-29 12:06:53 +01:00
Zlatin Balevsky eb242b0889
reduce default speed smoothing interval 2020-05-29 11:14:56 +01:00
Zlatin Balevsky bf28278f72
Release 0.7.0 2020-05-26 19:03:05 +01:00
Zlatin Balevsky 6462675091
enable dual keys 2020-05-26 19:01:31 +01:00
Zlatin Balevsky 2fbab55f68
remove references to tunnelName variable 2020-05-25 19:44:50 +01:00
Zlatin Balevsky ec41985d31
Release 0.6.15 2020-05-17 22:36:08 +01:00
zzz 61340f346a
Signature must be constructed with the sigtype of the signing key 2020-05-10 06:26:35 -04:00
Zlatin Balevsky 992daa1e45
size limit on nicknames 2020-05-10 09:51:56 +01:00
Zlatin Balevsky 3b825263a7
Make the random port selection range match that of the I2P router 2020-05-08 17:37:06 +01:00
Zlatin Balevsky e1bf6c0821
prevent invalid characters in searchers of persisted files from breaking the loading process. Related to GitHub issue #45 2020-05-08 17:33:57 +01:00
Zlatin Balevsky a6eca11479
Release 0.6.14 2020-05-07 13:39:17 +01:00
Zlatin Balevsky 3116e20c7c
Fix i2np port change on every restart, github issue #45 2020-05-07 03:12:09 +01:00
Zlatin Balevsky d18cdb15cd
disallow certain characters in nicknames 2020-05-06 11:39:08 +01:00
Zlatin Balevsky 564db3473c
publish core to local maven repo 2020-05-05 16:01:23 +01:00
Zlatin Balevsky 6d6063829a
convert the core project into a library 2020-05-05 15:39:54 +01:00
Zlatin Balevsky 8b99f83db8
Release 0.6.13 2020-05-04 14:18:08 +01:00
Zlatin Balevsky 33b159477a
get test targets to pass, ignoring some tests which are not relevant anymore 2020-05-04 13:08:18 +01:00
zzz bf06c3b15f
Add top-level groovy and java compile options to build.gradle
Add compilerArgs to gradle.properties
Fix compile warnings in DataUtil
2020-05-02 10:53:00 -04:00
Zlatin Balevsky 356d7fe2ff always include the uuid in the tracker response 2020-04-29 11:23:42 +01:00
Zlatin Balevsky 7860aa2b1c prevent replay attacks by attaching an uuid to the crawler pings and pongs 2020-04-28 19:46:13 +01:00
Zlatin Balevsky 301c2ec0e2 make I2PSession visible 2020-04-28 19:29:09 +01:00
Zlatin Balevsky c306864781 add type to the tracker pong and echo the infohash that was queried 2020-04-28 19:18:37 +01:00
Zlatin Balevsky 5fc0283da7 revert change to constructor 2020-04-26 19:30:26 +01:00
Zlatin Balevsky 1d22abfa88 add ability to change the tunnel name 2020-04-14 13:17:47 +01:00
Zlatin Balevsky 9f7aaec991 include local persona in tracker response 2020-04-12 06:57:39 +01:00
Zlatin Balevsky 1c214ad68a server side of file tracking 2020-04-12 05:56:06 +01:00
Zlatin Balevsky 3436af75bf remove redundant header parsing code 2020-04-10 08:04:00 +01:00
Zlatin Balevsky 9b6a2fd952 write to memmapped file in 8kb increments 2020-04-08 13:25:08 +01:00
Zlatin Balevsky 85ad3109f9 get rid of sNL and darktrion hostcaches, add echelon's 2020-04-02 12:29:44 +01:00
Zlatin Balevsky 9837e1e3d7 emit an event on every dir sync so that UI can update timestamps 2020-03-28 02:47:29 +00:00
Zlatin Balevsky 2c52486476 fix manual syncing 2020-03-27 15:47:58 +00:00
Zlatin Balevsky 9f1f718870 show the dirs in a table, no actions yet 2020-03-27 12:54:01 +00:00
Zlatin Balevsky 2fd0a3833f wip on web ui for advanced sharing 2020-03-27 11:10:25 +00:00
Zlatin Balevsky e2a0a37abf ui force sync event 2020-03-26 15:40:53 +00:00
Zlatin Balevsky a4bee73b8a process changes in configuration 2020-03-26 15:19:09 +00:00
Zlatin Balevsky 056e5800c2 implement directory polling 2020-03-26 14:55:44 +00:00
Zlatin Balevsky 6e0d51c221 first load all watched directories, only then register and scan the auto-watched 2020-03-26 13:10:56 +00:00
Zlatin Balevsky 496e2e7f91 scan autoWatched directories on startup 2020-03-26 12:53:54 +00:00
Zlatin Balevsky a560b14d91 hook up directory manager with share & unshare events 2020-03-26 12:24:07 +00:00
Zlatin Balevsky dfc62b943f wip on persisting and loading of watched directory metadata, emit the event to register on autowatch service 2020-03-26 06:21:41 +00:00
Zlatin Balevsky 244ce43794 persistence of WatchedDirectory object 2020-03-26 05:31:39 +00:00
Zlatin Balevsky 11e320ef53 wip on directory watching 2020-03-26 04:09:18 +00:00
Zlatin Balevsky 23b6995bf2 start work on advanced watched directories 2020-03-25 22:39:03 +00:00
Zlatin Balevsky e216678d9a Release 0.6.12 2020-03-25 08:41:42 +00:00
Zlatin Balevsky bd9315954a add a positive tree so that deleting of shared directories can be detected 2020-03-25 08:09:45 +00:00
Zlatin Balevsky 83bdf76c08 cache the file/dir status when creating a tree node so that traversal can work if the file is deleted 2020-03-25 08:08:55 +00:00
Zlatin Balevsky 54f4874ad6 count the times a file has been hit due to feed update 2020-03-22 10:46:53 +00:00
Zlatin Balevsky 9a74cc5026 downloaders table 2020-03-22 02:51:26 +00:00
Zlatin Balevsky e542a50260 status page with some MW internals 2020-03-19 18:12:52 +00:00
Zlatin Balevsky 509b5c3b99 avoid more conversions to BigDecimal 2020-03-17 16:43:31 +00:00
Zlatin Balevsky fbb710cfc8 avoid more conversions to BigDecimal 2020-03-17 16:39:41 +00:00
Zlatin Balevsky 7285c12b97 clear cached cardinality on cancelling 2020-03-16 23:18:07 +00:00
Zlatin Balevsky aac259c0fe cache the cardinality to speed up UI sorting 2020-03-16 22:45:16 +00:00
Zlatin Balevsky e3f58f8f5a catch general exceptions because otherwise they get lost in the executor thread 2020-03-15 01:21:20 +00:00
Zlatin Balevsky fca8870283 fix default feed update interval 2020-03-13 07:32:08 +00:00
Zlatin Balevsky 369779ab6a swallow an exception that happens in plugin mostly 2020-03-13 02:42:46 +00:00
Zlatin Balevsky 54abf82a91 wip on server side of feeds for plugin 2020-03-12 22:28:11 +00:00
Zlatin Balevsky 14546737fd release 0.6.11 2020-03-10 22:31:33 +00:00
Zlatin Balevsky f202fa34f3 auto-publish shared files functionality 2020-03-10 19:12:49 +00:00
Zlatin Balevsky 2bb07ff7b5 do not trim feed items if setting is negative 2020-03-10 17:53:17 +00:00
Zlatin Balevsky fc393619d8 options for feeds 2020-03-10 17:47:08 +00:00
Zlatin Balevsky a272a45928 persist the right number of feed items 2020-03-10 16:41:31 +00:00
Zlatin Balevsky c3d0dce281 store last update attempt and do not retry active feeds 2020-03-10 16:05:32 +00:00
Zlatin Balevsky 8f710e68c2 download feed item action 2020-03-10 15:06:42 +00:00
Zlatin Balevsky 15430d6c03 manual update and unsubscribe actions 2020-03-10 13:51:07 +00:00
Zlatin Balevsky 166b71f128 fix NPE when logging is enabled 2020-03-10 13:47:31 +00:00
Zlatin Balevsky d724986ec6 proper method name 2020-03-10 13:34:33 +00:00
Zlatin Balevsky 198c5b5538 fix json parsing 2020-03-10 13:06:47 +00:00
Zlatin Balevsky bb7385688c it always points to the innermost closure 2020-03-10 12:55:09 +00:00
Zlatin Balevsky e70bec3a51 hook up feed subscription 2020-03-10 12:44:25 +00:00
Zlatin Balevsky ed04c40420 return an empty set if no items are found 2020-03-10 12:43:49 +00:00
Zlatin Balevsky fd75d8229b fix feed checkbox for local results 2020-03-10 12:15:52 +00:00
Zlatin Balevsky a07f01b641 utility method to check if an infohash is shared 2020-03-10 11:50:09 +00:00
Zlatin Balevsky fcb5c573f9 wip on feeds table 2020-03-10 10:39:18 +00:00
Zlatin Balevsky e2a9db8056 add an IDLE status to feeds for display purposes 2020-03-10 07:32:45 +00:00
Zlatin Balevsky f2bf921d4c parse feed flag in results 2020-03-10 06:06:57 +00:00
Zlatin Balevsky aa0fcfb7de fix capitalization in event name 2020-03-10 05:50:54 +00:00
Zlatin Balevsky 17cd60afe3 deleting of feeds 2020-03-10 00:58:43 +00:00
Zlatin Balevsky c10c1118e8 feed client 2020-03-09 19:28:42 +00:00
Zlatin Balevsky 28425e93dc persist only as many items as configured to keep 2020-03-09 18:53:43 +00:00
Zlatin Balevsky 032338bb48 Persist feed metadata and items on successful fetch. Register feed manager for various events 2020-03-09 18:31:10 +00:00
Zlatin Balevsky 12e56b1c9a events associated with updating a feed 2020-03-09 17:37:17 +00:00
Zlatin Balevsky 57c75978b6 wip on feed manager deserialization 2020-03-08 20:19:37 +00:00
Zlatin Balevsky bfe198e1a6 represenation of a feed 2020-03-08 19:38:48 +00:00