NEWS 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257
  1. aria2 1.18.2
  2. ============
  3. Release Note
  4. ------------
  5. This release fixes the wrong handling of return value of fork(), which
  6. leads to high CPU usage. The progress readout has some color output.
  7. Mingw32 build now receives colorized output. Mingw32 build now can
  8. read unicode command-line arguments. The build script of OSX was
  9. rewritten. The --bt-max-open-files now limits the number of opened
  10. file globally for multi-file downloads instead of per download basis.
  11. Changes
  12. -------
  13. * Remove the outdated, broken build_osx_release.sh
  14. * Initial revision of the a new OSX release Makefile
  15. * Allow using libgmp with AppleTLS/WinTLS
  16. * Fix crash when metaurl contains unsupported URI or text
  17. * Fix bad fork() return value handling
  18. * Use some colors in progress reports (where available)
  19. * Implement basic color support for the Windows console
  20. Only \033[*m (SGR) is supported, with a 16+16 color terminal.
  21. * AppleTLS: Implement PKCS12 loading.
  22. * Limit number of opened file globally with --bt-max-open-files option
  23. This change changes the behavior of --bt-max-open-files. Previously,
  24. it specifies the maximum number of opened files for each multi-file
  25. download. Since it is more useful to limit the number globally, the
  26. option now specifies the global limit. This change suggests that
  27. aria2.changeOption() method now ignores --bt-max-open-files and
  28. aria2.changeGlobalOption now reads it and dynamically change the
  29. limit.
  30. * Don't fail multiple concurrent dl same file if auto-file-renaming is
  31. enabled
  32. * mingw32: Use CommandLineToArgvW() and GetCommandLineW() to read
  33. cmd-line args
  34. This change enables aria2 to read unicode characters in
  35. command-line.
  36. aria2 1.18.1
  37. ============
  38. Release Note
  39. ------------
  40. This release fixes the percent-encoding bug which affects file name
  41. encodings. It adds PKCS12 support in certificate import. It also adds
  42. experimental internal implementation of message digest functions, ARC4
  43. cipher and bignum. It means that no external libraries are required to
  44. build BitTorrent support, but this feature is still marked as
  45. experimental. This release also fixes the android build with NDK r9.
  46. Changes
  47. -------
  48. * LibsslTLSContext: Remove weak cipher suite
  49. * AppleTLS: Enable --certificate
  50. * util::percentEncodeMini: Fix regression bug removed unsignedness
  51. srange-based for around std::string is convenient but several
  52. functions depend unsigned char for correctness and readability.
  53. * Log exception; throw error if loading private key and/or certificate
  54. failed
  55. * Provide internal ARC4 implementation
  56. Now you can build bittorrent support without without external
  57. libraries, meaning you can skip libnettle, libgmp, libgcrypt, GnuTLS
  58. and OpenSSL on OSX (for now).
  59. * Internal implementation of DHKeyExchange
  60. Reusing a bignum (well, unsigned very-long) implementation I had
  61. lying around for years and just cleaned up a bit and brought to
  62. C++11 land.
  63. It might not be the most performant implementation, but it shoud be
  64. fast enough for our purposes and will go a long way of removing
  65. gcrypt, nettle, gmp, openssl dependencies when using AppleTLS and
  66. WinTLS (upcoming).
  67. * PKCS12 support in --certificate and --rpc-certificate options.
  68. * Add --disable-ssl configure option
  69. * Add internal md5 and sha1 message digests
  70. * Fix AppleMessageDigestImpl use with large data
  71. * Set old cookie's creation-time to new cookie on replacement
  72. As described in http://tools.ietf.org/html/rfc6265#section-5.3
  73. * Fix link error with Android NDK r9
  74. Since Android ndk r9, __set_errno is deprecated. It is now defined
  75. as inline function in errno.h. The syscall assembly calls
  76. __set_errno, but since libc.so does not export it, the link
  77. fails. To workaround this, replace all occurrences of __set_errno
  78. with a2_set_errno and define it as normal C function.
  79. aria2 1.18.0
  80. ============
  81. Release Note
  82. ------------
  83. This release changes the default disk cache size to 16 MiB. To change
  84. the default size, --with-disk-cache configure option was added. Now
  85. used URIs are also saved by --save-session option. The control file is
  86. now always saved if --force-save is given. The ctrl-c handling on
  87. Mingw build was improved. The internal intl library is no longer
  88. supplied. From this release, C++11 compiler is required to build aria2
  89. executable. For gcc, at least 4.6.3 is required.
  90. Changes
  91. -------
  92. * Use AM subdir-objects
  93. Doing so in AM_INIT_AUTOMAKE seems to be the most compatible way of
  94. doing so.
  95. Closes GH-120
  96. * AM_SILENT_RULES([yes]) with backwards-compatiblity
  97. Supported since automake-1.11. There is no point in having the very
  98. verbose compile stuff running about, which cannot even silenced
  99. properly with `make -s` by default. Otherwise, `make V=1` or
  100. `--disable-silent-rules` are your friends
  101. * Fix automake-1.14 am_aux_dir
  102. AC_USE_SYSTEM_EXTENSIONS will cause AC_PROG_CC, which is overridden
  103. by automake-1.14, which will then init (part) of automake, in
  104. particular am_aux_dir expansion, which in turn relies on ac_aux-dir,
  105. which is not initialized at this point, and thus: certain doom (or
  106. fun, depending on your POV and mood :p)
  107. Hence call AC_USE_SYSTEM_EXTENSIONS only after
  108. AM_INIT_AUTOMAKE. This, of course, caused a lot of related macro
  109. shuffling.
  110. Tested against automake-1.10 (OSX Lion/XCode version) and
  111. automake-1.14 (homebrew version)
  112. * Require external gettext for --enable-nls
  113. And stop using the internal flavor with ./intl
  114. * Make AX_CXX_COMPILE_STDCXX_11 test for -stdlib=libc++ via std::shared_ptr
  115. The clang shipped with OSX XCode and clangs not build enabling
  116. libcpp, will default to the libstdc++ headers and lib installed on
  117. the system. In the OSX case, that libstdc++ is the one bundles with
  118. gcc-4.2, which is far too old to provide all required C++11 types,
  119. such as std::shared_ptr. Hence, the C++11 check should try to
  120. compile a program with a C++11 type and try -stdlib=libc++ if the
  121. default lib fails to compile said program.
  122. * Make the configure check for C++11 compiler mandatory
  123. Remove stray "dnl", so that mandatory actually works with (my)
  124. autoreconf.
  125. * Always build doc/manual-src
  126. Should sphinx-build be not available AND the man file not be prsent,
  127. then just "touch" it into existence (and warn about that)
  128. * Win: Use SetConsoleCtrlHandler for SIGINT/SIGTERM
  129. * Implement a simple resource lock (threading)
  130. In this initial implementation Locks are no-ops on platforms other
  131. than Windows.
  132. * Check for sphinx-build during configure
  133. * Add --with-disk-cache configure option
  134. Enables packagers more fine grained control over the default value
  135. without having to mess with config files.
  136. See GH-115
  137. * Change defaults: Enable 16M disk cache by default.
  138. * Always save control file if --force-save is given
  139. * Set log level DEBUG for unittests
  140. * Check that C++ compiler supports override keyword
  141. If the compiler supports override, define CXX11_OVERRIDE as
  142. override, otherwise define it as empty. Use CXX11_OVERRIDE instead
  143. of override.
  144. * AppleTLS: Fix MessageDigestImpl
  145. * AppleTLS: Fix session CFRelease stuff
  146. * Use AX_CXX_COMPILE_STDCXX_11 macro to detect C++0x/C++11 support in
  147. compiler
  148. * Require -std=c++11 and use std::shared_ptr instead of SharedHandle
  149. * Join URI on redirect
  150. * Send HAVE message to the peer which the piece is downloaded from
  151. Historically, aria2 did not send HAVE message to the peer which the
  152. piece is coming from, thinking it is obvious that the peer knows we
  153. have the piece. But it is not obvious if one piece is download from
  154. more than 1 peers (e.g., end game mode). So it is better to send
  155. HAVE to all peers connected.
  156. * Improvements to --follow-torrent=false documentation.
  157. Patch from gt
  158. * SessionSerializer: Truly unique URIs
  159. Before, only spent uris where sanitized not to be contained within
  160. remaining uris. Change this so that each uri in the
  161. union(remaining,spent) get saved once at most. The order of the
  162. uris will won't be changed, with remaining uris going first followed
  163. by spent uris.
  164. Also avoid copying the uri std::strings around during dupe checking,
  165. usually resulting in better performance regarding CPU and space.
  166. * Make getOption RPC method return option for stopped downloads
  167. * SessionSerializer: Save spent URIs as well as remaining ones