]> granicus.if.org Git - transmission/log
transmission
13 years ago(trunk libT) #3991 "connection encryption stopped working" -- silence minor compiler...
Jordan Lee [Wed, 9 Feb 2011 02:26:35 +0000 (02:26 +0000)]
(trunk libT) #3991 "connection encryption stopped working" -- silence minor compiler warning. patch by ijuxda.

13 years agobump to version 2.21+
Jordan Lee [Tue, 8 Feb 2011 21:07:15 +0000 (21:07 +0000)]
bump to version 2.21+

13 years ago(trunk) bump to 2.21 2.21
Jordan Lee [Tue, 8 Feb 2011 21:05:30 +0000 (21:05 +0000)]
(trunk) bump to 2.21

13 years ago(trunk libT) #3993 "Version (-V) option no longer outputs svn revision no." -- fixed.
Jordan Lee [Tue, 8 Feb 2011 04:17:33 +0000 (04:17 +0000)]
(trunk libT) #3993 "Version (-V) option no longer outputs svn revision no." -- fixed.

update-version-h.sh tries to use {{{svnversion}}} when possible. But when it's not, it looks through the "$Id:" lines in the source file comments and uses the largest version number it finds. The new files tr-dht.[ch] didn't have the line of its $Id: comment formatted in the way update-version-h.sh expected. tr-dht.[ch]'s $Id: line has been homogenized to be like everyone else's...

13 years agoadd the application type to Info.plist
Mitchell Livingston [Tue, 8 Feb 2011 02:02:09 +0000 (02:02 +0000)]
add the application type to Info.plist

13 years ago#3987 Display issue in the main window in the German localisation
Mitchell Livingston [Tue, 8 Feb 2011 01:26:35 +0000 (01:26 +0000)]
#3987 Display issue in the main window in the German localisation

13 years agoset the visibility priority for high and low priority menu items
Mitchell Livingston [Tue, 8 Feb 2011 01:08:30 +0000 (01:08 +0000)]
set the visibility priority for high and low priority menu items

13 years agohave miniupnp use the project's flags
Mitchell Livingston [Tue, 8 Feb 2011 00:41:01 +0000 (00:41 +0000)]
have miniupnp use the project's flags

13 years ago#3994 don't compile assert statements in Release mode
Mitchell Livingston [Tue, 8 Feb 2011 00:36:57 +0000 (00:36 +0000)]
#3994 don't compile assert statements in Release mode

13 years ago(libT) #3991 "Connection encryption stopped working" -- fixed.
Jordan Lee [Tue, 8 Feb 2011 00:31:50 +0000 (00:31 +0000)]
(libT) #3991 "Connection encryption stopped working" -- fixed.

This is a pretty straightfoward bug: the call to evbuffer_peek() should not have been wrapped in assert().

13 years ago(trunk gtk) refresh the translations again for 2.21
Jordan Lee [Tue, 8 Feb 2011 00:19:22 +0000 (00:19 +0000)]
(trunk gtk) refresh the translations again for 2.21

13 years ago(trunk libT) silence minor "unused function argument" compiler warning
Jordan Lee [Mon, 7 Feb 2011 23:09:36 +0000 (23:09 +0000)]
(trunk libT) silence minor "unused function argument" compiler warning

13 years ago(trunk qt) refresh the strings for transmission-qt 2.20; updated es translation from...
Jordan Lee [Mon, 7 Feb 2011 22:54:18 +0000 (22:54 +0000)]
(trunk qt) refresh the strings for transmission-qt 2.20; updated es translation from rb07 :)

13 years agobump version to 2.20+
Mitchell Livingston [Sun, 6 Feb 2011 20:25:53 +0000 (20:25 +0000)]
bump version to 2.20+

13 years agobump to 2.20 2.20
Jordan Lee [Sun, 6 Feb 2011 20:15:38 +0000 (20:15 +0000)]
bump to 2.20

13 years agoset 2.20 release date in NEWS
Mitchell Livingston [Sun, 6 Feb 2011 20:12:18 +0000 (20:12 +0000)]
set 2.20 release date in NEWS

13 years ago(trunk libT) #3975 "tr_bencToFile() contains unnecessary calls to stat() and unlink...
Jordan Lee [Sun, 6 Feb 2011 18:56:44 +0000 (18:56 +0000)]
(trunk libT) #3975 "tr_bencToFile() contains unnecessary calls to stat() and unlink()" -- fixed for win32.

