Vladimir Golovnev (Glassez)
698ee94d0b
Split TorrentHandle interface and implementation
2020-04-22 18:19:14 +03:00
jagannatharjun
65d1b588d9
Convert the Log widget to use custom View/Model
...
Co-authored-by: sledgehammer999 <hammered999@gmail.com >
2020-04-22 18:19:13 +03:00
an0n666
eea693979a
Change default stop_tracker_timeout settings
2020-04-22 18:19:12 +03:00
Raif Atef
654bf85a71
Do not use 0.0.0.0 or [::] for outgoing interfaces
...
Fixes #12443
2020-04-22 18:19:11 +03:00
an0n666
8706a7c973
Remove deprecated strict super seeding mode from advanced settings
2020-04-22 18:19:10 +03:00
Chocobo1
e5bf83a594
Preallocate output buffer
2020-04-22 18:19:06 +03:00
Chocobo1
2a3e64933b
Fix header inclusion order
2020-04-22 18:19:05 +03:00
Chocobo1
37354a9e29
Avoid holding encoded resume data in memory
...
Now it the encoded resume data will be streamed to file instead of a
temporary buffer holding the whole of it.
2020-04-22 18:19:02 +03:00
József Sallai
7cb14e2a5b
Detect python3 executable on Windows
2020-04-22 18:19:01 +03:00
Vladimir Golovnev (Glassez)
4aae7266a5
Save "resume data" when torrent storage is moved
2020-04-22 18:19:00 +03:00
Raif Atef
075245c915
Fix outgoing interface is not getting assigned
...
Assignment was missing in main branch of condition statement.
Closes https://github.com/qbittorrent/qBittorrent/issues/12421
2020-04-22 18:18:59 +03:00
Chocobo1
7b0b5e3d7f
Avoid inefficient behavior
...
Since the class needs to be copy-constructible, there may be many
copies of an instance. So instead of writing to the device on every
destructor call, only flush buffer on the last destructor call.
2020-04-22 18:18:56 +03:00
Chocobo1
4142722303
Sort locale language list
2020-04-22 18:18:55 +03:00
NotTsunami
8ebb11f981
Set disk cache size for older libtorrent versions
...
Libtorrent versions older than 1.2.6 have a bug when setting disk
cache size to auto.
See 6c880159c9 .
2020-04-22 18:18:54 +03:00
Chocobo1
2f0c3f047a
Avoid holding entire file in memory
...
Previously we need a file buffer that is as large as the file size and
this could be a problem when user has less free memory available or
having very large data. Now with the help of `FileOutputIterator`,
we can have a much smaller, fixed size immediate file buffer and also
the code looks nice with `lt::bencode()`.
2020-04-22 18:18:50 +03:00
Chocobo1
e98a887286
Improve logging for errors
...
This commit also allows the strings to be translated.
2020-04-22 18:18:37 +03:00
Vladimir Golovnev (Glassez)
67c6107892
Fix unexpected torrent resume after app restart
...
Closes #12322 .
2020-04-02 00:17:45 +03:00
sledgehammer999
2794e883b6
Fix broken UNC paths in fastresumes on Windows
...
See #12245 and #12282
2020-04-01 17:18:38 +03:00
Tester798
e86249a4e8
Fix regression when fastresume contains network path
...
Closes #12245 after regression was introduced in #11785 .
2020-04-01 17:18:37 +03:00
NotTsunami
6f45764629
Add UPnP lease duration advanced option
...
This is a new setting added that is pending addition to
libtorrent 1.2.6. This setting is important because some routers do
not support expiration times on port-maps and do not return an error
either, silently failing. The previous default of permanent leases is
retained.
2020-04-01 17:18:36 +03:00
Chocobo1
f3d878324b
Initialize struct variables
...
clang static analyzer was emitting some warning about uninitialized
variable usage and this patch fixes it.
2020-04-01 17:18:34 +03:00
Chocobo1
43d9d16241
Add logging for SOCKS5 proxy errors
2020-04-01 17:18:33 +03:00
Chocobo1
aff4065e42
Rely on Qt ownership to free resources
...
The m_reply has already changed parent in
DownloadHandlerImpl::assignNetworkReply() and thus we can rely on Qt
ownership to delete the object.
2020-04-01 17:18:19 +03:00
Chocobo1
ea3c360901
Construct QString more efficiently
2020-04-01 17:18:16 +03:00
Chocobo1
39fe0025cd
Allow to translate error messages
2020-04-01 17:18:02 +03:00
FranciscoPombal
f51cd36c29
WebAPI: fix matching uncategorized torrents
...
Closes #11748 .
2020-03-24 16:15:12 +02:00
thalieht
553f443fbc
Disable Auto TMM when not using default savepath from monitored folder
2020-03-24 16:15:11 +02:00
thalieht
716aad9483
Append new move storage job to queue
...
fixup e4ff206e3c
2020-03-24 16:15:09 +02:00
Chocobo1
03e6b6e09d
Get library version strings at runtime
...
We mostly use boost in header-only mode, so it is a non-trivial job to
get the version string at runtime.
2020-03-24 16:15:07 +02:00
Vladimir Golovnev (Glassez)
f6b0abbd75
Move torrent storages one by one
2020-03-24 16:15:06 +02:00
Chocobo1
3e4c2193fb
Drop python2 support
...
Closes #11811 .
2020-03-24 16:15:00 +02:00
Chocobo1
ae9b8720af
Use helper functions to construct smart pointers
2020-03-24 16:14:59 +02:00
Chocobo1
30f2d11203
Use proper type for piece index
2020-03-24 16:14:58 +02:00
Chocobo1
9a69afb34a
Avoid unnecessary memory writes
...
Before this change, qbt spent ~1% in these two functions, now it
only spends about ~0.5% in my naive testing.
2020-03-24 16:14:57 +02:00
an0n666
923395b5c7
Check if file exists in seed mode
2020-03-24 16:14:56 +02:00
Vladimir Golovnev (Glassez)
21c8acd55c
Let libtorrent decide whether to resume a torrent
2020-03-24 16:14:54 +02:00
FranciscoPombal
709198d2f1
Fix response to event=stopped
...
BEP-3 says all tracker responses to valid announce requests should be bencoded dictionaries with at least the "peers" and "interval" keys; the "peers" key can be empty.
Also clarify support for BEP-21.
2020-03-24 16:14:54 +02:00
FranciscoPombal
87542b4f75
Don't use IPv4-mapped IPv6
...
Always register peers with either IPv4 or IPv6.
Fixes potential connection issues.
Also clarify related BEP-24 support.
2020-03-24 16:14:53 +02:00
FranciscoPombal
566ecefbcf
Fix BEP-23 support
...
The embedded tracker was returning a non-compliant response.
The peer lists should be packed strings instead of lists.
Also clarify level of compliance with BEP-7.
2020-03-24 16:14:53 +02:00
FranciscoPombal
41061f3c39
Fix IPv6 endianness
2020-03-24 16:14:52 +02:00
Vladimir Golovnev (Glassez)
703330c40d
Allow to save downloaded metadata as torrent file
2020-03-24 16:14:51 +02:00
FranciscoPombal
5a09f996ed
Revert using random port by default
...
Revert change introduced in https://github.com/qbittorrent/qBittorrent/pull/11637 and also revert the associated follow-up https://github.com/qbittorrent/qBittorrent/pull/12000 .
Reason: https://github.com/arvidn/libtorrent/pull/4335
2020-03-24 16:14:47 +02:00
sledgehammer999
84aa63a3c5
Use IP geolocation database by DB-IP instead of MaxMind
...
Closes #11792
2020-03-24 16:14:44 +02:00
Chocobo1
c2afc50c02
Simplify TrackerEntry::status() logic
2020-03-24 16:14:43 +02:00
FranciscoPombal
575bde1d1d
Add stalled filters to GUI and Web API/UI
...
`/api/v2/torrents/info` can now take the following new values for the`filter` parameter: `stalled`, `stalled_uploading` and `stalled_downloading`.
Requires Web API version bump.
Closes #11787
2020-03-24 16:14:42 +02:00
an0n666
d15fdf2dde
Do not list not contacted trackers as error
2020-03-24 16:14:41 +02:00
Chocobo1
66c2e70016
Include resume folder path in exception message
...
The message in RuntimeError exception will be displayed to the users and
users would be clueless if we don't show the path.
2020-03-24 16:14:39 +02:00
Vladimir Golovnev (Glassez)
89ee24fb3e
Don't access download handler after it's finished
2020-03-24 16:14:39 +02:00
Chocobo1
b02eb32806
Expose WebUI ban duration to users
2020-03-24 16:14:38 +02:00
Chocobo1
b19153287b
Expose WebUI ban counter to users
2020-03-24 16:14:36 +02:00