442 Commits

Author SHA1 Message Date
Marcin Czenko
0f62624613
adds torrent parser to support native torrent files when downloading 2025-06-03 03:01:02 +02:00
Marcin Czenko
03ff25bbb1
Updates magnet link tests 2025-06-03 03:01:02 +02:00
Marcin Czenko
8ac8f941c4
convenience feature - download content using magnet links 2025-06-03 03:01:02 +02:00
Marcin Czenko
108370ebc9
adds API for retrieving directory 2025-06-03 03:01:01 +02:00
Marcin Czenko
2e6d7d04b2
adds directory downloader 2025-06-03 03:01:01 +02:00
Marcin Czenko
6aad595e8f
Cleans up directory manifest and tartballs 2025-06-03 03:01:01 +02:00
Marcin Czenko
6852c1ffcf
moves tarball-related stuff out of node + adds explicit padding argument to "store" + adds "onBatch" callback to "fetchDatasetAsync" 2025-06-03 03:01:01 +02:00
Marcin Czenko
912479e597
Uploading directories - first draft. 2025-06-03 03:01:01 +02:00
Marcin Czenko
85e0e58777
gets rid of future casting in torrent downloader 2025-06-03 03:01:01 +02:00
Marcin Czenko
6c32f6b835
gets rid of ugly casts 2025-06-03 03:01:00 +02:00
Marcin Czenko
e3fd2fada8
fix failing test in torrentdownloader 2025-06-03 03:01:00 +02:00
Marcin Czenko
6000ae5e07
uses SafeAsyncIter to stream the blocks in api 2025-06-03 03:01:00 +02:00
Marcin Czenko
4d5dfb15d0
uses SafeAsyncIter in "listBlocks" and in "getBlockExpirations" 2025-06-03 03:01:00 +02:00
Marcin Czenko
edf4627dbd
better exception handling in node 2025-06-03 03:01:00 +02:00
Marcin Czenko
b0be205765
better exception handling 2025-06-03 03:00:59 +02:00
Marcin Czenko
5abce8107c
checked exceptions in stores 2025-06-03 03:00:59 +02:00
Marcin Czenko
414906a070
updates copyright 2025-06-03 03:00:59 +02:00
Marcin Czenko
534cb7193e
updates and integrates torrentdownloader into api and node 2025-06-03 03:00:59 +02:00
Marcin Czenko
2aa91e5f93
adds more tests and ability to retrieve the downloaded blocks 2025-06-03 03:00:59 +02:00
Marcin Czenko
c859250c4a
adds some good weather tests for torrentdownloader 2025-06-03 03:00:59 +02:00
Marcin Czenko
ee2f403e52
do not randomize piece fetching sequence for now 2025-06-03 03:00:58 +02:00
Marcin Czenko
50ca6dae5f
adds torrent downloader abstraction 2025-06-03 03:00:58 +02:00
Marcin Czenko
86166196de
adds push raises to a couple of new files 2025-06-03 03:00:58 +02:00
Marcin Czenko
2e77c4a62c
removes unused import 2025-06-03 03:00:58 +02:00
Marcin Czenko
774f6d2841
fixes checking block results 2025-06-03 03:00:57 +02:00
Marcin Czenko
42b74cc11f
uses MultiHash as a type for piece hashes (instead alias) 2025-06-03 03:00:57 +02:00
Marcin Czenko
927e67e0c3
updates torrent streaming to take advantage of the new interface of the piece validator 2025-06-03 03:00:56 +02:00
Marcin Czenko
1d47cf4870
Updates client streaming to use new piece validator interface 2025-06-03 03:00:56 +02:00
Marcin Czenko
9903473809
updates pieceValidator with better internal state management 2025-06-03 03:00:56 +02:00
Marcin Czenko
45ab5eee92
adds torrent piece validator abstraction to keep streaming in sync with piece validation 2025-06-03 03:00:56 +02:00
Marcin Czenko
0748a348e7
makes torrent decode func from openArray data public 2025-06-03 03:00:56 +02:00
Marcin Czenko
96d28e8563
adds "==" operator to torrent manifest 2025-06-03 03:00:56 +02:00
Marcin Czenko
5846fbce70
improves exception handling 2025-06-03 03:00:55 +02:00
Marcin Czenko
42f4aa21b9
sets the default piece length to be 256KiB 2025-06-03 03:00:55 +02:00
Marcin Czenko
93befc9dac
fine tunes logging while aggregating pieces 2025-06-03 03:00:55 +02:00
Marcin Czenko
040341b796
removes duplication while streaming torrent content 2025-06-03 03:00:55 +02:00
Marcin Czenko
95daf3782e
removes redundant echos 2025-06-03 03:00:54 +02:00
Marcin Czenko
249b799225
adds BitTorrent REST API to fetch torrent manifest only 2025-06-03 03:00:54 +02:00
Marcin Czenko
ff04de52da
moves initializer around to prevent circ deps 2025-06-03 03:00:54 +02:00
Marcin Czenko
fe1cc15fbd
adds JSON serialization to BitTorrent manifest 2025-06-03 03:00:54 +02:00
Marcin Czenko
f0a9306320
adds BitTorrent specific constants 2025-06-03 03:00:54 +02:00
Marcin Czenko
096dff0714
makes cleaner streaming API and updates return type of retrieveInfoHash proc 2025-06-03 03:00:53 +02:00
Marcin Czenko
ddc8e58861
fixes some basic decoding and padding mistakes 2025-06-03 03:00:53 +02:00
Marcin Czenko
3a7f18dea2
fix logging 2025-06-03 03:00:53 +02:00
Marcin Czenko
fece905431
adds torrent uploading API 2025-06-03 03:00:53 +02:00
Marcin Czenko
2ab59f616d
makes torrent API ready for torrents v2, closes torrent streaming loop 2025-06-03 03:00:53 +02:00
Marcin Czenko
6c5816581a
simplifies torrent streaming API 2025-06-03 03:00:52 +02:00
Marcin Czenko
d5928988d0
adds API for streaming torrents 2025-06-03 03:00:52 +02:00
Marcin Czenko
8a8bab3672
adds info hash validation 2025-06-03 03:00:52 +02:00
Marcin Czenko
bcf622ecd8
formatting 2025-06-03 03:00:52 +02:00