NEWS 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. aria2 1.16.0
  2. ============
  3. Release Note
  4. ------------
  5. This release adds SSL/TLS encryption support in RPC transport. The new
  6. RPC method aria2.appendUri is added, which is a wrapper to
  7. aria2.changeUri. The Content-Disposition parser is now RFC 6266
  8. conformant. The resource leak in XmlParser, JSON and Bencode parser
  9. was fixed. The uploaded data size calculation bug was fixed. For
  10. MinGW32 build, files are now opened with read/write shared mode.
  11. Changes
  12. -------
  13. * mingw32: Open file using _wsopen and added --enable-mmap support
  14. I tried CreateFile but the subsequent ReadFile fails with Access
  15. Denied if sparse file is read on NTFS. I mostly reverted previous
  16. changes and use _wsopen with read/write share enabled instead of
  17. CreateFile.
  18. This change also includes --enable-mmap support for MinGW32
  19. build. Memory mapped file may be useful for 64-bits OS and lots of
  20. RAM. Currently, FlushViewOfFile is not called during the download,
  21. so it is slightly vulnerable against sudden power loss. I found lots
  22. of read when resuming download due to page fault. So for now it is
  23. useful for the initial download. I recommend not to use
  24. --file-allocation=prealloc with --enable-mmap for MinGW32, because
  25. it triggers page faults even in the initial download. Anyway, the
  26. option is experimental.
  27. * Removed PO files and generated aria2.pot from repository
  28. Currently, message translation is done at launchpad. All PO files
  29. can be exported from there. The merge process from launchpad is done
  30. when new release. First download export file from launchpad And use
  31. import-po script to import PO files into po directory.
  32. * Set F_GLOBAL_NOCACHE for Mac OS X
  33. * Enabled TCP_NODELAY
  34. * Don't use AC_FUNC_MMAP
  35. Don't use AC_FUNC_MMAP becaue it fails on some platforms (e.g.,
  36. OpenWRT) which have mmap and it works in the way we use in aria2.
  37. Instead use mmap in AC_CHECK_FUNCS list.
  38. * Added --force-save option.
  39. --force-save option saves download with --save-session option even
  40. if the download is completed or removed. This may be useful to save
  41. BitTorrent seeding which is recognized as completed state. The
  42. default value is false.
  43. * Get the correct uploaded data size
  44. Subtract msgHdrLen_ from writtenLength to get the uploaded data
  45. size. Without this correction, the seeder assumes it has uploaded
  46. more data than it actually has.
  47. * Made --http-no-cache false by default
  48. * Fixed memory leak in AsyncNameResolver
  49. * Fixed resource leak in XmlParser and GenericParser
  50. * Reset iostream format state
  51. * gnutls: Added more status checking when verifying peer
  52. * Content-Disposition parser conforming to RFC 6266.
  53. RFC 2231 Continuation is not supported.
  54. * Reworked download/upload statistics calculation
  55. The old implementation calculates download/upload statistics for a
  56. RequestGroup by summing up all PeerStat objects. For global
  57. statistics, those are summed together. This clearly incurs runtime
  58. penalty and we introduced some kind of caching which updates
  59. statistics every 250ms but it did not work right.
  60. This change removes all these aggregation code, and instead makes
  61. RequestGroup and RequestGroupMan objects hold NetStat object and
  62. download/upload bytes are directly calculated by thier own NetStat.
  63. This is far more simplar than the old way and less runtime penalty
  64. and brings more accuracy.
  65. * Added --rpc-save-upload-metadata option
  66. If true is given, which is default, save the uploaded torrent or
  67. metalink metadata in the directory specified by --dir option. The
  68. filename consists of SHA1-hash hex string of metadata plus
  69. extension. For torrent, the extension is '.torrent'. For metalink,
  70. it is '.meta4'. If false is given to this option, the downloads
  71. added by aria2.addTorrent or aria2.addMetalink will not be saved by
  72. --save-session option.
  73. * Perform SSL/TLS handshake after checking whether connection is established
  74. * Fixed bug that --enable-mmap won't work if MultiDiskAdaptor is used
  75. * RPC over SSL/TLS transport
  76. To enable RPC over SSL/TLS, specify server certificate and private
  77. key using --rpc-certificate and --rpc-private-key options and enable
  78. --rpc-secure option. After the encryption is enabled, use https and
  79. wss scheme to access RPC server.
  80. * aria2rpc: Added appendUri command
  81. This command calls aria2.changeUri(GID, fileIndex, [], [URI,...])
  82. internally.
  83. * Don't send Proxy-Connection header field
  84. * Don't set SNI hostname if it does not include "." for GNUTLS
  85. * Disable SSL/TLS compression with OpenSSL
  86. * Pause download even if download is completed
  87. This allows to pause and unpause BitTorrent seed.
  88. * Use execlp() instead of execl()