Commit graph

1192 commits

Author SHA1 Message Date
Igor Katson
1409dffb8f
Fix invalid torrent names to use from_utf8_lossy #316 2025-06-12 12:28:51 +01:00
Igor Katson
acf67b2439
WebUI: padding files are not checked by default 2025-06-12 12:28:10 +01:00
Igor Katson
963f8167de
Fix a very rare bug where DHT paniced 2025-06-12 12:27:23 +01:00
Igor Katson
9b5b9e6ba7
Update all subcrates versions 2025-06-05 11:52:50 +01:00
Igor Katson
28332fd4b9
Prepare for releasing 8.1.0 2025-06-05 11:38:50 +01:00
Igor Katson
3fa55bdc14
Merge pull request #374 from av-gal/main
Include crate version in client fingerprint portion of `peer_id`
2025-06-02 09:00:55 +01:00
Alex Galvin
efad73dbe1 chore: bump librqbit-core to 5.0.0 2025-06-02 03:29:16 -04:00
Alex Galvin
610140cff6 feat: include crate version in peer_id 2025-06-02 03:29:16 -04:00
Igor Katson
093673064a
Merge pull request #358 from djmango/master
⬆️ (librqbit) Update dep requirement for url to compatible w/ current version
2025-05-28 23:01:56 +01:00
owl
f020673032
fix: improve path traversal check
The previous implementation would falsely detect a path traversal in a
filename such as "foo... bar".
This patch changes the check function so that it inspects `PathBuf`
components instead of substrings.
2025-05-09 00:07:17 +02:00
Francesc Elies
cc771f8713 feat: watch magnet files too 2025-04-27 10:35:16 +02:00
Alex Galvin
8e929b3710 Do not exchange peers or torrent metadata in private swarms 2025-04-20 01:01:23 -04:00
KevinT3Hu
f6c58add58
fix: make SessionStatsSnapshot fields pub 2025-04-13 14:09:57 +08:00
Sulaiman Khan Ghori
411eb73577 ⬆️ (librqbit) Update dep requirement for url to compatible w/ current version
Less strict than =, can use as dep in other projects :)
2025-04-12 12:06:56 -07:00
Igor Katson
e371ec3c6f
Increase min metadata size 2025-02-28 12:08:22 +00:00
Igor Katson
24a9f83a48
Bump the timeout on "wait_until_i_am_the_last_task" 2025-02-28 11:58:47 +00:00
Igor Katson
b1bd5ca02c
Parsing UDP tracker error responses 2025-02-27 15:05:50 +00:00
Igor Katson
75354069f0
Fix debug repr for URLs in tracker comms 2025-02-27 14:36:44 +00:00
Igor Katson
29508014b8
Trackers: reuse UDP socket 2025-02-27 14:25:24 +00:00
Igor Katson
52be6d7cef
Trackers list from outside 2025-02-27 12:55:10 +00:00
Igor Katson
d709557372
Change tracker type to be url::Url in most places 2025-02-27 12:35:37 +00:00
Igor Katson
3eb1558451
Parsing tracker list 2025-02-27 12:26:23 +00:00
Igor Katson
8ea5dfae87
Clippy + small tweaks 2025-02-27 10:58:58 +00:00
Alexander WB
1a31340076 👌 Fix remaining pr comments 2025-02-25 04:25:24 +01:00
Alexander WB
4c6e19ceab 👌 Add parse file:// urls 2025-02-25 03:42:41 +01:00
Alexander WB
c19ea3979a 👌 Improved error handling 2025-02-25 03:28:13 +01:00
Alexander WB
8f019882d0 👌 Simplify test
Remove mock http server
2025-02-25 03:02:13 +01:00
Alexander WB
ac883c1ddf 👌 Improve Parsing logic 2025-02-21 22:05:10 +01:00
Alexander WB
6e9ecf8a26 Add blocklist-url launch parameter
Block incoming peers from blocked ips.
2025-02-20 21:09:44 +01:00
Alexander WB
187ce8c462 🎉 Add Blocklist
Add an implementation of p2p plaintext (and gz compressed) blocklists.
The list can be read from an url or from a file.
All the IP ranges are then stored in interval trees.
2025-02-20 21:07:48 +01:00
InoUno
4e58b35c88 Make Session ratelimits accessible from outside of crate 2025-02-18 06:51:59 +01:00
Igor Katson
3e6c2eae79
Clippy 2025-01-30 11:24:43 +00:00
Igor Katson
62d5288398
perf optimization: avoid tokio::io::split 2025-01-30 11:19:19 +00:00
Chris Antaki
5a0800c0fd Fix typo 2025-01-20 15:46:53 -08:00
Igor Katson
2c85624ec2
Remove LazyLock (incompatible with older Rusts) 2025-01-14 11:27:14 +00:00
Igor Katson
c60f36540e
Split up http_api into files 2025-01-14 11:20:35 +00:00
Igor Katson
bde8d7cf40
Web redirect is relative now 2025-01-14 10:47:26 +00:00
Igor Katson
8abbf683c0
Nothing 2025-01-14 10:44:38 +00:00
Igor Katson
fd5feba501
Rename all HTTP handlers 2025-01-14 10:32:39 +00:00
Igor Katson
8b35ddd59c
LazyLock 2025-01-14 10:27:58 +00:00
Igor Katson
c474d7b454
Move api_root to global scope 2025-01-14 10:05:23 +00:00
Igor Katson
d3323ac7ac
Move HTTP API state one layer down 2025-01-14 10:03:22 +00:00
Igor Katson
c8d4c8d713
HTTP API: move functions out to global scope 2025-01-14 09:50:18 +00:00
Igor Katson
e79b51ea1f
Redirect to web ui on root 2025-01-13 22:32:23 +00:00
Igor Katson
0245861c48
[Feature] Can put rqbit Web UI behind proxy server 2025-01-13 22:01:06 +00:00
Igor Katson
c84e3ad90d
Can unpause dead no-peer-source torrent just fine 2025-01-13 17:41:42 +00:00
Igor Katson
bd66b52395
Remove file reading in librqbit_core tests 2025-01-13 16:09:01 +00:00
Igor Katson
c13268dd7b
e2e test for a private torrent file serde 2025-01-13 16:07:04 +00:00
Igor Katson
26d78ed2f0
Add tests for private field 2025-01-13 15:58:23 +00:00
Igor Katson
8efd77fce2
Initial private torrents support 2025-01-13 15:47:13 +00:00