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
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
2b905bdbcc
(trunk libT) silence minor "unused function argument" compiler warning
2011-02-07 23:09:36 +00:00
Jordan Lee
af1e920ab7
(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.
2011-02-03 22:53:02 +00:00
Jordan Lee
e8614030a2
(trunk libT) #3973 "JIT verification verifies fresh downloaded torrents" -- remove a debugging printf() statement that shouldn't have been checked in.
2011-02-02 23:33:25 +00:00
Jordan Lee
06948a8514
(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.
2011-02-02 21:17:16 +00:00
Jordan Lee
5fc1ff8855
(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.
2011-02-02 20:30:04 +00:00
Jordan Lee
e7f81543ec
(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.
2011-01-30 01:41:48 +00:00
Jordan Lee
125d2506cd
(trunk libT) torrent.c setLocation(): don't try to move a file if the source and destination paths are the same.
2011-01-24 06:07:06 +00:00
Jordan Lee
75ffe999d4
(trunk libT) #3933 "announcer.c peer parsing could be simpler" -- fixed.
...
Remove redundant code by using tr_peerMgrCompactToPex() and tr_peerMgrCompact6ToPex() to parse compact ipv4 and ipv6 peer lists. Simplify the old-style benc peer list parsing and fix a bug that returned too few bytes in the old-style peer array.
2011-01-22 17:45:54 +00:00
Jordan Lee
9220ad2300
(trunk libT) #3932 "Assertion failed: (tab != NULL), function tr_torrentAvailability"
...
Looks like tab can be NULL from the Mac client when magnet links are involved and the Mac client doesn't know how many pieces are available, so that assertion's not appropriate.
2011-01-22 13:21:20 +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
8aa0f36a37
cleanup of who calls the libtransmission thread locking functions.
...
In some cases we were calling them from deep inside libtransmission, when they should have been called directly from the public-visible API functions: tr_torrentWebSpeeds_KBps(), tr_torrentPeers(), tr_torrentTrackers().
2011-01-18 23:44:36 +00:00
Jordan Lee
7ce0cf2322
code cleanup for tr_peerMgrTorrentAvailability().
...
1. move responsibility for getting a thread lock back to the public API fucntion, tr_torrentAvailability().
2. if the torrent doesn't have metadata, stop after zeroing out the table
3. minor code formatting cleanup
2011-01-18 22:51:29 +00:00
Jordan Lee
dd77485d83
(trunk libT) demote the remaining lazy-verify debug messages from the debug window to deep logging
2011-01-18 02:17:47 +00:00
Mitchell Livingston
5a8800fda1
remove a LAZY debug message
2011-01-06 00:54:37 +00:00
Charles Kerr
1f0c916469
(trunk libT) #2955 "jit verify" -- undo r11606. the old error message was longer, but more helpful
2010-12-30 18:35:18 +00:00
Charles Kerr
efcbab893f
(trunk, libT) #2955 "jit verify" -- shorten the error message for torrents whose files disappeared.
2010-12-30 07:42:14 +00:00
Charles Kerr
123ad33ce4
(trunk libT) #3860 "memory leak in torrentCallScript" -- patched.
2010-12-29 21:00:07 +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
ae84dc70dd
(trunk libT) #3836 "libevent2 support" -- finish moving to the libevent2 API mode. don't include the backwards-compatable API headers.
2010-12-24 08:58:41 +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
81cb2276c8
(trunk gtk) #3844 "error popup when adding a relative path" -- fixed. initial patch by ijuxda.
2010-12-22 07:04:11 +00:00
Charles Kerr
28ec370476
(trunk libt) experimental fix for the updated torrent issue reported by Lacrocivious
2010-12-22 04:29:41 +00:00
Charles Kerr
6b7babde5c
(trunk libT) remove some of the lazy-verify debug messages.
2010-12-21 23:09:26 +00:00
Charles Kerr
47a60e005e
(trunk libT) #2955 "lazy torrent verification" -- speed up setLocalErrorIfFilesDisappeared(). this makes a big difference when loading a lot of torrents on startup.
2010-12-17 14:57:19 +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
d40a60bd02
(trunk libT) #3675 "Not all .part files are removed" -- flush the cache before removing local data.
2010-12-15 20:28:49 +00:00
Charles Kerr
f1e236693d
(trunk libT) #3764 "script-torrent-done shouldn't block libtransmission" -- handle zombie processes.
2010-12-15 15:35:06 +00:00
Charles Kerr
9a5a429761
(trunk libT) #3764 "script-torrent-done shouldn't block libtransmission" -- add the "calling script ..." line back into the logfile.
2010-12-15 14:55:20 +00:00
Charles Kerr
082475e43b
(trunk libT) #3764 "script-torrent-done shouldn't block libtransmission" -- fixed.
2010-12-15 04:35:41 +00:00
Charles Kerr
a31e23f094
(trunk libt) #2955 "lazy torrent verification" -- don't force a reverify after moving a torrent's contents to a new direction
2010-12-13 20:01:38 +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
6c3d651ffe
(trunk) #3618 "FreeBSD 8.1 & GCC 4.2.1 compiler warnings" -- fix some compiler warnings.
2010-10-11 21:44:46 +00:00
Charles Kerr
8d15c48a3f
(trunk libT) #3617 "1000+ warnings of 'inlining failed' in libtransmission when compiled with gcc 4.4.4" -- fixed.
2010-10-11 15:41:27 +00:00
Daniel Lee
afc7c5355e
(libT) #3453:Torrent does not stop when set per torrent seed ratio is reached before torrent is completed
...
(libT) #3578:Interested flag isn't cleared when transitioning from leeching to seeding
2010-09-25 00:34:15 +00:00
Charles Kerr
65b4e28c60
(trunk libT) #3571 "Torrent done script clears important env vars" -- fixed.
2010-09-21 16:26:48 +00:00
Charles Kerr
c7ebb37876
(trunk libT) #3566 "Memory leak in libtransmission/torrent.c: refreshCurrentDir()" -- fixed.
2010-09-18 21:57:22 +00:00
Mitchell Livingston
9135d5e061
fix a display issue with the idle time for a split second after the transfer starts, since the transfer would be marked as downloading but would not yet have a start time
2010-09-12 19:49:06 +00:00
Mitchell Livingston
b3c8ca4604
#3513 inactive limit should set torrent state as finished, not stopped
2010-09-12 18:58:49 +00:00
Mitchell Livingston
94ea77a014
#3517 Only apply the idle seed limit when the transfer is comple
2010-08-19 22:14:59 +00:00
Mitchell Livingston
7e52a2e8bb
don't set an idle eta if the transfer is currently uploading
2010-08-14 19:44:43 +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
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
496712a87d
fix typo
2010-07-23 23:37:03 +00:00
Mitchell Livingston
feb6e6b785
fix inactivity typo
2010-07-23 11:02:57 +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
6f5c9dcafb
(trunk libt) rename tr_date() as tr_time_msec() for clarity
2010-07-11 20:49:19 +00:00
Charles Kerr
8d60d46538
(trunk libT) #3407 "stop ratio callback called twice in some situations" -- experimental fix in trunk
2010-07-11 18:36:18 +00:00
Charles Kerr
e3e7683077
(trunk libT) #3388 "file completion percentage never updates" -- fixed.
2010-07-10 21:30:37 +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
1df54942dc
(trunk libT) fix overflow error in fileBytesCompleted()
2010-07-03 15:11:38 +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
4ad26f7910
(trunk libT) a couple more minor -Wconversion warnings
2010-07-01 05:39:54 +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
41f9ae0500
(trunk) #3339 "crash when download some magnet links" -- fixed
2010-06-24 20:36:05 +00:00
Charles Kerr
a54270a11a
(trunk libT) #3308 "Don't stop/restart torrents when setting the local data's location" -- fixed
2010-06-24 17:49:20 +00:00
Charles Kerr
5e2a6f6c6a
(trunk libT) #2581 "RPC extended to manage tracker lists" -- add safeguards in tr_torrentSetAnnounceList() to handle the case of tracker arrays not being sorted by tier.
2010-06-23 16:06:15 +00:00
Charles Kerr
5ad7ed550f
(trunk) more win32 fixes from rb07 in #3311
2010-06-22 00:12:52 +00:00
Charles Kerr
db44d81b24
(trunk) #3256 "libtransmission/publish.[ch] should be replaced" -- apply publish.diff for 2.10
2010-06-19 14:33:10 +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
13b073fcdc
(libT) #3291 "tr_torrent.infoDictOffset should be lazily evaluated"
2010-06-16 03:05:23 +00:00
Charles Kerr
0ad06c50e8
(trunk) #3262 "problems with '.' as the first character in a .torrent's filename" -- fixed in trunk for 2.00
2010-06-07 14:25:31 +00:00
Charles Kerr
60ce7e5263
(trunk libT) #3258 "Transmission 1.93 sends 'stopped'+'started' announce instead of 'completed' if the incomplete-dir is enabled" -- probable fix
2010-06-03 16:37:50 +00:00
Charles Kerr
b0b9e17032
(trunk libT) define MAX_BLOCK_SIZE once instead of in a handful of places
2010-05-26 15:23:21 +00:00
Charles Kerr
52d82cee33
(trunk libT) #3235 "Changeset 10293 broke the moving files fron complete to incomplete dir when both dirs have same inode on different devices" -- fixed in trunk for 2.00
2010-05-26 13:46:37 +00:00
Charles Kerr
f3a5eed32b
(trunk libT) #3233 "torrent.c:1695: error: too few arguments to function `ctime_r'" on OpenSolaris
2010-05-25 15:23:16 +00:00
Charles Kerr
5ca8d41816
(trunk libT) #2929 "persistent tracker error messages in main window" -- experimental fix
2010-05-19 19:02:25 +00:00
Charles Kerr
8a83a4bf79
(trunk libT) remove dead function tr_torrentPromoteTracker()
2010-05-19 18:23:47 +00:00
Charles Kerr
7936f0d5d1
(trunk libT) clean up #includes for event.h and evutil.h
2010-05-19 16:17:51 +00:00
Charles Kerr
1b44fecec9
(trunk libT) #1869 "new status for torrents that reached the seed ratio" -- use suggestion from Longinus00 to ensure torrents don't get flagged as finished if the user hits "download none" in the "add torrent" dialog
2010-05-15 22:26:25 +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
Charles Kerr
5a34347f4f
(trunk) #3060 -- Local Peer Discovery patch from Eszet
2010-05-01 16:04:00 +00:00
Charles Kerr
6643f98346
(trunk libT) #1869 "New status for torrents that reached the seed ratio" -- maybe fix the bug where the incomplete-dir and seed-ratio features conflicted with each other as reported by leena in http://trac.transmissionbt.com/ticket/1869#comment:45
2010-04-29 23:35:44 +00:00
Charles Kerr
c4d76cd8d0
(trunk libT) slightly better comment i tr_torrentFileCompleted()
2010-04-25 15:19:08 +00:00
Charles Kerr
546bca723b
(trunk libT) #3159 "better decision-making when choosing which peers to initiate new connections with" -- experimental commit
2010-04-20 21:54:03 +00:00
Charles Kerr
99a5412601
(trunk libT) #3105 "Torrentadd over rpc not files wanted/unwanted bug" -- fixed in trunk for 2.00
2010-04-19 23:10:30 +00:00
Charles Kerr
997e747821
(trunk libT) #3145 "Log torrent deletion" -- Longinus00's patch applied to trunk for 2.00
2010-04-17 04:07:56 +00:00
Charles Kerr
b7827565ee
(trunk libT) #1869 "new status for torrents that reach seed ratio" -- possible fix for the bug reported by leena
2010-04-15 13:43:54 +00:00
Charles Kerr
1a7bcbbea2
(trunk) #1869 "new status for torrents that reached the seed ratio" -- add temporary debug messages to help track down the issue leena's reporting in that ticket
2010-04-14 13:36:43 +00:00
Charles Kerr
8f0487b9d3
(trunk libT) in seedRatio, handle the case where a file is downloaded more than once
2010-04-14 00:34:31 +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
39515ea28b
use leftUntilDone instead of percentDone when determining finished status
2010-04-13 00:20:04 +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
83f97a35fe
(trunk libt) #3004 "Transmission doesn't report to the user errors when saving settings files" -- committed Longinus00's patch to trunk for 2.00
2010-03-22 00:55:43 +00:00
Charles Kerr
1d8d9d8447
(trunk libT) code cleanup: after r10346, we don't need to keep the per-torrent cancel/block histories anymore
2010-03-10 15:55:00 +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
Charles Kerr
d54e894ccb
(trunk libT) #3015 : "Transmission announces badly when the port is changed" -- fixed in trunk for 1.92. Thanks to Rolcol for tracking down the cause of this bug.
2010-03-06 21:24:28 +00:00
Charles Kerr
3e9d545713
(trunk libT) #2995 "Incompletely downloaded files not trashed" -- fixed in trunk for 1.92
2010-02-28 15:27:48 +00:00