v0.9.3 [2013-11-23] Limao Luo: - %e has been renamed to %s (--help) [fef8987] Toni Gundogdu: - AC_PREREQ: Bump to 2.69 [c6591e6] - Cleanup and devise more C++ eloquence - Add cc::sig [b3dfaf2] - Setup sig{winch,usr1} handlers only once - Use sigaction(2) instead of signal(2) - cc::file - Rewrite for cc::sig (sigusr1) [711dc10] - Use updated cc::progressbar [8236649] - _init: Rewrite/cleanup [fdf4565] - cc::input: Do not unescape input URIs [34026cb] - Reduce duplicate code [17a0e27] - cc::log: Rewrite, make header-only [8a60f4e] - cc::progressbar: Rewrite, make header-only [5431098] - Rewrite for cc::sig (sigwinch) - Use IEEE-1541 symbols - cc::re: Throw Boost.Exception based exception [dc132f7] 22 files changed, 773 insertions(+), 859 deletions(-) v0.9.2 [2013-08-08] Toni Gundogdu: [!] glibmm 2.24+ is now a prerequisite - Add --timestamp: Try to preserve modification time (PORT) [50213d7] - Bump the required Boost version to v1.49 [86978ab] - [DOC] --update-interval: Accepts now integers only [6426f8f] - Improve cc::input (complete rewrite) [81303f9] - Improve cc:options (complete rewrite) [314e722] 28 files changed, 1434 insertions(+), 873 deletions(-) v0.9.1 [2013-07-16] Toni Gundogdu: [!] GLib 2.24+ is now a prerequisite [!] Relicense under AGPLv3+ - Add cc::input -- improve input parsing [ad1f2e6] - DOC: cclive(1): Revise INPUT section [75d1b5c] - DOC: Revise --stream description [401e8c0] - FIX: configure.ac: AS_IF for date(1) [0019e62] - Deprecate --prefer-format in favor of --stream with libquvi 0.9+ [f55f70d] - Rewrite status_callback for libquvi v0.9.2 [7d94207] - Make --stream configurable [993a0be] - Move --support implementation to print_support [3d35e5e] - --filename-format: Remove depr. support for %h sequence [ad214c7] - --print-streams: Make output similar to quvi(1) 0.9+ [2294e93] - --version: Add CXX and CXXFLAGS to the output [65f8373] - --version: Print copyr notice to stderr instead of stdout [6c1f678] - --version: Provide additional info about libquvi [9e6e50e] 45 files changed, 976 insertions(+), 616 deletions(-) v0.9.0 [2013-05-25] Toni Gundogdu: - Add libquvi 0.9+ compatibility layer - Add --print-config [bf22b60] - Add short-option for --verbose-libcurl [239ea61] - Drop libquvi 0.2.16.x support - README: Bump libquvi prereq. to 0.4.0+ [99b47eb] - FIX: Regression in retrying introduced by 4b118378 [b57e47b] - FIX: Skip transfer with USR1, do not retry transfer [293dbc9] - Merge --version and --license options [474c143] - Add build time to --version output [ca5e80f] - Remove all deprecated options/features - Remove depr. --format [e32fc26] - Remove depr. --query-formats [e8114a0] - Remove depr. --regexp [0392fb0] - Remove depr. --subst [8d2ac37] - Update m4/boost.m4 to the latest [982bbc7] 28 files changed, 782 insertions(+), 422 deletions(-) v0.7.12 -- [2013-02-10, r:Toni Gundogdu] Toni Gundogdu: - Add quvi compatibility layer [cda6cc4] - Add short-option -h [8a279a6] - Add short-option -v [ec969f1] - Deprecate --format, add --stream [949d476] - Deprecate --query-formats, add --print-streams [7188199] - doc: Revise manual [777d82a] - FIX: Do not ignore I/O errors during file transfer [6f2e711] - options: Make 'continue' configurable [92bd61f] - options: Make 'no-resolve' configurable [4afab3e] - Upgrade boost.m4 to the latest [c436150] See ChangeLog for a more detailed list of changes. 47 files changed, 1881 insertions(+), 1993 deletions(-) v0.7.11 -- [2012-12-12, r:Toni Gundogdu] Adam Sampson: - Check .error() for user-provided regexps [03d69e0] - Copy strings passed to StringPiece [5325ecc] 3 files changed, 31 insertions(+), 19 deletions(-) v0.7.10 (2012-08-28) / Toni Gundogdu Toni Gundogdu: - Append contents of INSTALL file to README file [a90c854] - README file will contain the cclive specific information - INSTALL file will now be provided by GNU Autotools - configure.ac: Add AC_PROG_LN_S [da6c39a] - configure.ac: Install ccl symlink by default [9ecaaf8] - configure.ac: Lower AC_PREREQ to 2.67 [e317832] - configure.ac: Modernize AM_INIT options [76fd2d0] - configure.ac: Modernize libtool options [0f39e93] - configure.ac: Replace deprecated macros [59fce53] - configure.ac: Run gen-ver.sh to get version value [4f0d4a8] - DOC: Manual: Revise descriptions for option sections [fe31766] - DOC: Rewrite EXIT STATUS section [6690303] - FIX: Return non-zero exit status if failure (#18) [4d3c506] - exit_status: Redefine as ok (EXIT_SUCCESS) and error (EXIT_FAILURE) [20cbf6d] - Replace "invalid_option" with "error" [980792e] - main: Use exit_status, have caught exceptions set exit status [99bd1b2] - gen-ver.sh: Rewrite completely [df0a4ce] - go_background: Return application::error instead [36158a1] - Install ccl symlink now by default, see --disable-ccl in README - install-exec-hook: Remove the 'ccl' symlink [e394f71] - m4/boost.m4: Update to the most recent [1044d88] - m4/version.m4: Remove the file [d1e6bae] 17 files changed, 206 insertions(+), 139 deletions(-) v0.7.9 (2012-03-03) / Toni Gundogdu Toni Gundogdu: - FIX: Print only HTTP category domains with --support (#17) [8172356] - FIX: --support: Strip lua escapes from domain patterns (#16) [b089d63] - Update boost.m4 to the latest version [edc7b12] 0.7.8 Sat Nov 26 2011 Toni Gundogdu Changes: - Improvements to --exec - Invoke --exec with "nothing todo" - Additional specifiers %n and %t - Allow multiple occurences - Argument handling 0.7.7 Sun Oct 16 2011 Toni Gundogdu Bugfixes: - Do not create doc dir unnecessarily with "make install" - Option -O evaluated incorrectly (#13) Changes: - Use QUVI_VERSION_SCRIPTS when available - Add YouTube fmtNN ref. URL to manual 0.7.6 Mon Sep 12 2011 Toni Gundogdu Changes: - Add --tr (depr. --regexp, --subst) - Add --prefer-format - Revise manual 0.7.5.1 Thu Aug 18 2011 Toni Gundogdu Changes: - Lower quvi prerequisite to 0.2.16.1 0.7.5 Sat Aug 13 2011 Toni Gundogdu Changes: - Make --update-interval a "configurable" option - Implement 'simple' progressbar - Add --progressbar Fixes: - --update-interval (with negative) values doesn't work as intended (#11) 0.7.4.1 Thu Jun 23 2011 Toni Gundogdu Fixes: dist - make: rm: cannot remove `cclive': Is a directory (#9) 0.7.4 Sat Jun 18 2011 Toni Gundogdu Changes: - Add --no-resolve (replaces --no-shortened) - Rewrite to use quvi "media interface" - Add support for reading from files - Deprecate "--format list" - Remove --no-shortened - Add --query-format Changes: dist - configure: Rename --with-man -> --with-manual - Bump quvi prerequisite to 0.2.17 - Revert back to GNU Autotools 0.7.3.1 Tue Mar 15 2011 Toni Gundogdu Bugfixes: - CMake Error at src/CMakeLists.txt:43 (#7) 0.7.3 Sat Mar 12 2011 Toni Gundogdu Changes: - Add QUVIOPT_CATEGORY check - Set QUVIPROTO_HTTP - Do not build quvicpp as a static library - Build quvicpp in the "cclive" target instead - See also ChangeLog for 3a867d7 commit message Bugfixes: - Compilation with boost 1.46.0 (#6) - Boost::Filesystem uses v3 as the new default in 1.46.0 0.7.2 Mon Feb 07 2011 Toni Gundogdu Changes: - Add SIGUSR1 handler - Add progress meter Bugfixes: - Normal progressbar min-max rendering while resizing window 0.7.1 Fri Jan 07 2011 Toni Gundogdu Changes: - Lower pcre prereq. to 8.02, thanks to Alejandro Garrido Mota - Show --background in options on platforms that support fork - Print pid to log file with --background - Add getpid check to CMakeLists.txt - Add --no-shortened switch - Make --quiet exclusive Bugfixes: - Wrong full path for downloaded file (#5) (d#608393) - Number of various issues with --background log 0.7.0.1 Sat Dec 18 2010 Toni Gundogdu Changes: - Add --output-dir 0.7.0 rc2 Sat Dec 04 2010 Toni Gundogdu Changes: - Lower boost prerequisite to 1.42.0, thanks to Alejandro Garrido Mota - Add --format [<help>|<list> <pattern>] - gzip manual before installing it Bugfixes: - CMAKE_VERBOSE_MAKEFILE - Manual install dir 0.7.0 rc1 Sat Nov 20 2010 legatvs Changes: - progressbar.cpp: Rewrite to_unit 0.7.0 beta4 Wed Nov 03 2010 legatvs Changes: - Add --regexp check - Clean up manual page - Improve progressbar line clearing Version 0.7.0 beta 3 October 15, 2010 Changes: * Print --help, --version, --license, --support to stdout Version 0.7.0 beta 2 September 30, 2010 Changes: * Migrated issue tracker to sf.net (read more: <http://is.gd/fnDU2>) * Use "git describe" for version instead * Add --max-retries, --retry-wait (#47) * --version, print libquvi Version 0.7.0 beta 1 September 1, 2010 Changes: * Add prerequisite: Boost library * Build system: GNU Autotools -> CMake * Rewrite everything See also: <http://code.google.com/p/cclive/wiki/Development_0_7_0> 0.6.1 ------------- --format no longer uses hardcoded values. The accepted values are now provided by libquvi. 0.6.0 ------------- Significant changes to the project. 0.6.0 has gone through tedious testing but expect bugs. * Added new dependency for libquvi (http://quvi.googlecode.com/) - libquvi is a brand new a spinoff library - based on cclive 0.5 host specific code - takes care of all of the page fetching and parsing * cclive will now prepend "error: libquvi:" if an error occurs in the library, this means that any such bug should be reported to the *quvi bug tracker* (see the link above) * Added support for (cctv) multi-segment videos, see also: http://code.google.com/p/clive/issues/detail?id=45 * Adult websites are now only supported if libquvi was built with the support (default:no) * CCLIVE_CURLINIT return code is now obsolete, libquvi initializes libcurl and spews out the init error * The code responsible for the underlaying "retry-transfer" logic was rewritten for better readability * Removed the libiconv dependency, libquvi takes care of the character set conversions now * Tests no longer run any of the old host specific checks, the quvi package takes care of this now, other changes to the test suite include: * ADULT_OK environment variable is now obsolete, this is now libquvi territory * Renamed CCLIVE_TEST_OPTS -> CCLIVE_TEST_OPTIONS * Tests are now perl scripts * See INSTALL file for the list of test suite supported environment variables * libquvi introduces some misc. minor improvements to the page fetching and parsing, e.g. spiegel videos now skip the video page fetch altogether * Spyfilms video ids were previously (0.5.9) glued together from various video page elements, as of 0.6.0 (and libquvi) spyfilms video ids are generated using different scheme * This is a special case, all other supported websites use unique ids for their videos * Option changes * Remove --stream option. This option was supported for historical reasons only, until now. It has been considered deprecated since the introduction of --stream-pass in 0.4.6. 0.5.7 ------------- Multiple regular expressions can now be supplied for --substitute. For example: % cclive -S "s/old/new/i s/[/:-]/_/g" URL Note the whitespace between the regular expressions. 0.5.6 ------------- Added --substitute which mimics Perl's s/old/new/(gi) substitution. It can be used to replace substrings in output filenames. Example: % cclive -S "s/old/new/i" URL % cclive -S "s/[/:-]/_/g" URL Changed --regexp to accept Perl-like regular expressions, e.g. % cclive -r "/(\w+)/" URL % cclive -r "/(\w+)/g" URL % cclive -r "/([a-e])/gi" URL Note that this breaks the backward compatibility. * --regexp now expects /pattern/(gi) * --find-all is no longer supported (use /g instead) Added --background which is similar to what clive (2.1.x) once had. The progress indication while in the background is very simplistic. Note that --logfile and --logfile-interval options were also added to support --background. 0.5.2 ------------- New youtube format: fmt34. This was previously referred to as youtube default format which no longer appears to be the case. Note that the fmt34 video quality and resolution may vary. Fixes a few bugs. Redtube support is broken. http://code.google.com/p/cclive/issues/detail?id=5 0.5.0 ------------- The dependency of Perl and HTML::Tokenizer module have been replaced with libiconv and PCRE for significantly lower system footprint. Perl was previously used for parsing video titles and cleaning them up. configure no longer supports --enable-sigwinch. The support is now compiled into the program automatically if signal.h is found and defines SIGWINCH. tests/ have been rewritten in C++. Other notable changes: Removed options: --title - obsoleted by --filename-format since 0.4.1 --cclass, --no-cclass - obsoleted by --regexp and --find-all (below) New options: -r, --regexp - Defines the regular expression that can be used to "filter" video titles before they are used for filenames -g, --find-all - Used together with the above to repeat the matching to find all occurences, similar to Perl's /g option Example: cclive -gr "(\w|\s)" URL Comparison: ----------- SIZE RES Notes clive 2.2.4 ~13924k ~10388k Perl all the way cclive 0.4.7 (w/ perl) ~8300k ~6908k Video titles enabled cclive 0.4.7 (w/o perl) ~5940k ~3224k No video titles cclive 0.5.0 ~5780k ~3196k Video titles enabled by default SIZE = total size of the process (text, data, and stack) RES = current amount of resident memory Note : Figures are approximates. cclive was built with "-O2 -march=pentium4" Tested: FreeBSD 7.2, numbers provided by top(1), numbers vary slightly per URL