Charles Kerr
98e16a178f
refactor: add an enumeration of the script types ( #1934 )
...
* refactor: add an enumeration of the script types
This simplifies the API by having a single set of functions that can be
used for getting/setting all the script types.
2021-10-12 22:46:12 -05:00
Charles Kerr
ba6513ed4a
feat: add an option to run a script when a torrent is added ( #1896 )
...
Co-authored-by: cfpp2p <cfpp2p>
2021-10-12 16:32:32 -05:00
Charles Kerr
83f21b8e0e
refactor: prefer constexpr functions over static inline ones ( #1887 )
...
* refactor: prefer constexpr functions over static inline ones
2021-10-06 17:24:04 -05:00
Charles Kerr
003685b40a
refactor: use nullptr instead of NULL ( #1884 )
...
* refactor: use nullptr instead of NULL.
No functional changes; just more C++ification
2021-10-06 11:32:17 -05:00
Charles Kerr
cc204e0b2c
refactor: prefer "using" over "typedef" ( #1883 )
...
* refactor: prefer "using" over "typedef"
2021-10-06 09:26:07 -05:00
Charles Kerr
6b7f2f9e53
refactor: make tr_info.errorString a const char*. ( #1878 )
...
this field now points to tr_torrent.errorString instead of copying into
a standalone char array.
old: sizeof(tr_torrent) 2640
new: sizeof(tr_torrent) 2136
2021-10-05 12:23:07 -05:00
Charles Kerr
17ee032dd8
refactor: remove TR_BEGIN_DECLS, TR_END_DECLS ( #1837 )
...
* refactor: remove TR_BEGIN_DECLS, TR_END_DECLS
2021-09-25 11:07:22 -05:00
Mike Gelfand
db3d40d0ed
Switch to clang-format for code formatting, include Mac client
2021-08-16 00:38:29 +03:00
Chrool
cfce6e2e3a
configure anti brute force ( #1447 )
...
* add brute force configuration options
2020-11-14 12:43:42 -06:00
Charles Kerr
0bfbc3eba7
Sonarcloud warnings 4 ( #1499 )
...
* chore: fix some sonarcloud html warnings (e.g. deprecated attribute use)
* chore: uppercase literal suffixes
* chore: remove redundant casts
* chore: remove commented-out code
* chore: use qInfo() instead of std::cerr
2020-11-02 09:16:12 -06:00
Charles Kerr
efaa66a920
fix: resolve some lgtm warnings ( #1444 )
...
* fix: warnings found by LGTM static analyzer
2020-09-11 16:07:45 -05:00
Charles Kerr
677dc73eac
refactor: use GTest for running tests ( #1383 )
...
* refactor: use google-test on libtransmission tests
2020-08-11 13:11:55 -05:00
Charles Kerr
00be8d00d7
refactor: make variant_headers reusable to qt app. ( #1369 )
...
* refactor: make variant_headers reusable to qt app.
Torrent.cc's `change()` template methods are generically useful to deal
with tr_variant wrangling, but previously were only used in Torrent.cc.
This PR moves them into a new API `VariantHelpers.h` for use by Prefs,
Session, TorrentModel, etc.
2020-07-26 23:30:58 -05:00
Charles Kerr
fcda077cdd
chore: remove extraneous/default class destructors ( #1317 )
...
* chore: remove extraneous/default class destructors
* fixup! chore: remove extraneous/default class destructors
2020-06-15 09:30:29 -05:00
Charles Kerr
fa6df52d58
chore: remove unused methods ( #1207 )
...
* chore: remove unused methods in qt client
* chore: remove unused libtransmission methods
* chore: remove unused gtk methods
* chore: remove more unused libtransmission methods
* chore: remove more unused code found by @reardonia
2020-05-11 17:20:46 -05:00
Charles Kerr
44fc571a67
feat: add editDate to RPC ( #1056 )
...
* feat: add tr_stat.infoDate to note tr_info changes
The last time during this session that any tr_info field changed
(e.g. trackers/filenames edited or magnet torrent got metadata).
RPC clients can monitor this to know when to reload fields which
don't usually change.
2019-11-12 17:13:42 -06:00
Charles Kerr
abac811dd2
fix: gcc warnings in libtransmission/ and utils/ ( #843 )
...
* fix: __attribute__(__printf__) warnings
* fix: implicit fallthrough warning
* fixup! fix: implicit fallthrough warning
* fix: disable warnings for 3rd party code
Since we want to leave upstream code as-is
* fixup! fix: disable warnings for 3rd party code
* fixup! fix: disable warnings for 3rd party code
* silence spurious alignment warning
Xrefs
Discussion: https://stackoverflow.com/a/35554349
Macro inspiration: 90ac46f710/f/src/util/util_safealign.h (_35)
* fixup! fix: disable warnings for 3rd party code
* fixup! fix: implicit fallthrough warning
* make uncrustify happy
* remove uncrustify-test.sh
that's probably off-topic for this PR
* fixup! fix: __attribute__(__printf__) warnings
* Update libtransmission/CMakeLists.txt
Co-Authored-By: ckerr <ckerr@github.com>
* fixup! silence spurious alignment warning
* use -w for DISABLE_WARNINGS in Clang
* refactor: fix libtransmission deprecation warnings
* fix: pthread_create's start_routine's return value
This was defined as `void` on non-Windows but should have been `void*`
* chore: uncrustify
* fix: add DISABLE_WARNINGS option for SunPro Studio
* fix "unused in lambda capture" warnings by clang++
* fix 'increases required alignment' warning
Caused from storing int16_t's in a char array.
* fix net.c 'increases required alignment' warning
The code passes in a `struct sockaddr_storage*` which is a padded struct
large enough for the necessary alignment. Unfortunately it was recast as
a `struct sockaddr*` which has less padding and a smaller alignment. The
warning occrred because of these differing alignments.
* make building quieter so warnings are more visible
* fixup! fix 'increases required alignment' warning
* Fix -Wcast-function-type warnings in GTK+ app code
https://gitlab.gnome.org/GNOME/gnome-terminal/issues/96 talks about both
the issue and its solution.
GCC 8's -Wcast-function-type, enabled by -Wextra, is problematic in glib
applications because it's idiomatic there to recast function signatures,
e.g. `g_slist_free(list, (GFunc)g_free, NULL);`.
Disabling the warning with pragmas causes "unrecognized pragma" warnings
on clang and older versions of gcc, and disabling the warning could miss
actual bugs. GCC defines `void (*)(void)` as a special case that matches
anything so we can silence warnings by double-casting through GCallback.
In the previous example, the warning is silenced by changing the code to
read `g_slist_free(list, (GFunc)(GCallback)g_free, NULL);`).
* fixup! fix "unused in lambda capture" warnings by clang++
* fixup! fix "unused in lambda capture" warnings by clang++
* fix two more libtransmission compiler warnings
* fix: in watchdir, use TR_ENABLE_ASSERTS not NDEBUG
2019-11-06 11:27:03 -06:00
Mike Gelfand
10cdd7f790
Use explicit boolean conversions
2019-07-14 16:25:07 +03:00
Mike Gelfand
82df3a87f4
Update to Uncrustify 0.68.1
...
Tweak a few rules in the process. Now all code in cli, daemon, gtk,
libtransmission, qt, and utils is properly formatted with no manual
intervention.
2019-02-15 09:21:48 +03:00
Tavis Ormandy
cf7173df93
mitigate dns rebinding attacks against daemon
2018-01-15 23:31:25 +03:00
Mike Gelfand
f701d501a8
Move generic macros to a separate tr-macros.h file
2017-06-18 17:11:20 +03:00
Mike Gelfand
f27596238d
Include stdbool.h unconditionally
...
All the compilers should provide the header file by now. Remove `tr_isBool`
sanity checks along the way as compiler should guarantee that bool (_Bool)
values are 0 or 1 and nothing else.
2017-05-24 22:53:06 +03:00
Sebastiaan Lokhorst
ac661ff099
Allow the RPC server to listen on an IPv6 address
2017-04-26 17:46:36 +02:00
Mike Gelfand
4f9d9ad92b
Code style change leftovers
...
For some reason, GTK client wasn't fully processed. All the rest of changes
are mostly in comments.
2017-04-21 10:40:57 +03:00
Mike Gelfand
dadffa2c0f
Align type qualifiers to the right (code style)
...
This way all the qualifiers (`const`, `volatile`, `mutable`) are grouped
together, e.g. `T const* const x` vs. `const T* const x`. Also helps reading
types right-to-left, e.g. "constant pointer to constant T" vs. "constant
pointer to T which is constant".
2017-04-20 19:53:20 +03:00
Mike Gelfand
d7930984ef
Adjust uncrustify config, reformat all but Mac client
...
There're places where manual intervention is still required as uncrustify
is not ideal (unfortunately), but at least one may rely on it to do the
right thing most of the time (e.g. when sending in a patch).
The style itself is quite different from what we had before but making it
uniform across all the codebase is the key. I also hope that it'll make the
code more readable (YMMV) and less sensitive to further changes.
2017-04-20 10:01:22 +03:00
Mike Gelfand
2248d3670f
Get rid of $Id$ SVN keywords in source files
2016-09-02 23:10:15 +03:00
Jordan Lee
1af60ad6ad
use '#pragma once' instead of #ifndef..#define..#endif guards
2016-03-29 16:37:21 +00:00
Jordan Lee
77b5105ea0
fix bad TR_DEPRECATED macro on clang :P
2016-03-29 16:01:41 +00:00
Jordan Lee
8d38442cc1
give a useful definition of TR_DEPRECATED on msvc as well
2016-03-29 15:47:29 +00:00
Jordan Lee
5fbd24fda5
fix a handful of minor compiler warnings, mostly in the unit tests, eg field width shortening or implicit signed/unsigned conversions
2016-03-29 03:04:54 +00:00
Mike Gelfand
d4213f09d5
On second thought, bring back stdbool.h check back
...
Might be useful for uClibc (which still doesn't provide it) and others.
2015-12-29 19:44:50 +00:00
Mike Gelfand
eb8fc35ac6
Remove useless checks and definitions (C99)
...
Now that MSVC support for C99 is quite good, remove previously needed but
now unused checks and definitions, like PRI* format macros (including
PRIdMAX and TR_PRIuSIZE, replaced with %jd and %zu) and inline macro.
Also, remove ssize_t typedef and replace few occurences with ev_ssize_t.
Also, remove check for stdbool.h availability (guaranteed by C99) and
include it unconditionally (except when in C++ mode).
2015-12-29 19:37:31 +00:00
Mike Gelfand
4a4badd4af
Ongoing refactoring (use size_t instead of int)
2015-12-25 10:19:50 +00:00
Jordan Lee
39c48a162e
(trivial) remove trailing enum comma
2015-12-06 21:41:18 +00:00
Mike Gelfand
88983c1ac1
Use tr_sys_path_remove instead of remove
2015-10-23 04:09:40 +00:00
Mike Gelfand
f89fab72f9
Remove unused session tag
2015-10-18 18:39:14 +00:00
Mike Gelfand
2e6d5c8bc9
Add more booleans to the picture
2015-05-31 22:13:31 +00:00
Mike Gelfand
c845e35ce1
Fix format specifier warning introduced couple commits earlier
2014-12-13 17:04:14 +00:00
Mike Gelfand
74a5bdb9e6
Don't mess with MinGW printf support for now (tricky)
2014-12-13 16:00:14 +00:00
Mike Gelfand
52a9d774e4
Fix compilation on Windows
...
This should not affect non-Win32 platforms in any way.
As for Win32 (both MinGW and MSVC), this should hopefully allow for
unpatched compilation. Correct functioning is not yet guaranteed though.
2014-12-13 15:22:39 +00:00
Mitchell Livingston
0e01879974
Use built-in _WIN32 macro instead of WIN32
2014-07-04 00:00:07 +00:00
Jordan Lee
e40a7d5359
(trunk) replace the tr_metainfo_builder.isSingleFile and tr_info.isMultifile fields an 'isFolder' bool in both structs.
...
This makes the variable naming more uniform. It also clarifies the information we're really trying to convey -- previously, isSingleFile was false whenever the torrent held a directory tree, even if there was only a single file in the tree.
Sync the Mac OS X client's use to match the libtransmission variable names.
2014-06-08 22:16:01 +00:00
Jordan Lee
4b9626bb83
Licensing changes:
...
1. add the option the code to be used under GPLv2 or GPLv3; previously only GPLv2 was allowed
2. add the "proxy option" as described in GPLv3 so we can add future licenses without having to bulk-edit everything again :)
3. remove the awkward "exception for MIT code in Mac client" clause; it was unnecessary and confusing.
2014-01-19 01:09:44 +00:00
Jordan Lee
ea7d2482dd
introduce TR_PRIuSIZE macro for portable printf()ing of size_t. mikedld
2013-09-08 17:32:09 +00:00
Jordan Lee
4c8bda8805
function pointer type correctness. mikedld
2013-09-08 17:08:18 +00:00
Jordan Lee
4aa5c5c08d
(trunk, libT) #5476 : also, define __USE_MINGW_ANSI_STDIO and __STDC_FORMAT_MACROS on win32 systems so these new macros will work on mingw-w64 and mingw. (rb07)
2013-08-26 17:15:12 +00:00
Jordan Lee
9fe48d7a08
(trunk, libT) #5476 : correct the definitions of PRIu64 and PRIu32 on win32 systems; thanks to rb07 for this correction
2013-08-26 17:12:16 +00:00
Jordan Lee
5661aaad5e
add windows-friendly definitions for PRIu64, PRId64, PRIu32
2013-08-24 20:49:27 +00:00
Jordan Lee
027e3f3066
(trunk, libT) #4682 'Add return id from duplicate torrent torrent-add rpc' -- added.
2013-05-22 20:35:38 +00:00
Jordan Lee
cd09204a6e
(trunk) first draft of changing the FreeSpace API to behave as https://trac.transmissionbt.com/ticket/4076#comment:25 -- libT, rpc, qt, and gtk implementations.
2013-02-09 04:05:03 +00:00
Jordan Lee
69f3e31230
(libT) change the API signature for tr_torrentVerify() s.t. client code can be notified when the verify is finished
2013-01-31 21:58:25 +00:00
Jordan Lee
f75027d5e9
make all the log functions/structs/enums use a single 'tr_log' namespace, such as tr_logGetQueue, tr_logAddInfo, tr_logIsLevelActive
2013-01-25 23:34:20 +00:00
Mitchell Livingston
45c8174cc2
Use tr_torrentRenamePath() instead of the removed tr_torrentRename()
2013-01-23 03:44:47 +00:00
Jordan Lee
2e354dfb10
(libT) #1220 'change file and folder names': fold tr_torrentRename() into tr_torrentRenamePath(); it's not useful enough on its own to be a separate function
2013-01-22 04:57:45 +00:00
Jordan Lee
434bd6b287
(libT) #1220 'change top folder names' -- when the root file/folder is changed, update tr_info.name too.
2013-01-22 00:25:42 +00:00
Jordan Lee
10e4c297d6
(trunk) #1220 'change top folder names' -- tweak the API documentation in transmission.h
2013-01-19 08:50:57 +00:00
Jordan Lee
016f38f066
(trunk) #1220 'change top folder names' -- added support for this in libtransmission's C and RPC APIs.
2013-01-19 08:43:26 +00:00
Jordan Lee
7c6868b622
reduce the default peer counts: global goes from 240 to 200, per-torrent goes from 60 down to 50
2013-01-17 20:39:16 +00:00
Jordan Lee
3c9640bb8f
make tr_info.webseedCount and tr_info.trackerCount unsigned.
2012-12-30 22:06:45 +00:00
Jordan Lee
9e86a38345
#3833 'freespace' -- fix memset error.
2012-12-28 05:28:37 +00:00
Jordan Lee
c1559f3cc4
(trunk, libT) first drop of the tr_quark patch.
2012-12-22 20:35:19 +00:00
Jordan Lee
aea6d7cd6f
(trunk, libT) #5168 'make libtransmission's public funcs nonblocking when possible' -- remove tr_torrentRef() and tr_torrentUnref() as discussed in https://trac.transmissionbt.com/ticket/5168#comment:8
2012-12-14 20:04:37 +00:00
Jordan Lee
e96ed247fe
refactor libtransmission's tr_benc class as tr_variant.
2012-12-14 04:34:42 +00:00
Jordan Lee
079c78981c
(trunk) #5168 'make libtransmission's public funcs nonblocking when possible' -- first attempt.
2012-12-12 20:22:57 +00:00
Jordan Lee
3d38723ad9
Follow more common whitespace style conventions in the C code (libtransmission, daemon, utils, cli, gtk).
2012-12-05 17:29:46 +00:00
Jordan Lee
4963b65c1f
(trunk utils) #4979 "add manget link generator to transmission-show" -- done.
2012-07-23 15:28:27 +00:00
Jordan Lee
3398a48e57
(trunk libT) #4402 "Transmission Bandwidth allocation getting overflows" -- use gvdl's patch '4402-uint-bpsoverflow.patch'
2012-07-01 02:17:35 +00:00
Jordan Lee
b2d65db45f
(trunk) remove trailing spaces from code lines ;)
2012-02-03 16:44:07 +00:00
Mitchell Livingston
516164e78e
add an RPC session callback for when queue order changes
2011-08-27 23:54:10 +00:00
Jordan Lee
313bd9e211
Add a mechanism for enabling/disabling the stalled minutes feature. This is a pre-existing feature in the Mac client.
2011-08-07 19:24:33 +00:00
Jordan Lee
ae89e4683d
add user_data (void *) to the queue callback
2011-08-03 23:40:51 +00:00
Jordan Lee
ce77935009
Add a callback to be invoked when the queue starts a torrent.
2011-08-03 03:14:57 +00:00
Jordan Lee
307754e807
#671 "torrent queuing" -- modify the queue implementation s.t. every torrent has a queuePosition, even if it's not currently in the queue.
2011-08-02 03:59:54 +00:00
Jordan Lee
2e9d419bd4
#671 "torrent queuing" -- add a tr_stat.isStalled flag.
2011-08-01 23:27:11 +00:00
Jordan Lee
61174b007e
(trunk) #671 "torrent queuing" -- Preliminary implementation. Covers libtransmission; GTK+ and Qt clients, and rudimentary web client support.
2011-08-01 22:24:24 +00:00
Jordan Lee
3928a9d8e9
(trunk libT) #3219 "Don't scrape paused torrents" -- allow this as a 'hidden' option in settings.json, but don't add it to the GUI or to RPC.
2011-07-23 17:14:12 +00:00
Jordan Lee
35fb00fd9e
(trunk libt) #4315 "Transmission 2.31 crashes (segfaults) immediately after launch" -- remove the "max-open-files" code.
...
max-open-files might have been a nice configuration option once, but (1) we've never advertised it in the gui apps, and (2) the crazy cases are causing more trouble than this feature is worth. It's more complicated now after #4164 -- see #4294 , #4311 , and this ticket.
2011-06-24 22:39:20 +00:00
Jordan Lee
e6c0bdef6a
(trunk libT) save 48 bytes per tr_torrent object. whoo!
2011-03-31 16:08:31 +00:00
Jordan Lee
bc213eb0e9
(trunk libT) If transmission.h is being processed by a C++ compiler, it shouldn't #include stdbool.h
2011-03-23 18:25:41 +00:00
Jordan Lee
b4d36aeb54
(trunk) #4138 "use stdbool.h instead of tr_bool" -- done.
2011-03-22 15:19:54 +00:00
Jordan Lee
e04a64ca02
test & see if xcode/osx has stdbool.h
2011-03-22 14:45:04 +00:00
Jordan Lee
0d45f8994a
(trunk libt) more transmission.h copyediting
2011-03-21 17:08:10 +00:00
Jordan Lee
bf4eb642dc
(trunk libT) remove dead code: tr_sessionSetLazyBitfieldEnabled(), tr_sessionIsLazyBitfieldEnabled()
2011-03-21 16:33:16 +00:00
Jordan Lee
957732c5d0
(trunk libT) copyediting in transmission.h: fix some line wraps
2011-03-21 16:26:45 +00:00
Jordan Lee
b9a508f9fe
(trunk libT) remove unused configDir argument from tr_sessionGetDefaultSettings()
2011-03-21 16:22:39 +00:00
Jordan Lee
b46d3a2713
(trunk libT) #117 "UDP tracker protocol support (BEP #15 )" -- refactor announcer.c so that alternate tracker protocols can be supported.
...
This commit adds a set of package-visible structs and functions to allow delegating announces and scrapes to different protocol handlers. (Examples: struct tr_announce_request, struct tr_announce_response, struct tr_scrape_request, struct tr_scrape_response.) HTTP is the only protocol handler currently implemented; however, this provides a clean API for other protocol handlers, and having this in trunk will help shake out any bugs in this refactoring.
In addition, logging via the TR_DEBUG_FD environment variable is vastly improved in the announcer module now.
2011-03-11 04:19:01 +00:00
Jordan Lee
b10aea6fcc
(trunk) #4072 "remove the 'know peer count' field in Inspector" -- remove it from libtransmission too
2011-03-04 04:50:50 +00:00
Jordan Lee
2b9db3c242
(trunk libT) #4048 "use bitsets instead of bitfield in tr_completion" -- done.
...
Excuse the sprawl. Much of this didn't fit into self-contained commits.
2011-02-23 03:54:04 +00:00
Jordan Lee
e77a627d3c
(trunk libT) mark the two "progress" args to tr_torrentSetLocation() as volatile.
2011-02-19 20:10:05 +00:00
Jordan Lee
80d06d4c34
(trunk libT) add a bool to tr_peer_stat and the RPC peer list to denote whether or not a peer's connected via µTP
2011-02-18 04:07:43 +00:00
Jordan Lee
c4b1d1e6c5
(trunk libT) add C and RPC API for getting/setting uTP enabled flag
2011-02-18 00:33:11 +00:00
Jordan Lee
72f9ab91fa
(trunk) make tr_torrentName() a public function.
...
This has been a private function in libtransmission for awhile now but it makes more sense as a public function.
2011-02-15 15:18:51 +00:00
Jordan Lee
1fabb9b9ea
(trunk) #3675 "Not all .part files are removed" -- handle trashing files via RPC.
...
When libtransmission gets a "remove torrent" request from RPC, it tries to delegate the work. This is because the GTK+ and Mac clients don't want torrents disappearing in a different thread and causing possible thread issues. So the GTK+ and Mac clients get notification about this via libtransmission's RPC callback and remove the torrents themselves. Unfortunately, that notification doesn't include information about whether or not to delete local data.
This commit adds that information to the RPC callback so that the Mac and GTK+ clients will know whether or not to trash the local files when a third-party RPC client requests that at torrent and its files be deleted.
2011-02-06 17:30:46 +00:00
Jordan Lee
859570345d
(trunk libT) tweak the documentation on a couple of structs
2011-02-02 17:15:41 +00:00
Jordan Lee
2f5fc4ade7
(trunk libT) #3959 "by default, disable prefetch for lightweight builds" -- fixed.
...
User jusid reports prefetch causes load on his NMT to jump from <1 to 3-4. He requests a way to disable prefetch, and suggests that prefetch be disabled by default on lightweight builds. This commit adds a new settings.json key, "prefetch-enabled", which defaults to "true" on standard builds and "false" when compiled with --enable-lightweight.
2011-01-31 23:35:10 +00:00
Mitchell Livingston
a1eedd117d
#3940 Global displayed speed does not include webseeds; remove a now-unused libT speed function
2011-01-23 18:23:52 +00:00
Jordan Lee
879a2afcbd
Update the copyright year in the source code comments.
...
The Berne Convention says that the copyright year is moot, so instead of adding another year to each file as in previous years, I've removed the year altogether from the source code comments in libtransmission, gtk, qt, utils, daemon, and cli.
Juliusz's copyright notice in tr-dht and Johannes' copyright notice in tr-lpd have been left alone; it didn't seem appropriate to modify them.
2011-01-19 13:48:47 +00:00
Jordan Lee
a433b0c4cc
#3686 "add rpc command to cleanly shutdown daemon" -- added for libT, tr-daemon, tr-gtk, tr-remote, and the rpc spec
2011-01-15 18:12:45 +00:00
Juliusz Chroboczek
6f5ecd2ab8
Make the peer-socket-tos preference more user-friendly.
...
Possible values are now the strings default, lowcost, throughput etc.
Numeric values are used for non-standard values.
2011-01-15 17:10:54 +00:00
Jordan Lee
69a3b8bbab
(trunk, daemon) #3833 "'freespace' argument for 'session-get' RPC method" -- committing patch from taem, reardon, and rb07
2011-01-05 04:41:19 +00:00
Charles Kerr
21ca9e7770
(trunk libT) since messageLevel is a global variable, giving it a unique "tr_" prefix is a nice safeguard
2010-12-31 01:30:35 +00:00
Charles Kerr
e5bb3205a1
(trunk) Join the 21st century and use only 1 space at the end sentences. This commit is nearly as important as the semi-annual ones that remove trailing spaces from the ends of lines of code... :)
2010-12-27 19:18:17 +00:00
Charles Kerr
16a5fa4073
(trunk) #1408 "total downloading and seeding time per torrent" -- add patch to track how long a torrent has been seeding or downloading
2010-12-23 19:32:59 +00:00
Charles Kerr
3e848396bb
(trunk libT) make tr_torrentDeleteLocalData() a private function
2010-12-16 03:41:46 +00:00
Charles Kerr
821d315453
(trunk) #3675 "Not all .part files are removed" -- added patch for libtransmission and GTK+ client
2010-12-16 03:38:07 +00:00
Charles Kerr
3a5d17cfde
(trunk) #1538 "Make Web UI URL configurable" -- added to trunk. Patch by wereHamster
2010-12-12 18:22:11 +00:00
Charles Kerr
27a1b2dc33
(trunk) one of the periodic, banal "remove-trailing-spaces from lines of source code" cleanup commits
2010-12-12 16:43:19 +00:00
Charles Kerr
43ed57b278
(trunk libT) #2955 "Lazy Verification (aka Just-in-Time Verification)" -- implemented.
2010-12-09 20:43:23 +00:00
Charles Kerr
b1a7b981a2
(trunk) #3697 " https://trac.transmissionbt.com/ticket/3697 " -- make "blocklist.bin" visible in transmission.h
2010-11-01 00:12:30 +00:00
Charles Kerr
92620b72b0
(trunk) #3697 "make blocklist URL configurable" -- implemented in GTK+, Qt, and RPC
2010-10-31 17:16:12 +00:00
Charles Kerr
22c622a92f
(trunk) #3688 "remove proxy support" -- remove from libtransmission
2010-10-31 17:05:31 +00:00
Charles Kerr
92e06acf74
(trunk) RPC: add "scrape" to the trackerStats array, making it a proper superset of the "trackers" array. Also, very minor tweaks to the RPC spec
2010-09-01 20:54:04 +00:00
Mitchell Livingston
ef3865ec45
only show the eta string for idle seeding time remaining if the time is less than 2 minutes
2010-08-14 17:32:52 +00:00
Mitchell Livingston
c3715ca6ce
add a stat for the eta of the seeding idle limit, and use it in the Mac eta display
2010-08-14 15:30:43 +00:00
Daniel Lee
ff23406f38
(trunk) #3471:Add 'finished' to filterbar
2010-08-01 17:43:35 +00:00
Mitchell Livingston
8bee7fa23c
update Mac build for the change from inactive to idle
2010-07-24 03:19:41 +00:00
Charles Kerr
3655047e85
(trunk) #2560 : rename "inactive limit" to "idle limit". Add support in GTK+ client and preliminary support to Qt client
2010-07-24 02:57:39 +00:00
Mitchell Livingston
feb6e6b785
fix inactivity typo
2010-07-23 11:02:57 +00:00
Mitchell Livingston
89d36de917
clarify the inactivity key's string
2010-07-23 01:20:38 +00:00
Mitchell Livingston
fd0dd10419
First go at #2560 "inactive seeding time limit". libtransmission and Mac support are currently implemented.
2010-07-16 03:12:57 +00:00
Mitchell Livingston
235caa572b
Have libtransmission keep track of idle seconds. Use this value for determining the stalled minutes in the Mac code.
2010-07-11 21:02:30 +00:00
Charles Kerr
f88ce0a083
(trunk gtk) #3396 "Not UTF-8 aware string truncation" -- fixed
2010-07-07 00:44:52 +00:00
Mitchell Livingston
ed74e0009b
Mac build compiles again
2010-07-06 03:31:17 +00:00
Charles Kerr
6e5af03d78
(trunk) #3045 "speed units" -- change the public API of libtransmission based on feedback from livings
2010-07-04 06:07:21 +00:00
Charles Kerr
cdcc4705aa
(trunk) #3045 "make libtransmission's API byte-oriented instead of KiB-oriented." -- implemented. This is a largish commit and will break the mac build for a little while.
2010-07-03 00:25:22 +00:00
Charles Kerr
a5a1f38393
(trunk libT) fix more issues found by -Wconversion
2010-07-01 05:14:34 +00:00
Charles Kerr
254a1f15cb
(trunk libT) down the rabbit hole: various minor type correctness changes unearthed by -Wconversion
2010-06-30 16:40:19 +00:00
Charles Kerr
7638e44724
(trunk libT) #3320 "If the seed ratio is already met" -- fix a bug in r10848 reported by BMW
2010-06-25 15:39:17 +00:00
Charles Kerr
7e239e932e
(trunk) #3320 : "If the seed ratio is already met when download completes, the Mac callback options do not occur" -- possible fix. needs confirmation from OP or BMW
2010-06-25 06:57:34 +00:00
Charles Kerr
e70bebf930
(trunk) #1521 "memory cache to reduce disk IO" -- commit block-cache-rc1.diff to trunk for the nightlies.
2010-06-19 14:25:11 +00:00
Charles Kerr
37f90426c1
(trunk libT) revert r10661 s.t. DHT peers are preferred slightly over PEX peers. This reversion comes after reading "Understanding the Properties of the BitTorrent Overlay" (2007, Al-Hamra) @ http://arxiv.org/pdf/0707.1820 at Juliusz's suggestion. Also tweak the announce's 'numwant' threshold based on findings from the same paper.
2010-05-28 01:41:30 +00:00
Charles Kerr
fcda98c86f
(trunk libT) promote PEX peers up the food chain a little bit
2010-05-19 15:53:09 +00:00
Charles Kerr
f7d4377fa1
(trunk libT) minor API cleanup: constify array arguments in tr_torrentSetFilePriorities(), tr_torrentInitFileDLs(), and tr_torrentSetFileDLs()
2010-05-12 03:03:29 +00:00
Charles Kerr
da2ef53eeb
(trunk) #1796 "run script after torrent completion" -- implemented for libT, RPC, and the GTK+ and Qt clients
2010-05-08 22:42:28 +00:00
Charles Kerr
2b9ab542cb
(trunk) #3060 "Local Peer Discovery" -- in the code, rename LDS as LPD for Local Peer Discovery
2010-05-08 08:42:45 +00:00
Mitchell Livingston
423c3eab84
#3060 prefer peers from local discovery over those from a tracker
2010-05-01 19:16:52 +00:00
Charles Kerr
5a34347f4f
(trunk) #3060 -- Local Peer Discovery patch from Eszet
2010-05-01 16:04:00 +00:00
Charles Kerr
d384b38f07
(trunk) minor transmission.h API cleanup.
...
1. remove tr_sessionGetActiveTorrentCount()
2. make tr_sessionCountTorrents() package-visible instead of public.
3. make tr_torrentGetActivity() private instead of public.
2010-04-29 23:08:11 +00:00
Charles Kerr
00f452d942
(trunk libT) #3162 "allow optional end-user configuration of TCP_CONGESTION" -- add jch's implementation of this to trunk for 2.00
2010-04-22 01:49:16 +00:00
Charles Kerr
0aa422e262
(trunk libT) #1869 "new status for torrents that reached the seed ratio" -- maybe fix the issue reported by leena
2010-04-14 00:03:23 +00:00
Mitchell Livingston
05cf5fccef
when the ratio is set to unlimited when resuming, reload the inspector
2010-04-02 18:05:39 +00:00
Mitchell Livingston
6a4954e867
#1869 Move the finished state to libtransmission. This setting is now remembered between launches. This also causes torrents that hit the seed ratio to not have this setting changed to unlimited until start.
2010-04-02 17:57:25 +00:00
Charles Kerr
e1607c8354
(trunk) #2898 "add pausing and deletion to daemon" -- committed patch from Longinus00 to trunk for 2.00
2010-03-17 19:23:03 +00:00
Charles Kerr
fe3d9ed95a
(trunk) one of the least interesting commits ever: remove trailing spaces from source code lines...
2010-03-17 17:07:40 +00:00
Charles Kerr
b850349479
(trunk) #2993 "'Downloaded' much greater than 'Have' or 'verified'" -- add new congestion-based throttle for 2.0
2010-03-08 04:29:58 +00:00
Charles Kerr
d83f8e09d3
(trunk libT) #2885 "'Move data file' does not change the location for data yet to be downloaded" -- fixed in trunk for 1.92
2010-03-06 22:33:45 +00:00
Mitchell Livingston
bd635f22d0
for scrapes: add a new field to distinguish from error messages returned from the tracker, and scrape timeouts, so that they can be displayed differently
2010-02-25 23:06:05 +00:00
Mitchell Livingston
db644587d0
update to 1.91+
2010-02-22 02:04:47 +00:00
Mitchell Livingston
f3b98a6c18
avoid unnecessary setting of id when calling tr_torrentSetAnnounceList
2010-02-22 00:15:27 +00:00
Charles Kerr
b7b5a0e427
(trunk) #2894 "tr_torrentGetFileDL() and tr_torrentGetFilePriority() should go away" -- get rid of it in the mac client and libtransmission too
2010-02-11 15:05:07 +00:00
Charles Kerr
74e3484e75
(trunk) add a new field to distinguish from error messages returned from the tracker, and announce timeouts, so that they can be displayed differently
2010-02-05 05:16:18 +00:00
Charles Kerr
36d97610bd
(trunk) #2802 , #2716 , #2717 -- remember magnet links and their settings between sessions, and allow their trackers to be modified
2010-02-02 22:45:22 +00:00
Charles Kerr
094f76d9ca
(trunk libT) #2846 "Priority Selection in `Add' Window" -- added RPC hooks for doing this via remote client
2010-02-02 07:48:03 +00:00
Charles Kerr
f7c98630d7
(trunk libT) #2720 "Misleading error message when adding a duplicate magnet transfer" -- add a public API call in libtransmission for testing to see if we already have a magnet link as a torrent
2010-02-02 01:15:26 +00:00
Charles Kerr
9eb07e9b16
(trunk) No code changes here... filling in some of the blanks in the "peers" and "utils" doxygen groups' documentation.
2010-01-19 19:37:00 +00:00
Charles Kerr
de82e235af
(trunk) second half of r9927.... :/
2010-01-13 22:46:22 +00:00
Charles Kerr
a77770a51a
(trunk) add tr_torrent_stat.id to RPC documentation. Rename tr_tracker_stat.identifier as tr_tracker_stat.id for consistency with tr_torrent.id
2010-01-13 22:40:07 +00:00
Charles Kerr
5decc9ffb1
(trunk) add a log message telling the user which configDir is being used and whether or not its settings.json was used
2010-01-12 16:43:37 +00:00
Mitchell Livingston
6138daec3f
add an identifier to trackers, for use by the ui's (this should hopefully fix the problem for removing trackers with "invisible" trackers)
2010-01-10 02:34:00 +00:00
Charles Kerr
0d91f3cadf
(trunk libT) more documentation and doxygen markup
2010-01-06 00:18:33 +00:00
Charles Kerr
182cbb8b90
(trunk) one of the less-interesting commits in a while: remove trailing spaces from lines
2010-01-05 23:47:50 +00:00
Charles Kerr
42fb92170a
(trunk libT) remove dead code: tr_announce_list_err
2010-01-04 20:14:25 +00:00
Charles Kerr
e61e0fcd3d
(trunk libT) improved API documentation / commenting for doxygen
2010-01-01 22:13:27 +00:00
Charles Kerr
3e2269e5e3
(trunk libT) #2632 "Add streaming capability to libtransmission (but not the Transmission GUI clients)" -- revert this feature due to pushback from devs and users and the 1.80 freeze
2009-12-24 18:01:48 +00:00
Charles Kerr
12ffdb7d87
(trunk libT) #2632 "Add streaming capability to libtransmission (but not the Transmission GUI clients)" -- implemented
2009-12-24 01:02:54 +00:00
Charles Kerr
d9369718b3
(trunk) #2548 "T's request queue can send out too many duplicate requests" -- (1) fix r9465 implementation bug that caused some peers to get starved of requests if they rejected a request or choked, then unchoked us. (2) increase a block request's TTL by 15 seconds to reduce cancel/req cycles between two or more blocks (3) add a debug mode to the GTK+ client's peer tab to watch the pending requests counts both up & down
2009-12-16 18:20:01 +00:00
Charles Kerr
20a4560198
(trunk libT) remove the test for duplicate trackers in the announce list.
2009-12-12 04:12:04 +00:00
Charles Kerr
4b3b5dcd8a
(trunk libT) by request, remove a clientData argument from tr_torrentDeleteLocalData() (reverts r9690)
2009-12-09 03:51:21 +00:00
Charles Kerr
5f9f97ee2a
(trunk libT) by request, add a clientData argument to tr_torrentDeleteLocalData()
2009-12-09 03:40:35 +00:00
Charles Kerr
9f347f8df1
(trunk) #2119 "daemon should reload settings.json on SIGHUP" -- reload the blocklists, too. Suggested by nano- in irc.
2009-12-01 00:07:18 +00:00
Mitchell Livingston
0563580dda
inline tr_removeElementFromArray()
2009-11-30 01:31:05 +00:00
Charles Kerr
a38fb59c6f
(trunk libT, gtk) #2625 "ability to create a magnet link" -- add hook for generating a magnet link from a tr_torrent, and use it in the Torrent Properties dialog in the GTK+ client
2009-11-29 08:27:55 +00:00
Charles Kerr
cebcc3b6ef
(trunk libT) #2096 "magnet links" -- add a callback for clients to know when a magnet torrent's metainfo is finished downloading.
2009-11-26 17:58:44 +00:00
Charles Kerr
1101f6710e
(trunk libT) #2430 "Peer atom pool grows too large" -- add an atom expiration system along the lines of the suggestions in this ticket's comments. jch and KyleK, let me know if you think anything in this commit needs improvement.
2009-11-26 05:13:58 +00:00
Charles Kerr
3610c5ea62
(trunk) more magnet fixes
2009-11-24 17:10:40 +00:00
Charles Kerr
d5ae900e4e
(trunk) #2096 "magnet links": in libT, cleanup. in GTK+ client, add different status text in the main window for magnet torrents: "downloading .torrent data"
2009-11-24 15:51:16 +00:00
Charles Kerr
f69e335291
(trunk) #2096 : Magnet, BEP #9 support
2009-11-24 02:16:31 +00:00
Mitchell Livingston
2b492cdb6e
#2592 remove swarm speed from libtransmission
2009-11-22 01:03:36 +00:00
Charles Kerr
1fbcab8880
(trunk libT) make tr_findTorrentFromHash() a public API
2009-11-13 16:41:00 +00:00
Charles Kerr
225384fcc5
(trunk libT) #2502 : announce own IPv6 address to peers
2009-11-09 05:45:16 +00:00
Mitchell Livingston
130c9af1d1
on second thought, the other UI's might want this value sooner or later, and it's cheaper to calculate it in the stat function
2009-10-25 18:49:20 +00:00
Mitchell Livingston
a5e0b6e5b2
since the Mac UI is the only one to use it, move percentRatio calculation into the Mac code
2009-10-25 18:45:35 +00:00
Charles Kerr
c85ee09fef
(trunk) trunk's just been too stable lately. #2119 : reload settings.json on SIGHUP
2009-10-23 03:41:36 +00:00
Charles Kerr
95989a0b21
(trunk libT) add callback notification when a torrent has been moved via RPC
2009-10-21 14:02:02 +00:00
Charles Kerr
0c53f3fa62
(trunk libT) add a couple of hooks for the mac client to use when migrating from its earlier move-on-complete code
2009-10-21 05:03:10 +00:00
Charles Kerr
0df58b9ab4
(trunk libT) change the new public API a little bit -- clearer, but a little wordier
2009-10-20 04:43:51 +00:00
Charles Kerr
27b9f6e27d
(trunk libT) make the ".part" suffix an optional feature as per BMW's request. Clean up the code a little.
2009-10-20 03:14:44 +00:00
Charles Kerr
5a96ee9fc4
(trunk libT) make tr_torrentFindFile() a public API
2009-10-19 13:55:42 +00:00
Charles Kerr
05c77cc975
(trunk) #1483 : move completed torrents to a user-specified directory + #629 : different file extension for incomplete files
2009-10-19 05:05:00 +00:00
Mitchell Livingston
2af26e1d7c
#2488 when sorting by tracker, first use the tracker that comes first alphabetically
2009-10-11 13:42:10 +00:00
Charles Kerr
2a22e1782f
(trunk libT) #2489 : tr_torrentSetAnnounceList() should check for invalid and duplicate announce URLs
2009-10-10 19:16:21 +00:00
Charles Kerr
61042404ad
(trunk) replace tr_tracker_stat's "isActive" field with the more descriptive "isBackup"
2009-10-10 00:17:00 +00:00
Charles Kerr
f607c7591a
(trunk) #2463 : 'Mac Client shows huge "next announce in" timer'
2009-10-09 21:30:34 +00:00
Mitchell Livingston
79b5c3e596
show N/A for peer counts when there hasn't been a scrape/announce yet
2009-09-28 15:16:23 +00:00
Charles Kerr
4a09a1de13
(trunk) remove tr_stats fields: downloaders, leechers, seeders, timesCompleted as per discussion with livings
2009-09-26 06:20:33 +00:00
Charles Kerr
28e119c1bb
(trunk) copy-by-value changes to tr_tracker_stat
2009-09-26 03:36:58 +00:00
Charles Kerr
5b46b63b23
(trunk gtk) implement 'edit trackers' window in gtk client
2009-09-26 00:48:07 +00:00
Charles Kerr
86ada18266
(trunk)
...
#1699 : Announce to multiple trackers at once
#2424 : Tracker address is not listed in GTK client.
2009-09-25 21:05:59 +00:00
Charles Kerr
23b3faada4
(trunk libT) #2372 : 'Unregistered Torrent Pass' Pauses Download
2009-08-31 16:41:54 +00:00