What's new in mulk 0.6.0
Aug 26, 2011
- New features:
- large file support (LFS) has been added
- new option to read, from an external text file, a list of metalink URLs to download
- new option to set HTTP proxy and port to use
- new option to avoid downloading of html dependencies (images, CSS, etc.)
- new option to save the report files progressively. It's possible to specify the number of lines (downloads) to be saved each time.
- depth option with value 0 now means infinite recursion
- new parameters have been added to report files (error code, http code, local filename and mime-type filename)
- new functions to rationalise the process of inserting options
- static and dynamic libraries creation has been added to configure
- static and dynamic libraries creation has been added to MSVC's solution
- new --with-libmetalink option in configure in order to specify different path for libmetalink library
- new arguments (--with-libcurl and --with-uriparser) in configure in order to specify different paths for libcurl and uriparser libraries.
- gcc's visibility option has been managed in "include/mulk/mulk.h"
- check in configure.ac for malloc, calloc, free and vsnprintf has been added
- Mulk license has been changed to LGPL, in order to lead to wider use of libmulk
- m_malloc.c has been totally rewritten for license compatibility
- a short notice about license has been added. It is visible with version option
- the options can be evaluated by callbacks
- the option directories are now evaluated only once at startup
- dependency between new metalink URLs and related options has been removed. The options are evaluated when download process is running
- specific Mulk return codes have been added to the library functions
- unique DEBUG compilation flag has been created
- MSVC solution has been revisited and rationalized
- Bug fixes:
- some URL strings were not released in case of error
- when creating a directory in Windows using an absolute path, there was a wrong behavior
- in configure, where tidy.h and openssl/sha.h were requested even if they were disabled
- the total number of downloaded files was wrong if an error occurred
- Metalink download, when the filesize was missing and the URLs were wrong, Mulk tried anyway to control the checksum
- Metalink download, FTP protocol was used erroneously to find the missing filesize
- downloading Metalink file size, under some circumstances not all the possible URLs were tried
- downloading Metalink file size, with a 200 HTTP code the size was considered valid also if not sent correctly
- whole checksum of a file sometimes was miscomputed due to unsynchronized file
- http://www.example.com and http://www.example.com/ have to be considered the same url
- correct behaviour in accepted domains if the the host is represented as an IP
- a "(null)" string was printed to reports when a not HTTP protocol was used
- avoid recursive calls in option file
- several fixes made in order to assure that the library's functions can called more than once for each instance
New in mulk 0.5.1 (Aug 26, 2011)
- i18n gettext internationalisation has been added
- new options to go to foreign hosts, accept and reject specific domains
- new options to specify username and password for the connections
- new options to follow FTP links in HTML documents
- new option to change temporary directory
- new output directory to save downloaded files
- Italian translation has been added
- main process simplified and functions moved to a new file
- new declarations to include code as static library
- configuration flag to disable recursion in HTML documents
- new macro for debugging purposes
- code to debug dynamic memory allocation and find memory leaks
- options initialisation revisited
New in mulk 0.5.0 (Aug 26, 2011)
- Windows compatibility has been added
- Metalink option added to resume download of a file
- Metalink support for FTP added
- Metalink max number of connections per file parameter supported
- new option to follow Metalink in HTML documents
- option to change default user agent identity
- save URLs with specified mime-type to output directory
- output data and temporary directories are now separated
- new HTML tags are parsed in order to download whole site. The new tags are FRAME, IFRAME, AREA, MAP, LINK, and SCRIPT.
- each file has an extension assigned when saved to the output directory
- bug fix, when an url doesn't have a filename in the path, a name is automatically added in order to save the file locally
- better parsing of mime types present in HTTP header
- all strings are now dynamically allocated
- created new macros for printing messages
- off_t data type used for file size
- check for a recent curl version to avoid a bug when performing intensive downloads
New in mulk 0.4.3 (Aug 26, 2011)
- chunk checksum verification for Metalink downloads (support for md2, md4, md5, sha1, sha224, sha256, sha384, sha512)
- Metalink continent option added. It's possible to choose the continent of origin of the Metalink files to download
- bug fix, when a checksum type isn't recognised, the checksum isn't computed correctly
New in mulk 0.4.2 (Aug 26, 2011)
- mulk now supports all protocols supported by libcurl (HTTP, HTTPS, FTP, FTPS, TFTP, TELNET, DICT and FILE)
- checksum verification for Metalink downloads (support for md2, md4, md5, sha1, sha224, sha256, sha384, sha512)
- Metalink download supports also HTTPS
- Metalink language option added
- GNU getopt and getopt_long used for parsing options. Now the program is more flexible to read options.
- fixed a bug when downloading a Metalink file composed by a single chunk
New in mulk 0.4.1 (Aug 26, 2011)
- liburi replaced by liburiparser (http://uriparser.sourceforge.net/) which is more active and packetised
- libmetalink is now dynamically loaded and external to the project in order to ease the packetisation process
- Metalink location option added
- Metalink OS option added
- Metalink preference parameter supported
- Metalink max number of connections per resource parameter supported
- code cleaned in order to follow GNU coding standards
New in mulk 0.4.0 (Aug 26, 2011)
- Metalink feature added to the project
- Metalink library added to the source code
- ability to read a list of options from a text file
- option to write to a text file a brief report
- option to write to a csv file a brief report
- quiet option to avoid printing messages
- DEBUG compilation flag inserted
- fixed a bug, under particular conditions some URLs in download queue were skipped
- fixed a compilation problem when tidy header isn't
New in mulk 0.3.1 (Aug 26, 2011)
- new option to read URLs to download from a text file
- new option to list more than one URL to download on the command line
- some bugs fixed
New in mulk 0.3.0 (Aug 26, 2011)
- uri static library added to the project
- saving and filtering of GIF and PNG images by width and height
- JPEG library removed, no more needed
- user manual added to the software installation
New in mulk 0.2.0 (Aug 26, 2011)
- up to 50 simultaneous connections, 5 for each per host
- better recognition of file types based on mime types