Cœur
312078806d
warning: The CFBundleVersion of an app extension ('1') must match that of its containing parent app ('14718.1.2'). ( #7762 )
2025-11-07 20:19:04 -06:00
Charles Kerr
f20fd5e373
chore: bump transmission 4.1.0 beta.3 ( #7769 )
...
* chore: bump to Transmission 4.1.0-beta.3
* docs: add release notes for 4.1.0-beta.3
* docs: update release notes
4.1.0-beta.3
2025-11-05 17:54:17 -06:00
Mitch Livingston
d15c8626d8
Updated app icon for Liquid Glass ( #7736 )
2025-11-05 17:46:43 -06:00
Mike Gelfand
b27fafca45
Sync translations ( #7768 )
...
* Sync translations with code
* Sync translations with Transifex
2025-11-05 22:05:13 +00:00
github-actions[bot]
418434a5f3
chore: update generated transmission-web files ( #7726 )
...
Co-authored-by: ckerr <70381+ckerr@users.noreply.github.com >
2025-11-05 14:51:54 -06:00
Charles Kerr
152e468e3a
fix: filter-by-tracker failed after the tracker list changed ( #7761 )
2025-11-05 14:25:45 -06:00
Rukario
c35af04606
feat: revamped search bar for web client ( #6948 )
2025-11-05 14:21:50 -06:00
Rukario
90268076b8
refactor: clean up Flexbox style rules in CSS ( #7358 )
2025-11-03 12:26:37 -06:00
Rukario
7be9808ccd
Privacy and error filter for web client ( #6977 )
...
Squashed all commits + co-authoring previous works
Co-authored-by: Derek Reiff <d@derekr.net >
Co-authored-by: Will Da Silva <will@willdasilva.xyz >
Co-authored-by: Yat Ho <46261767+tearfur@users.noreply.github.com >
2025-11-03 12:24:07 -06:00
Dzmitry Neviadomski
85a325ed71
feat: Introduce PowerManager on macOS ( #7543 )
...
- Use modern APIs to prevent idle system sleep.
- Consolidate all related logic.
- Make Controller class a little bit less huge.
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
2025-11-02 14:41:22 -06:00
Dzmitry Neviadomski
90b52bc65c
Improve building crc32c target with Xcode ( #7754 )
...
* Fix input path and add output path for Copy Header step in crc32c
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* Enable build step sandboxing for crc32c target.
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* Dummy commit for Xcode as it keeps reordering targets
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
---------
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
2025-11-02 12:29:22 -06:00
Rukario
afdbfdbcda
feat: viewport neutral layout and style for small viewports in web app ( #7328 )
...
* Update transmission-app.scss
* Update transmission-app.scss
2025-11-02 11:58:15 -06:00
Yat Ho
2a3a8ea364
perf: even faster wishlist ( #7744 )
...
* chore: add comments to annotate observer dependencies
* refactor: overhaul wishlist
Avoid expensive `count_active_requests` and `has_active_request_to_peer`.
- Remove "endgame"
- Never rebuild candidate list mid-download
* chore: code cleanup
* test: fix
* perf: sort block list in reverse order
* refactor: reduce request timeout from 90 to 15 seconds
2025-11-02 11:55:38 -06:00
Rukario
50e0ffb910
feat: tweak font size for web app ( #7329 )
2025-11-02 11:52:54 -06:00
Rukario
78c50747cc
refactor: offload icons from HTMLdoc to JavaScript for icon deployment ( #7277 )
...
* Update index.html
* Update utils.js
* Update torrent-row.js
* Update transmission-app.scss
* Update transmission.js
* Freezing object with `Object.freeze`
Co-Authored-By: Yat Ho <lagoho7@gmail.com >
* Update torrent-row.js
* Update utils.js
* Prefers destructuring assignment over bracket notation accessor
Co-authored-by: Yat Ho <lagoho7@gmail.com >
---------
Co-authored-by: Yat Ho <lagoho7@gmail.com >
2025-11-02 11:52:22 -06:00
Mike Gelfand
7b4c0ee096
Use native folder icon in torrent files tree ( #7757 )
...
Not all Qt styles seem to provide a `DirOpenIcon` icon (Windows 11 style
doesn't, which leads to no icon in the tree), and `DirIcon` is usually
the same (or worse) as the one returned by our icon cache. It's also not
clear why we'd want an _open_ folder icon specifically, given that the
condition in the `else` branch is essentially checking the same thing.
2025-11-02 00:38:01 +00:00
Mike Gelfand
602993cb67
Draw custom colored progress bars (Qt client) ( #7756 )
2025-11-01 23:48:18 +00:00
Yat Ho
f4bd21d97f
fix: acquire lock in tr_peerMgrPeerStats ( #7638 )
2025-11-01 19:02:16 +00:00
Mike Gelfand
2b4803a023
Bump Windows dependencies ( #7755 )
2025-11-01 18:59:13 +00:00
Dzmitry Neviadomski
9b496350a9
feat: Data-based QuickLook extension for macOS 12+ ( #7213 )
...
* feat: Prepate Xcode project skeleton for QuickLookExtension
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* feat: Add initial implementation of QuickLookExtension
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* feat: Add working Data-based QuickLook Preview
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* feat: Add new style.css
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* feat: Copy Localization.strings as is from legacy QuickLook plugin
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* fixup: Fix compilation missing NSStringAdditions
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* fixup: Apply clang-format, update style.css, fix file name reference
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* feat: Adopt CMake build from legacy QuickLook Plugin
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* fixup: Remove counter for debug
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* fixup: Make header row for file span across all table
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* feat: Improve style.css
- Use CSS Vars
- Add missing paddings
- Add sticky headers for tables
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* Use UTType for Image generation more directly.
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* Fixup for Xcode project checks in PR
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* Fix Copyright and remove Xcode generated comments
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* Remove unneeded fields from targets Info.plist template.
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* Move tx localization to new QuickLook Extension
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* Apply code review suggestions
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
---------
Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com >
2025-10-31 11:30:55 -05:00
Rukario
1d0db31ae7
feat: submenu to group away context menu items ( #7263 )
...
* Update context-menu.js
* Update transmission-app.scss
* Update transmission-app.scss
* Update transmission-app.scss
* Update context-menu.js
* Update transmission-app.scss
* Update context-menu.js
* Update transmission-app.scss
* Update context-menu.js
* Update transmission-app.scss
* Update context-menu.js
* Update action-manager.js
* Update context-menu.js
* Update context-menu.js
* Update action-manager.js
* Update context-menu.js
* Update context-menu.js
* Update context-menu.js
* Update context-menu.js
2025-10-30 18:19:48 -05:00
Yat Ho
bfb5e35021
chore: add suffix to private and protected members ( #7746 )
2025-10-30 10:13:27 -05:00
Yat Ho
555d4681c5
perf: reduce memory profile in announce failed handling ( #7748 )
2025-10-30 10:11:56 -05:00
Yat Ho
648c65868c
feat: use Type=notify-reload in daemon service ( #7570 )
...
* feat: use `Type=notify-reload` in daemon service
* build: keep systemd names consistent
---------
Co-authored-by: Charles Kerr <charles@charleskerr.com >
2025-10-29 09:04:04 -05:00
Yat Ho
02a8bafb28
refactor: more generic http announce failure handling ( #7745 )
2025-10-28 16:20:43 -05:00
Charles Kerr
db67c258a9
refactor: don't use evbuffer in transmission-remote ( #7739 )
...
* refactor: remove evbuffer use in transmission-remote
Keep reducing our libevent API use, especially outside of libtransmission
* chore: reduce some unnecessary diffs to main
2025-10-27 18:30:25 -05:00
Yat Ho
41dd2cfd53
fix: accept either one of udp announce response ( #7583 )
...
* fix: accept either one of udp announce response
* fix: udp announcer tests should read packets in-order
* test: housekeeping
* test: new tests for the new logic
2025-10-27 12:08:59 -05:00
Charles Kerr
f26eca5fd5
refactor: avoid evutil_ascii_strcasecmp() in get_quota_space() ( #7740 )
2025-10-27 11:47:56 -05:00
Yat Ho
48cde98788
refactor: use new tr_variant API for stats.json ( #7098 )
...
* refactor: load stats with new tr_variant API
* refactor: save stats with new tr_variant API
2025-10-27 11:25:18 -05:00
Yat Ho
4f26b62908
fix: respect min interval and interval if they exist ( #7493 )
...
* fix: parse `min interval` and `interval` if they exist
* fix: account for `interval` and `min interval` during tracker failure
---------
Co-authored-by: Charles Kerr <charles@charleskerr.com >
2025-10-27 10:44:29 -05:00
Yat Ho
4bd9aa9b06
refactor: prioritise peers slots for downloading torrents ( #7306 )
...
* chore: housekeeping
* refactor: allow downloading torrents to steal connection slots
To be exact, the way it works is that downloading torrents will be allowed to start outgoing connections despite the session peer limit is reached. The periodic peer limit enforcements should keep the downloading connections and remove the idle connections in seeding torrents.
* refactor: prefer peers from downloading torrents when enforcing peer limit
2025-10-27 10:43:14 -05:00
Yat Ho
5c7135c319
build: define GDK_VERSION_MIN_REQUIRED ( #7633 )
...
This suppresses deprecation warnings in newer GDK versions that weren't in the version that comes with our minimum GTKMM version.
2025-10-27 09:45:03 -05:00
Cœur
e23ff0c7ae
[peer-mgr] Prevent out-of-bounds in update_canonical_priority ( #7738 )
...
* [peer-mgr] Prevent out-of-bounds in update_canonical_priority
* code review: prefer `is_valid()`
2025-10-27 09:33:30 -05:00
Mike Gelfand
f8d8676f60
Sync translations ( #7742 )
...
* Fix "Message contains an embedded URL" xgettext warnings
See https://www.gnu.org/software/gettext/manual/html_node/No-embedded-URLs.html
* Sync translations with code
* Sync translations with Transifex
2025-10-27 14:39:58 +01:00
Charles Kerr
454b810698
fix: performance-for-range-copy warning in tr-peer-info-test.cc ( #7741 )
...
this warning broke the clang-tidy-libtransmission-win32 CI
2025-10-26 21:07:52 -05:00
Yat Ho
d31e77a494
chore: update transmission-web package ( #7003 )
...
* chore: update minor versions
* chore: bump to `style-loader@4`
major version change
* refactor: combine `#mainwin-toolbar:nth-last-child(2)` rule
* refactor: cleanup scss definitions
Notes: `.single-file` is no longer used in code
* chore: bump `esbuild-sass-plugin@3` `esbuild@0.25 `
* chore: uninstall unused `stylelint-config-standard`
In fact, it was never used since added to `package.json`.
* chore: bump `stylelint@16` `stylelint-config-sass-guidelines@12`
* chore: bump `eslint@9` `eslint-plugin-sonarjs@1` `eslint-plugin-unicorn@61`
* chore: enable prettier for whole `transmission-web` package
* chore: bump `@primer/stylelint-config@13`
* chore: update minor versions
* build: remove lint config files from CMake dependency
* chore: bump minor versions
* chore: bump `eslint-plugin-sonarjs@3`
* ci: use `actions/setup-node@v4` to install Node.js
So that there's no risk of the OS package manager's Node.js version being too low.
Except in Alpine, which does not work with `actions/setup-node@v4`. Ref: https://github.com/actions/setup-node/issues/387
* chore: replace `lodash.isEqual` with `fast-deep-equal`
* chore: bump minor versions
* chore: re-generate package-lock.json
* chore: fix lint errors
2025-10-25 12:09:36 -05:00
Yat Ho
0715897fc8
feat: use canonical peer priority to decide which peers to keep ( #6981 )
...
* feat: CRC32-C
* feat: canonical peer priority calculation bep-40
* test: add test cases for IPv4 canonical peer priority
* refactor: compare by canonical priority
* fix: use network byte order for peer ports
* test: more cases
* build: xcode
Co-authored-by: Dzmitry Neviadomski <nevack.d@gmail.com >
* ci: test system crc32c library
---------
Co-authored-by: Dzmitry Neviadomski <nevack.d@gmail.com >
2025-10-25 12:05:20 -05:00
Yat Ho
e7d4a69107
fix: update wishlist when files wanted changed ( #7733 )
...
* refactor: extract salt calculation to method
* fix: update wishlist when files wanted changed
2025-10-24 20:48:48 -05:00
Ilkka Kallioniemi
c4dc244212
docs: add Debian 13 building instructions
...
* Add Debian 13 / Trixie docs
* Remove Debian 11 instructions
2025-10-20 17:34:39 -05:00
Yat Ho
07e2ea93ad
docs: use IEC standard units ( #7232 )
...
Co-authored-by: Charles Kerr <charles@charleskerr.com >
2025-10-17 18:05:11 -05:00
Yat Ho
03b5e3f716
chore: deprecate torrent-get.manualAnnounceTime ( #7497 )
2025-10-17 18:00:40 -05:00
Yat Ho
9055650c8f
refactor(remote): delegate percent done calculation to core ( #7622 )
2025-10-17 17:58:59 -05:00
Managor
3f7e1e4309
Update transmission-daemon.1 ( #7559 )
2025-10-16 08:45:27 -05:00
Yat Ho
49c099f6fa
refactor: add more details to logs in ip cache ( #7525 )
...
* refactor: add more details to error logs in ip cache
* refactor: improve logs for ip cache set methods
* code review: warn if cannot obtain any source address
* refactor: error if cannot obtain any source address
* code review: better variable naming
2025-10-16 08:44:53 -05:00
Geoffrey Bonneville
c0ef40a52a
fix: flush torrent files on piece completed in sequential mode ( #7489 )
...
* fix: flush torrent files on piece completed in sequential mode
* Mark flush_torrent_files as const
* Apply review changes
* docs: Update cache-size-mb description in Editing-Configuration-Files.md
* docs: written on disk -> written to fs
* fix: flush torrent files when switching to sequential download
---------
Co-authored-by: Charles Kerr <charles@charleskerr.com >
2025-10-16 08:29:47 -05:00
Yat Ho
bae63e4cfc
fix: Band-Aid fix for utp speed limit ( #7541 )
...
* fix: don't clamp in `can_read_wrapper()` for TCP
* fix: notify bandwidth different in utp and TCP
2025-10-15 22:19:51 -05:00
Yat Ho
894c0859aa
ci: run clang-tidy for tests ( #7526 )
...
* ci: run clang-tidy for tests
* fix: clang-tidy warnings
* ci: run clang-tidy only when needed
2025-10-15 19:21:34 -05:00
Yat Ho
58c4386ddd
fix: correctly get Windows socket error codes in get_source_address ( #7524 )
...
* fix: use correct error codes in `get_source_address()` on windows
* fix: get `sockerrno` value before closing socket
2025-10-15 19:21:00 -05:00
Rukario
c885646d65
fix: also share grid-area: icon; across full-compact modes ( #7356 )
2025-10-15 19:19:15 -05:00
Yat Ho
b5affa7ff0
fix: ignore whitespaces in whitelist ( #7522 )
...
* feat: accept multiple delimiters in tr_strv_sep
* fix: ignore whitespaces in whitelist
2025-10-15 18:59:26 -05:00