Aria2 Versions Save

aria2 is a lightweight multi-protocol & multi-source, cross platform download utility operated in command-line. It supports HTTP/HTTPS, FTP, SFTP, BitTorrent and Metalink.

release-1.28.0

7 years ago

Release Note

This release fixes the bug that file name is not logged with --conditional-get option is used. The new option --keep-unfinished-download-result was added to keep incomplete downloads in memory regardless of --max-download-result so that we can save those downloads with --save-session option. This option is enabled by default.

This release

Changes

  • Restore LTLIBINTL in src/Makefile.am

    Patch from Juan Francisco Cantero Hurtado

  • Add --keep-unfinished-download-result option

    This option keeps unfinished download results even if doing so exceeds --max-download-result. This is useful if all unfinished downloads must be saved in session file (see --save-session option). Please keep in mind that there is no upper bound to the number of unfinished download result to keep. This option is enabled by default.

  • Fix -Wexpansion-to-defined warning with clang-3.9

    The error message was:

    warning: macro expansion producing 'defined' has undefined behavior [-Wexpansion-to-defined]

    http://lists.llvm.org/pipermail/cfe-commits/Week-of-Mon-20160118/147239.html

  • Fix bug that file name is not logged with --conditional-get

    GH-742

release-1.27.1

7 years ago

Release Note

This release fixes the packaging bug that libssl_compat.h is missing in the tar balls.

Changes

  • Add missing libssl_compat.h to SRCS

    GH-744

release-1.27.0

7 years ago

Release Note

This release fixes bug which may cause crash if UDP tracker is used. It adds new option --save-not-found which prevents downloads failed by "not found" error from being saved in session file.

Changes

  • Hard-disable openssl in osx build

    Closes #739

  • Fix possible cause of crash if UDP tracker is used

  • Remove custom ftruncate64 for Android

    The latest NDK versions support ftruncate64, so building a local copy of ftruncate64 is no longer needed.

    Also, the arm and x86 builds of ftruncate64 failed when targeting API level 21 or higher, as they include <linux/err.h> which are not present starting from API level 21.

    Patch from Fredrik Fornwall

  • Fix typo found by Debian's Lintian

  • Add --save-not-found option

  • Update comment to match code

    Patch from Torbjörn Lönnemark

  • WinTLS: Better errors (from WSA)

  • Compile with openssl 1.1.0

release-1.26.1

7 years ago

Release Note

This release fixes the bug that causes assertion failure during BitTorrent downloads.

Changes

  • Make assertion hold

    If we have peer which is already used, make addAndCheckoutPeer() fail. If peer is in unused list, first remove the old entry, and then add new one. This would make assertion in ~DefaultPeerStorage hold.

release-1.26.0

7 years ago

Release Note

This release fixes linking bug with libaria2 enabled. It also changes how aria2 renames the download file name when the same name already exists in file system. In summary, we use numbers before extension (e.g., foo.1.txt), rather than after extension (e.g., foo.txt.1). Now --seed-time option can take floating point number to specify fractional minutes.

Changes

  • aria2mon: Replace client.call with local method

    Patch from Florian Gamböck

  • Reorder a note section in aria2c.rst

    Patch from Artur Petrov

    Closes GH-722

  • bash_completion: Add missing options which takes one of pre-defined values

  • Replace "/" with "-" in magnet dn name when used as in-memory download name

  • Fix Dockerfile.raspberrypi to correctly decompress expat archive

    Patch from Char

  • Enable ccache in travis-ci

    Speeds up the build most of the time.

    Closes GH-710

  • Enable OSX/macOS build for travis

    Closes GH-711 Closes GH-666

  • Better auto-renaming

    Up until now aria2 file auto renaming worked by just appending a new unique number to the file path, behind the file name extension, if any, changing what most other programs consider the file extension in the process. Now, aria2 will attempt to insert the number before the file extension, leaving the extension intact, so that e.g. a ".jpg" still is a ".jpg" file and opens in your configured image viewer when clicking it. If a file has no extension (incl. so called "dot files"), the number will be appended to the file name as usual.

    Note: This is a potentially breaking change that might break third party scripts that rely on aria2 auto file renaming producing a certain format for renamed files. Please fix your scripts accordingly.

    Closes GH-709

  • Log number of items loaded from input file

  • Link external libraries to libaria2 with --enable-libaria2

    Fixes GH-707

  • Allow seconds for seed-time (fractional minutes)

    Patch from Sébastien Cabaniols

    Closes GH-704

release-1.25.0

7 years ago

Release Note

This release fixes many bugs reported so far. There is no new functionality in this release. We have fixed many performance issues in BitTorrent downloads.

Changes

  • Update third-party libraries for binary releases

  • Send have message without too much delay

    Also send bitfield rather than have messages if bitfield message is equal to or less than the sum of have messages which otherwise would be sent.

  • Fix bug that causes bogus EOF connection failure in BitTorrent downloads

  • Fix frequent interested/not interested message transmission

  • Fix frequent choke/unchoke message transmission

  • Try to use available URI if all pooled requests are sleeping

  • Update expat in OSX build

    Closes GH-694

  • aria2mon: Add --secret option

    Fixes GH-700

  • Set server status error on network failure in server performance profile

  • Disable AI_ADDRCONFIG if no IPv4/IPv6 address is configured for any interface

    Fixes GH-698

  • Russian manual: Update aria2c.rst

    Patch from ITriskTI

  • Apply --retry-wait on 503 only

  • Ensure that lowest speed check is done even when download speed is 0

    Fixes GH-686

  • Document that -o is always relative to -d option

    Fixes GH-684

  • Allow larger ut_metadata size

    Fixes GH-681

  • mingw: Change FD_SETSIZE to 32768

    Fixes GH-678

  • Fix compile error on OS X

    Fixes GH-683

