sledgehammer999
6981217369
Don't ignore SSL errors
2024-10-04 22:48:46 +03:00
Hanabishi
b5b34c9ff4
Add "Simple pread/pwrite" disk IO type
...
PR #21300 .
2024-10-01 19:58:35 +03:00
Chocobo1
7b45566efc
Migrate away from deprecated functions in Qt 6.9
...
Closes #21412 .
PR #21415 .
2024-09-30 18:31:17 +08:00
Chocobo1
10eb921d70
Allow drop action only on transfer list
...
Now drop action is only allowed on transfer list, previously it was on main window.
Having drop action on the whole main window is not preferred because it could allow drop action
on other unrelated widgets, such as execution log or RSS widget which is unexpected behavior.
PR #21332 .
2024-09-30 16:59:57 +08:00
Chocobo1
a23f45cc70
Split platform specific code to its own file
...
PR #21368 .
2024-09-22 14:28:40 +08:00
Chocobo1
23f7275bd5
Merge pull request #21333 from Chocobo1/random
...
Improve PRNG functions
2024-09-16 17:56:19 +08:00
Burnerelu
e06b7f8f4d
Enable customizing the save statistics time interval
...
This change extends the Advanced section of the Preferences menu with a new field, allowing changing the time statistics save interval. A zero value will prevent recurrent saving.
This aims to provide the feature requested in issue #21285 .
PR #21291 .
2024-09-16 17:16:59 +08:00
Chocobo1
3058158b69
Use modern function for getting random numbers on Windows
...
The previous `RtlGenRandom()` just redirects to `ProcessPrng()` according to "The Windows 10
random number generation infrastructure" whitepaper from MS.
`ProcessPrng()` is also the de facto PRNG for Rust lang:
aa13fa5882/src/windows.rs (L3C1-L22C81)
And for golang:
https://go-review.googlesource.com/c/go/+/536235
2024-09-14 23:20:07 +08:00
Chocobo1
dbef6da544
Use modern function for getting random numbers on Linux
...
Now we don't need a file handle anymore and there is no initialization involved in this new
implementation.
2024-09-13 22:27:42 +08:00
Chocobo1
130c0d8487
Revise cookie 'secure flag' enable condition
...
The localhost is 'potentially trustworthy' and RFC 6265 allows setting secure flag in this case.
Also check `X-Forwarded-Proto` header value to support reverse proxy usage.
Note: for reverse proxy users, now the `X-Forwarded-Proto` header is expected to be sent to qbt
otherwise the `secure` flag might be set erroneously.
https://datatracker.ietf.org/doc/html/rfc6265#section-4.1.2.5
https://w3c.github.io/webappsec-secure-contexts/#is-origin-trustworthy
Closes #21250 .
PR #21260 .
2024-09-07 21:38:27 +08:00
Vladimir Golovnev
d9bc7935eb
Apply "merge trackers" logic regardless of way the torrent is added
...
PR #21299 .
2024-09-06 16:28:22 +03:00
Chocobo1
fc82abe7f6
Remove 'loopback address detection' helper function
...
It is not needed since `QHostAddress::isLoopback()` can do the job.
PR #21259 .
2024-08-31 15:53:39 +08:00
sledgehammer999
72feee6fdd
Fix version bump
...
Closes #21265
2024-08-26 09:46:27 +03:00
sledgehammer999
9a9c375b9d
Bump to v5.1.0alpha1
2024-08-24 21:49:49 +03:00
xavier2k6
f818d0dbe0
Sync "expected lite" with upstream
...
* Release 0.8.0
PR #21213 .
2024-08-19 15:32:01 +08:00
stalkerok
0da383e7b6
Add a flag about the connection peers are using NAT hole punching
...
PR #21052 .
2024-08-15 20:27:19 +03:00
Vladimir Golovnev
bee56f2567
Fix Incomplete Save Path cannot be changed for torrents without metadata
...
PR #21152 .
Closes #21140 .
2024-08-08 08:20:26 +03:00
Chocobo1
69a829dfb0
Clean up search engine
...
Notable changes:
1. Prevent excessive engine module imports.
2. Replace trivial usage of `join()`.
3. Keep the output text sorted whenever possible.
4. Close handles properly.
5. Print error to stderr, not stdout.
6. Report search job exit code.
7. Print exception message to stderr if exception was thrown when
running a search job.
8. Utilize XML library to build XML data
And use 2 spaces as indentation.
PR #21098 .
2024-07-22 16:51:57 +08:00
Vladimir Golovnev
3b38d0de7f
Represent by TorrentInfo only info-section related metadata
...
PR #21084 .
2024-07-19 06:25:41 +03:00
Chocobo1
8b7fdf0f22
Bump Python version minimum requirement
...
The new minimum version is Python 3.9.
Debian Buster (oldoldstable) support ends at [2024.06.30](https://www.debian.org/releases/buster/ ).
Ubuntu Focal (20.04LTS) support ends at [2025.04](https://ubuntu.com/about/release-cycle ).
By the time qbt v5.1 is released, Buster and Focal would have become EOL.
https://packages.debian.org/search?keywords=python3
https://packages.ubuntu.com/search?keywords=python3
PR #21064 .
2024-07-17 12:13:58 +08:00
Vladimir Golovnev
815ab180c1
Prevent incorrect size from being used for creating array
...
PR #21050 .
2024-07-12 08:49:45 +03:00
Vladimir Golovnev
5ef2a1df07
Use QList explicitly
...
PR #21016 .
2024-07-04 08:30:39 +03:00
Vladimir Golovnev
4e27e88f6a
Allow to move content files to Trash instead of deleting them
...
PR #20252 .
2024-06-29 08:21:35 +03:00
Vladimir Golovnev
0cbe4882c3
Use custom storage when reloading torrent
...
PR #20998 .
2024-06-28 07:14:19 +03:00
Chocobo1
5740238933
Use proper casting
...
Previously `m_shutdownTimeout * 1000` was calculated in `int` and now it
is `qint64`.
PR #20982 .
2024-06-24 15:02:48 +08:00
Chocobo1
7a2bfae5e4
Improve connection handling
...
1. Previously unhandled connections will stay in pending state. It won't
be closed until timeout happened. This may lead to wasting system
resources. Now the (over-limit) connection is actively rejected.
2. When out-of-memory occurs here, reject the new connection instead of
throwing exception and crash.
3. Also clean up some unused bits.
PR #20961 .
2024-06-20 12:13:27 +08:00
ManiMatter
914728d9a1
WebAPI: Add "private" filter for 'info' endpoint
...
PR #20833 .
---------
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru >
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2024-06-16 10:57:12 +03:00
Vladimir Golovnev
65d143d4c4
Apply share limits when torrent downloading is finished
...
PR #20917 .
Closes #20874 .
2024-06-12 09:03:07 +03:00
Vladimir Golovnev
d89f289f82
Apply filename filter to subfolder names as well
...
PR #20902 .
Closes #14480 .
2024-06-12 09:02:10 +03:00
Chocobo1
a126a7b493
Adjust user agent version automatically
...
The version calculation is an estimation and it will drift off after some time. Hopefully the
drift offset won't be noticeable within a few years.
Also switched the user agent to Windows 10 which has the largest portion of users to avoid
standing out from the crowd.
PR #20864 .
2024-05-20 13:50:18 +08:00
Vladimir Golovnev
e09a871ca3
Revamp alerts handling
...
PR #20854 .
2024-05-18 10:36:08 +03:00
Vladimir Golovnev
4d8713ce11
WebAPI: Add a way to download .torrent file using search plugin
...
* Simplify nova2dl script
* Use search engine name instead of site URL (like nova2 does)
* Add a way to download torrent using search plugin
PR #20824 .
2024-05-15 08:47:40 +03:00
Hanabishi
2c47f09d7a
Sanitize peer client names
...
PR #20788 .
Closes #20010 .
2024-05-11 18:46:11 +03:00
cayenne17
21a4ab6bac
Update User-Agent
...
PR #20801 .
2024-05-10 21:47:55 +03:00
Vladimir Golovnev
2b728b3bc0
Add an option to set BitTorrent session shutdown timeout
...
PR #20797 .
2024-05-07 13:15:39 +03:00
Vladimir Golovnev
8ef7d3ec9a
Add ability to pause/resume entire BitTorrent session
...
PR #20757 .
Closes #18993 .
2024-05-03 09:02:50 +03:00
Vladislav Grechannik
cd3982cf3c
Include missing header
...
PR #20776 .
Closes #20774 .
2024-05-01 12:37:22 +03:00
ducalex
42b87963fd
Add date column to the built-in search engine
...
Adds a date column to the built-in search engine to show when a torrent was published/uploaded on the engine site.
When a plugin wants to show a date, it can now add a `pub_date` entry to its result dict. The value format is a unix timestamp (an integer representing seconds since epoch).
Plugins with no date support will keep working.
PR #20703 .
2024-04-29 21:10:24 +03:00
Chocobo1
775b38079f
Avoid repetitive function calls
...
PR #20764 .
2024-04-29 13:05:05 +08:00
Chocobo1
321d7e5b17
Adjust tracker tier when adding additional trackers
...
Closes #20102 .
PR #20729 .
2024-04-25 12:18:30 +08:00
Vladimir Golovnev
ca71c186e0
Don't forget to resume "missing files" torrent when rechecking
...
PR #20747 .
2024-04-24 09:15:19 +03:00
Vladimir Golovnev
ace5286402
Prevent invalid status filter index from being used
...
PR #20714 .
Closes #20701 .
2024-04-18 07:59:24 +03:00
Aliaksei Urbanski
f37d0c486c
Add the Popularity metric
...
PR #20180 .
2024-04-01 21:23:08 +03:00
Chocobo1
90383567b2
Revise Tracker related classes
...
And also rename them.
PR #20489 .
2024-04-01 19:17:35 +08:00
thalieht
5d1c249606
Use Start/Stop instead of Resume/Pause
...
PR #20532 .
---------
Co-authored-by: Vladimir Golovnev (Glassez) <glassez@yandex.ru >
2024-03-25 19:11:04 +03:00
sledgehammer999
a5681f72bc
Bump to v5.0.0beta1
2024-03-19 02:44:55 +02:00
Vladimir Golovnev
d5e41bf679
Allow torrents to override default share limit action
...
PR #20528 .
2024-03-12 14:08:59 +03:00
Thomas Piccirello
c06817f4eb
Add button for sending test email
...
This allows for easily testing whether the provided email configuration is correct.
PR #20488 .
2024-03-08 21:51:44 +08:00
Vladimir Golovnev
0114610a40
Provide torrent creation feature via WebAPI
...
PR #20366 .
Closes #5614 .
Co-authored-by: Radu Carpa <radu.carpa@cern.ch >
2024-02-27 15:57:16 +03:00
Chocobo1
46e8ee50c8
Allow to set custom suffix to window title
...
This is to allow users to differentiate qbt instances when there are multiple running.
PR #20429 .
Closes #17905 .
2024-02-27 12:41:12 +08:00