- 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>
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.
* feat: use `Type=notify-reload` in daemon service
* build: keep systemd names consistent
---------
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* refactor: remove evbuffer use in transmission-remote
Keep reducing our libevent API use, especially outside of libtransmission
* chore: reduce some unnecessary diffs to main
* 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
* 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>
* 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
* 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
* 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
* 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>
`overflow-menu.js` also sees a favor of using `htmlFor = id` over `setAttribute('for', id)` for binding label to element id.
Update transmission-app.scss
The MOST common issue we see is a mis-configuration between APP and Library. If you compile the wolfSSL library independant of your application you MUST include the same configure options in the application as were used in the library.
If building with “./configure” the build system will generate the file <wolf-root>/wolfssl/options.h with all the settings needed for your application.
Source: https://www.wolfssl.com/docs/frequently-asked-questions-faq/#How_do_I_manage_the_build_configuration_for_wolfSSL