Mike Tzou
12c127b482
Merge pull request #11227 from Chocobo1/alert
...
Handle "alerts dropped" alert from libtorrent
2019-09-15 13:02:34 +08:00
Vladimir Golovnev (Glassez)
cf6e721b00
Allow to retry fetching RSS feeds
2019-09-14 11:33:03 +03:00
Vladimir Golovnev (Glassez)
73ef69526d
Allow to cancel download request
2019-09-14 11:31:07 +03:00
Chocobo1
edcc74c1ae
Add option to align file to piece boundary when creating new torrent
...
Alignment is achieved by adding dummy pad files between files which is
handled by libtorrent.
Closes #10460 .
2019-09-14 12:16:50 +08:00
Chocobo1
5e1e983928
Handle "alerts dropped" alert from libtorrent
2019-09-14 12:09:13 +08:00
Chocobo1
0a959bcbe7
Clean up SettingsStorage::save()
...
Also it should return `true` when `m_dirty` is `false`.
2019-09-08 15:03:25 +08:00
Chocobo1
e7e5ee1ea2
Add const to TransactionalSettings class functions
2019-09-08 14:38:14 +08:00
Chocobo1
daf52a2610
Avoid double lookups
2019-09-08 14:28:38 +08:00
Mike Tzou
d2c21ce507
Merge pull request #11195 from Chocobo1/mac
...
Replace deprecated macro
2019-09-07 11:58:23 +08:00
Chocobo1
7113174593
Treat .magnet file extension as case insensitive
...
Closes #11200 .
2019-09-06 12:30:50 +08:00
Chocobo1
0d5b0b9542
Replace deprecated macro
...
Q_OS_MAC is deprecated and the replacement is Q_OS_MACOS.
2019-09-05 20:16:18 +08:00
Chocobo1
9dc3b18178
Fix filename validation on non-Windows OS
...
Closes #11191 .
2019-09-05 20:05:21 +08:00
Chocobo1
2396ef5bd6
Move error logging of adding peers to the proper place
2019-09-04 16:09:24 +08:00
Chocobo1
3104291734
Add check for null pointer
...
Fix up d657c87243
.
2019-09-03 22:26:41 +08:00
Mike Tzou
4363082173
Merge pull request #11104 from Chocobo1/resume
...
Fix unable to remove web seeds
2019-09-03 12:12:56 +08:00
Chocobo1
2a66bb3127
Construct QHostAddress more efficiently
2019-09-01 22:33:01 +08:00
Chocobo1
4aab44e779
Always save info dict when saving fastresume
...
Otherwise torrents loaded from fastresume won't have it and needs
to redownload it from elsewhere and slowing down the startup process.
This is also required for the future where we will drop loading the
`info` dict from .torrent files.
2019-08-31 22:59:33 +08:00
Chocobo1
d657c87243
Fix unable to remove web seeds
...
As suggested in post [1] we don't need to assign the `ti` field anymore when fastresme
already contains the `info` dict.
[1]: https://github.com/arvidn/libtorrent/issues/3946#issuecomment-523300003
2019-08-31 22:52:22 +08:00
Mike Tzou
62a3938480
Merge pull request #11085 from Chocobo1/model
...
Better on-demand reloading of torrent data
2019-08-30 12:45:57 +08:00
Mike Tzou
7ce26435bd
Merge pull request #11126 from Chocobo1/addedTime
...
Fix wrong "added on" date
2019-08-28 12:04:23 +08:00
Chocobo1
09503b58fa
Clean up loadTorrentResumeData()
2019-08-27 15:01:50 +08:00
Chocobo1
f3ce76110b
Simplify code
...
Instead of using dict_find_list() now we use the simpler dict_find()
since we are going to check its validness anyway.
2019-08-27 15:01:50 +08:00
Chocobo1
3a11c23efd
Fix wrong "added on" date
...
This only happens for magnet links when its metadata has yet to be retrieved.
Closes #11124 .
2019-08-27 15:01:50 +08:00
Chocobo1
0891cd4878
Avoid unecessary copying the parameter
...
Using forwarding reference here so that we won't get unnecessary copies
of the parameter passed to `slot`, for example a lambda function.
2019-08-27 14:30:03 +08:00
Mike Tzou
5c7f9530ee
Merge pull request #11060 from Chocobo1/tracker
...
Improve embedded tracker
2019-08-22 12:18:56 +08:00
Chocobo1
8d0d8e4dcb
Improve embedded tracker
...
Now it conforms to BEPs more closely.
2019-08-21 18:05:50 +08:00
Chocobo1
bbecf87292
Handle invalid time activity properly
...
When there is no activity before m_nativeStatus.last_upload will be 0
and this commit will map it to -1 which retain the expected behavior as
before (libtorrent < 1.2 era).
2019-08-21 17:45:04 +08:00
Chocobo1
1f3bf75fff
Better on-demand reloading of torrent data
2019-08-17 15:44:16 +08:00
Chocobo1
94f7a095bb
Implement proper equal operators
2019-08-16 01:35:41 +08:00
Mike Tzou
767f024585
Merge pull request #7475 from thalieht/ratiosuperseed
...
Add option to enable Super Seeding mode once ratio/time limit is reached. Closes #7160 .
2019-08-10 11:33:09 +08:00
thalieht
1f6f1716ad
Enable Super Seeding mode once ratio/time limit is reached
2019-08-09 13:06:34 +03:00
Chocobo1
6ac36368cd
Update user agent string
2019-08-09 13:12:11 +08:00
Mike Tzou
2427f5d324
Merge pull request #11041 from Chocobo1/splitRef
...
Revise operations in TorrentHandle class
2019-08-09 12:27:44 +08:00
Chocobo1
c420ff29af
Revise operations in TorrentHandle class
2019-08-08 18:57:54 +08:00
Chocobo1
b5b678c58f
Replace QString::split() by faster alternatives
2019-08-08 18:57:54 +08:00
Chocobo1
672b44acba
Let OS assign listening port
...
This applies when "Use different port on startup" option is selected.
2019-08-08 13:14:25 +08:00
Chocobo1
c19f8f6b5e
Use a randomized port number for the first run
2019-08-08 13:14:23 +08:00
Mike Tzou
7f1bff4eb4
Merge pull request #11017 from Chocobo1/apictrl
...
Improvements to APIController class
2019-08-06 10:17:27 +08:00
Chocobo1
d92bf13706
Use a QString directly instead of QStringList
2019-08-05 20:56:16 +08:00
Chocobo1
e90a2c00a5
Replace QList by QVector
2019-08-05 20:56:15 +08:00
Chocobo1
f4e7b8c6bf
Replace QMap with QHash
2019-08-05 09:51:39 +08:00
Mike Tzou
3811612f80
Merge pull request #10982 from Chocobo1/cleanup
...
Code base cleanup
2019-07-31 14:24:42 +08:00
Chocobo1
c1659a189b
Fix messed up symbols in log
2019-07-31 02:10:22 +08:00
Chocobo1
3ab2fe907f
Remove Windows XP remnants
2019-07-31 02:10:22 +08:00
Chocobo1
38fa6d2aee
Fix incomplete file extension not applied for new torrents
2019-07-28 13:05:46 +08:00
Chocobo1
7ab3479a34
Replace static_cast by qOverload
2019-07-26 22:32:18 +08:00
Chocobo1
ca44b40222
Move variables to the proper scope
2019-07-26 22:32:18 +08:00
Chocobo1
ccec50e18e
Improve parsing in BitTorrent::PeerAddress::parse
2019-07-24 22:22:02 +08:00
Vladimir Golovnev
02ab77053e
Merge pull request #10961 from glassez/fastresume
...
Save updated resume data for completed torrents
2019-07-23 18:47:30 +03:00
Vladimir Golovnev
cf2e7d77d6
Merge pull request #10950 from glassez/drop-deprecated
...
Don't use deprecated libtorrent features
2019-07-23 09:19:15 +03:00
Vladimir Golovnev (Glassez)
4021a0c7ce
Store libtorrent native file index in QHash
2019-07-23 06:43:39 +03:00
Vladimir Golovnev (Glassez)
3d70ebfc46
Save updated resume data for completed torrents
...
If fastresume data was rejected we need to save updated
resume data after torrent finishes rechecking.
2019-07-23 06:32:13 +03:00
Vladimir Golovnev (Glassez)
ad6a40d5f4
Extract PeerAddress class into separate file
2019-07-23 06:27:35 +03:00
Vladimir Golovnev (Glassez)
b822d2c380
Fix requested torrent resume data handling
...
Session should increase an appropriate counter each time
the torrent resume data is requested to save.
2019-07-22 14:22:26 +03:00
Vladimir Golovnev (Glassez)
60ffa3030e
Don't use deprecated libtorrent features
2019-07-21 19:28:28 +03:00
Chocobo1
4a90716843
Add override keyword to functions
2019-07-19 11:58:56 +08:00
Chocobo1
7a5e883cd2
Revise inline keyword usage
...
And let compiler decide whether to inline functions.
2019-07-16 18:42:55 +08:00
Chocobo1
f6f8aaf3db
Put internal function into anonymous namespace
2019-07-16 18:42:26 +08:00
Chocobo1
f993230582
Use uniform initialization
2019-07-16 18:42:26 +08:00
Vladimir Golovnev
17541b0d34
Merge pull request #10921 from glassez/ignore-actions
...
Ignore some actions on uninitialized torrents
2019-07-15 08:44:42 +03:00
Vladimir Golovnev (Glassez)
87d98403f4
Don't break torrent checking
2019-07-14 12:34:50 +03:00
Vladimir Golovnev (Glassez)
9462685c78
Ignore some actions on uninitialized torrents
...
Some actions can lead to an inconsistent state if applied
to an uninitialized torrent, so we just ignore them.
2019-07-14 12:34:28 +03:00
Vladimir Golovnev
b9da9ebfdf
Merge pull request #10910 from glassez/fix-add-torrent
...
Avoid race conditions when adding torrent
2019-07-14 10:45:05 +03:00
thalieht
7b31868e3c
Rename priority to queue in the context of torrents
2019-07-13 14:04:16 +03:00
Vladimir Golovnev (Glassez)
644dc9792d
Avoid race conditions when adding torrent
2019-07-13 12:06:07 +03:00
Mike Tzou
24932f6cb6
Merge pull request #10895 from Chocobo1/tracker
...
Add dialog to mass edit torrent's tracker
2019-07-12 10:59:50 +08:00
Chocobo1
9e7f50517e
Add "Tracker entries" dialog
2019-07-11 12:10:19 +08:00
Mike Tzou
51fa98aa0b
Merge pull request #10702 from jagannatharjun/qss-styling
...
Allow Styling through QSS
2019-07-10 19:32:19 +08:00
Prince Gupta
a24925c858
Allow styling with QSS stylesheets
2019-07-09 19:56:55 +05:30
Vladimir Golovnev (Glassez)
9399b876eb
Fix torrent checking issues
...
Start all torrents auto-managed to prevent simultaneous checking
of multiple torrents.
Handle checking state of paused torrent to prevent it from being
resumed when qBittorrent is closed until checking isn't complete.
2019-07-09 08:54:50 +03:00
Chocobo1
b9094ff8a5
Use proper log message when there are no error
2019-07-05 23:46:12 +08:00
Chocobo1
664cfe7d69
Fix torrent properties not saved for paused torrents
2019-07-05 23:46:12 +08:00
Chocobo1
c4dbe84832
Use newer libtorrent API
2019-07-05 23:46:12 +08:00
Chocobo1
ed2199b91c
Add "File pool size" option
2019-07-03 18:06:07 +08:00
Chocobo1
6286bc716c
Add "Socket backlog size" option
...
The default value in libtorrent is 5 which is too small nowadays.
The new default value 30 is chosen to be in line with
QTcpServer::maxPendingConnections().
2019-07-03 17:36:56 +08:00
Chocobo1
73cf3fb68f
Use LogMsg() helper
2019-07-02 22:34:22 +08:00
Chocobo1
e6c448aa4f
Replace obsoleted QProcess::finished(int)
...
It is replaced by QProcess::finished(int, QProcess::ExitStatus).
2019-07-01 19:08:37 +08:00
Chocobo1
2bc91fba3e
Use newer libtorrent API
2019-06-28 20:36:31 +08:00
Chocobo1
0b1b3c1f84
Use numeric_limits instead of constants from C
...
In C++, using numeric_limits is more idiomatic compared to using constants.
2019-06-23 11:16:58 +08:00
Chocobo1
042cd4267f
Remove upper limit of "Disk cache" setting
2019-06-22 17:13:24 +08:00
Mike Tzou
1831f71cc4
Merge pull request #10833 from Chocobo1/invokeMethod
...
Use functor based QMetaObject::invokeMethod
2019-06-22 11:24:47 +08:00
Prince Gupta
ece70daaa5
Fix CMake Windows compilation
2019-06-21 18:05:19 +05:30
Chocobo1
11fdf91196
Suppress compiler warning
...
The debug message is emitting a format mismatch warning.
Fixup 4880dc812c
.
And add curly brackets to if statement.
2019-06-21 00:32:12 +08:00
Chocobo1
e31c1ca780
Use functor based QMetaObject::invokeMethod
2019-06-20 11:36:38 +08:00
Chocobo1
4880dc812c
Use appropriate type
2019-06-19 18:52:24 +08:00
Chocobo1
516c968373
Support year unit in userFriendlyDuration()
2019-06-19 18:52:24 +08:00
Chocobo1
a6c5a90630
Remove redundant variable
2019-06-19 18:52:24 +08:00
Chocobo1
3b015db77d
Add comparison operators for ProxyConfiguration
2019-06-19 18:52:24 +08:00
Chocobo1
623210df58
Improve handleFileErrorAlert error message
2019-06-19 18:52:23 +08:00
Vladimir Golovnev (Glassez)
8e65317d61
Rename "fromNativePath" to "toUniformPath"
...
Unlike "toNativePath" which name clearly reflects the function result
"fromNativePath" has no such clear meaning.
Since this function converts path into uniform format "toUniformPath"
is better name.
2019-06-17 15:55:49 +03:00
Mike Tzou
206bb018dd
Merge pull request #10801 from Chocobo1/timeout
...
Add WebAPI session timeout settings
2019-06-17 00:18:01 +08:00
Mike Tzou
46d445d042
Merge pull request #10792 from Chocobo1/rename2
...
Remove empty leftover folders after rename properly
2019-06-16 12:22:22 +08:00
Chocobo1
a64f3bbc6a
Reorder if conditions slightly
2019-06-15 19:08:24 +08:00
Chocobo1
9893a415c0
Fix updated save path not saved for paused torrents
2019-06-15 19:08:23 +08:00
Chocobo1
7d860b6c24
Log save_resume_data_failed_alert
2019-06-15 19:08:23 +08:00
Chocobo1
4e87aebf55
Don't remove parent directories
...
QDir::rmpath removes *all* parent directories while QDir::rmdir removes
the specified directory.
2019-06-15 19:08:23 +08:00
Chocobo1
440860c4a9
Properly remove empty leftover folders after rename
...
TorrentInfo::origFilePath will return the very original path from
.torrent file, not the most recent file path before the rename operation
and thus the code would not be working as we expected.
2019-06-15 19:08:23 +08:00
Chocobo1
89124bdcc8
Add WebAPI session timeout settings
...
Raise default timeout to 1 hour.
2019-06-15 18:57:19 +08:00
silverqx
4f4f435e76
Add zlib version to GUI & stackdump
2019-06-12 08:02:24 +02:00
Chocobo1
8191f1498a
Log file rename failed errors
2019-06-09 19:07:43 +08:00
Mike Tzou
63b0a5b78c
Merge pull request #10775 from Chocobo1/speed
...
Misc. improvements
2019-06-09 01:57:20 +08:00
Mike Tzou
c95650c4f3
Merge pull request #10752 from thalieht/fw-declare
...
Forward declare and remove some unused #include
2019-06-06 10:18:26 +08:00
Chocobo1
431e7179ac
Remove redundant variable
2019-06-06 00:20:57 +08:00
Chocobo1
fbd5699786
Use switch statement
2019-06-06 00:15:09 +08:00
thalieht
70f8882f87
Group Qt forward declarations separately from the others
2019-06-04 17:48:55 +03:00
thalieht
9995967fbf
Remove some unused #include
2019-06-04 17:48:55 +03:00
thalieht
4370a7eb12
Forward declare in a few places
2019-06-04 17:48:55 +03:00
Vladimir Golovnev
6f6033cf1c
Merge pull request #10754 from glassez/fix-magnet
...
Disable "Upload mode" when start preloaded torrent. Closes #10751
2019-06-04 10:56:11 +03:00
Vladimir Golovnev (Glassez)
b644d6685f
Disable "Upload mode" when start preloaded torrent
2019-06-04 07:14:21 +03:00
Vladimir Golovnev (Glassez)
4ae4ae3cfc
Fix wrong indentation
2019-06-04 06:55:45 +03:00
Vladimir Golovnev (Glassez)
2c145fa57c
Fix incorrectly set torrent startup flag
2019-06-04 06:53:17 +03:00
Mike Tzou
b8e205c048
Merge pull request #10741 from Chocobo1/limit
...
Fix speed limit not applying to IPv6 peers
2019-06-04 11:09:16 +08:00
Vladimir Golovnev
ecb4a76db7
Merge pull request #10742 from glassez/fix-rss
...
Ignore RSS articles with non-unique identifiers
2019-06-03 17:26:57 +03:00
Vladimir Golovnev (Glassez)
68ee071331
Ignore RSS articles with non-unique identifiers
2019-06-02 13:30:00 +03:00
Vladimir Golovnev (Glassez)
d710bbd9ef
Perform more RSS parsing in working thread
2019-06-02 13:29:41 +03:00
Chocobo1
411b956009
Fix speed limit not applying to IPv6 peers
...
`TORRENT_USE_IPV6` is not used by libtorrent 1.2 anymore.
2019-06-02 15:00:27 +08:00
Chocobo1
3f2ce8a2b7
Remove unused stats_alert handler
...
Fixup 0fe9cd05c4
.
2019-06-01 11:43:00 +08:00
Chocobo1
39830986c2
Use alert's timestamp
...
This way has better accuracy than running our own timer.
2019-06-01 11:40:23 +08:00
Chocobo1
0fe9cd05c4
Avoid using deprecated stats_alert
...
From libtorrent doc:
This alert has been superseded by calling post_torrent_updates() regularly on the session object.
2019-05-31 10:58:23 +08:00
Mike Tzou
db88c2d6a5
Merge pull request #10721 from Chocobo1/sort
...
Fix wrong comparison result
2019-05-31 10:50:55 +08:00
Mike Tzou
bb3634c382
Merge pull request #10711 from Chocobo1/alert
...
Log performance alerts from libtorrent
2019-05-31 10:50:03 +08:00
Vladimir Golovnev (Glassez)
05fd0b5859
Fix sequential downloading when redirected
2019-05-29 15:50:02 +03:00
Chocobo1
36cf689432
Fix wrong comparison result
...
The QString::toInt() might overflow when the string is long.
Closes #10706 .
2019-05-29 00:03:04 +08:00
Chocobo1
45bafab4e0
Log performance alerts from libtorrent
2019-05-27 14:46:33 +08:00
Chocobo1
9232dd30dc
Sort function declarations
2019-05-27 09:29:59 +08:00
Chocobo1
1b0ffd7781
Fix wrong logic
...
The error is caused by silly copy-paste error.
Fixup 09ff735007
.
2019-05-25 14:55:27 +08:00
Chocobo1
09ff735007
Use newer libtorrent API
...
This commit covers trackerentry.cpp only.
2019-05-25 11:22:57 +08:00
Chocobo1
ed6bb0efdc
Replace QList by QVector for tracker related operations
2019-05-22 12:57:22 +08:00
Chocobo1
cb4c53c848
Follow the type used in libtorrent
2019-05-19 18:51:09 +08:00
Chocobo1
e92209475e
Use range-based for loops
2019-05-19 18:51:09 +08:00
Chocobo1
10e1c35998
Avoid unnecessary double lookup
2019-05-19 12:06:18 +08:00
Chocobo1
c75500670d
Use forwarding reference when passing function objects
...
So instead of passing every function objects by value (a copy is made), now function objects
will be handled properly by reference (for lvalues) or by value (for rvalues).
2019-05-19 12:06:18 +08:00
Chocobo1
6738cdd715
Constify exception references
2019-05-19 12:06:18 +08:00
Chocobo1
e288de7ec1
Forward declare as much as possible
2019-05-19 12:06:18 +08:00
Chocobo1
401bdbf3d9
Remove unused functions
2019-05-19 12:06:18 +08:00
Chocobo1
ff707ea5af
Change splitToViews() return type to QVector
2019-05-19 12:06:18 +08:00
Mike Tzou
3d6dccc689
Merge pull request #10627 from Chocobo1/alg
...
Improve removeIf() to support other types
2019-05-16 10:45:55 +08:00
Chocobo1
459cdf6071
Fix assertion fail
...
When fileSize == 0, the second index could be smaller than the first index,
thus trigger the assert check in IndexInterval constructor.
Closes #10611 .
2019-05-15 10:22:21 +08:00
Evgeny Lensky
62c72091ce
Change "Add new torrent" dialog to horizontal layout
2019-05-14 11:03:56 +08:00
Chocobo1
c6f3da1097
Improve removeIf() to support set types
...
We can now replace QMutable*Iterator by removeIf() which usage is more consistent with other
algorithm functions.
2019-05-14 01:26:01 +08:00
Chocobo1
5aaf040300
Remove libtorrentfwd.h
2019-05-13 11:20:42 +08:00
Chocobo1
3955eef50d
Change to lt
namespace
...
Quoting from libtorrent doc:
> In the future, libtorrent will be the alias and lt the namespace name.
2019-05-13 11:20:41 +08:00
Chocobo1
4b263f057d
Use newer libtorrent API
...
This commit covers session.cpp only.
2019-05-13 11:20:41 +08:00
Chocobo1
677a419f0b
Use upstream defined namespace
...
`lt` namespace is defined since libtorrent 1.1.6 and our master branch requires >= 1.1.10,
so there is no need to add #if condition for it.
2019-05-13 11:20:41 +08:00
Vladimir Golovnev
af7d8f6a43
Merge pull request #10514 from Mataniko/rss-enclosure-type
...
Download RSS "enclosure" element if no proper MIME type is found
2019-05-11 13:31:46 +03:00
Chocobo1
bd8d70bf60
Refactor HTTP query parsing
2019-05-09 12:41:30 +08:00
Chocobo1
69d29af097
Fix '+' char not decoded to space correctly
...
Closes #10606 .
2019-05-09 11:17:41 +08:00
Matan Bareket
bd2d636bb5
Download RSS enclosure element if no proper MIME type is found
...
In the case where an RSS feed doesn't have the "enclosure" element
with type "application/x-bittorrent", fallback to the last enclosure
element which has no "type" attribute.
2019-05-08 13:46:13 -04:00
Chocobo1
ae793b7395
Use upstream defined namespace alias
2019-05-06 20:26:15 +08:00
Chocobo1
56434fc8b9
Replace obsoleted QDateTime::fromTime_t()
2019-05-06 20:26:15 +08:00
Chocobo1
3f962ba336
Fix displaying invalid creation date
...
The bug is only observed when using libtorrent 1.2.
2019-05-06 20:26:14 +08:00
Chocobo1
3f10ac55a3
Migrate to update-to-date libtorrent functions
2019-05-06 20:26:14 +08:00
Chocobo1
aaed5f7fe0
Remove unused headers
2019-05-01 11:09:25 +08:00
Chocobo1
44e4a5b13a
Avoid performance penalty from type erasure
...
On average the affected code path is 0.1% faster and the result binary
is 10 KB smaller.
2019-05-01 11:09:25 +08:00
Mike Tzou
7db2d1b8cf
Merge pull request #10492 from Chocobo1/server
...
Remove closed connections immediately
2019-04-16 12:25:40 +08:00
Mike Tzou
c7f89f55d0
Merge pull request #10473 from Chocobo1/warning
...
Fix unsafe type narrowing (MSVC C4267 warning)
2019-04-16 12:23:30 +08:00
Chocobo1
a2a669572c
Use QSet for tracking server connections
...
We don't need to maintain order between connections so QSet would be more suitable.
2019-04-15 21:35:35 +08:00
Chocobo1
a35b6cc8dd
Remove closed connections immediately
...
Previously it relied on a timer to drop dead connections but that proved to
be too slow when there is an incoming burst of connections.
Fixes #10487 .
2019-04-15 21:35:10 +08:00
Chocobo1
41773a5465
Fix unsafe type narrowing
...
Appending the warning below:
qBittorrent\src\base/utils/version.h(176): warning C4267: 'argument': conversion from 'size_t' to 'int', possible loss of data
qBittorrent\src\base/utils/version.h(185): note: see reference to function template instantiation 'std::array<T,2> Utils::Version<T,2,2>::parseList<StringsList>(const StringsList &)' being compiled
with
[
T=unsigned short,
StringsList=QList<QByteArray>
]
2019-04-15 20:23:26 +08:00
Mike Tzou
19dfec1e0a
Merge pull request #10464 from thalieht/torrent-size-limit
...
Increase the download request size limit from 10 to 100 MiB
2019-04-11 10:14:49 +08:00
thalieht
2f3b7642c2
Show user friendly size in error
2019-04-10 11:39:27 +03:00
thalieht
25102b9c5d
Increase the download size limit to 100 MiB
2019-04-10 11:39:27 +03:00
Chocobo1
d86a984e25
Correctly handle '+' sign in x-www-form-urlencoded data
...
Fixes #10451 .
2019-04-07 13:58:16 +08:00
Vladimir Golovnev (Glassez)
ead078a38e
Add preliminary support of libtorrent v1.2
...
libtorrent v1.2 should be built with deprecated features enabled.
2019-03-18 15:17:03 +03:00
Mike Tzou
d1b0c230ed
Merge pull request #10366 from Chocobo1/logger
...
Avoid performance penalty when logger is full
2019-03-17 15:04:53 +08:00
Chocobo1
04fd6e9d04
Avoid performance penalty when logger is full
2019-03-15 14:29:06 +08:00
thalieht
4c53447d35
Remove the max half-open connections option from GUI
...
Its functionality was deprecated long ago.
2019-03-13 21:08:40 +02:00
Vladimir Golovnev
928ce940c9
Merge pull request #10346 from glassez/download-manager
...
Improve "Download manager"
2019-03-10 09:13:07 +03:00
Vladimir Golovnev (Glassez)
4ee6a0ba29
Use Qt-provided HTTP redirection handling
2019-03-08 13:06:42 +03:00
Vladimir Golovnev (Glassez)
746916a963
Use DownloadHandler behind the scenes
2019-03-08 13:00:37 +03:00
sledgehammer999
c2d1af9853
Merge pull request #10338 from sledgehammer999/raise_qt5_ver
...
Raise minimum Qt version to 5.9.0
2019-03-08 00:42:26 +02:00
Vladimir Golovnev (Glassez)
6cb15706f5
Reduce number of DownloadManager signals
2019-03-05 11:28:29 +03:00
Chocobo1
adbd34c795
Move helper functions to Utils::Gui namespace
2019-03-05 14:55:22 +08:00
sledgehammer999
5c63ad3b95
Raise minimum Qt version to 5.9.0
2019-03-04 16:48:49 +02:00
Mike Tzou
0f1fc7be9d
Merge pull request #10302 from Chocobo1/uptr
...
Replace QScopedPointer with std::unqiue_ptr
2019-03-02 12:26:14 +08:00
Chocobo1
6dab93f7fd
Replace deprecated QDesktopWidget class
2019-02-28 12:02:03 +08:00
Chocobo1
c657134344
Replace deprecated QSslSocket::setDefaultCiphers()
2019-02-28 12:01:36 +08:00
Chocobo1
168d3fbdac
Replace deprecated trUtf8()
2019-02-28 12:01:36 +08:00
thalieht
77aea3c59e
Add const to a few pointer arguments
2019-02-25 17:05:15 +02:00
thalieht
ce437817de
Make various minor changes
2019-02-25 17:05:15 +02:00
thalieht
89dce36e98
Use uniform initialization on some default arguments
2019-02-25 17:05:15 +02:00
thalieht
8a19a0d4a0
Remove const in declarations' arguments that are passed by value
2019-02-25 17:05:15 +02:00
thalieht
70f1537d9f
Add const to almost all remaining vars and arguments that qualify
2019-02-25 17:05:15 +02:00
Mike Tzou
1c14a08390
Merge pull request #10296 from thalieht/clang-tidy
...
Some suggestions from Clang-tidy
2019-02-21 23:17:29 +08:00
Chocobo1
5e3fddf456
Replace QScopedPointer with std::unqiue_ptr
...
These 2 types are very similar and we should prefer the one from C++
standard library, this reduces the number of types in our code base.
Also see:
https://stackoverflow.com/questions/40346393/should-i-use-qscopedpointer-or-stdunique-ptr#comment67966940_40346991
2019-02-18 16:06:40 +08:00
Chocobo1
8fe1ff87f1
Limit DownloadHandler max redirection to 20
...
Closes #10219 .
2019-02-17 22:02:48 +08:00
thalieht
86df25a3e9
Remove some unused stuff
2019-02-16 18:54:18 +02:00
thalieht
8c944bd4e1
Avoid repeating the return type
2019-02-16 18:54:18 +02:00
thalieht
d8cbc9266a
Use 'auto' to avoid duplicating the type name
2019-02-16 18:54:17 +02:00
Chocobo1
409557ef30
Clean up code
2019-02-15 19:47:06 +08:00
thalieht
8a3f942385
Don't use 'else' after return/break
2019-02-13 18:23:25 +02:00
Chocobo1
313a95bdd1
Log DownloadManager SSL errors
2019-02-13 20:09:08 +08:00
Mike Tzou
78ab0e4ba9
Merge pull request #10220 from thalieht/const
...
Add const to many vars and arguments
2019-02-13 12:11:00 +08:00
thalieht
445adb0ab4
Convert pass-by-value arguments to const refs where applicable
2019-02-12 02:45:55 +02:00
thalieht
ca3ce87e06
Add const to many vars and arguments
...
Also remove const in declarations' arguments that are passed by value
2019-02-11 20:19:41 +02:00
Mike Tzou
12aea82031
Merge pull request #10273 from Chocobo1/fix
...
Fix wrong arg placeholder
2019-02-10 13:31:09 +08:00
Chocobo1
79d7ba8205
Fix wrong arg placeholder
2019-02-09 21:26:45 +08:00
Vladimir Golovnev
0413a05246
Merge pull request #10242 from glassez/ordered-recheck
...
Force recheck multiple torrents one by one. Closes #9120
2019-02-08 08:19:30 +03:00
Mike Tzou
efed3fc78c
Merge pull request #10256 from Chocobo1/license
...
Add license header
2019-02-08 12:07:08 +08:00
Mike Tzou
c540e57f55
Merge pull request #10227 from Chocobo1/login
...
Prevent login credential appearing in URL
2019-02-07 13:16:24 +08:00
Chocobo1
364a837dbd
Revise comments about C++14
2019-02-05 13:35:54 +08:00
Chocobo1
6d29a3af60
Make use of std algorithms
2019-02-05 13:35:54 +08:00
Chocobo1
f789df7edf
Add license header
2019-02-04 17:28:55 +08:00
Vladimir Golovnev (Glassez)
61925f74fd
Force recheck multiple torrents one by one
...
Closes #9120 .
2019-02-01 18:15:54 +03:00
Chocobo1
814eef1e56
Fix wrong arg placehoder
2019-02-01 13:38:14 +08:00
Chocobo1
5cdb3b6a2d
Load WebUI certificate & key from file path
...
This allow users to update certificate & key more easily, i.e. without the need to import them
into qbt.
Closes #6675 , #7547 , #8315 , #8564 .
2019-01-28 16:33:48 +08:00
Chocobo1
48d358872f
Cleanup header inclusion
2019-01-28 14:34:13 +08:00
Vladimir Golovnev
5b82b681cb
Merge pull request #10225 from glassez/http-request
...
Separate URL components before percent-decoding. Closes #9116
2019-01-28 08:46:41 +03:00
sledgehammer999
6fdc02f947
Merge pull request #10201 from sledgehammer999/dead_code
...
Remove leftover tracker authentication code
2019-01-27 22:19:21 +02:00
Vladimir Golovnev (Glassez)
b0446380c6
Separate URL components before percent-decoding
...
Allow special characters in query string parameters.
Closes #9116 .
2019-01-27 15:33:19 +03:00
sledgehammer999
4a414d50f1
Remove leftover tracker authentication code
2019-01-23 02:38:46 +02:00
Chocobo1
04227f5a41
Add QBT_APP_64BIT define
...
Now we use QT_POINTER_SIZE to detect CPU bitness, it has the advantage of applicable to all CPU
architectures not limiting to x86 arch.
2019-01-19 10:14:10 +08:00
Vladimir Golovnev (Glassez)
302c99d7d5
Drop support of libtorrent < 1.1.10
2019-01-11 15:13:17 +03:00
Chocobo1
b7627db98c
Remove unused headers
2019-01-06 19:19:57 +08:00
Chocobo1
06e82d10f6
Replace boost::function with std::function
2019-01-06 19:19:57 +08:00
Chocobo1
d013e0922d
Use the proper Qt type
2019-01-06 18:32:01 +08:00
sledgehammer999
6b2a382ab8
Merge pull request #10066 from sledgehammer999/drop_migration_code
...
Drop upgrade code
2019-01-02 21:42:31 +02:00
Chocobo1
2b903fc3d1
Move Utils::Misc::isUrl() function
...
All usage of this function gets to call Net::DownloadManager eventually.
2018-12-31 20:00:15 +08:00
Chocobo1
6759446639
Cleanup code
...
Also remove redundant code, it is already handled correctly in subsequent function calls.
2018-12-31 20:00:15 +08:00
Chocobo1
19d6de795c
Drop support for "BC Link" format
...
The format is marked obsolete on 2009.12.28 and has been replaced by magnet links.
http://wiki.bitcomet.com/inside_bitcomet#bc_link_format_obsoleted_as_of_v117
https://www.bitcomet.com/en/changelog
2018-12-31 20:00:15 +08:00
sledgehammer999
1fff760722
Drop upgrade code
2018-12-31 00:41:17 +02:00
Chocobo1
a5c53ff756
Simplify InfoHash, TrackerEntry class internals
2018-12-26 12:04:41 +08:00
Chocobo1
2a84345835
Mark constructors as explicit
2018-12-26 12:04:40 +08:00
thalieht
d9416299f4
Fix regression on resuming torrents without metadata
2018-12-23 19:23:34 +02:00
sledgehammer999
6f638058d1
Merge pull request #10013 from sledgehammer999/revert_locale
...
Use configured locale only for translating
2018-12-18 16:28:05 +02:00
Stephen Dawkins
70435ab5bf
Keep track of REPACK/PROPER downloads
...
When using the smart episode filter, if the episode contains REPACK and/or
PROPER, these should be stored to prevent it from redownloading a duplicate
episodes.
Closes #9898 .
2018-12-17 09:52:12 +00:00
sledgehammer999
63cf216550
Use configured locale only for translating
...
Don't use other aspects of it eg for date formatting. We should depend
on the system locale for all these. The user probably likes it that way,
otherwise he would have changed it.
2018-12-17 00:13:28 +02:00
Mike Tzou
deed457764
Merge pull request #9993 from Chocobo1/referer
...
Enforce referrer-policy in WebUI
2018-12-14 13:23:04 +08:00
Thomas Piccirello
7f349732ee
Send numeric status without translation
2018-12-11 01:37:33 -05:00
Mike Tzou
cf9d903ba9
Merge pull request #9541 from Piccirello/webui-file-priority
...
Set priority for multiple files in one WebAPI request
2018-12-11 13:32:53 +08:00
Thomas Piccirello
c5b8f62780
Set priority for multiple files in one WebAPI request
...
Closes #6259 .
2018-12-10 23:21:09 -05:00
Thomas Piccirello
f27dc977e9
Replace prio namespace with FilePriority enum class
2018-12-10 23:21:09 -05:00
Chocobo1
7fd30fa90f
Enforce referrer-policy in WebUI
...
This stops leaking private data to other websites via Referrer header.
2018-12-10 22:17:04 +08:00
Mike Tzou
3ff7d16cfc
Merge pull request #9982 from Chocobo1/fixes
...
Fix TravisCI linux builds
2018-12-10 12:33:51 +08:00
Vladimir Golovnev
fc08091765
Merge pull request #9940 from glassez/error-msg
...
Show error message when Session failed to start
2018-12-09 11:16:17 +03:00
Chocobo1
f13bcbd772
Add OpenSSL version to GUI & stackdump
2018-12-08 12:46:50 +08:00
Chocobo1
a137f1493e
Use correct locale to display date
2018-12-08 12:19:56 +08:00
Chocobo1
de437b905b
Fix MSVC C4267 warning
...
The warning was: "warning C4267: 'argument': conversion from 'size_t' to 'int', possible loss of
data"
2018-12-08 12:19:56 +08:00
Mike Tzou
6bb4eb825b
Merge pull request #9942 from Chocobo1/pbkdf2
...
Do password hashing properly
2018-12-06 16:22:22 +08:00
Mike Tzou
1eef5b6876
Merge pull request #9373 from FranciscoPombal/checking_mem_usage_adv_settings
...
Add checking_mem_usage option to AdvancedSettings
2018-12-06 16:20:02 +08:00
Mike Tzou
0ab5b8fcba
Merge pull request #9824 from thalieht/style
...
Convert all foreach() to range-based for()
2018-12-06 16:19:17 +08:00
FranciscoPombal
74be5d9030
Add checking_mem_usage option to AdvancedSettings
2018-12-06 03:10:24 +08:00
Vladimir Golovnev (Glassez)
89deccd9b5
Show error message when Session failed to start
2018-12-05 19:57:44 +03:00
Chocobo1
2c8890bd06
Apply PBKDF2 to GUI lock
2018-12-05 13:28:42 +08:00
Chocobo1
05d6a29416
Apply PBKDF2 when storing passwords
2018-12-05 13:28:42 +08:00
Mike Tzou
eb957bb790
Merge pull request #9953 from Chocobo1/announce
...
Use ip parameter from tracker request if provided
2018-12-05 11:13:03 +08:00
Chocobo1
ede9b1a7c4
Fix typo
2018-12-03 12:06:32 +08:00
Chocobo1
b4564f5f4e
Use ip parameter from tracker request if provided
...
Closes #9949 .
2018-12-03 00:14:15 +08:00
Chocobo1
b56937f5fa
Use QHostAddress for storing IP
2018-12-02 14:18:18 +08:00
Chocobo1
36429887dc
Fix wrong locale used in log message
2018-12-01 20:39:20 +08:00
thalieht
1f36b8b89f
Combine qAsConst() with copyAsConst() to asConst()
2018-11-28 23:41:23 +02:00
thalieht
6b1d26d555
Convert all foreach() to range-based for()
2018-11-28 23:40:12 +02:00
thalieht
d668a4fe6d
Fix coding style for various things
2018-11-28 23:37:35 +02:00
Mike Tzou
5efdd211cc
Merge pull request #9892 from Chocobo1/progress
...
Code cleanup
2018-11-29 01:16:07 +08:00
Chocobo1
0339e6ee35
Clean up code
2018-11-27 22:01:27 +08:00
Vladimir Golovnev (Glassez)
68508ba657
Save torrents queue in separate file
2018-11-27 16:55:45 +03:00
Vladimir Golovnev (Glassez)
e146c2f227
Fix signed/unsigned integers comparison warning
2018-11-27 16:55:44 +03:00
Thomas Piccirello
4885fe6b4c
Only instantiate SearchPluginManager as needed
2018-11-21 16:59:38 -05:00
Chocobo1
344e47dcfb
Add option for WebUI Host header validation
...
Closes #9743 .
2018-11-19 11:05:04 +08:00
Vladimir Golovnev (Glassez)
64d7cf4794
Improve RSS Feed updating
...
Don't process "out-of-limit" articles.
Closes #9833 .
2018-11-16 10:30:24 +03:00
Mike Tzou
2ce57b97be
Merge pull request #9799 from Chocobo1/removeCheckbox
...
Remove speed limit checkbox in Options dialog
2018-11-07 13:40:43 +08:00
Vladimir Golovnev
54e4806e3d
Merge pull request #9817 from Piccirello/torrent-dl-success
...
Handle downloading .torrent file as success
2018-11-06 15:39:51 +03:00
Vladimir Golovnev
46ec72f688
Merge pull request #9580 from glassez/start_paused
...
Improve handling of torrent startup/recheck
2018-11-06 15:34:21 +03:00
Chocobo1
3fa5358c3f
Remove speed limit checkbox in Options dialog
...
This unifies speed limit UI elements throughout the program.
2018-11-05 11:07:52 +08:00
Tom Piccirello
1b81356a67
Handle downloading .torrent file as success
...
We don't know whether the download will be successful, so default to success. Closes #9811 .
2018-11-04 14:43:33 -05:00
Chocobo1
c1c28ce195
Improve parser for search engine versions.txt
...
The parse could fail when there is an extra empty line at the end of
file, this patch fixes it.
2018-11-03 01:01:46 +08:00
Chocobo1
ee030cc4eb
Fix wrong type passed to arg()
2018-11-03 00:34:25 +08:00
Vladimir Golovnev (Glassez)
1214cf0fa1
Don't update torrent status unnecessarily
2018-11-02 19:25:39 +03:00
Vladimir Golovnev (Glassez)
9dadb919ef
Improve force recheck of paused torrent
2018-11-02 19:25:38 +03:00
Vladimir Golovnev (Glassez)
a8c00456e4
Restore torrent in two steps
...
Add/restore all torrents in "paused" state and then resume those
that need to be really "resumed" (added/restored in "resumed" state).
Keep torrents with missing files paused.
Force recheck torrent with missing files when it's resumed by the user.
2018-11-02 19:25:26 +03:00
Vladimir Golovnev
dea6b3d7e0
Merge pull request #9562 from dzmat/round_speed_labels
...
Improve scaling of speed graphs
2018-11-01 09:46:26 +03:00
Vladimir Golovnev (Glassez)
5712c05e68
Consider empty locale setting as not set
2018-10-27 20:59:08 +03:00
Mike Tzou
2fd4d50f3a
Merge pull request #9754 from silverqx/previewable-ts-ext
...
Recognize TS files as previewable
2018-10-25 12:56:02 +08:00
silver
0b20750cd5
Recognize *.ts files as previewable
2018-10-24 16:18:35 +02:00
Vladimir Golovnev
7e36cc746f
Merge pull request #8584 from Piccirello/new-search-api-2
...
WebUI search API. Closes #2495
2018-10-24 13:13:16 +03:00
dzmat
fabd7e34f5
Improve scaling of speed graphs
...
Make Y axis scale to fix on predetermined nice looking positions
2018-10-21 16:45:32 +07:00
Mike Tzou
18a64f109d
Merge pull request #9683 from Chocobo1/win_fs
...
Add isNetworkFileSystem() detection on Windows
2018-10-14 01:29:22 +08:00
Vladimir Golovnev
ff72be9c2d
Merge pull request #9481 from mj-p/master
...
Don't recheck just checked torrent. Closes #8743 , #9370
2018-10-13 09:34:27 +03:00
Vladimir Golovnev
72e148e0f1
Merge pull request #9590 from dzmat/disable_graphs_collection
...
Implement option for disabling speed graphs
2018-10-12 08:24:33 +03:00
Chocobo1
acdf5363b2
Simplify #if conditions
2018-10-12 00:04:08 +08:00
Chocobo1
cff5af2e76
Add isNetworkFileSystem() detection on Windows
...
This allows network mounts to be monitored correctly by polling timer.
2018-10-12 00:03:12 +08:00
Mike Tzou
fb8fad3fa1
Merge pull request #9673 from Chocobo1/fs_watch
...
Add SMB2 magic number
2018-10-11 23:11:06 +08:00
Chocobo1
9b552c463f
Add FileSystemWatcher log messages
2018-10-11 11:01:22 +08:00
Chocobo1
25a0147f61
Add SMB2 magic number
...
Closes #9671 .
2018-10-10 10:36:26 +08:00
Stephen Dawkins
d8054f9cb3
Allow to disable downloading REPACK/PROPER matches
2018-10-09 08:14:12 +03:00
dzmat
2d0f0cb372
Allow to disable speed graphs
2018-10-08 23:51:02 +07:00
sledgehammer999
2f1a0ffe5c
Use a more detailed alert mask where possible
...
Closes #9547
2018-10-02 02:42:06 +03:00
Thomas Piccirello
0b6ae68801
Add WebUI search API controller
...
Closes #2495 .
2018-09-30 20:07:27 -04:00
Administrator account
f6ed605414
Don't recheck just checked torrent
...
Closes #8743 .
Closes #9370 .
2018-09-29 17:13:44 +03:00
Chocobo1
b8d87f641f
Avoid variable shadowing
2018-09-26 23:53:17 +08:00
Chocobo1
66ffb01629
Add include guard to headers
2018-09-26 23:49:33 +08:00
Chocobo1
f26a5c3581
Update Python URLs
2018-09-25 11:46:40 +08:00
Chocobo1
7d808cfc99
Fix asking to install Python
...
The dialog asking users to install python is borked since the last refactor, this
commit fixes it.
2018-09-25 11:46:39 +08:00
Chocobo1
60ecc4fe8f
Move python related functions
...
Also the functions are slightly changed to return full path of the found
python executable.
2018-09-25 11:46:39 +08:00
sledgehammer999
6c0af1b078
Merge pull request #9553 from sledgehammer999/misc_fixes
...
Misc fixes
2018-09-22 20:09:54 +03:00
sledgehammer999
06c8142826
Make strings actually translatable
2018-09-22 14:05:41 +03:00
sledgehammer999
e8213b2c6a
Remove unused variable
2018-09-22 14:05:40 +03:00
dzmat
fc93f2eb78
Replace magic number with system define
2018-09-21 22:33:43 +07:00
Vladimir Golovnev
fe9fb03e38
Merge pull request #9482 from proninyaroslav/patch-1
...
Fix typo in variable name
2018-09-13 19:45:14 +03:00
Vladimir Golovnev
28a6ac3197
Merge pull request #9228 from Piccirello/addCategory
...
Add save path and category editing to WebUI
2018-09-13 19:43:28 +03:00
sledgehammer999
c520e657ce
Save state change from queued to paused
2018-09-11 21:00:04 +03:00
Yaroslav Pronin
4e28033c9c
Fix typo in variable name
2018-09-11 17:56:55 +00:00
Vladimir Golovnev
d18de18128
Merge pull request #9461 from thalieht/tracker
...
Show "N/A" if there is no scrape response
2018-09-10 07:14:28 +03:00
thalieht
94613c2fa2
Fix some warnings
2018-09-07 19:40:08 +03:00
sledgehammer999
9ce619eac8
Decrease probability of missing important alerts
...
During startup we can get above 1000 alerts at each pop even with only
30 torrents in the queue. This is because libtorrent will post
piece_finished_alert and file_completed_alert for each torrent. These
alerts push out of the way the ones we care about.
The alert queue will be grown to max only if needed. So we don't use
more memory. It will greatly depend on how many torrents a user has in
their session.
When getting fastresume_rejected_alert we need to act as fast as
possible in pausing it, otherwise there's a chance it will begin
downloading and writing to disk before we pause it.
2018-09-06 02:06:44 +03:00
Thomas Piccirello
63c53766b4
Add save path and editing to WebUI new category dialog
2018-08-31 11:27:05 -04:00
Mike Tzou
846d8993a9
Merge pull request #9410 from Chocobo1/clazy
...
Minor fixes
2018-08-30 12:07:34 +08:00
Elias M. Mariani
33af699191
Support the OpenBSD filesystem
2018-08-28 13:58:09 -03:00
Chocobo1
254782def6
Avoid copy-construct QString in for loop
2018-08-28 14:13:59 +08:00
thalieht
ec9120adf0
Save torrents priorities on torrent finished
...
Save fastresumes for all torrents that shifted in the queue when a torrent finished.
2018-08-25 22:02:14 +03:00
thalieht
95b02bbb2e
Save fastresumes when changing torrent priorities
2018-08-25 22:02:14 +03:00
Vladimir Golovnev (Glassez)
386d0565fe
Always save actual queue position
2018-08-25 22:02:14 +03:00
Vladimir Golovnev
93f9b3de8b
Merge pull request #9314 from thalieht/searchregexfilter
...
Add option to use regexps in the search job's search filter's context menu
2018-08-22 17:15:37 +03:00
Thomas Piccirello
d89ef22d85
Require torrent category creation to be explicit
2018-08-18 22:04:21 -04:00
Chocobo1
262c3a75bd
Fix WebUI unreachable issue
...
QVariant doesn't have constructor for plain char, by default it converts
a plain char into an integer, hence the WebUI issue.
Closes #9333 .
2018-08-19 03:33:08 +08:00
thalieht
400eafce2b
Rename 2 methods to eliminate ambiguity
2018-08-14 13:40:00 +03:00
thalieht
4dcb0b922e
Add regex option in the search filter's context menu
...
In the search job widget.
2018-08-14 13:38:34 +03:00
Chocobo1
71dcc76a64
Replace png icons with svg
2018-08-14 17:03:14 +08:00
Chocobo1
6f2b1823ad
Fix lupdate errors
...
I suspect lupdate isn't smart enough to figure out what tr() is suppose
to do, so just make it a static function in class.
The error was: tr() cannot be called without context
2018-08-13 01:24:34 +08:00
sledgehammer999
366239ca7b
Merge pull request #9244 from Couchy/inhibit_sleep_options
...
Inhibit sleep for running downloads or uploads regardless of network activity
2018-08-12 16:31:01 +03:00
sledgehammer999
a3172590d0
Merge pull request #9255 from thalieht/filterRegex
...
Add option to use regexps in the transfer list's search filter's context menu
2018-08-12 16:22:00 +03:00
Mike Tzou
f44ff63361
Merge pull request #9278 from Couchy/torrent_file_error_handling
...
Improve error handling when loading torrent files
2018-08-12 00:21:56 +08:00
sledgehammer999
9dd1049f24
Merge pull request #9274 from sledgehammer999/tray_close_notification
...
Notify users on 1st time close/minimize to tray
2018-08-11 00:13:41 +03:00
Couchy
3808b5df16
Avoid allocating large memory when loading a .torrent file
...
`QIODevice::read(qint64 maxSize)` will allocate full `maxSize` of memory no matter
what the real file size was, this caused users to experience out-of-memory
exception on 32-bit qbt.
Also handle the OOM execption if it still fails.
Closes #9064 , #9075 , #9130 , #9239 , #9246 , #9279 .
2018-08-11 00:48:35 +08:00
Mike Tzou
5f61ffa184
Merge pull request #9303 from Chocobo1/fix
...
Fix I/O error after fetching magnet metadata
2018-08-11 00:14:06 +08:00
thalieht
2485525896
Add option for regexps in the transferlist search filter's context menu
2018-08-10 12:44:10 +03:00
Chocobo1
63991cb58e
Fix I/O error after fetching magnet metadata
...
It is caused by an extra path seperator, so removing it fixes it.
Fixup 9612a75faa
.
2018-08-10 12:48:04 +08:00
sledgehammer999
fd30bf7423
Notify users on 1st time close/minimize to tray
2018-08-09 16:48:34 +03:00
sledgehammer999
2befd2927a
Revert "Set "close to tray" to false as default"
...
This reverts commit dc9ec0e408
.
2018-08-09 16:37:23 +03:00
Vladimir Golovnev
260b03de92
Merge pull request #9265 from glassez/dont-save-paused
...
Never save resume data for already paused torrents
2018-08-08 08:45:15 +03:00
Mike Tzou
89081d5365
Merge pull request #9268 from Chocobo1/clean
...
Put temporary files in qbt own temp folder and cleanups
2018-08-04 01:18:56 +08:00
Lukas Greib
48cd993c92
Inhibit sleep regardless of activity
...
"Active torrents" is a somewhat unintuitive concept as a basis for
preventing sleep, as torrents can become active or inactive on the
network at any time. This brings some predictability to the inhibit
sleep option, and will inhibit sleep as long as there are unpaused
downloads or uploads, regardless of network activity.
Closes #1696 , #4592 , #4655 , #7019 , #7159 , #7452
2018-08-03 09:58:15 -04:00
Vladimir Golovnev
d106d908ef
Merge pull request #9273 from thalieht/closetotray
...
Set "close to tray" to false as default
2018-08-03 11:16:50 +03:00
thalieht
dc9ec0e408
Set "close to tray" to false as default
2018-08-02 17:11:41 +03:00
Chocobo1
9612a75faa
Put temporary files in qbt own temp folder
2018-08-02 17:44:06 +08:00
Vladimir Golovnev (Glassez)
2a6e38aa28
Never save resume data for already paused torrents
2018-08-01 21:29:32 +03:00
Vladimir Golovnev (Glassez)
7716a27d0d
Reorder resume data saving conditionals
...
Having conditionals which can break saving of torrent resume data
in order from more likely to less likely is more effective.
2018-08-01 21:29:01 +03:00
Chocobo1
9df67b52b8
Add const to function signature
2018-08-01 01:40:50 +08:00
Chocobo1
73b5efbb23
Avoid potentially setting the wrong piece priorities
...
Updating file priorities is an async operation in libtorrent, when we
just updated it and immediately query it, we might get the
old/wrong values, so we rely on `updatedFilePrio` in this case.
2018-07-30 13:22:05 +08:00
Chocobo1
a68cdc5225
Refactor code
...
Make the code slightly easier to read.
2018-07-30 02:43:23 +08:00
Chocobo1
9bd8587c68
Add const to function parameters
2018-07-30 02:23:51 +08:00
Chocobo1
650f585bf3
Remove static keyword overuse
2018-07-23 13:40:25 +08:00
Chocobo1
517fc39950
Remove unnecessary dynamic allocation
...
Also remove unneeded `if ()` conditional.
2018-07-23 13:40:25 +08:00
Chocobo1
56766dc08b
Avoid binding constant reference to returned object
...
In such cases, it makes no sense doing so.
2018-07-23 13:40:25 +08:00
Chocobo1
0217d5b4c0
Replace single-character string with character literal
...
Also remove unnecessary dynamic allocation.
2018-07-21 23:26:15 +08:00
Mike Tzou
aed971883d
Merge pull request #9192 from Chocobo1/msg
...
Revise dialog messages
2018-07-18 00:08:00 +08:00
Chocobo1
42eac2ee3c
Simplify code
...
This avoids "deferencing null pointer" warning from static analyzers.
2018-07-15 13:30:11 +08:00
Chocobo1
ec7dfee887
Fix typo
2018-07-15 10:19:24 +08:00
Vladimir Golovnev
11cd828e8a
Merge pull request #9186 from glassez/fix-dm
...
Apply proxy settings on DownloadManager creation
2018-07-14 12:01:28 +03:00
Vladimir Golovnev (Glassez)
f7c252886f
Apply proxy settings on DownloadManager creation
2018-07-13 13:18:57 +03:00
Vladimir Golovnev (Glassez)
cd44ab2fc6
Improve torrent initialization
...
Don't post "torrent resumed" event when torrent starts in "resumed"
state.
Fix confusing names. Now "resumed torrent" means "unpaused torrent"
only. When we load previously added torrent it is called "restored
torrent".
2018-07-12 21:03:36 +03:00
Vladimir Golovnev (Glassez)
7ebd63a60f
Save resume data on torrent change events
...
Closes #9174 .
2018-07-10 17:45:09 +03:00
sledgehammer999
de8050701d
Revert email address changes in copyright notices
2018-07-10 00:37:44 +03:00
tjjh89017
670a8e27af
Add async io threads option to AdvancedSettings
2018-07-08 22:58:35 +08:00
Chocobo1
d61435e4bf
Allow save resume interval to be disabled
...
Also raise the allowable upper limit
2018-07-05 13:22:20 +08:00
Chocobo1
6a16fc1ca2
Prolong resume data save interval
2018-07-05 13:22:13 +08:00
thalieht
456270bbb1
Delete several unused #include
2018-07-03 08:38:32 +03:00
thalieht
eb508d67ef
Fix coding style
2018-07-03 08:38:32 +03:00
Mike Tzou
ca68b86550
Merge pull request #9141 from Chocobo1/delay
...
Omit removing python cache artifacts on qbt start
2018-07-03 13:07:31 +08:00
Vladimir Golovnev
b0afa33e22
Merge pull request #9125 from glassez/downloader
...
Implement "Sequential downloading" feature. Closes #6835
2018-07-02 15:24:58 +03:00
Chocobo1
2528c6e39a
Fix python version detection
...
Closes #9146 .
2018-07-02 00:57:08 +08:00
Chocobo1
8c32302377
Clear python cache conditionally
...
Clear the cache artifacts on plugin install and plugin uninstall events.
2018-07-01 20:57:39 +08:00
Vladimir Golovnev (Glassez)
d78414307e
Make TorrentInfo loading behavior uniform
2018-06-29 15:48:36 +03:00
Vladimir Golovnev (Glassez)
112a9bcfa2
Use new DownloadManager interface
2018-06-29 15:48:17 +03:00
Vladimir Golovnev (Glassez)
8d438e159c
Implement "Sequential downloading" feature
...
Closes #6835 .
2018-06-29 15:48:02 +03:00
Vladimir Golovnev (Glassez)
a9a6b74416
Implement DownloadRequest helper
2018-06-29 12:18:56 +03:00
Chocobo1
77b71e392e
Refactor function
...
In SearchPluginManager::updateNova(), omit removing __pycache__ folder and pyc
files, those files will be recreated anyway.
Add const to variables
2018-06-28 17:21:13 +08:00
Chocobo1
f951bf678d
Rename function
2018-06-28 16:13:52 +08:00
Chocobo1
5c50c5b24d
Cache SearchPluginManager::engineLocation() result
...
Also the folder is only created on first usage.
2018-06-28 16:06:16 +08:00
Chocobo1
361afb401b
Replace less-efficient QProcess::setEnvironment
...
Also small refactor
2018-06-28 15:56:39 +08:00
Chocobo1
ad5c88be3d
Simplify function
2018-06-28 15:50:50 +08:00
Chocobo1
3e6c8a05dd
Reduce queries to python version
...
Instead of doing at least 2 queries for python infos, now requires only
1 query (in ideal condition), and the result is cached.
2018-06-24 19:41:44 +08:00
Chocobo1
51e82762c5
Move related functions to Utils::Python
2018-06-24 06:21:15 +08:00
Mike Tzou
8f6e066332
Merge pull request #9092 from hannsen/patch-1
...
PEP 8 compliant version comments in search plugins
2018-06-18 00:56:28 +08:00
thalieht
d34ddb2e3c
Change file names and classes names to match them
2018-06-15 20:12:59 +03:00
hannsen
a162550d7f
Properly normalize version string before parsing it
...
This allows python scripts to be formatted in PEP 8 style.
2018-06-14 13:00:31 +08:00
thalieht
4022799881
Fix coding style
2018-06-12 07:17:05 +03:00
Mike Tzou
da87c2d9ae
Merge pull request #9060 from Chocobo1/preinc
...
Replace post-increment with pre-increment
2018-06-09 12:40:30 +08:00
Chocobo1
5ddbf9bba9
Replace post-increment with pre-increment
...
And post-decrement with pre-decrement.
2018-06-08 08:44:06 +08:00
Eugene Shalygin
04aea413ba
Merge pull request #9055 from zeule/cmake
...
Update CMake build scripts
2018-06-07 21:31:09 +02:00
Eugene Shalygin
fa770871e9
Refactor CMake build scripts
...
1. Use FeatureSummary module to show configuration results.
2. Invert option()/find_package() relationship: instead of
calling find_package(... REQUIRED) when option is set, rely on optional
find package call and PackageName_FOUND variable.
3. Refactor handling options that result in simple preprocessor defines
(actually copy the snippet from libtorrent) so that everything is done
in a single function call.
4. Populate target properties in order to get rid of
include_directories() calls.
2018-06-05 11:39:11 +02:00
Chocobo1
050b78f378
Send Cache-Control header in WebUI responses
...
Tune the caching time to be shorter, in case there is a program
update.
Change the cacheability to private, as WebUI resources are not intended
to be cached at proxy.
For uncacheable responses, send out "no-store" explicitly to halt
browser caching.
2018-06-04 20:50:08 +08:00
Chocobo1
09f759355f
Replace QRegExp with QRegularExpression
...
Revise `static` keyword usage, static is added to frequently used
instances.
2018-05-31 22:56:49 +08:00
Chocobo1
c22e6b4502
Cleanup header include order
...
Add missing header.
Cleanup license.
2018-05-31 22:56:25 +08:00
Vladimir Golovnev
15153a4446
Merge pull request #8976 from glassez/feed-uid
...
Don't use RSS feed URLs as base for file names. Closes #8399
2018-05-29 14:30:23 +03:00
Mike Tzou
1d25d95740
Merge pull request #8953 from Chocobo1/constexpr
...
Add constexpr to various classes
2018-05-29 00:21:52 +08:00
Mike Tzou
4a51f14328
Merge pull request #8967 from Chocobo1/protect
...
Add options to control WebUI security measures
2018-05-28 14:21:53 +08:00
Vladimir Golovnev (Glassez)
200f4d0f07
Don't use RSS feed URLs as base for file names
...
RSS feed URLs can be too long and exceed max path limit.
Add RSS feed UIDs and use UIDs as base for file names instead of URLs.
Closes #8399 .
2018-05-26 10:37:32 +03:00
sledgehammer999
80e93e23f9
Fix compilation without D-Bus support
...
Closes #8977
2018-05-24 17:40:23 +03:00
sledgehammer999
7c6a5afbff
Merge pull request #8962 from sledgehammer999/suppress_errors
...
Suppress multiple I/O errors for the same torrent
2018-05-24 16:35:03 +03:00
Vladimir Golovnev
935bb5bd1c
Merge pull request #8966 from glassez/rss-date
...
Use RSS feed update time as a fallback. Closes #8959
2018-05-23 17:20:46 +03:00
Chocobo1
e099f6ad33
Add constexpr to IndexInterval class
...
Add const to IndexRange private members.
Remove redundant inline specifier.
Add missing parentheses.
2018-05-23 14:30:56 +08:00
Chocobo1
9631a9c2ad
Add constexpr to TriStateBool class
2018-05-23 14:30:56 +08:00
Chocobo1
b38925413d
Improve Utils::Version class
...
Add operator>=() and operator<=().
More methods are suitable to be constexpr.
Remove redundant boundary checking.
2018-05-23 13:47:41 +08:00
Mike Tzou
cd21071c69
Merge pull request #8954 from Chocobo1/firstlast
...
Relax behavior of "Download first and last piece first"
2018-05-23 13:26:02 +08:00
Mike Tzou
84df2794dc
Merge pull request #8944 from Chocobo1/literal
...
Make use of QStringLiteral
2018-05-23 13:23:41 +08:00
sledgehammer999
b9546ccd4c
Suppress multiple I/O errors for the same torrent
...
When a file error happens libtorrent spews a ton of `file_error_alert`
which result in log floods and notification balloon floods. The later
might render the program inaccessible because the constant
notifications prevent the user from interacting with the tray icon.
Closes #8934
2018-05-22 21:29:50 +03:00
Chocobo1
9eeef0be97
Add option to control CSRF protection
...
Some users are using WebUI with simple port-forwarding from their router,
providing an option to control the protection will save them from setting up an
non-trival web proxy.
Closes #7274 .
2018-05-22 12:57:03 +08:00
Vladimir Golovnev (Glassez)
4f8ed09183
Add missing 'return' statement
2018-05-21 21:24:02 +03:00
Chocobo1
bad4d94f77
Add option to control WebUI clickjacking protection
...
Some users actually want embedding WebUI into their custom build iframe.
Closes #7370 .
2018-05-22 01:07:25 +08:00
Vladimir Golovnev (Glassez)
9b80c4f7eb
Use RSS feed update time as a fallback
...
Some sites omit publication date in its RSS feed articles
that prevents "Ignore Subsequent Matches" to work properly.
Closes #8959 .
2018-05-21 15:47:14 +03:00
Vladimir Golovnev
1b14706b08
Merge pull request #8955 from glassez/initial-rename
...
Rename torrent if content was initially renamed. Closes #8910
2018-05-21 08:04:43 +03:00
Vladimir Golovnev
0aee1cf7d0
Merge pull request #8945 from glassez/rss-rule
...
Improve code of RSS auto-downloading rule. Closes #8933
2018-05-21 08:04:12 +03:00
Vladimir Golovnev (Glassez)
a54f57611c
Rename torrent if content was initially renamed
...
Closes #8910 .
2018-05-19 20:21:21 +03:00
Chocobo1
95b19ec303
Relax behavior of "Download first and last piece first"
...
Now it applies the setting to all files in torrent, no matter whether
the file is previewable or not.
Torrent client shouldn't be smart by deciding which file this
option will be applied to, i.e. it should just follow the user's decision.
2018-05-19 21:48:13 +08:00
Chocobo1
da75a010c7
Refactor code
...
Add const to variables.
Add Logger message.
Simplify code logic.
2018-05-19 21:48:13 +08:00
Vladimir Golovnev
c29e5c76dc
Merge pull request #8936 from surfernsk/master
...
Fix open destination folder with Nautilus > 3.28. Closes #8923
2018-05-19 15:06:03 +03:00
Vladimir Golovnev (Glassez)
844f76c2ca
Make "Ignoring days" to behave like other filters
...
This prevents confusing in GUI when it shows matched RSS
articles which be really ignored by the rule.
2018-05-19 14:52:24 +03:00
Evgeny Lensky
c7601d7a43
Fix open destination folder with Nautilus > 3.28
...
Closes #8923 .
2018-05-19 18:45:26 +07:00
Vladimir Golovnev (Glassez)
256f6954c5
Improve code of RSS auto-downloading rule
...
Closes #8933 .
2018-05-18 13:26:04 +03:00
Chocobo1
ceaf755ac6
Make use of QStringLiteral
...
Only changed instances that are initialized at program start.
2018-05-18 02:14:49 +08:00
Chocobo1
fcbcf4039b
Use smaller type
2018-05-17 10:57:12 +08:00
Vladimir Golovnev (Glassez)
90f09e7570
Properly fill UploadedFile::filename field
...
Closes #8928 .
2018-05-16 20:13:55 +03:00
Chocobo1
0a49f76c0a
Detect endianness at compile time
2018-05-15 21:02:00 +08:00
sledgehammer999
8a99e29122
Merge pull request #8716 from sledgehammer999/move_progress
...
Move and recheck progress
2018-05-13 13:02:03 +03:00
sledgehammer999
375b15727d
Show rechecking progress
...
When having big torrents, the rechecking might take a while to
complete. Users need some sort of feedback that progress is being made.
Also, I changed the float to qreal since that's the return type.
2018-05-13 12:32:17 +03:00
Mike Tzou
2230d96705
Merge pull request #8808 from Chocobo1/save
...
Improve SettingsStorage behavior
2018-05-13 14:24:14 +08:00
sledgehammer999
e5c73cee4a
Log successful torrent move
2018-05-12 20:49:33 +03:00
sledgehammer999
565ffa7d1e
Add 'Moving' state for torrents being relocated/moved
...
This is another indication to the user that something is happening
behind the scenes.
Uses the same icon/color as "Checking" status.
Torrents in the `Moving` state are considered as "Active". This should
prevent accidental program exit from the user and inhibit system sleep.
2018-05-12 20:49:33 +03:00
Vladimir Golovnev (Glassez)
32e2791f56
Fix compilation with MinGW
2018-05-12 06:24:05 +03:00
thalieht
4cfa163bbd
Use qt5 syntax for a few remaining SLOT()
2018-05-11 08:19:41 +03:00
thalieht
20ca90800d
Fix coding style
2018-05-09 17:06:22 +03:00
thalieht
6b4455e13d
Use qt5 connect() syntax
2018-05-09 16:08:22 +03:00
Mike Tzou
7af83ab704
Merge pull request #8807 from Chocobo1/tracker_msg
...
Fix displayed tracker message
2018-05-09 14:38:17 +08:00
Mike Tzou
99a1343b9d
Merge pull request #8862 from Chocobo1/cleanup
...
Code cleanups
2018-05-09 14:33:49 +08:00
Vladimir Golovnev
3a0e5e51df
Merge pull request #8761 from thalieht/nullptr
...
Replace the zeroing of pointers with nullptr
2018-05-08 17:10:37 +03:00
Chocobo1
defba23d61
Refactor code
...
Remove forward declarations of Qt types.
Fix header include order.
2018-05-08 12:18:18 +08:00
Chocobo1
6d923f703a
Fix displayed tracker messages
...
Before this change, we were displaying debug messages constructed by
libtorrent, now we show messages returned by trackers.
Closes #8739 .
2018-05-07 21:49:31 +08:00
Chocobo1
90f42e6737
Refactor functions
...
Add const to variables
Remove debug messages
2018-05-07 21:49:31 +08:00
Chocobo1
58861c35b0
Fix compile warnings on gcc 8
...
The warning was:
warning: catching polymorphic type ‘class std::exception’ by value
[-Wcatch-value=]
2018-05-07 21:39:54 +08:00
Chocobo1
203bafc4c3
Revert commit
...
Apparently the translations were working in previous state, but affected by
lupdate issue:
https://github.com/qbittorrent/qBittorrent/issues/8220#issuecomment-385712673
The reverts commit fb698896c9
.
Closes #8831 .
2018-05-05 21:46:36 +08:00
Chocobo1
d20f40184f
Fix translation strings not found
...
The translation context doesn't exist, so the translations were not found, fixed
now.
Closes #8829 .
2018-05-05 21:08:47 +08:00
Mike Tzou
d8c14ffe97
Merge pull request #8814 from Chocobo1/tr_fix
...
Fix tr() related issues
2018-05-05 13:48:09 +08:00
Chocobo1
9fabe59b80
Fix usage of Q_DECLARE_TR_FUNCTIONS()
...
The context parameter shouldn't be enclosed in double quotes.
2018-05-01 22:42:55 +08:00
sledgehammer999
6e94b03c13
Fix compilation against libtorrent 1.0.x
...
Closes #8798
2018-05-01 10:39:53 +03:00
Chocobo1
f6d74e3996
Retry saving settings when operation failed
2018-04-30 13:01:10 +08:00
Chocobo1
099314d17f
Make settings file recovery more robust
...
We should not blindly remove the leftover settings file, as the following write()
operation could fail and the user would lost all settings.
We should try renaming it instead.
2018-04-30 13:01:10 +08:00
Chocobo1
708b5a6904
Refactor SettingsStorage class
...
Make use of (i.e. returning) QFile::rename operation status
Make log message more verbose
Add const
Remove empty lines
Inline typedef
2018-04-30 13:01:10 +08:00
sledgehammer999
b78899cb9a
Merge pull request #8724 from Chocobo1/rand
...
Use RNG provided by OS
2018-04-22 22:33:16 +03:00
Mike Tzou
0dec7b9f4f
Merge pull request #8742 from tostercx/master
...
Add "Preserve file order" option to torrent creator. Closes #5652
2018-04-22 23:33:25 +08:00
Chocobo1
81a4f3ced0
Use RNG provided by OS
...
The general consensus is to use random facility provided by OS instead
of using other software random generators.
2018-04-20 23:34:46 +08:00
Chocobo1
970ad7cf28
Sort filenames when creating torrent
...
First all dir paths are retrieved, then filenames in each path
are retrieved and sorted, then concatenate the sorted filenames together.
2018-04-20 14:35:48 +03:00
toster
c4625f50a8
Pass isAlignmentOptimized flag to piece size calculation
2018-04-20 14:31:20 +03:00
Chocobo1
68c2d81072
Fix memory leak
2018-04-17 20:34:01 +08:00
Chocobo1
4dea03fc74
Remove unused constants
2018-04-17 20:29:43 +08:00
thalieht
3e4099fe5b
Replace the zeroing of pointers with nullptr
2018-04-15 13:06:31 +03:00
toster
e538eae726
Make alignment optimization optional
...
Disabling alignment optimization allows preserving file order in torrent
files and closes #5652
2018-04-14 06:46:41 +03:00
sledgehammer999
ddba79ef3d
Fix wrong QString::arg() usage that leads to crash
...
We need to be careful when using the multi-arg version of
QString::arg() and passing as 2nd, 3rd etc parameter an int.
It doesn't do the same as passing multiple QStrings.
2018-04-11 17:01:43 +03:00
Mike Tzou
38837db8de
Merge pull request #8699 from Chocobo1/linking
...
Add helper for loading Windows system functions
2018-04-11 00:13:55 +08:00
sledgehammer999
341a971cd3
Merge pull request #8711 from sledgehammer999/recheck_paused
...
Avoid data corruption when rechecking paused torrents
2018-04-10 16:18:12 +03:00
sledgehammer999
747c70a58e
Avoid data corruption when rechecking paused torrents
...
Libtorrent can recheck only unpaused torrents. We get around this by
unpausing the torrent, issuing the recheck and pausing again after we
get alerted by libtorrent that the recheck has finished. This alert is
asyncronous. There is a small time frame where the program might start
downloading and writing data to the file before we pause it. This can
lead to data corruption if the file on disk is totally different that
the one expected by the torrent AND the file on disk is a valid file on
its own. OR in case the user points the new torrent to the wrong
directory by mistake.
To get around this the torrent is placed in upload_mode and out of
automanagement.
2018-04-09 23:25:52 +03:00
Chocobo1
5819b6dd39
Use Unicode version of InitiateSystemShutdown
2018-04-09 21:18:07 +08:00
Chocobo1
644e7d0450
Use dynamic linking for SetSuspendState function
2018-04-09 21:18:07 +08:00
Chocobo1
b0e3d77975
Add helper for loading Windows system functions
2018-04-09 21:18:04 +08:00
Chocobo1
643a209812
Sort include headers
...
Also add anonymous namespace.
2018-04-09 21:16:00 +08:00
Chocobo1
6bbcf9b3d6
Stop creating Download folder on start
...
The existence of this folder isn't required to run qbt and it can be
created when adding torrent.
Closes #8290 .
2018-04-05 14:12:47 +08:00
Chocobo1
37ea01bd44
Use lightweight printf instead of iostream
...
Using iostream usually adds a lot of other operators (<<, endl), whereas
*printf takes only 1 function call.
Also use qUtf8Printable whenever possible.
2018-03-31 03:21:53 +08:00
Chocobo1
65921eaf7b
Remove QPointer wrapper
2018-03-25 15:53:31 +08:00
Chocobo1
bfbd978d3f
Move helper function to Utils::Fs
2018-03-25 13:26:03 +08:00
Chocobo1
1876dbd523
Fix typo
2018-03-25 13:26:02 +08:00
Chocobo1
ea7eb7c0ec
Add delay before processing FS changes
...
This prevents file renaming errors in monitored folder on linux, for
example: ABC.torrent.part -> ABC.torrent
2018-03-25 13:26:02 +08:00
Chocobo1
19c733ce95
Use specific name for rejected files
2018-03-25 13:26:02 +08:00
Chocobo1
2ba5dd1344
Reduce debug messages
2018-03-25 13:26:02 +08:00
Chocobo1
61eddfce90
Refactor functions in FileSystemWatcher
...
Use c++11 range-loop
Add const
Better ifdef placement
Inline functions
2018-03-25 13:26:02 +08:00
Chocobo1
0840556f77
Do cleanups in FileSystemWatcher
...
Use Qt5 connect syntax
Sort headers
Add license
Add anonymous namespace
Replace macro defines with const variables
2018-03-25 13:25:28 +08:00
Vladimir Golovnev
a5294e1e08
Merge pull request #8558 from luis-pereira/containter-anti-pattern
...
Don't create temporary containers just to iterate over them
2018-03-19 13:06:01 +03:00
Vladimir Golovnev
a8dbff06a3
Merge pull request #8607 from glassez/rss
...
Process loaded RSS articles in case of parsing error
2018-03-19 09:35:30 +03:00
Vladimir Golovnev (Glassez)
d9cd5d4680
Resolve (X)HTML entities in RSS content
...
Many sites include various HTML entities in the content of RSS feeds.
The most of these entities are not declared in the underlying XML,
so the documents are considered by parser to be malformed.
This patch allows you to successfully parse such soft-malformed
RSS feeds.
Closes #8527 .
Closes #8569 .
2018-03-18 18:59:55 +03:00
Luís Pereira
ac42ccb5e4
Don't create temporary containers just to iterate over them
...
Stops temporary containers being created needlessly due to API misuse.
For example, it’s common for developers to assume QHash::values() and
QHash::keys() are free and abuse them, failing to realize their
implementation internally actually iterates the whole container, allocates
memory, and fills a new QList.
Added a removeIf generic algorithm, similar to std ones. We can't use std
algorithms with Qt dictionaries because Qt iterators have different
behavior from the std ones.
Found using clazy.
2018-03-18 16:22:12 +03:00
Vladimir Golovnev (Glassez)
8d285c66aa
Process loaded RSS articles in case of error
...
For some reason, the RSS feed may contain malformed XML data and it may not be
successfully parsed by the XML parser. We are still trying to load as many articles
as possible until we encounter corrupted data. So we can have some articles even in
case of parsing error.
Closes #8527 .
Closes #8569 .
2018-03-16 18:29:38 +03:00
Chocobo1
423511765a
Fix typo
2018-03-14 23:37:08 +08:00
Mike Tzou
e78b5202bc
Merge pull request #8585 from Chocobo1/lint
...
Fix compiler/clazy warnings
2018-03-13 22:36:10 +08:00
Vladimir Golovnev
931af6c97e
Merge pull request #8313 from Piccirello/search-categories
...
Calculate search categories based on selected plugin
2018-03-12 14:29:51 +03:00
Vladimir Golovnev
cea2948593
Merge pull request #8556 from Piccirello/compiler-warnings
...
Fix missing initializer warning during build
2018-03-12 14:28:38 +03:00
Thomas Piccirello
7278625f53
Calculate supported categories based on selected plugin
2018-03-12 01:33:45 -04:00
Thomas Piccirello
7b3e692f68
Fix missing initializer warning
...
This issue occurs when using gcc versions < 5.
2018-03-12 01:21:21 -04:00
Chocobo1
fdb0d97b28
Remove unused function
2018-03-11 23:27:04 +08:00
Chocobo1
141a2d2856
Prevent detach from containers
2018-03-11 22:25:07 +08:00
Mike Tzou
7233274110
Merge pull request #8562 from Chocobo1/lint
...
Fix warnings from clazy
2018-03-11 12:41:58 +08:00
Vladimir Golovnev
4f206f987a
Merge pull request #8561 from glassez/tracker
...
Properly reply to announce request
2018-03-10 17:08:29 +03:00
Vladimir Golovnev (Glassez)
dfddda57b9
Properly reply to announce request
2018-03-09 17:41:06 +03:00
Chocobo1
b4f23d8154
Use faster code path
...
From Qt doc: Using this function is faster than using QFileInfo(file).exists() for
file system access.
2018-03-09 01:34:35 +08:00
Chocobo1
ed310c2dac
Avoid temporary QString allocations
...
Fix up 0457fd260e
2018-03-09 01:34:35 +08:00
Chocobo1
50167d40d7
Allow ADL lookup for helper function
2018-03-09 01:34:19 +08:00
Mike Tzou
5261d4375f
Merge pull request #8551 from Chocobo1/override
...
Fix warnings from linters
2018-03-09 00:36:52 +08:00
Chocobo1
0457fd260e
Avoid temporary QString allocations
...
This fixes clazy warning: Use multi-arg instead [-Wclazy-qstring-arg]
2018-03-07 20:06:00 +08:00
Vladimir Golovnev (Glassez)
1aca3b0adc
Parse URL query string at application level
2018-03-04 17:08:48 +03:00
Vladimir Golovnev (Glassez)
34295a78f2
Move ByteArray utils into Utils::ByteArray namespace
2018-03-02 17:23:21 +03:00
Mike Tzou
57163612ff
Merge pull request #8427 from Chocobo1/server2
...
Rewrite RequestParser
2018-03-02 16:07:12 +08:00
Mike Tzou
55c3db339b
Merge pull request #8455 from Chocobo1/large_torrent
...
Fix loading very large torrents. Closes #8449
2018-03-01 13:22:43 +08:00
Vladimir Golovnev
b26eb3d146
Merge pull request #8373 from glassez/search
...
Improve Search handling
2018-02-28 10:46:33 +03:00
Vladimir Golovnev
7cb6100c9c
Merge pull request #8471 from luis-pereira/use-qstring-ref
...
Don't create temporary substrings
2018-02-28 10:44:59 +03:00
Luís Pereira
0e421ae415
Don't create temporary substrings
...
Avoid temporary string allocations. They are only used to convert to
something else.
QString::xxxRef() returns a QStringRef. QStringRef avoids the memory
allocation and reference counting overhead of a standard QString by simply
referencing a part of the original string.
2018-02-26 11:39:36 +00:00
Vladimir Golovnev
6207855f3b
Merge pull request #8372 from thalieht/inactiverate
...
Expose the libtorrent fields for "dont_count_slow_torrents" to GUI.
Closes #5713 .
2018-02-24 14:13:39 +03:00
Vladimir Golovnev
a65a70ab48
Merge pull request #8479 from thalieht/ratioLimitsCrash
...
Fix possible crash when using both share limits
2018-02-24 14:11:09 +03:00
Vladimir Golovnev (Glassez)
279bce2014
Make SearchManager singleton
2018-02-23 20:26:32 +03:00
Vladimir Golovnev (Glassez)
f3d370870d
Improve Search handling
...
Legacy SearchEngine class really has three roles:
1. Manage search plugins,
2. Handle the search job, and
3. Handle the download of the torrent file using the search plugin.
Now it is splitted into 3 classes: SearchManager, SearchHandler and
SearchDownloadHandler.
Search GUI is also improved.
2018-02-23 20:15:25 +03:00
thalieht
0e30659c26
Fix possible crash when using both share limits
...
Avoid possible crash in "torrent->name()" when processing seeding time of the torrent that already reached the ratio limit.
2018-02-23 17:13:56 +02:00
Chocobo1
f34dfca5e6
Enable Http/1.1 persistence connection
...
This enables reusing existing TCP connection instead of opening a new connection
for every request
2018-02-23 14:46:22 +08:00
Chocobo1
cec68c3fd7
Rewrite RequestParser
...
* Add more checks and also more strict checks for invalid conditions
* Add http version field
* Raise max request size to 64 MB
* Add author in license
* Use Qt5 new connect syntax
2018-02-23 14:46:17 +08:00
Vladimir Golovnev
5c2f698cb4
Merge pull request #8325 from luis-pereira/prevent-c++11-range-loop-detach
...
Prevent possible c++11 range-loop container detach
2018-02-22 16:28:04 +03:00
Chocobo1
f5fc2d52b8
Fix loading very large torrents. Closes #8449 .
...
`torrent_info` constructor has default limits that can't be changed via
parameters, so we handle the loading process manually and explicitly
specifiy the limits to `bdecode()`.
The token_limit is also changed to 10000000.
2018-02-22 18:52:10 +08:00
Luís Pereira
1a913c502b
Prevent possible c++11 range-loop container detach
...
Explicit or implicit calls to begin() and end() cause a non-const
container to detach from shared data, ie. to perform a deep-copy to gain
a unique copy of the data.
That can be a expensive although unneeded operation.
In order to assist the developer a copyAsConst function is added.
copyAsConst returns a const copy of the object.
For lvalues just use qAsConst. It's only available on Qt 5.7.0. But we
added also for earlier versions. The developer can always use qAsConst.
Intended uses:
QString s = ...;
for (const auto &ch : qAsConst(s))
process(ch);
for (const auto &ch : copyAsConst(funcReturningQString()))
process(ch);
2018-02-20 19:28:51 +00:00
Vladimir Golovnev
078982ada6
Merge pull request #8424 from glassez/fix-rss
...
Disable Auto TMM when RSS rule has save path. Closes #8411
2018-02-20 11:13:15 +03:00
Vladimir Golovnev (Glassez)
a0842a1e68
Don't convert POST parameter names to lower-case
2018-02-18 19:57:48 +03:00
Luís Pereira
ea1b0b26b1
Don't implicitly cast iterator to const_iterator
...
It prevents detachments:
To illustrate:
QMap<QString, QString> map;
/* code compiles and works fine but find() returns the non-const
QMap::iterator that detaches!
*/
QMap<QString, QString>::const_iterator it = map.find("girish");
but also some subtle bugs:
QHash<int, int> wrong;
if (wrong.find(1) == wrong.cend()) {
qDebug() << "Not found";
} else {
/* find() detached the container before cend() was called, so it
prints "Found"
*/
qDebug() << "Found";
}
QHash<int, int> right;
if (right.constFind(1) == right.cend()) {
qDebug() << "Not found"; // This is correct now !
} else {
qDebug() << "Found";
}
Enforced by QT_STRICT_ITERATORS definition.
2018-02-17 17:02:52 +00:00
Vladimir Golovnev (Glassez)
176b2eb18b
Disable Auto TMM when RSS rule has save path
...
Closes #8411 .
2018-02-16 14:02:01 +03:00
Vladimir Golovnev
98a1c111b9
Merge pull request #5287 from elFarto/master
...
Implement RSS Smart Filter
2018-02-16 13:43:38 +03:00
Mike Tzou
47048d8410
Merge pull request #8349 from Chocobo1/stats
...
Improve stats dialog
2018-02-16 15:31:01 +08:00
Mike Tzou
882fa7ecd4
Merge pull request #8336 from Chocobo1/coalesce
...
Add "Coalesce reads & writes" checkbox in advanced options
2018-02-16 15:30:17 +08:00
Vladimir Golovnev
d07ece53e6
Merge pull request #7610 from glassez/webapi2
...
Redesign Web API
2018-02-16 10:09:35 +03:00
Luís Pereira
44e4b5d238
Don't use qDeleteAll() on temporaries
...
qDeleteAll() is being used on an unnecessary temporary container created
by QHash::values().
Using qDeleteAll(mycontainer) instead.
2018-02-12 16:36:03 +00:00
thalieht
f50b4724a6
Expose the libtorrent fields for "dont_count_slow_torrents" to GUI:
...
inactive_down_rate
inactive_up_rate
auto_manage_startup
2018-02-08 14:14:39 +02:00
Stephen Dawkins
48cbccff1e
Made smart episode filter regular expression configurable
2018-02-05 19:23:11 +00:00
Chocobo1
b9ec216aa5
Redefine CacheStatus.readRatio field.
...
Now it is defined as:
CacheStatus.readRatio = (blocks read from cache) / (blocks read from disk + blocks read from cache)
The 2 variables in denominator are counted separately and the formula before this change doesn't really make sense
Add percentage sign to "Read cache hits" stats
Also remove redundant header include
2018-02-02 23:41:42 +08:00
Chocobo1
543cbc6d1c
Add "Coalesce reads & writes" checkbox in advanced options
...
The setting is defaulted to ON for Windows. Closes #8295 .
2018-01-30 22:46:14 +08:00
Vladimir Golovnev (Glassez)
27d8dbf13b
Redesign Web API
...
Normalize Web API method names.
Allow to use alternative Web UI.
Switch Web API version to standard form (i.e. "2.0").
Improve Web UI translation code.
Retranslate changed files.
Add Web API for RSS subsystem.
2018-01-28 19:16:24 +03:00
Stephen Dawkins
2845a791d0
Initial implementation of Smart Filter feature
2018-01-27 09:14:36 +00:00
Vladimir Golovnev (Glassez)
0fc1ad664f
Implement Qt wrapper for std::runtime_error
2018-01-23 11:08:41 +03:00
Vladimir Golovnev (Glassez)
bb683bd393
Switch built-in Web UI html to HTML5
2018-01-23 11:08:37 +03:00
Vladimir Golovnev (Glassez)
69df8174b9
Allow to load TorrentInfo from data buffer
2018-01-23 11:08:32 +03:00
Vladimir Golovnev
0a45fc9ffe
Merge pull request #7990 from Piccirello/subnet-whitelist-refactor
...
Refactor ip subnet whitelist
2018-01-23 10:03:00 +03:00
Vladimir Golovnev (Glassez)
1c18edac76
Remove legacy and corrupted RSS settings
2018-01-21 20:01:56 +03:00
Chocobo1
fb698896c9
Fix translation context.
...
Partially addresses #8220 .
Also sort include headers
2018-01-07 23:01:22 +08:00
Chocobo1
ec337a8a84
Sort filename lists in .pri files
2017-12-31 11:53:45 +08:00
Mike Tzou
267362a7a0
Merge pull request #7876 from Chocobo1/optionIcons
...
Fix gui issues on high DPI monitor
2017-12-31 11:42:55 +08:00
Vladimir Golovnev (Glassez)
22bdf98617
Don't process new/updated RSS rules when disabled
2017-12-27 20:01:40 +03:00
Chocobo1
27cf98a962
Resize dialog size on high DPI monitors
2017-12-24 21:54:56 +08:00
Chocobo1
aaaa67050c
Fix gui issues on high DPI monitor
...
Fix LineEdit widget size issues
Up-scale the icons on statusbar
Up-scale the icons in options dialog. Closes #7729 .
Fix small icons in cookie manager
Fix progress bar height
Fix small icons in confirm delete dialog
Fix small icons in options dialog
Fix small images in about dialog
2017-12-24 21:47:46 +08:00
sledgehammer999
b11c33b2d9
Merge pull request #8068 from thalieht/readableFlags
...
Make peer information flags in peerlist more readable
2017-12-23 19:33:19 +02:00
sledgehammer999
cf9bad03aa
Fix application of speed limits on LAN and μTP connections. Closes #7745 .
2017-12-23 19:19:08 +02:00
sledgehammer999
c5127d2eec
Merge pull request #8091 from sledgehammer999/fix_natural_sort
...
Fix natural sorting
2017-12-23 19:16:29 +02:00
sledgehammer999
5437974b85
Fix natural sorting when the common part of 2 strings ends partially in a number which continues in the uncommon part.
...
Closes #8080 #6732 .
2017-12-21 17:00:37 +02:00
thalieht
5b52835377
Make peer information flags in peerlist more readable
2017-12-20 11:22:23 +02:00
Chocobo1
8dcf326576
Add source field in Torrent creator. Closes #7965 .
...
This field is often used for cross-seeding between (private) trackers.
2017-12-09 00:39:50 +08:00
Thomas Piccirello
240f5b6718
Remove invalid subnets directly from list
2017-12-06 20:32:50 -05:00
Thomas Piccirello
d184bd8c82
Perform ip string validation inside setWebUiAuthSubnetWhitelist
2017-12-06 02:05:33 -05:00
Chocobo1
c405cb2f1c
Add struct TorrentCreatorParams for passing parameters
...
Filter out continuous newlines in Trackers field
Avoid adding empty url seed entries
Cleanup:
Replace boost::bind
Add const
Use nullptr
Use QString::SkipEmptyParts
Rename variables
Throw proper exception type
2017-12-06 01:56:36 +08:00
Chocobo1
c1a282aa7b
Fix missing qbt logo on login page in webUI. Closes #7953 .
2017-12-02 14:31:48 +08:00
Mike Tzou
eac8838dc2
[GUI] Implement stable sort ( #7703 )
...
* NaturalCompare now returns compare result instead of "less than" result
* Change to stable sort in GUI components
* Add Utils::String::naturalLessThan() helper function
* Use Qt::CaseSensitivity type
2017-11-30 17:10:30 +08:00
sledgehammer999
a55be5e58f
Stop logging IP filter parsing errors after a while.
...
When a lot of errors happen the resulting log lines introduce
a huge slowdown of the GUI, due to writing each log line to disk.
Closes #7755 .
2017-11-29 15:49:59 +02:00
sledgehammer999
48c46dc79a
Fix crash on some systems when creating address object for 255.255.255.255
...
Closes #7735 .
2017-11-27 19:06:37 +02:00
Vladimir Golovnev
a7da714b13
Merge pull request #7832 from glassez/rss-import
...
Implement Import/Export RSS rules. Closes #7721
2017-11-25 10:35:24 +03:00
Vladimir Golovnev (Glassez)
916cfcdb03
Implement Import/Export RSS rules in JSON format
2017-11-24 21:20:44 +03:00
Vladimir Golovnev (Glassez)
b8fc415870
Implement Import/Export RSS rules in legacy format
2017-11-24 16:19:16 +03:00
Vladimir Golovnev
342f5f1a09
Merge pull request #7821 from glassez/fix-rss
...
Fix RSS Parser. Closes #7751 , #7763 , #7768 , #7786
2017-11-23 14:35:42 +03:00
sledgehammer999
d74efd839f
Merge pull request #7826 from Chocobo1/tcp
...
Change MixedModeAlgorithm default to TCP. Closes #7779 .
2017-11-23 01:53:29 +02:00
Vladimir Golovnev (Glassez)
c0e48627ae
Fix RSS Parser
...
Closes #7751
Closes #7763
Closes #7768
Closes #7786
2017-11-22 19:11:37 +03:00
Chocobo1
534ed91d04
Change MixedModeAlgorithm default to TCP. Closes #7779 .
...
MixedModeAlgorithm::Proportional will throttle TCP connections when utp
is in use and users is expecting maximum speed no matter what, so now
disable the throttling.
2017-11-22 22:39:52 +08:00
thoradia
ca5c1e8a15
Fix missing include in rss_feed.cpp
...
Fixes #7805 .
2017-11-22 14:39:07 +01:00
Chocobo1
433b5a46cf
Fix crash when aborting a torrent creation process. Closes #7783 .
...
The wait time wasn't long enough causing the thread to
terminate prematurely.
Also, to avoid crashing qbt entirely when creating a torrent for a very
big file, I decided to wait indefinitely here.
2017-11-21 18:33:47 +08:00
Chocobo1
034d71dce3
Wrap function into anonymous namespace
2017-11-21 18:23:39 +08:00
sledgehammer999
4927d26877
Fix english typo.
2017-11-21 02:14:44 +02:00
Vladimir Golovnev
f41cb8089d
Merge pull request #6779 from Piccirello/disable-web-auth
...
Add ip subnet whitelist for bypassing webui auth
2017-11-20 21:52:33 +03:00
Vladimir Golovnev (Glassez)
a3c9c1c386
Improve RSS events logging
...
Fix RSS log messages was untranslatable.
Add more logging.
2017-11-09 15:40:39 +03:00
Thomas Piccirello
95bf63330e
Add ip subnet whitelist for bypassing webui auth
2017-11-08 22:39:49 -05:00
sledgehammer999
9f8e7917a8
Merge pull request #7657 from Chocobo1/upnp
...
Disable upnp & nat-pmp on startup if disabled in options. Closes #7338 .
2017-10-31 18:24:28 +02:00
Chocobo1
1b652c882e
Refactor
...
Add const
Use Qt5 connect syntax
2017-10-31 19:09:01 +08:00
Chocobo1
601234e492
Explicitly set UPnP state on start-up. Closes #7338 .
...
libtorrent 1.1 enables upnp by default.
2017-10-31 19:08:58 +08:00
sledgehammer999
6c804edadf
Change default settings for tracker/tier announces to mimick ìTorrent behavior.
2017-10-30 23:27:29 +02:00
sledgehammer999
3a5c0d9818
Allow to specify if announcing to all tiers is desired.
2017-10-30 23:27:28 +02:00
Mike Tzou
e8cf351b6a
Merge pull request #7643 from Chocobo1/email
...
Allow SMTP sender to be set. Closes #7575 .
2017-10-27 12:52:35 +08:00
Chocobo1
fc0628d35b
Allow SMTP sender to be set. Closes #7575 .
2017-10-26 17:57:32 +08:00
Mike Tzou
1f7391737e
Merge pull request #7445 from Chocobo1/fixAddTorrent
...
Disable processing socket events in findIncompleteFiles()
2017-10-25 23:00:35 +08:00
sledgehammer999
50471ec8c8
String fixes and optimizations mentioned by translators on Transifex.
2017-10-24 03:32:56 +03:00
Chocobo1
f3603d05e7
Disable processing events when adding torrents. Closes #7436 .
...
webUI connection timeout & deletion might occur while
doing processEvents() and will result in use-after-free segfault.
2017-10-22 13:54:03 +08:00
Matthew Fioravante
8cd243b06b
Add WebUi\Address config option
2017-10-21 09:32:30 -04:00
Mike Tzou
bd07cb91bb
Merge pull request #7571 from Chocobo1/webui_download
...
[WebAPI] Add parameters for /command/download & /command/upload
2017-10-15 20:32:14 +08:00
Chocobo1
66b86888fc
Add uploadLimit, downloadLimit fields to AddTorrentData & AddTorrentParams
2017-10-11 16:23:58 +08:00
Eugene Shalygin
db35bb54e1
Make BitTorrent::TorrentState strongly-typed enum
...
This is needed to forward declare this type and pass it by value.
Conversion from/to QVariant are hanled via Q_DECLARE_METATYPE, while
TorrentState::toString() function was used in webui only and as such is
moved there.
2017-10-10 21:28:57 +02:00
Tim Delaney
19bb6f5fe0
Follow project coding style. Issue #2192 .
...
--HG--
branch : magao-dev
2017-10-10 21:28:56 +02:00
Vladimir Golovnev
083bc71315
Merge pull request #7396 from thalieht/updownratio
...
Properly pre-select the selected torrent's current ratio limiting options in UpDownRatioDlg
2017-10-08 21:06:55 +03:00
thalieht
0717f0d60c
Save ratio limits as int instead of string
2017-10-08 10:22:40 +03:00
thalieht
525fdd6c2b
Coding style, use nullptr and other minor things
2017-10-08 10:20:54 +03:00
thalieht
f27e75e8fa
Properly pre-select the selected torrent's current ratio limiting options in UpDownRatioDlg dialogs. Fixes #7352
2017-10-08 10:20:38 +03:00
Vladimir Golovnev
66a6674cbc
Merge pull request #7490 from glassez/category-path
...
Allow to set explicit save path for Category from GUI
2017-09-29 14:25:40 +03:00
Vladimir Golovnev (Glassez)
3ec992474d
Implement TorrentCategoryDialog class
2017-09-27 21:25:22 +03:00
Mike Tzou
e8250104c8
Merge pull request #7429 from silverqx/preview-modal-ux
...
Improved ux in preview dialog
2017-09-27 20:33:31 +08:00
Mike Tzou
1fe9272a8f
Merge pull request #7480 from Chocobo1/lastAct
...
Fix last activity calculation
2017-09-26 15:17:35 +08:00
silver
3b4fd35dde
Persist size and treeview header state in preview dialog
...
- renamed variable m_headerState
- renamed PreviewSelect class to PreviewSelectDialog
- renamed previewselect files to previewselectdialog
2017-09-25 16:33:17 +02:00
silver
ef63202be2
Follow project coding style. Issue #2192 .
2017-09-24 16:18:39 +02:00
Chocobo1
62493c672d
Fix last activity calculation. Closes #7461
...
`time_since_upload` & `time_since_download` can be -1, so filter them out
2017-09-24 21:06:34 +08:00
sledgehammer999
c7e35a1801
Merge pull request #7451 from sledgehammer999/report_delete_fail
...
Better reporting of success/failure of torrent and file deletion.
2017-09-21 23:36:53 +03:00
Mike Tzou
fc5d49bf9a
Merge pull request #7460 from Chocobo1/tribool
...
Use smaller data type for TriStateBool
2017-09-21 20:17:34 +08:00
sledgehammer999
b9e233601d
Merge pull request #7446 from Chocobo1/utpOnly
...
Add uTP only mode option
2017-09-19 01:45:58 +03:00
sledgehammer999
8f16388915
Better reporting of success/failure of torrent and file deletion.
2017-09-17 23:04:12 +03:00
Chocobo1
d143929454
Use smaller data type for TriStateBool
2017-09-18 02:21:47 +08:00
Chocobo1
45a0c5558a
Add comboBox for selecting BitTorrent protocol. Closes #6316 .
...
Use unicode string C_UTP in place of "uTP"
2017-09-18 01:52:57 +08:00
Chocobo1
a1d46a278b
Change default value of m_diskCacheSize. New default is 64 MB.
2017-09-14 20:32:04 +08:00
Chocobo1
855772ae5a
Fix dereferencing freed pointer. Closes #7420 .
...
The torrent is removed from session after `deleteTorrent()`
yet we still invoke `torrent->name()`, thus result in crash.
2017-09-11 13:16:34 +08:00
Vladimir Golovnev
4cd3a37b4a
Fix suggest_mode setting
...
Actually suggest_mode is of type int.
2017-08-31 22:02:52 +03:00
Chocobo1
551ffb88ab
Define QT_USE_QSTRINGBUILDER.
...
The old defines are deprecated.
QT_USE_QSTRINGBUILDER also supports QByteArray which we use extensively
in WebUI.
2017-08-29 13:37:29 +08:00
Mike Tzou
1afd5f70dd
Merge pull request #3235 from Chocobo1/session_option
...
libtorrent session options
2017-08-24 11:35:15 +08:00
Vladimir Golovnev
a6868e2b25
Merge pull request #7313 from glassez/sched
...
Don't disable scheduler when manually switching speed limits. Closes #7306
2017-08-23 17:05:28 +04:00
Vladimir Golovnev
bda5be8e4c
Skip user input events when adding torrent
...
Closes #7327 .
2017-08-23 11:14:34 +03:00
Vladimir Golovnev (qlassez)
93f5d4058d
Improve BandwidthScheduler
...
Don't disable scheduler when manually switching speed limits.
Closes #7306 .
2017-08-23 09:48:31 +03:00
Chocobo1
2da2054ccf
Use enums for settings
2017-08-21 20:30:26 +08:00
Chocobo1
3f5fa0025d
Add sanitize helper clampValue()
2017-08-21 16:50:56 +08:00
Chocobo1
f4be165767
Add send_buffer_watermark send_buffer_low_watermark
...
send_buffer_watermark_factor knobs
2017-08-21 16:50:14 +08:00
Chocobo1
55a1628a5e
Add suggest_mode knob
2017-08-21 16:50:14 +08:00
Chocobo1
6c32f6beff
Add choking_algorithm & seed_choking_algorithm knob
2017-08-21 16:49:45 +08:00
Chocobo1
21ec8fe53f
Add allow_multiple_connections_per_ip knob. Closes #5884 .
2017-08-21 16:48:38 +08:00
Chocobo1
4185209036
Add mixed_mode_algorithm knob
2017-08-21 16:48:38 +08:00
Chocobo1
6150e0c56b
Add guided_read_cache knob
...
cleanup header include order
2017-08-21 16:48:37 +08:00
Eugene Shalygin
ef1597e45b
Fix ignoring of incorrect version strings in search plugins. Closes #7101 .
...
Printing of Version with all components set to zero was segfaulting due
to underflow in array index. Also add log message for such plugins.
2017-08-20 22:44:20 +02:00
sledgehammer999
907f222a73
Switch settings to signed int because libtorrent expects them that way.
2017-08-18 20:21:39 +03:00
sledgehammer999
b649d61e8b
Options to better memory control by libtorrent. Closes #7029 .
2017-08-18 20:21:37 +03:00
sledgehammer999
cccb22f0e3
Merge pull request #7282 from glassez/fsutils
...
Improve utils/fs.* and fix coding style
2017-08-15 22:47:39 +03:00
sledgehammer999
19fcd3dad6
Fix broken build.
2017-08-15 22:12:16 +03:00
sledgehammer999
e5ea3bd707
Merge pull request #7253 from briankendall/fix_objc_errors
...
Fixed mac specific compiler errors and cleaned up Objective C code. Closes #7252
2017-08-15 21:06:09 +03:00
sledgehammer999
7bb9c69c08
Fix connection problems when a specific interface/ip is configured.
...
Closes #7235 .
Bug related to #7099 and Qt.
2017-08-15 19:33:45 +03:00
sledgehammer999
c2a8970109
Fix calculation of 'Average time in queue' stat under libtorrent 1.1.x
2017-08-15 17:38:41 +03:00
Vladimir Golovnev (qlassez)
59c14801cc
Improve utils/fs.* and fix coding style
2017-08-15 16:17:57 +03:00
Vladimir Golovnev (qlassez)
cff6a64e9f
Use qUtf8Printable() for logging strings
...
qDebug(), qInfo(), qWarning(), qCritical(), qFatal() expect %s arguments
to be UTF-8 encoded, while qPrintable() converts to local 8-bit encoding.
Therefore qUtf8Printable() should be used for logging strings instead of
qPrintable().
2017-08-13 16:14:57 +03:00
Vladimir Golovnev
219a6b3ad1
Merge pull request #7267 from glassez/remove-temp
...
Don't remove shared temp folder
2017-08-13 17:00:40 +04:00
Vladimir Golovnev (qlassez)
3801150a7a
Don't remove shared temp folder
...
Don't remove shared temp folder when torrent finished and moved to
its "complete" folder. Only torrents with stripped root folder
have subfolder in temp folder so they should remove it.
2017-08-13 14:17:12 +03:00
sledgehammer999
1b8cda7924
Follow project coding style.
2017-08-12 16:23:15 +03:00
sledgehammer999
31a4309077
Catch possible exceptions when parsing IPs. Closes #7249 .
2017-08-12 16:23:14 +03:00
Brian Kendall
62b956946f
Fixed mac specific compiler errors and cleaned up Objective C code
...
Created new file src/gui/macutilities.mm, moved code from mainwindow.cpp and torrentcontentmodel.cpp that used the Objective C runtime into it and converted it to actual Objective C. Rewrote pixmapForExtension() so that it doesn't call into private Qt functions.
2017-08-11 20:51:16 -04:00
Vladimir Golovnev (qlassez)
7380bfa9e4
Remove legacy RSS settings after converting
...
Closes #7226 .
2017-08-09 22:01:30 +03:00
sledgehammer999
6270433237
Fix explicit Torrent Management Mode in Add New Torrent dialog. Closes #5602 .
2017-08-07 20:01:30 +03:00
sledgehammer999
e1f514042f
Merge pull request #7207 from glassez/move-torrent
...
Don't replace existing files when manually relocating torrent
2017-08-05 20:26:05 +03:00
Vladimir Golovnev (qlassez)
7d78457fe0
Don't replace existing files when relocating torrent
2017-08-05 20:17:44 +03:00
Vladimir Golovnev (qlassez)
f067b8b37c
Don't remove shared temp folder
2017-08-05 19:53:23 +03:00
Vladimir Golovnev (Glassez)
5f47d3b021
Don't create subfolder inside temp folder
2017-07-29 18:04:23 +03:00
Vladimir Golovnev (Glassez)
d22b626a02
Fix temporary subfolder isn't deleted
2017-07-28 15:16:02 +03:00
Chocobo1
24a69a9fe7
Fix crash when exiting qbt with search plugin dialog open
...
Avoid emitting signal in destructor
2017-07-20 13:26:36 +08:00
vit9696
d25467d3e6
Various macOS UI improvements
2017-07-15 20:49:40 +03:00
Eugene Shalygin
22ea0be917
Merge pull request #7099 from evsh/set-inet-outgoing
...
Set interface for outgoing traffic.
2017-07-13 11:13:07 +02:00
Eugene Shalygin
934133772e
Set interface for outgoing traffic.
...
This sets interface for outgoing traffic to the same as for ingoing
(listetning) with libtorrent 1.1.x.
2017-07-12 21:28:00 +02:00
Chocobo1
0532d546d7
Implement HTTP host header filtering
...
This filtering is required to defend against DNS rebinding attack.
2017-07-12 17:26:13 +03:00
Eugene Shalygin
23616d5dd0
Merge pull request #7064 from evsh/cachesettingvalue-enum
...
Implement enum support in CachedSettingValue
2017-07-11 16:03:20 +02:00
sledgehammer999
7a478424cc
Revert "Drop python2 support.". Closes #7005 .
...
This reverts commit 7d030b4cd9
.
2017-07-06 01:07:09 +03:00
Eugene Shalygin
ff710ebd2c
fixup! Implement enum support in CachedSettingValue
2017-07-05 13:41:08 +02:00
Eugene Shalygin
a22d2f0139
Implement enum support in CachedSettingValue
...
Enums are stored as strings, that improves configuration file
readability and maintainability. String values are obtained via
QMetaEnum, and since with Qt 5.5 QMetaEnum::fromType() includes a
static_assert, this has to be a safe method.
2017-07-05 12:41:58 +02:00
Vladimir Golovnev
4d28f8f48d
Fix RSS with normal links do not work ( #7016 )
...
Fix regression of RSS code redesign.
Closes #7003 .
2017-06-30 11:16:40 +03:00
Vladimir Golovnev
3181469d87
Merge pull request #6911 from tgregerson/tags
...
Add a Tags system to the GUI to expand torrent organization / filtering options. Closes #13 .
2017-06-26 15:57:27 +03:00
Tony Gregerson
467e516801
Add a Tags (multi-label) feature to the GUI. Closes #13 .
...
See https://github.com/qbittorrent/qBittorrent/issues/13 for details.
2017-06-25 13:53:07 -05:00
sledgehammer999
70ae05c3de
Pad shorter python versions. Closes #6877 .
2017-06-25 17:20:51 +03:00
sledgehammer999
7d030b4cd9
Drop python2 support.
2017-06-25 17:20:50 +03:00
sledgehammer999
a77e1c9f36
Use qt5 connect style for searchengine, pluginselectdlg and searchwidget.
2017-06-22 18:54:30 +03:00
sledgehammer999
34c29b78f9
Update the backend when a new plugin favicon is downloaded.
2017-06-15 22:32:43 +03:00
sledgehammer999
793ed7148f
Remove code that expects bundled search plugins.
2017-06-15 22:32:40 +03:00
sledgehammer999
4ab117d946
Remove possible double check of the same thing.
2017-06-15 22:32:38 +03:00
sledgehammer999
d88f0f36e0
Merge pull request #6889 from Chocobo1/lowercase
...
Convert all http header name constants to lowercase
2017-06-14 02:38:57 +03:00
Chocobo1
8419ca87f9
Fix KEEP_ALIVE_DURATION value
...
I intended to specify 7 seconds, which should be 7000 milliseconds
2017-06-07 21:45:47 +08:00
Vladimir Golovnev
c503583046
Merge pull request #6864 from glassez/rss
...
Improve RSS Article handling
2017-06-02 19:47:08 +03:00
Chocobo1
45c21f62f9
[WebAPI] Convert all header name constants to lowercase
...
This save us another transition when some day we implements HTTP/2
(which all headers are in lowercase).
2017-06-02 21:55:16 +08:00
sledgehammer999
b5c0d90e9c
Merge pull request #6842 from Chocobo1/countPieces
...
[TorrentCreator] Show total number of pieces. Closes #6774 .
2017-06-02 08:56:10 +03:00
Chocobo1
087856d3d8
[WebUI]: Implement CSRF defense
...
Bump API version
2017-06-01 19:37:57 +03:00