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.37.0

5 months ago

What's Changed

New Contributors

Full Changelog: https://github.com/aria2/aria2/compare/release-1.36.0...release-1.37.0

release-1.36.0

2 years ago

Release Note

This release fixes several bugs. See Changes for details.

Changes

  • Update wslay

  • Bump Windows build dependencies

  • Bump android build dependencies

  • Fix segfault when time_t is 64bit on 32bit arch

    Patch from Natanael Copa

    GH-1666

  • Updates the make_bash_completion script to Python3.

    Patch from sleepymac

    GH-1672

  • Prevent corrupt downloads after app and/or system crash

    Patch from Ali MJ Al-Nasrawy

    GH-1644

  • Reset sessionDownloadLength and sessionUploadLength on download start

    GH-1486

  • AppleTLS: Add TLSv1.3 support

release-1.35.0

4 years ago

Release Note

This release fixes several bugs. See Changes for details.

Changes

  • Update mingw build dependencies

    GH-1469

  • Update android build dependencies

    Update android build dependencies. Use android NDK r20 and build aarch64 binary.

    GH-1467

  • Drop SSLv3.0 and TLSv1.0 and add TLSv1.3

    TLSv1.3 support is added for GNUTLS and OpenSSL.

    GH-1385

  • Platform: Fix compilation without deprecated OpenSSL APIs

    Patch from Rosen Penev

    GH-1315

  • Remove linux getrandom and use C++ stdlib instead

    GH-1306

  • Don't send Accept Metalink header if Metalink is disabled

    GH-1300

  • gnutls: Fix bug that commonName is always empty

    GH-1214

  • Fix openssl API version logic for libressl 2.7.x

    Patch from Ben Chaney

    GH-1213

  • Fix build failure when InternalDHKeyExchange is used

release-1.34.0

5 years ago

Release Note

This release fixes several bugs. See Changes for details.

Changes

  • mingw: Use SetFileTime to avoid DST adjustment

    GH-1079

  • UnknownLengthPieceStorage: return piece length

    show something in console status when downloading items with unknown content length

    Patch from kwkam

    GH-1065

  • WinConsoleFile: fix colour properly

    Patch from kwkam

    GH-1058

  • util: also detect xdg_* env variables on windows

    so if people like to keep FHS they could define XDG_* for it

    Patch from kwkam

    GH-1057

  • MacOS: Allocate once (apfs compat)

  • Fix bug that signal handler does not work with libaria2

    This commit fixes the bug that signal handler does not work with libaria2 when aria2::RUN_ONCE is passed to aria2::run().

    GH-1053

  • Retry on HTTP 502

    Patch from nicolov

    GH-1038

release-1.33.1

6 years ago

Release Note

This release fixes a bug that causes high CPU usage in mingw build.

Changes

  • mingw: Fix high CPU usage in BitTorrent downloads

    This commit fixes high CPU usage in BitTorrent downloads. Only mingw build is affected by this bug.

    Thank you kwkam for identifying the cause of the issue, and helping debugging this patch.

release-1.33.0

6 years ago

Release Note

This release fixes several bugs, and add new features.

Changes

  • Include arm in a filename of android zip

  • Upgrade base image of Dockerfile.mingw to ubuntu:16.04

  • wintls: Potential fix for undecrypted read

    GH-1021

  • libaria2: Return last error code from DownloadHandle::getErrorCode

    GH-991

  • Windows: pass writefds also as exceptfds to select()

    winsock notifies connect() failures on exceptfds instead of writefds.

    Fixes GH-969 Fixes GH-975

  • libuv: use pkg-config

  • FeatureConfig: align text

  • Update Dockerfile.mingw

    avoid docker cache when using git

    Patch from qweaszxcdf

    GH-970

  • Add --peer-agent option

    Add --peer-agent for setting the version/user agent used in the extended handshake protocol for bittorrent.

    Patch from Kurt Kartaltepe

    GH-947

  • OSX: Allow to specify a build

  • OSX: update c-ares

  • [Docs, libaria2] Fix type of obj pushed into options vector

    aria::KeyVals is a vector of pair of std strings, therefore the type of object being pushed should be std::pair<std::string, std::string>, however in the docs, the type of the said object is KeyVals. If one follows the docs, their code will fail to compile.

    Patch from geetam

    GH-941

  • AppleTLS: Silence cipher suite selection

  • Unbreak build OSX build

  • Update macOS versions

  • Add --bt-load-saved-metadata option

    Before getting torrent metadata from DHT when downloading with magnet link, first try to read file saved by --bt-save-metadata option. If it is successful, then skip downloading metadata from DHT. By default, this feature is turned off.

    GH-909

  • Fix regression in bfc54d0b9a694e5d87efd8ed11b5393bc4b66f93

    Don't save control file if --auto-save-interval is 0.

    GH-917

  • Fix infinite loop bug when file is not found

release-1.32.0

6 years ago

