mirror of
https://github.com/aria2/aria2.git
synced 2025-01-04 00:53:19 +00:00
Updated for 1.10.0 release
This commit is contained in:
parent
5e532638c7
commit
af99aa31d9
408
NEWS
408
NEWS
@ -1,349 +1,75 @@
|
||||
aria2 1.9.5
|
||||
===========
|
||||
aria2 1.10.0
|
||||
============
|
||||
|
||||
Release Note
|
||||
------------
|
||||
|
||||
This release fixes the bug that causes corrupted file. It also fixes
|
||||
assertion error in DefaultPeerStorage class. Now aria2 doesn't reset
|
||||
referer to "" on redirect. log and log-level option can be used
|
||||
in aria2.changeGlobalOption XML-RPC method. This means you can
|
||||
dynamically start or stop logging and change log file and log level.
|
||||
This release adds an option to limit the number of connections to the
|
||||
same host in each download. aria2 now chooses server which is least
|
||||
used in aria2c instance. This release also adds Chromium cookie
|
||||
support and HTTP only conditional download support which is download
|
||||
file only when the local file is older than remote file. aria2 now
|
||||
can handle %2F in FTP URI properly. HTTP/1.1 chunked decoder was
|
||||
fixed. For Linux, aria2 uses fallocate by default if it is usable.
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
* Don't set previousUri_ to "" on redirect.
|
||||
|
||||
* Fixed Peer::updateSeeder() to reflect current bitfield.
|
||||
|
||||
* Made log and log-level option modifiable using
|
||||
aria2.changeGlobalOption. This means you can dynamically start or
|
||||
stop logging and change log file and log level.
|
||||
|
||||
* Fixed that bug that when aria2 is stopped before whole hash
|
||||
check(not piece hash check) is done, aria2 reports its file is
|
||||
downloaded successfully. It should report the download is
|
||||
in-progress and next invocation of aria2 should check hash.
|
||||
|
||||
* Fixed the bug that corrups file if segment returned from
|
||||
SegmetnMan::getCleanSegmentIfOwnerIsIdle() has writtenLength > 0.
|
||||
|
||||
* Fixed assertion error if updateTransferStatFor is called with peer
|
||||
X before calculateStat() after peer X is added.
|
||||
|
||||
|
||||
|
||||
aria2 1.9.4
|
||||
===========
|
||||
|
||||
Release Note
|
||||
------------
|
||||
|
||||
This release fixes the bug that connection reuse on FTP does not work
|
||||
if FTP server changes root directory based on account. It also fixes
|
||||
the bug that reading Metalink document from pipe (-M- option) does not
|
||||
work when aria2 is built with expat or old libxml2(2.7.6 or
|
||||
earlier). Now aria2 does not emit error if given Metalink document is
|
||||
empty(no file element). The response of aria2.tellStopped XML-RPC
|
||||
method now has more information: totalLength, completedLength,
|
||||
uploadLength, bitfield and so on.
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
* Updated Italian translation. Added Korean translation. Thanks to
|
||||
all translators.
|
||||
|
||||
* Fixed the bug that reading Metalink from pipe fails on older
|
||||
libxml2. It only accepts "-" as a special keyword to read stdin.
|
||||
|
||||
* Added log message when cookies are loaded. Added filename to log
|
||||
message when serializing session.
|
||||
|
||||
* Treat SIGHUP and SIGTERM signal as emergency shutdown because they
|
||||
are usually issued by system or other process.
|
||||
|
||||
* Don't throw exception when Metalink document is empty(no file
|
||||
element). It is a valid Metalink document anyway.
|
||||
|
||||
* Fixed the bug that feeding Metalink XML via pipe (-M- option) does
|
||||
not work when aria2 is built with expat. Fixed the bug that when
|
||||
Metalink XML is fed via pipe and --save-session is used, entry
|
||||
"/dev/stdin" is saved in session file.
|
||||
|
||||
* Added totalLength, completedLength, uploadLength, bitfield,
|
||||
downloadSpeed, uploadSpeed, infoHash, numSeeders, pieceLength,
|
||||
numPieces, connections and dir to the response of aria2.tellStopped
|
||||
XML-RPC method. aria2.tellWaiting now always returns numSeeders
|
||||
for BitTorrent download.
|
||||
|
||||
* Fixed the bug that connection pooling does not take into account
|
||||
proxy. This means that when connection A via proxy X is pooled, it
|
||||
will be wrongly reused in the download using proxy Y.
|
||||
|
||||
* Fixed the bug that FTP download may fail when control connection is
|
||||
reused. This happens because FTP server can offer different root
|
||||
directory for different account. If pooled connections has
|
||||
different root directory, then download will fail.
|
||||
|
||||
|
||||
|
||||
aria2 1.9.3
|
||||
===========
|
||||
|
||||
Release Note
|
||||
------------
|
||||
|
||||
This release fixes the bug that aria2 cuts filename after ';' if
|
||||
filename in Content-Disposition header includes ';'. It also fixes
|
||||
the bug that name attribute of file element in Metalink file is not
|
||||
properly sanitized.
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
* Fixed the bug that name attribute of file element in Metalink file
|
||||
is not properly sanitized.
|
||||
|
||||
* Fixed the bug that if filename in Content-Disposition header
|
||||
includes ';', aria2 cuts filename after ';'.
|
||||
|
||||
|
||||
|
||||
aria2 1.9.2
|
||||
===========
|
||||
|
||||
Release Note
|
||||
------------
|
||||
|
||||
This release adds kqueue, port_associate/port_getn and poll() support
|
||||
for socket event notification to eliminate 1024 file descriptor
|
||||
limitation of select() call. The bug that aria2.unpause and
|
||||
aria2.unpauseAll XML-RPC method fail when -s1 is given in command-line
|
||||
argument was fixed.
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
* Print warning when trying to add file descriptor >= FD_SET or < 0
|
||||
to fd_set for other than MinGW32 build. For MinGW32 build, print
|
||||
warning when trying to add file descriptor to fd_set when it
|
||||
already contains FD_SET file descriptors.
|
||||
|
||||
* Defined FD_SETSIZE 1024 for MinGW32.
|
||||
|
||||
* Added missing timespec.h to SRCS
|
||||
|
||||
* Fixed the bug that aria2.unpause fails with -s1.
|
||||
|
||||
* Supported poll, kqueue, port_associate/port_getn for socket event
|
||||
notification
|
||||
|
||||
|
||||
|
||||
aria2 1.9.1
|
||||
===========
|
||||
|
||||
Release Note
|
||||
------------
|
||||
|
||||
This release adds the ability to save unfinished downloads as text
|
||||
file. aria2 can read the file with -i option on restart. This
|
||||
release also adds the ability to download file from scratch when aria2
|
||||
sees resume is not supported by remote server. This feature is
|
||||
disabled by default. See --always-resume option for
|
||||
details. --no-proxy option accepts IPv4 network address with CIDR
|
||||
block. aria2 now doesn't send "Accept-Encoding: deflate, gzip" by
|
||||
default. --http-accept-gzip option was added to toggle this behavior.
|
||||
aria2 now treats lines starting "#" in -i list as comments. Several
|
||||
XML-RPC methods were added: aria2.pause, aria2.unpause,
|
||||
aria2.shutdown, and their families. The new exist status code '8' was
|
||||
added. The bug that makes aria2 hang when system time changes while
|
||||
aria2 is running was fixed on MinGW32, Mac OS X and the system which
|
||||
has clock_gettime(). Several other bugs also have been fixed.
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
* Updated Ukrainian, Russian, Simplified Chinese, German and Greek
|
||||
translation. Thanks to all translators.
|
||||
|
||||
* Added warning for the system which lacks clock_gettime with
|
||||
CLOCK_MONOTONIC.
|
||||
|
||||
* Fixed the bug that hash check hangs when aria2.pause is issued
|
||||
while aria2 is checking piece hashes. Fixed the bug that the
|
||||
download is paused after file allocation completion even if
|
||||
aria2.pause is issued during file allocation.
|
||||
|
||||
* Fixed compile error on opensolaris
|
||||
|
||||
* Added aria2.forcePause, aria2.pauseAll, aria2.forcePauseAll and
|
||||
aria2.unpauseAll XML-RPC method.
|
||||
|
||||
* Use clock_gettime(CLOCK_MONOTONIC, ...) if it is available and
|
||||
usable to prevent from aria2 from being affected by system time
|
||||
change.
|
||||
|
||||
* Added aria2.pause and aria2.unpause XML-RPC method. aria2.pause
|
||||
pauses the download denoted by gid. gid is of type string. The
|
||||
status of paused download becomes "paused" and the download is
|
||||
placed on the first position of waiting queue. As long as the
|
||||
status is "paused", the download is not started. To change status
|
||||
to "waiting", use aria2.unpause method. This method returns GID of
|
||||
paused download. aria2.unpause changes the status of the download
|
||||
denoted by gid from "paused" to "waiting". This makes the download
|
||||
eligible to restart. gid is of type string. This method returns GID
|
||||
of unpaused download.
|
||||
|
||||
* Added --save-session=FILE option. This option saves
|
||||
error/unfinished downloads to FILE on exit. You can pass this
|
||||
output file to aria2c with -i option on restart. Please note that
|
||||
downloads added by aria2.addTorrent and aria2.addMetalink XML-RPC
|
||||
method are not saved.
|
||||
|
||||
* Fixed the bug that FTP data connection is not established via proxy
|
||||
when --ftp-proxy is defined and --ftp-pasv=true and
|
||||
--proxy-method=tunnel.
|
||||
|
||||
* Fixed the bug that web-seed URI is not percent-encoded.
|
||||
|
||||
* Added aria2.shutdown and aria2.forceShutdown XML-RPC method. These
|
||||
methods, as their name imply, shutdown aria2. These methods are
|
||||
useful for Windows because it lacks signal mechanism.
|
||||
|
||||
* Don't send "Accept-Encoding: default, gzip" by default. This is
|
||||
because some servers respond with "Content-Encoding: gzip" for a
|
||||
file which itself is gzipped file and aria2 inflates them. This is
|
||||
a problem if user doesn't want to inflate the file. Apparently this
|
||||
is server configuration error, but we cannot do anything about
|
||||
this. So we turned this off. Added --http-accept-gzip option. If
|
||||
true is given to this option, aria2 sends "Accept-Encoding:
|
||||
deflate, gzip" request header and inflates response if remote
|
||||
server responds with "Content-Encoding: gzip" or "Content-Encoding:
|
||||
deflate". We removed extension "tgz" hack in order not to inflate
|
||||
files with tgz extensions.
|
||||
|
||||
* Made aria2 not send
|
||||
"application/metalink4+xml,application/metalink+xml" in Accept
|
||||
header for web-seeding URIs and tracker request.
|
||||
|
||||
* Added --dht-message-timeout option.
|
||||
|
||||
* Added --bt-tracker-connect-timeout and --bt-tracker-timeout
|
||||
option.
|
||||
|
||||
* Documented that specifying --seed-time=0 disables seeding after
|
||||
download completed.
|
||||
|
||||
* Drop connection if same Peer ID has been already seen.
|
||||
|
||||
* Fixed the bug that waiting download unintentionally starts when
|
||||
URIs are added to it using aria2.changeUri XML-RPC method.
|
||||
|
||||
* Fixed compile error with g++-4.4 on FreeBSD.
|
||||
|
||||
* Fixed the bug that URIs added using aria2.changeUri XML-RPC method
|
||||
are not used immediately if there is no URI remaining before
|
||||
calling aria2.changeUri and the number of connection is less than
|
||||
the value in -s(or -C for Metalink downloads).
|
||||
|
||||
* Added --always-resume and --max-resume-failure-tries option. If
|
||||
--always-resume=false is given, when all given URIs do not
|
||||
support resume or aria2 encounters N URIs which does not support
|
||||
resume (N is the value specified using --max-resume-failure-tries
|
||||
option), aria2 downloads file from scratch. The default behavior is
|
||||
--always-resume=true, which means if all URIs do not support
|
||||
resume, download fails. I think this is OK because user normally
|
||||
doesn't like to see that partially downloaded file is
|
||||
overwritten(this is particularly true if file size is big). This
|
||||
option is useful when aria2 is used as a download backend and
|
||||
graceful falling back to overwritten behavior is preferable. Added
|
||||
exit status value 8, which means download failed because server did
|
||||
not support resume.
|
||||
|
||||
* Added --remove-control-file option. This option removes control
|
||||
file(*.aria2 file) before download. Using with
|
||||
--allow-overwrite=true, download always starts from scratch. This
|
||||
will be useful for users behind proxy server which disables
|
||||
resume. For such proxy user, -C1 is also recommended for Metalink
|
||||
downloads to avoid establishing unnecessary connections.
|
||||
|
||||
* Added v key in DHT message. aria2's DHT version is independent of
|
||||
the package version and we defined it as 1 at the moment. It is
|
||||
defined as DHT_VERSION in src/DHTConstants.h. aria2's DHT version
|
||||
scheme is "A2"+2bytes DHT version number in network byte order.
|
||||
|
||||
* Fixed the bug that value of numSeeders in aria2.tellStatus XML-RPC
|
||||
method response is integer, while it should be string. The man
|
||||
page says it is string. When peer's port is not listening port,
|
||||
set '0' to port in aria2.getPeers response.
|
||||
|
||||
* Lines starting "#" in -i list are treated as comments.
|
||||
|
||||
* Accept IPv4 network address with CIDR block in --no-proxy option
|
||||
and no_proxy environment variable. Current implementation does not
|
||||
resolve hostname in URI to compare network address. So it is only
|
||||
effecive if URI has numeric IP address.
|
||||
|
||||
|
||||
|
||||
aria2 1.9.0
|
||||
===========
|
||||
|
||||
Release Note
|
||||
------------
|
||||
|
||||
This release adds Metalink4 support and BitTorrent Local Peer
|
||||
Discovery. aria2.changeUri XML-RPC method was added. It enables you
|
||||
to add/remove URIs to existing downloads dynamically. The user and
|
||||
password for proxy server now can be specified in command-line
|
||||
separately. We refactored the code based on profiler results, so
|
||||
aria2 now runs more efficiently than ever. Russian and Simplified
|
||||
Chinese translation were updated.
|
||||
|
||||
Changes
|
||||
-------
|
||||
|
||||
* Resurrected --http-proxy-user and --http-proxy-passwd option.
|
||||
Added --https-proxy-user, --https-proxy-passwd, --ftp-proxy-user,
|
||||
--ftp-proxy-passwd, --all-proxy-user, --all-proxy-passwd option.
|
||||
|
||||
* Updated Russian and Simplified Chinese translation.
|
||||
|
||||
* Added --reuse-uri option. This option has existed quite long, but
|
||||
been hidden.
|
||||
|
||||
* Fixed the bug that filename is percent encoded where it must be
|
||||
percent decoded in sendMdtm().
|
||||
|
||||
* Added getServers XML-RPC method. It returns currently connected
|
||||
HTTP(S)/FTP server and download speed, etc.
|
||||
|
||||
* Added 'status' key to the response of getUri XML-RPC method.
|
||||
|
||||
* Added changeUri XML-RPC method. This method removes/adds URIs
|
||||
dynamically.
|
||||
|
||||
* Replaced null or control characters in file path with '_'. For
|
||||
MinGW32 build, additional characters which is not allowed in
|
||||
Windows kernel are also replaced. util::detectDirTraversal() now
|
||||
returns true if given string contains null or control characters.
|
||||
|
||||
* Discard torrent file if path data in it contains directory
|
||||
traversal directives. Discard metalink:file element in Metalink3
|
||||
format if its name attribute contains directory traversal
|
||||
directives. Ignore name attribute of metalink:signature element in
|
||||
Metalink3 format if it contains directory traversal directives.
|
||||
|
||||
* Added Metalink4 support. Files with same metaurl are
|
||||
grouped and downloaded in one RequestGroup.
|
||||
|
||||
* Added --bt-lpd-interface option to specify the interface to use for
|
||||
Local Peer Discovery. LpdMessageDispatcher object now has its own
|
||||
socket. LpdMessageReceiver's socket is binded to multicast address
|
||||
to only receive multicast packets.
|
||||
|
||||
* Added Local Peer Discovery. It is disabled by default. Use
|
||||
--bt-enable-lpd to enable the function.
|
||||
* Metadata download may take very long time. If URIs are available,
|
||||
give up metadata download in at most 30 seconds.
|
||||
|
||||
* Added --on-bt-download-complete=COMMAND option. For BitTorrent, a
|
||||
command specified in --on-download-complete is called when download
|
||||
completes and seeding is over. On the other hand, this option set
|
||||
the command to be executed when download completes but before
|
||||
seeding.
|
||||
|
||||
* Added --conditional-get option. Download file only when the local
|
||||
file is older than remote file. This function only works with
|
||||
HTTP(S) downloads only. It does not work if file size is specified
|
||||
in Metalink. It also ignores Content-Disposition header. If a
|
||||
control file exists, this option will be ignored. This function
|
||||
uses If-Modified-Since header to get only newer file
|
||||
conditionally. When getting modification time of local file, it
|
||||
uses user supplied filename(see --out option) or filename part in
|
||||
URI if --out is not specified.
|
||||
|
||||
* FeedbackURISelector now tries to select URI whose host is least
|
||||
used in aria2 globally.
|
||||
|
||||
* Added --min-split-size=SIZE option. aria2 does not split less than
|
||||
2*SIZE byte range. For example, let's consider downloading 20MiB
|
||||
file. If SIZE is 10M, aria2 can split file into 2 range [0-10MiB)
|
||||
and [10MiB-20MiB) and download it using 2 sources(if --split >= 2,
|
||||
of course). If SIZE is 15M, since 2*15M > 20MiB, aria2 does not
|
||||
split file and download it using 1 source.
|
||||
|
||||
* Added --max-connection-per-server=NUM option. The default value of
|
||||
NUM is 1. This option limits the number of connections allowed to
|
||||
one server for each download. This means when NUM is 2 and 1 URI is
|
||||
provided, even if you specified -s 5, aria2 establishes 2
|
||||
connections.
|
||||
|
||||
* Set end byte in Range header if start byte > 0 to get more chance
|
||||
to pool socket.
|
||||
|
||||
* Fixed ChunkedDecoder. It does not read trailer and final CRLF.
|
||||
|
||||
* Send each CWD component of FTP URI in separate CWD command as
|
||||
described in RFC1738.
|
||||
|
||||
* Fixed the bug that aria2 cannot handle %2F in FTP URI properly. If
|
||||
directory component starts with %2F which percent-encode of '/',
|
||||
client should issue CWD to absolute path, but aria2 does not do
|
||||
that. It just issues relative path and download fails.
|
||||
|
||||
* Added Chromium/Google Chrome Cookies file support. Thanks to
|
||||
gotrunks for original patch.
|
||||
|
||||
* When allocating disk space, for Linux system with fallocate()
|
||||
system call, first check file system supports fallocate. This just
|
||||
run fallocate with small chunk and see it succeeds or fails. If it
|
||||
succeeds, use fallocate() to allocate entire file otherwise fall
|
||||
back to traditional slower method: writing zeros. This behavior is
|
||||
enabled in --file-allocation=prealloc, so this is enabled by
|
||||
default for most modern Linux.
|
||||
|
Loading…
Reference in New Issue
Block a user