mirror of
https://github.com/aria2/aria2.git
synced 2025-01-04 09:03:46 +00:00
183 lines
5.9 KiB
Plaintext
183 lines
5.9 KiB
Plaintext
aria2 1.17.1
|
||
============
|
||
|
||
Release Note
|
||
------------
|
||
|
||
This release adds large file support for Android build and libuv
|
||
support for event polling mechanism. AppleTLS now supports Snow
|
||
Leopard (10.6). The experimental libaria2 C++ library API was added.
|
||
|
||
Changes
|
||
-------
|
||
|
||
* Add code to detect rst2html.py or rst2html
|
||
|
||
* AppleTLS: Properly support Snow Leopard (10.6)
|
||
|
||
Tested on 10.6.8 + XCode 4.2 (llvm-gcc-4.2, clang)
|
||
|
||
Contributed by Nils Maier
|
||
|
||
* Enable multicast loopback in BitTorrent local peer discovery
|
||
|
||
* Enable TLS1.1 with gnutls build
|
||
|
||
* Support off64_t for Android build
|
||
|
||
Android NDK R8e does not provide ftruncate64, but bionic has the
|
||
assembler code to access kernel function. We borrowed those
|
||
ftruncate64.S files from android source code repository. It turns
|
||
out that x86 asm.h in NDK R8e is also broken, so latest asm.h was
|
||
also borrowed.
|
||
|
||
* Check zlib availability usin AC_CHECK_LIB
|
||
|
||
This is workaround for zlib 1.2.3 which does not come with
|
||
pkg-config file.
|
||
|
||
* Treat response is completed if EOF is received before streamFilter
|
||
completes
|
||
|
||
This fixes the error with web server which has buggy chunked
|
||
encoding.
|
||
|
||
* uitos: Fix off-by-one error bug
|
||
|
||
* Add configure support for linking tcmalloc_minimal and/or jemalloc
|
||
|
||
Both tcmalloc_minimal and jemalloc outperform the native malloc
|
||
implemention on Windows (MSVCRT) in terms of committed memory
|
||
consumption (~-30%) and performance (e.g. far less page faults,
|
||
~-60%), depending, of course, on the actual workload. The longer
|
||
the download queue, the bigger the impact ;)
|
||
|
||
On *nix the picture is a little different... tcmalloc usually still
|
||
outperforms the native malloc implementation, but not that
|
||
significantly than on Windows. jemalloc however is only marginally
|
||
better than recent native Linux implementations, while it is already
|
||
used by some BSD as the native allocator.
|
||
|
||
tcmalloc is part of gperftools and very mature and tested by now. It
|
||
doesn't work on OSX in the default configuration, however.
|
||
http://code.google.com/p/gperftools/
|
||
|
||
jemalloc is the default allocator at least on FreeBSD and NetBSD and
|
||
used in Firefox. http://www.canonware.com/jemalloc/index.html
|
||
|
||
Contributed by Nils Maier
|
||
|
||
* Close GZipFiles in the d'tor
|
||
|
||
Contributed by Nils Maier
|
||
|
||
* Add libaria2, C++ library interface to aria2
|
||
|
||
The libaria2 is a C++ library and offers the core functionality of
|
||
aria2. The library takes care of all networking and downloading
|
||
stuff, so its usage is very straight forward right now. See
|
||
libaria2ex.cc in examples directory to see how to use API. By
|
||
default, libaria2 is not built. See libaria2 section in README to
|
||
how to enable it.
|
||
|
||
The APIs in this release is considered experimental.
|
||
|
||
* Add missing check for sigaction
|
||
|
||
* Fix cached data is not flushed when downloaded data is less than
|
||
16KiB
|
||
|
||
* LibUV: Implement LibuvEventPoll
|
||
|
||
LibUV event will use the best available polling method on a system,
|
||
kind of like aria2 does already with the different *EventPoll
|
||
implementations. However, libuv may support different/newer polling
|
||
mechanisms; for example on Windows it will use IO Completion Ports
|
||
which are superior to select() ;)
|
||
|
||
Contributed by Nils Maier
|
||
|
||
|
||
|
||
aria2 1.17.0
|
||
============
|
||
|
||
Release Note
|
||
------------
|
||
|
||
This release adds Mac OS X native SSL/TLS library support. The IPv6
|
||
asynchronous DNS is enabled by default and A/AAAA lookups are done in
|
||
parallel. The simple Happy Eyeballs algorithm was implemented to
|
||
mitigate long timeout when connecting to IPv6 host on dual-stack host.
|
||
--save-session option only saves the options specified by command-line
|
||
or RPC.
|
||
|
||
Changes
|
||
-------
|
||
|
||
* Updated Russian manual
|
||
|
||
Contributed by ITriskTI
|
||
|
||
* Updated Portuguese manual
|
||
|
||
Contributed by Gilberto dos Santos Alves
|
||
|
||
* Append --static to pkg-config arguments when ARIA2_STATIC=yes
|
||
|
||
* Save options directly specified for download in --save-session
|
||
|
||
This change makes --save-session save only options specified for
|
||
download, more specifically, options in command-line, -i file and
|
||
via RPC. The other options from conf file and default values are not
|
||
saved. This will drastically decrease the size of session file.
|
||
|
||
* Save URI returned only from FileEntry::getRemainingUris()
|
||
|
||
The currently used URIs are inserted back into remaining URI list in
|
||
FileEntry::putBackRequest(), which overlaps to some of the URIs in
|
||
spentUris_. If we save spent URIs, each time save is performed, the
|
||
number of URIs are increased due to this overlap. This change fixes
|
||
this bug.
|
||
|
||
* Print linked 3rd party libraries with version in `aria2c -v` output
|
||
|
||
* AppleTLS: Support credentials via KeyChain fingerprints
|
||
|
||
Contributed by Nils Maier
|
||
|
||
* AppleTLS: Implement AppleTLS and Apple Message Digest
|
||
|
||
Contributed by Nils Maier
|
||
|
||
* Use info level log for system trusted ca imports failure
|
||
|
||
This is because on some platforms (gnutls on cygwin for example),
|
||
library always fails for this function and getting ERROR every time
|
||
aria2c invoked is too hard.
|
||
|
||
* Don't add Windows native DLLs for Cygwin build
|
||
|
||
* Remove deprecated options: --enable-direct-io and --metalink-servers
|
||
|
||
* Deprecate --enable-async-dns6
|
||
|
||
The IPv6 asynchronous name resolver is enabled if the host has at
|
||
least one interface with IPv6 address configured (the loopback
|
||
address will not be counted), which is roughly the same behaviour of
|
||
the standard getaddrinfo(3). To disable IPv6 asynchronous name
|
||
resolver, use --disable-ipv6.
|
||
|
||
* Fix uninitialized UDPTrackerClient::numWatchers_
|
||
|
||
* Implement simple Happy Eyeballs for HTTP/FTP downloads
|
||
|
||
* Parallel A and AAAA record lookups with c-ares
|
||
|
||
But we don't wait for AAAA query response if A query response has
|
||
been received. If we got IPv4 lookup response, we don't wait for
|
||
IPv6 lookup response. This is because DNS server may drop AAAA query
|
||
and we have to wait for the long time before timeout. We don't do
|
||
the inverse, because, based on todays deployment of DNS server,
|
||
almost all of them can respond A query just fine.
|