1
0
Fork 0
mirror of https://github.com/transmission/transmission synced 2025-03-13 07:33:02 +00:00
Commit graph

16265 commits

Author SHA1 Message Date
Yat Ho
04769d9986
feat: support trackers with only old BEP-7 support (#7481)
* feat: restore old BEP-7 query parameters

* fix: treat failed tracker response as failure
2025-03-10 11:07:15 -05:00
Yat Ho
40814a3195
refactor: save outgoing len(PadA), len(PadB) and len(IA) (#6973)
* refactor: save length of PadA and PadB sent

* refactor: log outgoing `len(PadA)` and `len(PadB)`

* refactor: set `ia_len_` as the MSE handshake initiator
2025-03-10 11:06:42 -05:00
Yat Ho
088232f69c
fix: abort handshake if the torrent is stopped (#6947)
* fix: abort handshake if torrent isn't running

* fix: check if torrent is running in all cases

* fix: don't penalise peer if handshake failed because of us

* fix: tests

* perf: ensure copy-elision in `HandshakeMediator::torrent()`

* code review: more accurate log wording
2025-03-10 01:05:16 -05:00
Bheesham Persaud
1232f558a6
fix(remote): failure reason should be printed (#7034)
Uses `fmt::print` to log failure messages. Results in a connection
failure being printed as:

    Unable to send request to 'http://localhost:9091/transmission/rpc/': Couldn't connect to server

Fixes #7010
2025-03-10 01:04:10 -05:00
Yat Ho
49e0e59763
refactor: respond immediately to block requests from peer (#7029)
* refactor: respond immediately to block requests from peer

* refactor: extract `fill_output_buffer()` impl method
2025-03-09 19:45:08 -05:00
Yat Ho
47eb4ee2bc
refactor: dedicated class for torrent queue (#7332)
* Revert "feat: save queue order between sessions (#6753)"

This reverts commit 4db50dae10.

* refactor: new torrent queue class

* refactor: replace queue code with new class

* test: new tests for new class

* feat: store and load queue order across sessions

* build: xcode

* refactor: use set_difference instead of unordered_set

* code review: use `tr_torrent_id_t` as key

* fix: don't overflow when moving up/down

---------

Co-authored-by: Dzmitry Neviadomski <nevack.d@gmail.com>
2025-03-09 19:08:50 -05:00
cdowen
4e7fc81975
feat: disconnect blocklisted peers on blocklist update (#7167)
* Fix: disconnect blocklisted peer on blocklist update.

Mark peer to be disconnected upon blocklist update.
Tested on my torrent, seems to be working.

Fix #732 .

* Add debug message when blocking peers

Add debug message each time a peer gets blocked during blocklist update.

* Change log api

Co-authored-by: Yat Ho <lagoho7@gmail.com>

---------

Co-authored-by: Yat Ho <lagoho7@gmail.com>
2025-03-09 18:33:09 -05:00
Mike Gelfand
42ccb54c98
Sync translations (#7477)
* Sync translations with code

* Sync translations with Transifex

* Fix order of plurals for Slovenian

* Add new Mac translations

* Afrikaans (af)
* Greek (el)
2025-03-09 13:47:57 +00:00
Yat Ho
1054ba4ab6
refactor: store peers as benc in resume file (#6892)
* refactor: add `tr_pex::to/from_variant()`

* refactor: store peers as benc in resume

* fix: discard invalid pex in `tr_pex::from_variant()`

* fix: limit number of peers loaded from resume
2025-03-08 12:19:18 -06:00
Charles Kerr
c398bd26f3
build: remove the test to see if curl is at least 7.15.6 (#7462)
CMakeLists.txt requires curl >= 7.28.0, so we do not need to test this.
2025-03-05 14:35:31 -06:00
Charles Kerr
ea2cac2335
refactor: simplify TR_CONSTEXPR20 macro (#7471) 2025-03-05 11:55:04 -06:00
Charles Kerr
642043861d
refactor: remove unused macro TR_UNREACHABLE (#7470)
last use was removed in 3008a99
2025-03-05 10:36:06 -06:00
Charles Kerr
2c0b29143a
refactor: remove TR_LIKELY and TR_UNLIKELY macros (#7469)
* refactor: remove unused TR_UNLIKELY macro

* refactor: remove TR_LIKELY from assertion macro

https://blog.aaronballman.com/2020/08/dont-use-the-likely-or-unlikely-attributes/

* refactor: remove unuse TR_LIKELY macro

* refactor: remove unused TR_GNUC_CHECK_VERSION macro

* refactor: remove unused __has_builtin fallback macro
2025-03-05 08:41:22 -06:00
Rukario
9ea7153ee4
feat: error rename alert message (#7394) 2025-03-04 19:29:52 -06:00
Charles Kerr
491cdc1560
refactor: remove TR_ARG_TUPLE macro (#7468) 2025-03-04 19:06:12 -06:00
Yat Ho
8c18cf4245
fix: use message id to check for pex and metadata xfer support (#7177)
* refactor: use metadata id to check for ut metadata support

* refactor: use pex id to check for ut pex support

* refactor: start pex timer after ltep handshake

* refactor: harden metadata xfer sanity checks

* code review: constexpr

* code review: don't save peer ut_pex_id and ut_metadata_id if on private torrent
2025-03-04 18:42:26 -06:00
Charles Kerr
0518a2269e
fix: do not mark Variant::make_map() as noexcept (#7466) 2025-03-04 18:42:08 -06:00
Charles Kerr
cbd65ae8b1
refactor: fix modernize-use-nodiscard warnings by adding [[nodiscard]] (#7351) 2025-03-04 17:28:33 -06:00
Charles Kerr
de782e4315
ci: use Ubuntu 22.04 runner instead of Ubuntu 20.04 runner (#7465)
the latter is deprecated; see https://github.com/actions/runner-images/issues/11101
2025-03-04 11:12:51 -06:00
Rukario
43577e3df2
refactor: drop className .full in favor of :not(.compact) (#7354) 2025-03-04 08:21:23 -06:00
Yat Ho
52a12200b2
chore: bump wide-integer (#7383)
* chore: bump wide_integer

* refactor: use `uint64_t` for better performance
2025-03-04 08:19:01 -06:00
Yat Ho
48ba0fd2d8
refactor: remove builtin and asm popcount implementation (#7443) 2025-03-04 08:16:39 -06:00
Charles Kerr
05797a9e93
perf: cache curl version (#7461)
it doesn't change during runtime, so no need to
keep calling curl_version_info(CURLVERSION_NOW)
2025-03-04 08:16:21 -06:00
Yat Ho
76ab7ba592
refactor: set peer io socket in constructor (#7355)
* refactor: `tr_netOpenPeerSocket()` returns `tr_socket_t`

* refactor: store preferred transport as array

* refactor: set peer io socket in constructor

* refactor: remove `log_peer_io_bandwidth()`

This partially reverts commit efec6505

* refactor: rename `tr_netOpenPeerSocket` to snake_case

* code review: remove redundant comment

* code review: add comment about array order
2025-03-03 23:47:37 -06:00
pathC
5163ac3e1f
fix: not correctly sending UA to trackers related to curl gh6312 (#7447)
fallback to http1.1 when using flawed curl.
curl 7.71.0-7.74.0 are affected.
2025-03-03 23:14:20 -06:00
Yat Ho
43e869b18e
feat: warn about problematic curl versions (#7457) 2025-03-03 21:32:25 -06:00
Emir SARI
d0d0418b5d
Use en and em dashes where appropriate (#7402)
- En dash is used to separate ranges; e.g. 2024–2025
- Em dash is used to separate expressions; e.g. 100.5 GB — remaining
  time unknown
2025-02-16 14:19:46 -05:00
Michael Hadam
87bcf1a1d5
Update rpc-spec.md (#7387)
incorrect transmission 2.30 update note
2025-01-27 22:46:06 +00:00
Yat Ho
790bd2f0ab
fix: crashes related to curl gh10936 (#7416) 2025-01-27 22:36:47 +00:00
Yat Ho
f768562421
test(dht): use static IP address (#7408) 2025-01-27 01:12:04 +00:00
reardonia
50eacf6933
Consume early pad a/b, improve handshake tests (#6987)
* properly consume PadA in MSE handshake, check for invalid Ya+PadA

* refactor: make handshake constants public (needed for test coverage)

* test: split test MSE handshakes by blocking steps

* test: use `ASSERT_TRUE` instead of `assert`

* test: fix windows crash by using `recv` and `send`

Co-authored-by: Yat Ho <46261767+tearfur@users.noreply.github.com>

* refactor: use `TR_IF_WIN32` for `LOCAL_SOCKETPAIR_AF`

Co-authored-by: Yat Ho <46261767+tearfur@users.noreply.github.com>

---------

Co-authored-by: Yat Ho <lagoho7@gmail.com>
Co-authored-by: reardonia <reardonia@github.com>
Co-authored-by: Yat Ho <46261767+tearfur@users.noreply.github.com>
2025-01-09 10:26:48 -06:00
Mike Gelfand
cbba2e0390
Sync translations (#7362)
* Fix lupdate unused directives warning

* Sync translations with code

* Sync translations with Transifex
2025-01-01 14:55:51 +00:00
github-actions[bot]
aa9aff1131
chore: update copyright years (#7359) 2025-01-01 12:04:53 +00:00
Yat Ho
3af627e725
fix(web): enable/disable textbox when session changed (#7346)
* fix(web): enable/disable textbox when session changed

* code review: only enable/disable textbox in response to session change
2024-12-30 12:38:12 -06:00
Rukario
4f88a660a2
fix: use grid CSS to resolve the inflating rows by long torrent names in compact view (#7336) 2024-12-30 11:59:41 -06:00
Rukario
0795e932bd
refactor: pointer device listener code refinement (#7311) 2024-12-30 10:40:42 -06:00
Mitch Livingston
5b53b1ec87
Resolve context menu not always appearing in compact mode (#7350)
The progress bar was on top of the name label (and containing stack view). This reorders the progress bar to the back.
2024-12-30 11:10:35 -05:00
Charles Kerr
236cd6bae7
fix: cert-oop54-cpp warnings about self-assignment in strbuf (#7345) 2024-12-30 09:32:34 -06:00
Yat Ho
131caa1239
refactor: convert tr_net_init_mgr to singleton (#6914) 2024-12-30 09:32:11 -06:00
Rukario
3842cec549
refactor: alternative x/y coords to account for zoomed in browser (#6945)
* Update transmission.js

* refactor: accommodate suggestions + alternative x/y coords

Thanks @tearfur!

Co-Authored-By: Yat Ho <46261767+tearfur@users.noreply.github.com>

---------

Co-authored-by: Yat Ho <46261767+tearfur@users.noreply.github.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2024-12-29 01:42:56 -06:00
Yat Ho
a4cc98b92c
fix: speed limits did not work below 16KiB/s (#7339)
* refactor: calculate raw speed by OS buffer instead of application buffer

* refactor: limit transfer speed by raw speed

* refactor: early return write if no bytes

* refactor: remove code for guessing TCP/IP overhead

* refactor: remove code for uTP overhead
2024-12-29 01:42:07 -06:00
Yat Ho
536fe4a6e1
fix(webui): dispatch close events when closing popups (#7340)
* fix: dispatch `close` event in statistics dialogue

* fix: properly dispatch `close` event in pref dialogue
2024-12-29 01:39:56 -06:00
Charles Kerr
7820f54ba1
refactor: remove TR_DISABLE_COPY_MOVE macro (#7344) 2024-12-29 00:15:39 -06:00
Mitch Livingston
ba55b7cd7c
In the small view, show the action buttons when hovering anywhere over the cell (#7342)
* In the small view, show the action buttons when hovering anywhere over the cell

This matches the previous behavior.

* Explicitly hide/show the priority icon in the stack view

* Restore right padding on the compact view's stack view

* style fixes
2024-12-27 23:21:35 -05:00
Josh Grosse
b969b0bae1
fix: use process umask for new files. (#7195) 2024-12-27 18:20:33 -06:00
Rukario
8cb527d428
Update transmission.js (#7310)
Co-authored-by: Yat Ho <lagoho7@gmail.com>
2024-12-26 12:51:47 -06:00
Rukario
698b4348a0
fix: close context menu with a click outside listener 2024-12-25 13:09:24 -06:00
Rukario
c3b48882b8
feat: remove per-torrent start/pause button from web client (#7292) 2024-12-25 13:08:20 -06:00
cloppingemu
dc6c761c29
Fixing bug in when closing new torrent options dialog (#7247) 2024-12-24 21:36:12 +00:00
Yat Ho
2ba8cccfa7
fix: check full path when parsing http tracker responses (#7326)
* refactor: move path checking methods to base

* refactor: differentiate "empty string key" and "no key"

* fix: check full path when parsing http announce response

* fix: check full path when parsing http scrape response

* refactor: avoid copying when checking scrape info hash

* fixup! fix: check full path when parsing http scrape response
2024-12-24 14:30:50 -06:00