mirror of
https://github.com/aria2/aria2.git
synced 2025-01-01 07:36:24 +00:00
203 lines
7.6 KiB
Plaintext
203 lines
7.6 KiB
Plaintext
aria2 1.15.2
|
||
============
|
||
|
||
Release Note
|
||
------------
|
||
|
||
This release fixes several critical bugs. It also adds new features
|
||
such as TLS SNI and CORS support. The --file--allocation option now
|
||
take another value trunc. The new option --enalbe-mmap was added.
|
||
aria2 now uses system-wide SSL/TLS certificates by default, which
|
||
eliminates the requirement to specify --ca-certificate option.
|
||
|
||
Changes
|
||
-------
|
||
|
||
* Catch exception from Socket::getPeerInfo() when pooling connection.
|
||
Socket::getPeerInfo() may fail if its TCP connection has already
|
||
disconnected. In this case, we log this error. The success or
|
||
failure of pooling connection should not affect the later execution
|
||
of the program. This bug may cause segmentation fault if
|
||
Socket::getPeerInfo() throws exception during pooling connection
|
||
after successful tracker request.
|
||
|
||
* Fixed assertion error if --retry-wait is used. In
|
||
CreateRequestCommand, if Request object returned from getRequest()
|
||
is still sleeping, CreateRequestCommand pools it back but still
|
||
holds its reference. This makes assertion error in
|
||
UnknownLengthPieceStroage::hasMissingUnusedPiece() from
|
||
AbstractCommand::execute().
|
||
|
||
* Added new file allocation method called 'trunc'. --file-allocation
|
||
option can now take new value 'trunc'. 'trunc' uses ftruncate()
|
||
system call or platform-specific counterpart to truncate a file to a
|
||
specified length.
|
||
|
||
* Use int64_t instead of off_t. Using off_t, at least, in DiskAdaptor
|
||
layer is problematic because torrent can contain under 2GiB files
|
||
but total sum of those files may exceed 2GiB limit, which makes
|
||
off_t overflow in 32 bit system without large file support. So we
|
||
use int64_t in API. We'll check the file length before download so
|
||
that it does not exceed max off_t.
|
||
|
||
* Added TLS SNI support.
|
||
|
||
* Rewritten timegm replacement function. The algorithm is based on
|
||
Python 2.7 calendar.timegm.
|
||
|
||
* Use system-wide certificates for SSL. Use system-wide certificates
|
||
for SSL. For GnuTLS it requires the latest version, 3.0.20. OpenSSL
|
||
had it for longer. This means that if SSL library is properly
|
||
configured to locate system-wide certificates store, the user don't
|
||
have to use --ca-certificate option. Also packagers don't have to
|
||
use --with-ca-bundle configure option. Patch from Cristian Morales
|
||
Vega
|
||
|
||
* Fixed base64::decode() return "" if input ends with garbage and no
|
||
padding.
|
||
|
||
* Changed default Peer ID prefix. The new Peer ID prefix is
|
||
"A2-$MAJOR-$MINOR-$MICRO-", where $MAJOR, $MINOR and $MICRO are the
|
||
major version, the minor version and the micro version
|
||
respectively. For instance, 1.15.2 release of aria2 will use
|
||
"A2-1-15-2-".
|
||
|
||
* Don't percent-decode filename value in Content-Disposition. We only
|
||
percent-decode filename* value in Content-Disposition because the
|
||
encoding is fully specified. But since filename value is not, so we
|
||
just accept it as is.
|
||
|
||
* Don't sum in-flight piece which does not intersect filtered ranges.
|
||
When calculating completed length, don't sum the completed length of
|
||
piece which does not intersect filtered ranges.
|
||
|
||
* Fixed segmentation fault when logger failed to open log file.
|
||
|
||
* Added ARIA2_STATIC precious variable to configure option. To build
|
||
statically linked aria2 binary, give ARIA2_STATIC=yes to configure,
|
||
like this:
|
||
$ ./configure ARIA2_STATIC=yes
|
||
|
||
* Use PRId64 for int64_t format specifier
|
||
|
||
* Handle the case when MINGW32 vsnprintf returns -1. MINGW32 vsnprintf
|
||
returns -1 if output is truncated. Increased buffer for vsnprintf
|
||
in WinConsoleFile and fmt.
|
||
|
||
* Added --enable-mmap option. If this option is used, map files into
|
||
memory using mmap(2). This option is experimental.
|
||
|
||
* Added CORS preflight request support in RPC interface. This change
|
||
is based on the patch from binux.
|
||
|
||
|
||
|
||
aria2 1.15.1
|
||
============
|
||
|
||
Release Note
|
||
------------
|
||
|
||
This release fixes the bug that prevents --bt-lpd-interface from
|
||
working. If some options sent by RPC request are not acceptable for
|
||
the download type, they are now simply ignored instead of rejecting
|
||
RPC request entirely. The aria2 RPC server now returns 4XX error code
|
||
if the request is not valid in the HTTP level. To improve packaging,
|
||
--with-bashcompletiondir configure option was added. This option
|
||
overrides where the aria2c bash_completion file is going to be
|
||
installed. All manual pages are now generated by Sphinx.
|
||
|
||
Changes
|
||
-------
|
||
|
||
* Return appropriate HTTP status code on RPC failure. In this change,
|
||
we return 404 if the request path is neither /json-rpc nor /rpc. If
|
||
XML feature is not enabled and /rpc is requested, return 404. If
|
||
XML parser failed, return 400. JSON parser failure has been handled
|
||
well in the existing code.
|
||
|
||
* Ignore unacceptable options in RPC request instead of throwing
|
||
error. This change allows RPC client to send same options for the
|
||
different type of downloads.
|
||
|
||
* Handle sockaddr_in.sin_len and sockaddr_in6.sin6_len. Check
|
||
sockaddr_in.sin_len and sockaddr_in6.sin6_len are available and
|
||
assign values to them properly. This change fixes unit test error
|
||
and most error related to getnameinfo() on netbsd.
|
||
|
||
* Removed dependency on inet_aton. Implemented inetPton as a
|
||
replacement of inet_aton. inetPton is implemented using
|
||
net::getBinAddr. This change fixes bug#3525424.
|
||
|
||
* Added --with-bashcompletiondir configure option. By default,
|
||
bash_completion file named aria2c is installed to the directory
|
||
$prefix/share/doc/aria2/bash_completion. To change the install
|
||
directory of the file, use --with-bashcompletiondir option.
|
||
|
||
* Converted README.asciidoc into README.rst
|
||
|
||
* Use Sphinx for aria2 manual page documentation. The source files
|
||
for manual pages are placed under doc/manual-src. The manual pages
|
||
are generated under doc/manual-src/$LANG/_build. The HTML version
|
||
manual page was dropped from the distribution archive.
|
||
|
||
* Fixed the bug which prevents --bt-lpd-interface from working.
|
||
Fixes bug#3520125
|
||
|
||
|
||
|
||
aria2 1.15.0
|
||
============
|
||
|
||
Release Note
|
||
------------
|
||
|
||
This release adds JSON-RPC over WebSocket. It uses the same
|
||
request/response JSON objects with existing JSON-RPC over HTTP and
|
||
adds event notifications from server to client. See manpage for
|
||
details. TLS hostname check is rewritten based on RFC 6125 and it is
|
||
used for both GNUTLS and OpenSSL builds. The
|
||
--bt-remove-unselected-file option was added. This option removes the
|
||
unselected files when BitTorrent download is completed.
|
||
|
||
Changes
|
||
-------
|
||
|
||
* Use CreateProcessW instead of CreateProcessA in MinGW build. This
|
||
means filename is now passed as wchar string, not UTF-8 encoded char
|
||
string.
|
||
|
||
* Check with pkg-config only: c-ares, openssl, sqlite3 and zlib.
|
||
Removed --with-*-prefix configure option for c-ares, openssl,
|
||
sqlite3, zlib and expat. Use CPPFLAGS and/or PKG_CONFIG_PATH
|
||
instead.
|
||
|
||
* Fixed compile error with i686-w64-mingw32 and x86_64-w64-mingw32
|
||
cross compilers.
|
||
|
||
* Get the home directory of the effective user ID using getpwuid() if
|
||
$HOME is not defined.
|
||
|
||
* Don't use locale dependent toupper and tolower.
|
||
|
||
* Rewritten TLS hostname check based on RFC 6125 for both GNUTLS and
|
||
OpenSSL builds.
|
||
|
||
* Added --bt-remove-unselected-file option. Removes the unselected
|
||
files when download is completed in BitTorrent. To select files, use
|
||
--select-file option. If it is not used, all files are assumed to be
|
||
selected. Please use this option with care because it will actually
|
||
remove files from your disk. This option is default to false.
|
||
|
||
* Fixed compile error on Open Solaris. Fixes bug#3497518
|
||
|
||
* Added JSON-RPC over WebSocket.
|
||
|
||
* Fixed assertion failure if Chunked encoding along with
|
||
Content-Length is used.
|
||
|
||
* Fixed clang and gcc-4.7 warning and errors.
|
||
|
||
* Fixed the bug that aria2 cannot read line longer than 4096 bytes
|
||
from the file specified by --input-file option. Fixes bug#3495336
|