release-1.24.0

7 years ago

Release Note

This release fixes several bugs. The new functionality is that when options which is only applicable in waiting state are submitted to an active download via RPC, the download is now automatically restarted to reflect the changes. Previously, those options were just ignored.

Changes

  • BitTorrent: Allow 32KiB request

    It looks like the 32KiB is the default request size of python bittorrent client. Previously, aria2 only allowed maximum 16KiB request.

  • Don't unchoke peer which is not interested in us

  • Fix bug that evaluation of Peer::amChoking is negated

  • Faster seed/download on fast connection

  • Increase DHT task concurrency to 15

    Fix GH-653

  • Fixed mmap failure check with MAP_FAILED flag

    Fix GH-662

    Patch from suzker

  • Added file size overflow check for mmap on 32bit os

    Fix GH-662

    Patch from suzker

  • Use standard percent-encode for tracker request query

    Fix GH-659

  • mingw32: Gain privilege before opening files

    Fix GH-657

  • Restart active download to apply previously not applicable options

    Previously, we categorized options that can be used in aria2.changeOption RPC method into 2 categories. The options in one category can be applied on the fly, meaning that download continues to be active while applying options. Another category includes options which are only applicable when downloads are waiting or paused.

    In this change, when active download is ordered to change options which only applicable in waiting or paused state, it is now paused, and then automatically restarted. Although we have limited number of download concurrency, the pause and restart is done atomically, and the download is inserted at the front of the queue, it is picked up immediately if the concurrency regulation allows.

    Fix GH-640 and GH-644

release-1.23.0

7 years ago

aria2 1.23.0

Release Note

This release fixes several bugs reported by users, and adds several new features. Read the following section for details.

Changes

  • Simplify cache write

    The previous cache write routine was too complex. I'm sure I can rewrite it to more elegantly. But the primary motivation of this complex logic is for disk activity reduction on Windows 7, and I observed it on my old IDE disk. I checked it again recently, and there is no difference between with and without this complex logic. For this reason, it was removed. Will revert this change if many of users are not happy with this.

  • Allow subsecond value in ns cookie.txt file's expiry time field

    Fixes GH-655

  • Adjust chromium cookie time

  • import-po: iterate on glob, not ls output

    Patch from Mingye Wang

  • Add --stderr option to redirect all stdout log output to stderr

    Fixes GH-638

  • Add "hide" to --download-result option

    Fixes GH-639

  • Fix downloaded metaurl torrent filename

  • Add a little bit of color to have a better visual of important informations

    Patch from rotor

  • Update README URLs based on HTTP redirects

    Patch from ReadmeCritic

  • Relocate from github.com/tatsuhiro-t/aria2 to github.com/aria2/aria2

    Fixes GH-602

  • mingw: Defer the falloc warning until falloc is specified by option

    Fixes GH-594

  • Add bittorrent key to aria2.tellStopped status

    Fixes GH-612

  • Addsystem.listNotifications RPC method

    Merges GH-620

    Patch from Sonny Piers

  • Report CheckIntegrity info in tellStatus

    • Adds verifiedLength to tellStatus. Reports the length of data that has been verified of the current RequestGroup being verified.
    • Adds verifyPending to tellStatus. Reports if the RequestGroup has a verification of integrity pending.

    Closes GH-561

    Patch from Kurt Kartaltepe

release-1.22.0

8 years ago

Release Note

This release adds new feature that manages the number of concurrent downloads dynamically. --stream-piece-selector option gets new value "random" which randomizes the piece selection for HTTP/FTP downloads. This effectively randomizes the order of files on multi-file Web Seeding. Now all contributor's names are in AUTHORS file. Previously, aria2 shows error when it sees floating point number in a torrent file because torrent file specification does not allow floating point number. In this release, they are just ignored, and aria2 continues to parse the rest of the torrent file as if there is nothing wrong.

Changes

  • Add description about possible fragmentation with --file-allocation=trunc

  • Make single-entry metalink download with multi-file torrent work

  • Add all contributor's names in AUTHORS

  • Ignore floating number in torrent file

  • Added support for a dynamic management of the number of concurrent downloads as a function of the overall bandwidth observed

    This change adds --optimize-concurrent-downloads option.

    Patch from oliviercommelarbre

  • Add --stream-piece-selector=random

release-1.21.0

8 years ago

Release Note

This release fixes several bugs, see the Changes for details. We added "following" key to the response of aria2.tellStatus RPC method as reverse link for followedBy.

Changes

  • SessionSerializer: Fix bug that pause=true is added to wrong item

    This change also defers writing metadata download to the location where first its follower download is written.

  • Add "following" to aria2.tellStatus response key as reverse link for followedBy

  • mingw: Add warning for falloc

  • Update ciphers in AppleTLS

    Also enable fast start while at it

  • OSX: Enable libssh2 and sftp

    Closes GH-468

  • Update OSX dependencies

    Closes GH-466

  • Fix compile error without TLS support

  • Add support for using gnutls system wide crypto policy

    Patch from Athmane Madjoudj