Release Note

This release fixes several minor bugs, and spelling mistakes.

Changes

  • Clarify --max-concurrent-downloads option

    GH-833

  • Fix compile error with toolchain which lacks IPV6_TCLASS

    GH-895

  • Log directed URI in notice log level

    GH-884

  • Fix typo

    Patch from Tse Kit Yam

    GH-879, GH-899

  • Spelling fixes

    Patch from klemens

    GH-870

  • Remove unused Android parts

    These parts where unused after merging https://github.com/aria2/aria2/pull/736

    Patch from Fredrik Fornwall

    GH-868

  • Save control file early

    GH-859

  • Update links in Dockerfile.raspberrypi

    Some links used in Dockerfile.raspberrypi are not accessible anymore, because they were pointing to old versions of some source packages and new versions were released. This commit fixes this by changing the links to point to the newest versions.

    Patch from Michał Leśniewski

    GH-860

  • Propagate disk full error on pre-allocation to last error code

    GH-856

release-1.31.0

7 years ago

Release Note

This release fixes assertion error in SimpleRandomizer::getRandomBytes. It adds new option content-disposition-default-utf8.

Changes

  • Better error message when local file status cannot be retrieved

    GH-836

  • Fix assertion failure in SimpleRandomizer::getRandomBytes

    errno might not be initialized to 0, and we may get both rv == -1 and errno != ENOSYS. This leads to assertion failure. Since getrandom_linux always returns -1 on failure, checking errno is useless in this function.

    GH-823

  • Add option content-disposition-default-utf8

    Patch from JimmyZ

    GH-813

release-1.30.0

7 years ago

Release Note

This release fixes several bugs. See Changes below for detailed bug fixes. This release adds an ability to expand ${HOME} to user's home directory in several options. It would be useful when used in configuration file. -S option against torrent file now prints out DHT nodes.

Changes

  • mingw: Use sqlite 3.15.2

  • Fix bug that --disable-websocket causes build error

  • Fix bug that lower bound of optimize-concurrent-downloads becomes 1

    GH-798

  • Print DHT nodes with -S option

    GH-795

  • Take into account address family when resolving DHT node address

    GH-794

  • Allow block device file to -i option

    GH-785

  • Expand ${HOME} to user's home directory in several options

    The following options implement this substitution:

    • --ca-certificate
    • --certificate
    • --dht-file-path
    • --dht-file-path6
    • --dir
    • --input-file
    • --load-cookies
    • --log
    • --metalink-file
    • --netrc-path
    • --on-bt-download-complete
    • --on-download-complete
    • --on-download-error
    • --on-download-start
    • --on-download-stop
    • --on-download_pause
    • --out
    • --private-key
    • --rpc-certificate
    • --rpc-private-key
    • --save-cookies
    • --save-session
    • --server-stat-if
    • --server-stat-of
    • --torrent-file

    GH-780

  • Document that libaria2 is not thread safe

    GH-775

  • configure: Use pkg-config to find libs whenever possible

    Use pkg-config to find cppunit, libxml2 and expat. All those libraries provide pkg-config files, and in all of those cases the pkg-config macro is superior to the custom macros used currently.

    The advantages of pkg-config files include:

    • Explicit static linking support via --static. Currently, e.g. 'xml2-config --libs' prints all libraries needed for static linking when doing dynamic linking unnecessary, resulting in unnecessary direct deps.
    • Better cross-build support. You don't have to build the additional *-config tools for target.
    • Better multilib support. Per-ABI pkgconfig directories are commonly supported while packages usually fail to look for per-CHOST *-config variants.
    • Better override support. The current macros allow little to no result overrides, the pkg-config macros let you pass FOO_CFLAGS and FOO_LIBS manually.
    • Cleaner version checks. The code used in libxml.m4 is really creepy.

    Patch from Michał Górny

    GH-773

  • WinTLS: Rewrite writeData

    We re-wrote WinTLSSession::writeData. The major points are:

    • Buffer is now preallocated once handshake is finished. Previously, they are allocated each time when we send one TLS record.
    • Schannel uses header, body and trailer for each secBuffer. Now we send them off at once using WSASend which is windows counterpart of sendv. Previously, we do memmove if some of them are truncated.
    • We don't try to send application data in WinTLSSession::closeConnection, since semantically we need same application data used to create TLS record before. Using 0 length data to finish sending buffered data looks like a hack.

    GH-772

release-1.29.0

7 years ago

Release Note

This release fixes several bugs. See Changes below for detailed bug fixes. This release adds 1xx non-final response support. Wslay library is updated to the latest revision.

Changes

  • WinTLS: Fix busy loop on write error

    GH-767

  • Support 1xx non-final response

    GH-763

  • Update wslay

    GH-764

  • Don't download piece which is filtered out (e.g., --select-file)

    This commit fixes the bug that piece which is not requested by --select-file is downloaded in multi-file Web-Seeding.

    GH-769