remove() doesn't have the same behavior on Windows. On that platform, we should use MoveFileEx( oldpath, newpath, MOVEFILE_REPLACE_EXISTING )." Thanks to rb07 for testing & confirming the fix.

13 years ago(trunk gtk) #3866 "Popup menu for file list manipulation" -- removing from the 2...
Jordan Lee [Sun, 6 Feb 2011 18:50:35 +0000 (18:50 +0000)]
(trunk gtk) #3866 "Popup menu for file list manipulation" -- removing from the 2.20 milestone

Looking over the 2.20 tickets, this one keeps sticking out. A popup menu may be useful if the "delete files" ticket is accepted in 2.30, but for this release (2.20) it doesn't really add anything new. One lesson from the 2.1x cycle was that features are a harder to remove than to add. So I'm going to hold off on adding this feature until it has a clear raison d'ĂȘtre.

13 years agoupdate French localization for 2.2
Mitchell Livingston [Sun, 6 Feb 2011 18:07:32 +0000 (18:07 +0000)]
update French localization for 2.2

13 years ago#3675 handle trashing data over RPD in the Mac client
Mitchell Livingston [Sun, 6 Feb 2011 17:32:16 +0000 (17:32 +0000)]
#3675 handle trashing data over RPD in the Mac client

13 years ago(trunk) #3675 "Not all .part files are removed" -- handle trashing files via RPC.
Jordan Lee [Sun, 6 Feb 2011 17:30:46 +0000 (17:30 +0000)]
(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.

14 years ago(trunk libT) #3931 "'Announce is Queued' but doesn't get announced" -- remove the...
Jordan Lee [Sat, 5 Feb 2011 18:46:10 +0000 (18:46 +0000)]
(trunk libT) #3931 "'Announce is Queued' but doesn't get announced" -- remove the 'unresponsive tracker' penalty from torrents whose announce time has been reached.

The 'bad tracker' penalty was introduced in 2009 after a top tier trackers went down. Announces to it would hang, tying up an announce slot in libcurl for minutes at a time. If a user had enough torrents from that tracker, it could bottleneck all announce slots. The workaround was to deprioritize failing trackers so that they wouldn't obstruct other trackers.

Its implementation could be better, however. There are two parts:

  1. Deciding how frequently to retry unresponsive trackers

  2. Once an unresponsive tracker announce was ready to go, it would be bumped down the queue if other announces were ready too.

Part 2 probably contributes to #3931. If there are enough torrents loaded, there will always be good tracker announces that get pushed ahead of a bad one in the queue. Modifying 2's heuristics would be one option, but it seems simpler to remove it altogether now that getRetryInterval() grades more hashly for consecutive failures. Altering the retry interval also gives better visual feedback to users than Part 2 did.

This commit removes "Part 2" as described above.

14 years ago(trunk libT) announcer.c cleanup, part 1
Jordan Lee [Sat, 5 Feb 2011 16:45:06 +0000 (16:45 +0000)]
(trunk libT) announcer.c cleanup, part 1

Separating this commit into a few different stages. This one is superficial/readability changes, such as grouping related functions together.

14 years ago(trunk libT) #3980 "segfault when adding many torrents remotely" -- possible fix.
Jordan Lee [Sat, 5 Feb 2011 05:03:00 +0000 (05:03 +0000)]
(trunk libT) #3980 "segfault when adding many torrents remotely" -- possible fix.

gtk/main.c's onRPCChanged() is called from inside the libtransmission thread, yet it still made GTK+ calls to modify the GTK+ client's tr-core object when a torrent was added. This caused a race condition inside of the GTK+ internals. onRPCChanged() already knows to delegate work back to the GTK+ thread when a torrent is removed via RPC. This commit uses the same kind of mechanism to delegate work back to the GTK+ thread when a torrent is added via RPC.

14 years agobump to nightly peer-id
Jordan Lee [Sat, 5 Feb 2011 04:22:38 +0000 (04:22 +0000)]
bump to nightly peer-id

14 years agoupdate Dutch localization
Mitchell Livingston [Fri, 4 Feb 2011 13:22:45 +0000 (13:22 +0000)]
update Dutch localization

14 years ago(trunk libT) #3978 "Message window column sorting fails and triggers gtk warnings...
Jordan Lee [Fri, 4 Feb 2011 06:12:55 +0000 (06:12 +0000)]
(trunk libT) #3978 "Message window column sorting fails and triggers gtk warnings" -- fixed.

I'm not sure why sorting was in there in the first place; it doesn't make sense in a message log.. Disabling sorting fixes this bug.

14 years agobump to 2.20 beta 4 2.20b4
Jordan Lee [Fri, 4 Feb 2011 04:00:16 +0000 (04:00 +0000)]
bump to 2.20 beta 4

14 years ago(trunk libT) minor futzing: remove unnecessary "assert( tr_isTorrent( tor ) );" calls
Jordan Lee [Thu, 3 Feb 2011 22:53:02 +0000 (22:53 +0000)]
(trunk libT) minor futzing: remove unnecessary "assert( tr_isTorrent( tor ) );" calls

Remove these calls from private functions whose callers have already asserted the same thing.

14 years ago(trunk qt) in the "new torrent" dialog, have the "save to" and "source folder" file...
Jordan Lee [Thu, 3 Feb 2011 22:13:31 +0000 (22:13 +0000)]
(trunk qt) in the "new torrent" dialog, have the "save to" and "source folder" file dialogs be QFileDialog::DirectoryOnly rather than QFileDialog::Directory

14 years ago(trunk libT) #3967 "regression: transmission-daemon's non-inotify watchdir is broken...
Jordan Lee [Thu, 3 Feb 2011 17:37:53 +0000 (17:37 +0000)]
(trunk libT) #3967 "regression: transmission-daemon's non-inotify watchdir is broken in 2.20 betas" -- fixed.

When inotify isn't available, watch.c uses readdir() to look for new .torrent files. It keeps a list of old .torrent files internally so that it doesn't try to keep re-adding the same file. This list is stored in an evbuffer. As part of the libevent2 upgrade (#3836), r11594 changed how the buffer is searched by replacing the (deprecated) event_find() call with libevent2's evbuffer_search(). However the latter's semantics are different in that searching stops when '\0' is reached, so '\0' is no longer a good filename delimiter. Fixed by changing watch.c's internal delimiter from '\0' to '\t' ... so all those torrents with tabs in their filenames had better watch out.

14 years agoupdate Simplified Chinese localization for 2.2
Mitchell Livingston [Thu, 3 Feb 2011 12:36:30 +0000 (12:36 +0000)]
update Simplified Chinese localization for 2.2

14 years ago(trunk libT) now that bencode.c doesn't call stat() anymore, we can remove a couple...
Jordan Lee [Thu, 3 Feb 2011 06:19:54 +0000 (06:19 +0000)]
(trunk libT) now that bencode.c doesn't call stat() anymore, we can remove a couple of #includes

14 years ago(trunk libT) #3519 "Webseeds don't work" -- handle nonresponsive webseeds
Jordan Lee [Thu, 3 Feb 2011 04:17:48 +0000 (04:17 +0000)]
(trunk libT) #3519 "Webseeds don't work" -- handle nonresponsive webseeds

Don't keep trying to use nonresponsive webseeds or it will generate unnecessary network traffic and kill us during endgame.

14 years ago(trunk libT) #3975: "tr_bencToFile() contains unnecessary calls to stat() and unlink...
Jordan Lee [Thu, 3 Feb 2011 00:48:05 +0000 (00:48 +0000)]
(trunk libT) #3975: "tr_bencToFile() contains unnecessary calls to stat() and unlink()" -- fixed.

When saving a tr_benc object to disk at $dst, bencode.c saves it to a tmp file in the same directory as $dst, unlinks $dst if it exists, and then renames $tmp as $dst. This commit removes the middle step, which is unnecessary because rename() has guarantees about atomically overwriting $dst.

14 years ago(trunk libT) #3973 "JIT verification verifies fresh downloaded torrents" -- remove...
Jordan Lee [Wed, 2 Feb 2011 23:33:25 +0000 (23:33 +0000)]
(trunk libT) #3973 "JIT verification verifies fresh downloaded torrents" -- remove a debugging printf() statement that shouldn't have been checked in.

14 years ago(trunk libT) #3973 "JIT verification verifies fresh downloaded torrents" -- improveme...
Jordan Lee [Wed, 2 Feb 2011 23:29:17 +0000 (23:29 +0000)]
(trunk libT) #3973 "JIT verification verifies fresh downloaded torrents" -- improvement to r11813.

r11813 fixed the timestamp issue by fsync()ing files before close()ing them in tr_close_file(). This causes a little overhead as even read-only files cause a sync as their atimes are modified. Instead, we should call fsync() further back in the call chain in tr_fdFileClose() so that we can know to only sync torrent files that were opened with write access.

14 years ago(trunk libT) #3973 "JIT verification verifies fresh downloaded torrents" -- win32...
Jordan Lee [Wed, 2 Feb 2011 23:19:54 +0000 (23:19 +0000)]
(trunk libT) #3973 "JIT verification verifies fresh downloaded torrents" -- win32 portability fix for r11813.

fsync() doesn't exist on Windows. bencode had a private function, tr_fsync(), that is a portability wrapper around fsync() on *nix and _commit() on win32. Make this function package-visible, rather than private, so fdlimit.c can use it too.

14 years agoupdate European Portuguese for 2.2
Mitchell Livingston [Wed, 2 Feb 2011 22:55:13 +0000 (22:55 +0000)]
update European Portuguese for 2.2

14 years ago(trunk libT) #2955 "verify pieces only when necessary, or when the user requests...
Jordan Lee [Wed, 2 Feb 2011 21:17:16 +0000 (21:17 +0000)]
(trunk libT) #2955 "verify pieces only when necessary, or when the user requests it." -- improvements to .resume file

As pointed out by longinus00 and ijuxda, storing per-piece timestamps in the .resume file can involve a lot of overhead. This commit reduces the overhead by adding a couple of optimizations: (1) in cases where *all* or *none* of the files' pieces were checked after the file's mtime, we can safely fold all the pieces' mtimes into a single per-file mtime. (2) since unix time takes up a lot of space when rendered as a benc integer, find a common per-file "baseline" number, then store the pieces' timestamps as offsets from that number.  Also add documentation explaining this new format, and also better explaining the pre-2.20 progress format.

14 years ago(trunk libT) #3973 "JIT verification verifies freshly-downloaded torrents" -- test...
Jordan Lee [Wed, 2 Feb 2011 20:30:04 +0000 (20:30 +0000)]
(trunk libT) #3973 "JIT verification verifies freshly-downloaded torrents" -- test fix.

Files downloaded in Transmission 2.20 betas [1..3] forced each piece to be checked twice -- once on download, and once when uploading the piece for the first time. Older versions of Transmission didn't perform the latter check unless the file had changed after it was downloaded. This commit restores that behavior.

14 years ago(trunk libT) tweak the documentation on a couple of structs
Jordan Lee [Wed, 2 Feb 2011 17:15:41 +0000 (17:15 +0000)]
(trunk libT) tweak the documentation on a couple of structs

14 years ago(trunk libT) minor code cleanup to inout.c's readOrWriteBytes().
Jordan Lee [Wed, 2 Feb 2011 06:06:09 +0000 (06:06 +0000)]
(trunk libT) minor code cleanup to inout.c's readOrWriteBytes().

Use ijuxda's suggestion of making the fstat(fd) call dependent on (fd>=0) rather than (!err).

14 years ago(trunk libT) silence some unused variable warnings from gcc when building with -DNDEBUG
Jordan Lee [Wed, 2 Feb 2011 05:18:33 +0000 (05:18 +0000)]
(trunk libT) silence some unused variable warnings from gcc when building with -DNDEBUG

14 years ago(trunk daemon) #3775 "'-tall' no longer works for transmission-remote" -- fixed.
Jordan Lee [Wed, 2 Feb 2011 03:17:38 +0000 (03:17 +0000)]
(trunk daemon) #3775 "'-tall' no longer works for transmission-remote" -- fixed.

looks like this was broken in r10907 for #3368 in 2.00 when we added "-ta" as the short form of "--tracker-add". "-ta" seems to be conflicting with "-tall". This can be fixed by changing --tracker-add's short form.

14 years ago(trunk gtk) #3972 "Verify progress changes not displaying" -- fixed.
Jordan Lee [Wed, 2 Feb 2011 02:45:20 +0000 (02:45 +0000)]
(trunk gtk) #3972 "Verify progress changes not displaying" -- fixed.

make sure to call gtk_list_store_set() on rows matching torrents whose tr_stat.recheckProgress value has changed, triggering a row change event that causes the verify progress change to be displayed.

14 years ago(trivial) make the implementation of tr_torPieceCountBlocks(), tr_torPieceCountBytes...
Jordan Lee [Tue, 1 Feb 2011 21:32:03 +0000 (21:32 +0000)]
(trivial) make the implementation of tr_torPieceCountBlocks(), tr_torPieceCountBytes(), and tr_torBlockCountBytes() consistent.

14 years ago(trunk libT) #3956 "tr_bencFree() could be faster" -- fix memory error.
Jordan Lee [Tue, 1 Feb 2011 17:56:19 +0000 (17:56 +0000)]
(trunk libT) #3956 "tr_bencFree() could be faster" -- fix memory error.

#3956's r11780 has uncovered a longstanding memory error that occurs when tr_bencParse() fails to parse a dict and leaves a dangling key. This is fixed by cleaning up the key.

14 years ago(trunk gtk) #3817 "use the OS' proxy support" -- fix memory leaks in the GTK+ impleme...
Jordan Lee [Tue, 1 Feb 2011 17:46:42 +0000 (17:46 +0000)]
(trunk gtk) #3817 "use the OS' proxy support" -- fix memory leaks in the GTK+ implementation.

r11512 introduced a handful of memory leaks by not freeing the GConfValue objects after use.

14 years ago(trunk gtk) #3876 "Give filesize its own column in the Files tree" -- fix minor memor...
Jordan Lee [Tue, 1 Feb 2011 17:42:50 +0000 (17:42 +0000)]
(trunk gtk) #3876 "Give filesize its own column in the Files tree" -- fix minor memory leak introduced by r11642

r11642 allocated a pango font description with pango_font_description_copy() but never freed it.

14 years ago(trunk libT) #3836 "libevent 2 support" -- fix minor memory leak.
Jordan Lee [Tue, 1 Feb 2011 17:12:20 +0000 (17:12 +0000)]
(trunk libT) #3836 "libevent 2 support" -- fix minor memory leak.

tr_peerIoReconnect() was calling event_del() rather than event_free() on its io.event_read and io.event_write fields, causing those fields to be leaked. This behavior is new with libevent 2 support and doesn't affect transmission 2.1x or older.

14 years ago(trunk gtk) #3970 "tr_core_update() wastes CPU cycles by toggling the sort mode"...
Jordan Lee [Tue, 1 Feb 2011 01:45:41 +0000 (01:45 +0000)]
(trunk gtk) #3970 "tr_core_update() wastes CPU cycles by toggling the sort mode" -- fix minor r11799 regression.

Clearing the model on shutdown generated a warning because it used the wrong cast. Rather than fixing the cast, add tr_core_clear() for symmetry with tr_core_load().

14 years ago(trunk gtk) #3971 "favicons do not work for IP addresses" -- fixed.
Jordan Lee [Tue, 1 Feb 2011 01:38:58 +0000 (01:38 +0000)]
(trunk gtk) #3971 "favicons do not work for IP addresses" -- fixed.

gtr_get_host_from_url() wasn't written to handle dotted-quad or IPv6 address strings, but can handle them now.

14 years ago(trunk libT) #3959 "by default, disable prefetch for lightweight builds" -- fixed.
Jordan Lee [Mon, 31 Jan 2011 23:35:10 +0000 (23:35 +0000)]
(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.

14 years ago(trunk gtk) #3970 "tr_core_update() wastes CPU cycles by toggling the sort mode"...
Jordan Lee [Mon, 31 Jan 2011 23:01:46 +0000 (23:01 +0000)]
(trunk gtk) #3970 "tr_core_update() wastes CPU cycles by toggling the sort mode" -- fixed.

Long description in #3970. Split tr_core's torrent GtkTreeModel into two models: one low-level unsorted one, and one proxy sorted one. That way we don't have to disable sorting before walking through the low-level one to sync the table's attributes with the tr_torrent and tr_stat.

14 years ago(trunk libT) #3969 "tr_base64_encode() has unnecessary overhead with linefeeds" ...
Jordan Lee [Mon, 31 Jan 2011 22:47:07 +0000 (22:47 +0000)]
(trunk libT) #3969 "tr_base64_encode() has unnecessary overhead with linefeeds" -- fixed.

Don't add linefeeds to base64-encoded data. We don't need it and it just increases the length of the string, which is typically sent over the network to an RPC client.

14 years ago(trunk libt) #3968 "tr_cpFileIsComplete could be faster" -- fixed.
Jordan Lee [Mon, 31 Jan 2011 16:43:37 +0000 (16:43 +0000)]
(trunk libt) #3968 "tr_cpFileIsComplete could be faster" -- fixed.

Rewriting this function as described in ticket #3968. This rewrite drops it from 1.77% of cpu use to 0.07%.

14 years agofix icon alignment in inspector tabs
Mitchell Livingston [Sun, 30 Jan 2011 21:34:46 +0000 (21:34 +0000)]
fix icon alignment in inspector tabs

14 years agoalways unlock focus when drawing the inspector buttons
Mitchell Livingston [Sun, 30 Jan 2011 19:34:38 +0000 (19:34 +0000)]
always unlock focus when drawing the inspector buttons

14 years agotweak inspector button drawing to account for black lines
Mitchell Livingston [Sun, 30 Jan 2011 19:32:40 +0000 (19:32 +0000)]
tweak inspector button drawing to account for black lines

14 years ago(trunk) update NEWS and bump version to 2.20 beta 3. 2.20b3
Jordan Lee [Sun, 30 Jan 2011 17:52:11 +0000 (17:52 +0000)]
(trunk) update NEWS and bump version to 2.20 beta 3.

14 years ago(trunk utils) #3964 "transmission-edit replace option cuts off strings" -- fixed.
Jordan Lee [Sun, 30 Jan 2011 16:40:11 +0000 (16:40 +0000)]
(trunk utils) #3964 "transmission-edit replace option cuts off strings" -- fixed.

The trailing text after the last substring match wasn't being retained.

14 years ago(trunk libT) #3931 "announce is queued" -- minor revision for uClibc compatibility
Jordan Lee [Sun, 30 Jan 2011 16:23:53 +0000 (16:23 +0000)]
(trunk libT) #3931 "announce is queued" -- minor revision for uClibc compatibility

jusid reports that powl() doesn't exist on uClibc, so getRetryInterval() needs to work without it. A simple left-bit shifting would be fine, but since we max out after a handful of cases, a switch statement seems slightly more readable than shifting or powl().

14 years agotweak the inspector button gradient
Mitchell Livingston [Sun, 30 Jan 2011 02:52:03 +0000 (02:52 +0000)]
tweak the inspector button gradient

14 years agouse the control color for the selected inspector button; small tweaks to the updated...
Mitchell Livingston [Sun, 30 Jan 2011 02:36:08 +0000 (02:36 +0000)]
use the control color for the selected inspector button; small tweaks to the updated button bar's drawing code

14 years ago#3962 Update the inspector's button bar's look
Mitchell Livingston [Sun, 30 Jan 2011 02:01:05 +0000 (02:01 +0000)]
#3962 Update the inspector's button bar's look

14 years ago(trunk libT) #3961 "Support for running scripts when a torrent finishes downloading...
Jordan Lee [Sun, 30 Jan 2011 01:41:48 +0000 (01:41 +0000)]
(trunk libT) #3961 "Support for running scripts when a torrent finishes downloading on Windows" -- fixed. patch by rb07

The changes to torrentCallScript() weren't portable to Windows, so rb07 has provided a patch.

14 years ago(trunk libT) #2363 "daemon on mac moves config files on first launch" -- fixed.
Jordan Lee [Sun, 30 Jan 2011 01:33:53 +0000 (01:33 +0000)]
(trunk libT) #2363 "daemon on mac moves config files on first launch" -- fixed.

Don't run platform.c's migrateFiles() except on *nix platforms. Add comment explaining when the function is used and why.

14 years ago(trunk libT) "Announce is Queued" but torrent doesn't announce itself to trackers...
Jordan Lee [Sat, 29 Jan 2011 19:04:02 +0000 (19:04 +0000)]
(trunk libT) "Announce is Queued" but torrent doesn't announce itself to trackers -- simplify http response code handling

14 years ago(trunk libT) #3950 "use libevent's cached gettimeofday() value when appropriate"...
Jordan Lee [Sat, 29 Jan 2011 18:59:23 +0000 (18:59 +0000)]
(trunk libT) #3950 "use libevent's cached gettimeofday() value when appropriate" -- fixed.

14 years ago(trunk libT) memory cache should use evbuffers to avoid unnecessary calls to memcpy...
Jordan Lee [Sat, 29 Jan 2011 18:56:53 +0000 (18:56 +0000)]
(trunk libT) memory cache should use evbuffers to avoid unnecessary calls to memcpy -- done.

14 years ago(trunk libT) #3955 "tr_torrentNext() should be inlined" -- fixed.
Jordan Lee [Sat, 29 Jan 2011 18:54:43 +0000 (18:54 +0000)]
(trunk libT) #3955 "tr_torrentNext() should be inlined" -- fixed.

14 years ago(trunk libT) #33956 "tr_bencFree() could be faster" -- fixed.
Jordan Lee [Sat, 29 Jan 2011 18:14:35 +0000 (18:14 +0000)]
(trunk libT) #33956 "tr_bencFree() could be faster" -- fixed.

benc requires its dictionaries to be represented in a sorted form, so we sort them before walking across the entries. However that's overkill when all we're doing is freeing memory, so this commit adds a mechanism in the benc walker to optionally avoid the sorting overhead.

14 years agotruncate the tier info in the middle in the tracker table
Mitchell Livingston [Sat, 29 Jan 2011 18:05:35 +0000 (18:05 +0000)]
truncate the tier info in the middle in the tracker table

14 years ago(trunk libT) more NULL ptr safeguards
Jordan Lee [Thu, 27 Jan 2011 18:54:25 +0000 (18:54 +0000)]
(trunk libT) more NULL ptr safeguards

14 years agoupdate Russian localization for 2.2
Mitchell Livingston [Thu, 27 Jan 2011 13:25:56 +0000 (13:25 +0000)]
update Russian localization for 2.2

14 years ago(trunk libT) NULL ptr safeguard
Jordan Lee [Thu, 27 Jan 2011 05:00:09 +0000 (05:00 +0000)]
(trunk libT) NULL ptr safeguard

14 years ago(trunk) #3949 "Add --enable-lightweight argument to configure" -- fixed.
Jordan Lee [Thu, 27 Jan 2011 03:53:02 +0000 (03:53 +0000)]
(trunk) #3949 "Add --enable-lightweight argument to configure" -- fixed.

TR_EMBEDDED has been around for awhile, but few (any?) repackagers are aware of it. If it was "advertised" through a configure-time argument, and in the status messages at the end of the configure script, more repackagers would be aware of it.

14 years agoupdate German localization
Mitchell Livingston [Thu, 27 Jan 2011 00:42:30 +0000 (00:42 +0000)]
update German localization

14 years agoupdate Brazilian Portuguese localization
Mitchell Livingston [Thu, 27 Jan 2011 00:37:34 +0000 (00:37 +0000)]
update Brazilian Portuguese localization

14 years ago(trunk) adding "--enable-static --disable-shared -q" to ac_configure_args is unnecess...
Jordan Lee [Tue, 25 Jan 2011 16:53:43 +0000 (16:53 +0000)]
(trunk) adding "--enable-static --disable-shared -q" to ac_configure_args is unnecessary -- fixed.

This line was added in r2768 to ensure that Transmission's bundled libevent was built as a static library. libevent is no longer bundled, so this line isn't needed.

14 years agotweak section numbers
Jordan Lee [Tue, 25 Jan 2011 16:39:38 +0000 (16:39 +0000)]
tweak section numbers

14 years ago#3042 "Open torrent dialog focus not restored" -- fixed. patch by ijuxda.
Jordan Lee [Tue, 25 Jan 2011 04:26:10 +0000 (04:26 +0000)]
#3042 "Open torrent dialog focus not restored" -- fixed. patch by ijuxda.

the callback function for GtkWidget's focus-in-event should return TRUE to stop other handlers from being invoked for the event or FALSE to propagate the event further.

14 years agobump to 2.20 beta 2 2.20b2
Jordan Lee [Tue, 25 Jan 2011 02:21:30 +0000 (02:21 +0000)]
bump to 2.20 beta 2

14 years agoupdate the help to note that blocklists may be compressed
Mitchell Livingston [Tue, 25 Jan 2011 01:53:33 +0000 (01:53 +0000)]
update the help to note that blocklists may be compressed

14 years agoupdate NEWS
Mitchell Livingston [Tue, 25 Jan 2011 01:46:04 +0000 (01:46 +0000)]
update NEWS

14 years ago#3928 Update blocklist download to handle archives (including ZIP)
Mitchell Livingston [Tue, 25 Jan 2011 01:43:11 +0000 (01:43 +0000)]
#3928 Update blocklist download to handle archives (including ZIP)

14 years ago(trunk libT) torrent.c setLocation(): don't try to move a file if the source and...
Jordan Lee [Mon, 24 Jan 2011 06:07:06 +0000 (06:07 +0000)]
(trunk libT) torrent.c setLocation(): don't try to move a file if the source and destination paths are the same.

14 years ago(trunk libT) #2955 "verify pieces only when necessary, or when the user requests...
Jordan Lee [Mon, 24 Jan 2011 05:11:16 +0000 (05:11 +0000)]
(trunk libT) #2955 "verify pieces only when necessary, or when the user requests it." -- add better support for old .resume files

Super-poussin says some readynas users are reporting high CPU oloads in 2.20 beta 1. My guess is this is due to pieces being reverified. Before now, the .resume files kept timestamps per-file, and 2.20 keeps timestamps per-piece. The problem is that 2.20 beta 1 didn't support reading the older per-file timetstamps from .resume files, so users loading up 2.20 beta 1 may find Transmission thinks none of the pieces in the torrents have been verified.

The fix is to have 2.20 beta 2 read the old per-file timestamps, so upgrading from 2.1x to 2.20 will go smoothly. That's what this commit does.

Unfortunately, the readynas users who have already been bitten by this will continue to be bitten until they reverify their files. 2.20 beta 1, which thinks all those pieces were never verified, has probably overwritten the .resume files from 2.1x... :(

14 years agor3857 Contextual Menu generates console error
Mitchell Livingston [Mon, 24 Jan 2011 02:01:36 +0000 (02:01 +0000)]
r3857 Contextual Menu generates console error

14 years agoupdate Spanish localizations for 2.2
Mitchell Livingston [Mon, 24 Jan 2011 00:49:08 +0000 (00:49 +0000)]
update Spanish localizations for 2.2

14 years agoupdate Italian localization
Mitchell Livingston [Mon, 24 Jan 2011 00:38:13 +0000 (00:38 +0000)]
update Italian localization

14 years agofix the alignment issue with the general inspector view - data location
Mitchell Livingston [Mon, 24 Jan 2011 00:32:42 +0000 (00:32 +0000)]
fix the alignment issue with the general inspector view - data location

14 years ago(trunk qt) #3938 "the defualt config directory isn't created by the Qt client" -...
Jordan Lee [Sun, 23 Jan 2011 18:40:29 +0000 (18:40 +0000)]
(trunk qt) #3938 "the defualt config directory isn't created by the Qt client" -- minor revision to r11755 to handle the case of custom config directories passed in via the command line.

transmission-daemon and transmission-gtk will create these custom config directories if they don't exist. transmission-qt should, too.

14 years agothe badge by itself can not be updated easily by itself any more
Mitchell Livingston [Sun, 23 Jan 2011 18:26:35 +0000 (18:26 +0000)]
the badge by itself can not be updated easily by itself any more

14 years ago#3940 Global displayed speed does not include webseeds; remove a now-unused libT...
Mitchell Livingston [Sun, 23 Jan 2011 18:23:52 +0000 (18:23 +0000)]
#3940 Global displayed speed does not include webseeds; remove a now-unused libT speed function

14 years ago(trunk qt) #3938 "The default config directory isn't created by the Qt client" -...
Jordan Lee [Sun, 23 Jan 2011 16:55:15 +0000 (16:55 +0000)]
(trunk qt) #3938 "The default config directory isn't created by the Qt client" -- fixed.

Summary says it all. Patch by luksan with minor formatting changes (and, no doubt, a new bug) by me.

14 years ago(trunk libT) #3937 "inactive webseeds are listed as active"
Jordan Lee [Sun, 23 Jan 2011 16:35:23 +0000 (16:35 +0000)]
(trunk libT) #3937 "inactive webseeds are listed as active"

This is caused by libtransmission using tr_webseedIsActive() in two ways: (1) webseed.c uses it to know if there are any pending requests, and (2) tr_torrentStat() uses it to set tr_stat.webseedsSendingToUs. Having a queued task isn't enough to be "active" in use (2) -- it needs to know if the webseed is actually sending data. These two uses should be moved into separate functions.

14 years ago(trunk) #3939 "autogen.sh doesn't work correctly on systems where /bin/sh doesn't...
Jordan Lee [Sun, 23 Jan 2011 16:12:58 +0000 (16:12 +0000)]
(trunk) #3939 "autogen.sh doesn't work correctly on systems where /bin/sh doesn't point to bash" -- fixed with patch from er13

This bug was introduced a couple of days ago in the fix to #3901 "Confusing error message when libtool is missing." The fix introduced a bashism, which should be avoided if we want to work with strict sh.

14 years ago(trunk libT) #3906 "DHT ignores bind-address-ipv6" -- make the process of getting...
Jordan Lee [Sat, 22 Jan 2011 20:43:36 +0000 (20:43 +0000)]
(trunk libT) #3906 "DHT ignores bind-address-ipv6" -- make the process of getting the binding address consistent between IPv4 and IPv6 sockets.

As suggested by Juiusz after the IPv6 binding commit in r11749.  See: https://trac.transmissionbt.com/ticket/3906#comment:6