2013-10-20 14:03:49 +00:00
|
|
|
|
aria2 1.18.1
|
|
|
|
|
============
|
|
|
|
|
|
|
|
|
|
Release Note
|
|
|
|
|
------------
|
|
|
|
|
|
|
|
|
|
This release fixes the percent-encoding bug which affects file name
|
|
|
|
|
encodings. It adds PKCS12 support in certificate import. It also adds
|
|
|
|
|
experimental internal implementation of message digest functions, ARC4
|
|
|
|
|
cipher and bignum. It means that no external libraries are required to
|
|
|
|
|
build BitTorrent support, but this feature is still marked as
|
|
|
|
|
experimental. This release also fixes the android build with NDK r9.
|
|
|
|
|
|
|
|
|
|
Changes
|
|
|
|
|
-------
|
|
|
|
|
|
|
|
|
|
* LibsslTLSContext: Remove weak cipher suite
|
|
|
|
|
|
|
|
|
|
* AppleTLS: Enable --certificate
|
|
|
|
|
|
|
|
|
|
* util::percentEncodeMini: Fix regression bug removed unsignedness
|
|
|
|
|
|
|
|
|
|
srange-based for around std::string is convenient but several
|
|
|
|
|
functions depend unsigned char for correctness and readability.
|
|
|
|
|
|
|
|
|
|
* Log exception; throw error if loading private key and/or certificate
|
|
|
|
|
failed
|
|
|
|
|
|
|
|
|
|
* Provide internal ARC4 implementation
|
|
|
|
|
|
|
|
|
|
Now you can build bittorrent support without without external
|
|
|
|
|
libraries, meaning you can skip libnettle, libgmp, libgcrypt, GnuTLS
|
|
|
|
|
and OpenSSL on OSX (for now).
|
|
|
|
|
|
|
|
|
|
* Internal implementation of DHKeyExchange
|
|
|
|
|
|
|
|
|
|
Reusing a bignum (well, unsigned very-long) implementation I had
|
|
|
|
|
lying around for years and just cleaned up a bit and brought to
|
|
|
|
|
C++11 land.
|
|
|
|
|
|
|
|
|
|
It might not be the most performant implementation, but it shoud be
|
|
|
|
|
fast enough for our purposes and will go a long way of removing
|
|
|
|
|
gcrypt, nettle, gmp, openssl dependencies when using AppleTLS and
|
|
|
|
|
WinTLS (upcoming).
|
|
|
|
|
|
|
|
|
|
* PKCS12 support in --certificate and --rpc-certificate options.
|
|
|
|
|
|
|
|
|
|
* Add --disable-ssl configure option
|
|
|
|
|
|
|
|
|
|
* Add internal md5 and sha1 message digests
|
|
|
|
|
|
|
|
|
|
* Fix AppleMessageDigestImpl use with large data
|
|
|
|
|
|
|
|
|
|
* Set old cookie's creation-time to new cookie on replacement
|
|
|
|
|
|
|
|
|
|
As described in http://tools.ietf.org/html/rfc6265#section-5.3
|
|
|
|
|
|
|
|
|
|
* Fix link error with Android NDK r9
|
|
|
|
|
|
|
|
|
|
Since Android ndk r9, __set_errno is deprecated. It is now defined
|
|
|
|
|
as inline function in errno.h. The syscall assembly calls
|
|
|
|
|
__set_errno, but since libc.so does not export it, the link
|
|
|
|
|
fails. To workaround this, replace all occurrences of __set_errno
|
|
|
|
|
with a2_set_errno and define it as normal C function.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
aria2 1.18.0
|
2013-05-18 10:27:49 +00:00
|
|
|
|
============
|
|
|
|
|
|
|
|
|
|
Release Note
|
|
|
|
|
------------
|
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
This release changes the default disk cache size to 16 MiB. To change
|
|
|
|
|
the default size, --with-disk-cache configure option was added. Now
|
|
|
|
|
used URIs are also saved by --save-session option. The control file is
|
|
|
|
|
now always saved if --force-save is given. The ctrl-c handling on
|
|
|
|
|
Mingw build was improved. The internal intl library is no longer
|
|
|
|
|
supplied. From this release, C++11 compiler is required to build aria2
|
|
|
|
|
executable. For gcc, at least 4.6.3 is required.
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
|
|
|
|
Changes
|
|
|
|
|
-------
|
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* Use AM subdir-objects
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
Doing so in AM_INIT_AUTOMAKE seems to be the most compatible way of
|
|
|
|
|
doing so.
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
Closes GH-120
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* AM_SILENT_RULES([yes]) with backwards-compatiblity
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
Supported since automake-1.11. There is no point in having the very
|
|
|
|
|
verbose compile stuff running about, which cannot even silenced
|
|
|
|
|
properly with `make -s` by default. Otherwise, `make V=1` or
|
|
|
|
|
`--disable-silent-rules` are your friends
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* Fix automake-1.14 am_aux_dir
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
AC_USE_SYSTEM_EXTENSIONS will cause AC_PROG_CC, which is overridden
|
|
|
|
|
by automake-1.14, which will then init (part) of automake, in
|
|
|
|
|
particular am_aux_dir expansion, which in turn relies on ac_aux-dir,
|
|
|
|
|
which is not initialized at this point, and thus: certain doom (or
|
|
|
|
|
fun, depending on your POV and mood :p)
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
Hence call AC_USE_SYSTEM_EXTENSIONS only after
|
|
|
|
|
AM_INIT_AUTOMAKE. This, of course, caused a lot of related macro
|
|
|
|
|
shuffling.
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
Tested against automake-1.10 (OSX Lion/XCode version) and
|
|
|
|
|
automake-1.14 (homebrew version)
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* Require external gettext for --enable-nls
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
And stop using the internal flavor with ./intl
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* Make AX_CXX_COMPILE_STDCXX_11 test for -stdlib=libc++ via std::shared_ptr
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
The clang shipped with OSX XCode and clangs not build enabling
|
|
|
|
|
libcpp, will default to the libstdc++ headers and lib installed on
|
|
|
|
|
the system. In the OSX case, that libstdc++ is the one bundles with
|
|
|
|
|
gcc-4.2, which is far too old to provide all required C++11 types,
|
|
|
|
|
such as std::shared_ptr. Hence, the C++11 check should try to
|
|
|
|
|
compile a program with a C++11 type and try -stdlib=libc++ if the
|
|
|
|
|
default lib fails to compile said program.
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* Make the configure check for C++11 compiler mandatory
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
Remove stray "dnl", so that mandatory actually works with (my)
|
|
|
|
|
autoreconf.
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* Always build doc/manual-src
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
Should sphinx-build be not available AND the man file not be prsent,
|
|
|
|
|
then just "touch" it into existence (and warn about that)
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* Win: Use SetConsoleCtrlHandler for SIGINT/SIGTERM
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* Implement a simple resource lock (threading)
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
In this initial implementation Locks are no-ops on platforms other
|
|
|
|
|
than Windows.
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* Check for sphinx-build during configure
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* Add --with-disk-cache configure option
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
Enables packagers more fine grained control over the default value
|
|
|
|
|
without having to mess with config files.
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
See GH-115
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* Change defaults: Enable 16M disk cache by default.
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* Always save control file if --force-save is given
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* Set log level DEBUG for unittests
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* Check that C++ compiler supports override keyword
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
If the compiler supports override, define CXX11_OVERRIDE as
|
|
|
|
|
override, otherwise define it as empty. Use CXX11_OVERRIDE instead
|
|
|
|
|
of override.
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* AppleTLS: Fix MessageDigestImpl
|
2013-05-18 10:27:49 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* AppleTLS: Fix session CFRelease stuff
|
2013-03-17 07:08:08 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* Use AX_CXX_COMPILE_STDCXX_11 macro to detect C++0x/C++11 support in
|
|
|
|
|
compiler
|
2013-03-17 07:08:08 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* Require -std=c++11 and use std::shared_ptr instead of SharedHandle
|
2013-03-17 07:08:08 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* Join URI on redirect
|
2012-02-27 12:33:01 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* Send HAVE message to the peer which the piece is downloaded from
|
2012-02-27 12:33:01 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
Historically, aria2 did not send HAVE message to the peer which the
|
|
|
|
|
piece is coming from, thinking it is obvious that the peer knows we
|
|
|
|
|
have the piece. But it is not obvious if one piece is download from
|
|
|
|
|
more than 1 peers (e.g., end game mode). So it is better to send
|
|
|
|
|
HAVE to all peers connected.
|
2012-02-27 12:33:01 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* Improvements to --follow-torrent=false documentation.
|
2012-02-27 12:33:01 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
Patch from gt
|
2012-02-27 12:33:01 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* SessionSerializer: Truly unique URIs
|
2012-02-27 12:33:01 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
Before, only spent uris where sanitized not to be contained within
|
|
|
|
|
remaining uris. Change this so that each uri in the
|
|
|
|
|
union(remaining,spent) get saved once at most. The order of the
|
|
|
|
|
uris will won't be changed, with remaining uris going first followed
|
|
|
|
|
by spent uris.
|
2012-02-27 12:33:01 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
Also avoid copying the uri std::strings around during dupe checking,
|
|
|
|
|
usually resulting in better performance regarding CPU and space.
|
2011-12-25 15:59:24 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* Make getOption RPC method return option for stopped downloads
|
2011-12-25 15:59:24 +00:00
|
|
|
|
|
2013-09-08 10:29:43 +00:00
|
|
|
|
* SessionSerializer: Save spent URIs as well as remaining ones
|