
2.2.18  Tue Nov 30 2010  legatvs
Changes:
        - Change google test URL
        - Accept dailymotion swf URLs (related b#3115846)


2.2.17  Sat Nov 06 2010  legatvs
Changes:
        - toUnits: fix hi-speed issue, thanks to Thomas Klausner for the report
        - Makefile.PL: Use VERSION_FROM
        - Use 'version' module


Version 2.2.16
September 28, 2010

Changes:
  * Add support for webm_480p, webm_720p [youtube]
    * Thanks to Mark Weaver for the patch, <http://is.gd/fmwv5>
  * Misc. minor tweaks in manual (e.g. URLs, etc.)
  * Migrate issue tracking from Googlecode to Sourceforge, <http://is.gd/fmylF>


Version 2.2.15
September 10, 2010

Changes:
  * New Youtube test URL
  * --format, "flv" is now called "default"
  * Add Youtube 1080p support (#62)
  * Update Youtube format IDs to match those used with quvi

Bugfixes:
  * Vimeo support (http/404), thanks to Jonas Smedegaard for the fix (#61)
    - <http://bugs.debian.org/595486>


Version 2.2.14
September 2, 2010

Bugfixes:
  * Output File path encoding (#60)


Version 2.2.13
August 12, 2010

Changes:
  * Add --license option


Version 2.2.12
July 25, 2010

Changes:
  * Mark cctv support as broken

Bugfixes:
  * [youtube] http/404, ported from quvi, fix by Daniel Schaal (quvi #7)
  * break.com support, thanks to Werner Elsler for the fix (#57)


Version 2.2.11
--------------
April 3, 2010

Bugfixes:
  * Youtube, update patterns to reflect website changes


Version 2.2.10
--------------
March 24, 2010

Changes:
  * Add buzzhumor.com support
  * Mark ehrensenf.de support as broken

Bugfixes:
  * Update --hosts format strings
  * dailymotion.com
    # Change format IDs to reflect website changes (yet again):
      * h264-hd -> hd
      * h264-hq -> hq
      * removed h264 and spark-mini (no longer even listed)
    # Parse title from elsewhere
      * Title was previously parsed from the title HTML tag
      * Which usually contained more than we cared for
    # Spew out an error if the video looks like a partner video
  * break.com
    # Support, thanks to Werner Elsler for the fix
    # Title parsing, ported from libquvi


Version 2.2.9
(February 13, 2010)

 User-visible changes:
  * Fix dailymotion formats
    - vp6-hd -> h264-hd
    - vp6-hq -> h264-hq
    - vp6 -> h264
  * Fix vimeo support
    # closes issue #49
  * Partial fix: cctv: dump multi-segment video links
    # single-segment videos are still copied normally
    # closes issue #45 (for now)

 Developer-visible changes:
  * Rename CHANGES -> ChangeLog
  * Add NEWS file
  * Remove dead test link:
    # tlinks/sload.url
    # t/10sevenload.t


Version 2.2.8
(December 18, 2009)

 User-visible changes:
  * Remove the remains of the redtube support
  * Do not replace dashes with underscores in IDs (closes issue #44)
  * Sevenload:
    # Fix http/401 error
    # Cleanup title parsing (use config data instead)
  * Croak with an error if BerkeleyDB module is not found
    # And either -d or -g options are used


Version 2.2.7
(September 29, 2009)

 User-visible changes:
  * Fix: dailymotion id parsing
  * Youtube:
    # Accept -f fmt34
    # fmt34 is now treated as yet another (new?) format
    # Rewrite youtube section of the FORMATS in the manual
  * Fix: --format=best not working with youtube (closes issue #39)
    # Thanks to Peter Baranyi for the fix

 Developer-visible changes:
  * Disable: t/11redtube.t (broken, see known issues)
  * "make test": ADULT_OK env.var. now enables redtube test

 Known issues:
  * redtube: broken (verify -> http/404)
 

Version 2.2.6
(September 14, 2009)

 User-visible changes:
  * Fix: liveleak: "error: Unsupported protocol (http/1)" (closes #36)
  * Fix: vimeo: title parsing (Thanks to Peter Baranyi for the fix, closes #37)
    - Fixes title issues with accented chars
  * Fix: break: http/403 (Thanks to Werner Elsler for the fix, closes #38)

 Developer-visible changes:
  * t/11redtube.t: fix dead link


Version 2.2.5
(August 14, 2009)

 User-visible changes:
  * Add: --print-fname option
  * Fix: dailymotion ID parsing
  * Fix: --hosts: dailymotion: spak-mini -> spark-mini
  * Zeropad ETA

 Developer-visible changes:
  * Correct copyright years and notices in source code
  * tlinks/youtube-utf8.url: fix dead link


Version 2.2.4
(August 2, 2009)

 User-visible changes:
  * Add:
    # --stream-pass option (port from cclive)
    # funnyhub support
      * Port from cclive
    # myubo support
      * Port from cclive
    # clipfish support
      * Thanks to Patrick Hoffmann <patrick@sobran.de> for data mining
  * Fix:
    # Misc. typos in manual
    # Redtube support (videoid/title parsing issues)
    # Dailymotion: spak-mini -> spark-mini
  * Change:
    # replace dashes ("-") with underscores ("_") in video ids

 Developer-visible changes:
  * Add:
    # Host/Clipfish.pm
    # Host/Funnyhub.pm
    # Host/Myubo.pm
    # t/16clipfish.t
    # t/17funnyhub.t
    # t/18funnyhub.t
    # tlinks/clipfish.url
    # tlinks/funnyhub.url
    # tlinks/myubo.url
  * Change:
    # t/02youtube.t: test link (dead link)
    # tlinks/ytube.url: ditto
    # tlinks/multi.url: youtube: ditto
  * Remove:
    # tlinks/multi.lst


Version 2.2.3
(July 25, 2009)

 User-visible changes:
  * Add:
    1. Support spiegel.de (closes issue #32) [thanks to anon for data]
    2. Support golem.de (closes issue #33) [thanks to anon for data]
    3. ~/.clive/config path support
    4. --cookie-jar option
    5. Support for ehrensenf.de (closes issue #34) [thanks to bjoern for data]
  * Improve: unicode support (related to issue #29)
    1. cctv: no longer requires -C and -R options (obsoletes -R)
    2. --cclass: now works as expected with unicode as well
  * Improve: backwards compatibility with clive 2.0, 2.1
    1. Allow --format=(mp4|hd|hq|3gp) (closes Debian bug #535957)
    2. Restore ~/.config/clive/config path support (closes Debian bug #535483)
    3. Add --upgrade-config (2.0/2.1 config to 2.2+ format)
  * Change:
    1.  --hosts prints now supported formats
    2. Pair --exec with --exec-run, the latter now triggers the former
       2.1. Closes Debian bug #520520
    3. Relocate files
      3.1. ~/.clivelast -> ~/.cache/clive/last
      3.2. ~/.clivecache -> ~/.cache/clive/cache
    4. If HOME environment variable undefined, assume current workdir
    5. --version: print locale etc.
  * Fix:
    1. --version: copyright years
    2. File suffix for CCTV (.x-shockwave-flash -> .flv)
    3. Remove "see examples" from pod markup (closes issue #30)
    4. Prevent ".$suffix" output filenames
      4.1. Use $id if !$title && %i was not defined in --filename-format
      4.2. Related to issue #29
    5. --no-proxy: really disable all proxy use (closes issue #25)
      5.1. http_proxy setting was still used
    6. Can't call method "filename" on unblessed reference at Exec.pm line 5x
      6.1. e.g. clive URL --exec="ls;"
      6.2. Closes Debian bug #535459
    7. Dailymotion support (closes issue #35)
    8. Redtube support (error: no match: `(?-xism:videoid=(.*?)')')
  * Rename:
    1. --recall, --recall-file -> --last, --last-file
    2. CLIVE_HOME -> CLIVE_CACHE
  * Remove:
    1. -R, --raw (obsoleted by improved unicode support)
    2. --home-dir option
      2.1. Missleading name
      2.2. Obsoleted by --cache-file and --last-file
  * Manual page:
    1. Add note about numeric suffix (closes issue #28)
    2. Fix a number of typos, use better grammar
    3. Overhaul

 Developer-visible changes:
  * Add:
    * clive/Compat.pm
    * clive/Host/Spiegel.pm
    * clive/Host/Golem.pm
    * clive/Host/Ehrensenf.pm
    * t/06golem.t
    * t/14spiegel.t
    * t/15ehrensenf.t
    * tlinks/golem.url
    * tlinks/spiegel.url
    * tlinks/ehrensenf.url
  * New prerequisite: Config::Tiny
    1. Required by --upgrade-config
  * Makefile.PL:
    1. Extract VERSION from lib/clive/Config.pm
    2. Add "use warnings/strct"
    3. chmod +x


Version 2.2.2
(July 9, 2009)

 User-visible changes:
  * Change: Google: --format=mp4/best
    1. Default to flv if mp4 is not available
    2. Fix --format=best support

 Developer-visible changes:
  * Add: t/$host.t: NO_INTERNET variable support (closes issue #24)
  * Change: t/02youtube.t test link
    1. Old dropped dead
  * Remove: t/06lastfm.t
    1. t/02youtube.t: includes the same test


Version 2.2.1
(June 21, 2009)

 User-visible changes:
  * Add: support for Vimeo (closes issue #19)
  * Add: return codes for each error case (closes issue #22)
  * Fix: return code is always 0 (closes issue #20)
  * Change: --hosts output now matches cclive output

 Developer-visible changes:
  * Change: Cctv, Dailymotion, Liveleak -> use clive::Utils::matchRegExps
  * Add: t/12error.t


Version 2.2.0
(June 14, 2009)

FOREWORD
--------

This release is a major overhaul aimed to fix the previous design flaws
and clean up the codebase. Note that 2.2.0 breaks compatibility with
the earlier versions of clive.

Most users will not notice much differences after upgrading to 2.2.0
but those users who have used clive for anything more than "clive URL"
should read the changes carefully. The summary of changes section
includes more detailed changes that is recommended reading for all
users and maintainers.

2.2.0 changes the license from ISC to GPLv3. The license was last
changed in 2.1.0 to ISC but has now been reverted back to GPLv3 after
some further consideration.

Config::Tiny has been replaced with Getopt::ArgvFile. The latter had
some advantages over Config::Tiny that lead to the switch. For example,
instead of trying to memorize the (often confusing) config variable
names, users can now use command line options in the config file.

This also means that everytime a new feature is added to the program,
we are no longer required to modify the code responsible for parsing
the config file. Using Getopt::ArgvFile also required adding only one
line of code to the project whereas Config::Tiny required several.

cache no longer reads by default. This means that --cache-read option
must be invoked for clive to read previously stored video records
from the cache. The change was made after seeing how most users found
the reading from cache too confusing and frequently reported expired
link errors such as HTTP 403 as bugs even though the behaviour was
documented in the manual page. DAERTM?

--emit-csv now outputs very few details about the videos. Only those
fields that are known to be any use are printed out.

2.2.0 also removes a number of less used features that have lingered
in the project since the 1.x. Most of these features were never
requested and have only been burdening the program codebase since
their introduction.

Part time hackers and/or developers will notice that clive now follows
a new OO design -- as well as Perl5 allows it. While there are still
some considerations regarding the design and limitations that could not
quite be ported from C++ used in cclive, WYSIWYG.

Package/port maintainers will want to read the README file. The previously
used GNU Makefile is no longer used and clive installation now depends on
ExtUtils::MakeMaker instead.

SUMMARY of CHANGES
------------------

 User-visible changes:

  * License change
    1. ISC -> GPLv3
    2. Last changed in 2.1.0 (-> ISC)

  * Slight improvements to program startup time

  * Config file format changes (Config::Tiny -> Getopt::ArgvFile)
    1. Command line options can now be used in config file
    2. Breaks compatibility with previous versions 
    3. Cleaner and new format allows using cmdline options in configs
    4. Format was last changed in 2.0.0
    Example:
    -----------------------------------------------
        # Config::Tiny: clive 2.0 - 2.1
        cat >> ~/.config/clive/config
        [http]
            proxy = "http://foo:1234"
        [output]
            savedir = "/home/user/videos"

        # Getopt::ArgvFile: clive 2.2
        cat >> ~/.cliverc
        --proxy="http://foo:1234"
        --savedir="/home/user/videos"
    -----------------------------------------------

  * Fix: Redtube video title parsing

  * Cache changes
    1. Cache is now passive (read:no, write:yes)
    2. Add: --cache- option prefix
    3. New option: --cache-read, --no-cache
    5. Rename: misc. options (e.g. --show -> --cache-dump)
    6. Record field changes
        o Breaks compatibility with previous versions 
    7. New field delimiter '#'
    8. New field order

  * File path changes
    1. ~/.config/clive/config -> ~/.cliverc
    2. ~/.config/clive/recall -> ~/.clivelast
    3. ~/.config/clive/cache -> ~/.clivecache

  * --format changes
    1. Add: --format=best support (closes  issue #15 )
    2. Rename: mp4 -> fmt18 (Youtube)
    3. Rename: Dailymotion ID spark -> flv

  * Bugfixes
    1. cURL error handling
    2. Google mp4 support
    3. Do not strip link params (closes debian bug #530659)
    4. --format=fmt6 (no longer supported by Youtube?) 
    5. Dailymotion ID parsing

  * New options:
    1. --home-dir
    2. --recall-file
    3. --cache-file
    4. --no-cclass
    5. --raw
    6. --stop-after (closes issue #18)

  * --emit-csv: changes to CSV fields (cleanup, print only the necessary fields)
    1. clive 2.0 - 2.1:
        page_link,          video_link,     filename,   file_length_mb,
        file_length_bytes,  video_id,       time_stamp, page_title,
        initial_length,     remaining_bytes
    2. clive 2.2:
        base_filename, file_length, video_link

  * Remove options:
    1. --savebatch
    2. --renew (now obsolete)
    3. --youtube-user (broken since 2.1)
    4. --youtube-pass (...)
    5. --no-login (...)
    6. --clivepass (...)
    7. --emit-xml
    8. --background
    9. --progress
    10. --output
    11. --append
    12. --paste
    13. --format=fmt6 

  * Other changes:
    1. Long options: aliases (e.g. --output_file | --output-file | --outputfile)
    2. --filename-format: new specifiers, rename some of the old ones
    3. --format: exit with an error if id is not recognized by clive
    4. Rename: -r -> -l (--recall) 
    5. Many short options have been removed (or reused)

 Developer-visible changes:

  * OO Perl5 style

  * Change: use a custom perltidyrc (closes issue #17)
    - Thanks to Tong Sun <suntong001@gmail.com>

  * Prerequisite changes
    1. Written for Perl 5.10.0
        o 5.8 probably OK although unverified
    2. New prerequisites
        o Class::Singleton
        o Getopt::ArgvFile 
    3. Removed prerequisites
        o Config::Tiny
        o IO::Pager
        o Expect
        o Clipboard 
    4. Optional modules (no changes from 2.1.14)
        o BerkeleyDB
        o Term::ReadKey

  * Change: use decode_utf8 returned html only if html is valid utf8

  * Installation changes
    1. Makefile.PL (ExtUtils::MakeMaker) [see README]

  * Remove files:
    1. Makefile (obsoleted by Makefile.PL)
    2. clive.pod (merged into bin/clive)
    3. clive.1 (generated from bin/clive)

  * Remove: binmode STDOUT, ":utf8"

  * Remove: extra decode_utf8


Version 2.1.14
(May 25, 2009)

 User-visible changes:
  * Add: support for youtube-nocookie.com (closes issue #12)
  * Add: fmt35 format ID for Youtube [closes issue #10 (and #13)]
  * Fix: liveleak id parsing
  * Rename: --format IDs for Youtube
    ** mp4_hd -> fmt22
    ** 3gpp -> fmt17
    ** xflv -> fmt6
  * Rename: --output-video -> --output-file
  * Rename: output:file -> output:filename_format (config file)
  * Remove: --overwrite option (use --output-file instead)

 Developer-visible changes:
  * Add: tests/ytube-nocookies.url
  * Update: INSTALL

 Other:
  * 2.2.0 is under development, read more here:
    http://code.google.com/p/clive/wiki/WhatsNew_2_2_0


Version 2.1.13
(May 16, 2009)

 Developer-visible changes:
  * Change: use perltidy defaults for style
  * Change: BerkeleyDB and File::Path modules are now optional
    ** Cache features depend on these modules
  * Moved opted_mods initilization to init_opted_mods (-> loop)


Version 2.1.12
(May 9, 2009)

 User-visible changes:
  * Change: --connect-timeout, --connect-timeout-socks default -> 30s
  * Fix: timeout after file transfer starts
  * Fix: title parsing with custom character class (closes issue #8)
  * Add: redtube support; thanks to anonprn2@gmail.com (closes issue #11)
  * Fix: typo in --emit-xml --help string


Version 2.1.11
(April 29, 2009)

 User-visible changes:
  * Change: --youtube-pass: prompt for password if left undefined
  * Change: --filename-format: default -> "%t.%s"
  * Fix: "Use of uninitialized value $opts{"ytpass"} ..."
  * Add new options:
    ** --connect-timeout
    ** --connect-timeout-socks
  * Cleanup: manual page

 Developer-visible changes:
  * Rename: auth_youtube subroutine -> loginto_youtube

 Known-issues:
  * Youtube login does not work (throw an error, patches welcome!)


Version 2.1.10
(April 4, 2009)

NOTE: This release changes the clive status messages. This will likely
break compatibility with utilities that depend on these messages.
The changes were made to enable using abby (0.2.0+) as a front-end
for clive.

 User-visible changes:
  * Add abby (front-end) compatibility
    - Change output similar to cclive
    - http://code.google.com/p/abby/
  * Add Youtube HD support (--format=mp4_hd)
    - Thanks to bf for the patch (via FreeBSD ports)
  * Add tv.cctv.com support [issue #6]
    - Thanks to suntong001 for data mining
  * Add new options
    - --limit-rate (config: [http]:limit_rate)
    - --hosts (print supported hosts to stdout)
    - --stderr (redirect all output to stderr instead of stdout)
  * Improve file suffix parsing from content-type
    - Rewrite the content-type handling block in query_video_length
    - Use whatever is found after slash in the content-type string
    - Use "flv" for exceptions (e.g. octet-*, x-flv, etc.)
  * Replace dashes in video IDs with underscores before using them in fnames
  * Change --version output
  * Fix reading from stdin (closes Debian #522422)
    - Assume reading from stdin only if queue and argv arrays are empty
  * Fix exit with status code
    - Exit 0 on success, and >0 if an error occurs

 Developer-visible changes:
  * Update examples/config with limit_rate
  * Rename: configrc -> examples/config
  * Replace the monstrous if-elsif-$host code block with a loop


Version 2.1.9
(March 27, 2009)

 User-visible changes:
  * Fix GoogleVideo "id not found" handling
    - Symptom: exit after "process page..." message
    - Cause: no check for undefined id value
  * Fix GoogleVideo support
    - Symptom: see above fix
    - Cause: HTML changes to the video pages
  * Fix URI::Escape import for GoogleVideo redirects
    - Symptom: crash with "Undefined subroutine &URI::Escape::uri_unescape"
    - Cause: recent script start optimizations; a missing 'require'
  * Fix Break support
    - Symptom: "expected different content-type"
    - Cause: website content-type changes

 Developer-visible changes:
  * Cleanup code (style-wise)
    - perltidy -gnu -l=72


Version 2.1.8
(March 24, 2009)

 User-visible changes:
  * Keep URL queue order
    - Remove duplicate URL checking
  * Remove --modver, change --version output
  * Update manual page (clive.1, clive.pod)
    - Rewrite EXAMPLES section
    - Cleanup other sections
  * Config file: add support for [output]:format (--format)
  * Port dailymotion support from cclive

 Developer-visible changes:
  * Makefile changes:
    - Replace Perl module checking with for-loops (incl. optional)
  * Optimize script start time
    - Replace "use $module" with "require $module" where possible
  * Update LICENSE, configrc
    - Cosmetic changes
    - Add [output]:format to configrc
  * Add tests/dmotion.url


Version 2.1.7
(March 15, 2009)

 User-visible changes:
  * Add --output-video option
  * Add option groups to --help output
  * Add --stream-exec and --stream options
    - Ported from cclive
  * Config file: add support for
    - [commands]:exec (--exec)
    - [commands]:stream (--stream-exec)
    - See configrc for an example
  * Fix --exec; should no longer spew out "not found" shell errors
  * Change default filename format to "%t_%d_%i.%s"
  * Change to use "file is already fully retrieved" error message
  * Port resizing progressbar from cclive

 Developer-visible changes:
  * Add tests/lastfm.url and tests/multi.lst
  * Remove XML::Simple dependency
    - Use regex instead
  * Implement SIGWINCH handling
    - Resize progressbar to match terminal width
    - Progressbar width defaults to 80 (chars)
    - OS must support SIGWINCH
    - Requires Term::ReadKey module
      - clive works without the module but will ignore any SIGWINCH events
  * Touch cclive.1, cclive.pod, INSTALL and Makefile files
  * Clean up regex

 Other changes:
  * Buried clive-list, grew weary of fighting spam with bare fists
    - email the author directly or use the issue tracker, thanks


Version 2.1.6
(February 19, 2009)

 User-visible changes:
  * Renamed the following options
    - --noproxy => --no-proxy
    - --noextract => --no-extract
    - --nologin => --no-login
  * Butchered --help output
    - much less verbose now
    - relocated manual page data to clive.pod
  * Removed --manual option
  * Obsoleted "play" and "rencode" config keys in "commands" section
  * Added --exec option which resembles cclive's --exec command
  * Removed --play, --noplay, --rencode and --norencode options
    - use --exec instead
  * Changed --paste short option from '-x' to '-p'
  * Removed wmv format (breakcom)
    - persistant HTTP/404 (not found) error

 Developer-visible changes:
  * Makefile changes
    - additional INSTALL variables
    - added WITH_CHECK
    - can be used to disable module checks
    - removed "man" from "all"
    - removed "clean" (useless)


Version 2.1.5
(February 6, 2009)

 User-visible changes:
  * Fixed sevenload support


Version 2.1.4
(February 1, 2009)

 User-visible changes:
  * Fixed Youtube login which sometimes reported failed attempts as OK
    - Youtube defaults web interface language based on users ip
    - clive looks for English words in the post-login page to confirm login
  * Tweaked --version output

 Developer-visible changes:
  * Removed metacafe remnants
  * Fixed bug in time2str subroutine which caused incorrect calculations
  * Updated INSTALL
  * removed genman script (obsoleted by "make man")
  * Added a rudimentary (GNU) Makefile
  * Cleaned up translate_embed subroutine

 Other changes:
  * Removed the clive-announce and clive-users mailing lists
    - New release announcements will be posted via Freshmeat alone from now on
    - Subscribe to the project at http://freshmeat.net/projects/clive
  * Created the clive-list@googlegroups.com mailing-list
    - For support questions, patches and bug reports
    - Issue tracker will remain for tracking bugs
    - Send an email to clive-list-subscribe@googlegroups.com to subscribe


Version 2.1.3
(January 9, 2009)

 User-visible changes:
  * Documented missing "%t" (--filename-format) in manual page
  * Tweaked "localfile_length == remotefile_length" message
  * Renamed CLIVE_CONFIGDIR environment variable to CLIVE_HOME

 Developer-visible changes:
  * Cleaned up manual page
  * Added LICENSE file
  * Cleaned up FreeBSD details (INSTALL)


Version 2.1.2
(December 29, 2008)

 User-visible changes:
  * Removed "See --manual" from --version output
  * Added support for evisortv
    - http://code.google.com/p/clive/issues/detail?id=4
  * Fixed: reused incorrectly last http error code for remaining urls in queue
  * Fixed: progressbar reported 100% even if error had occurred (e.g. http/403)

 Developer-visible changes:
  * Cleaned up subroutines


Version 2.1.1
(December 19, 2008)

 User-visible changes:
  * Fixed "Requested range was not delivered by the server (http/33)" w/ -c
    - this would occur with a batch of URLs while using the --continue option,
    e.g. if the first file was continued, the following page fetches exited
    with the above error
  * Added --savebatch option
  * Added --overwrite option
  * Replaced the buggy progressbar with a "lazy man's progressbar"
  * Fixed "print() on closed filehandle STDOUT" with --grep+delete
  * Fixed progressbar display with --continue

 Developer-visible changes:
  * Updated INSTALL
  * Started to bundle src tarball with clive.1 manual page
  * Added genman script which wraps pod2man with common options
  * Fixed a potential div by zero bug in calc_progress


Version 2.1.0
(December 10, 2008)

 NOTE: Changed license GPL3 => ISC/OpenBSD.

 User-visible changes:
  * Added --modversion option
  * Replaced Term::Progressbar with a built-in thermometer progressbar
  * Removed --progress=bar:nominor support due to above changes
  * Added liveleakcom support
    - http://code.google.com/p/clive/issues/detail?id=3

 Developer-visible changes:
  * Made IO::Pager module optional
  * Removed COPYING
  * Cleaned up --progress option description
  * Changed to require WWW::Curl 4.05+
  * Removed Term::Progress module dependency
  * Fixed a potential bug in calc_progress (improper $rate init)
  * Updated INSTALL
  * Made Expect module optional


Version 2.0.0
(December 2, 2008)

 User-visible changes:
   * Fixed gvideo/mp4 support (http/404 even if the extraction link existed)
   * Changed "found redirect" message
   * Changed --play, --rencode status messages to use file basename

 Developer-visible changes:
   * decode_utf8($page): removes extra steps, works better with HTML::TokeParser
   * Added missing Expect module version to INSTALL


Version 2.0beta4
(November 22, 2008)

 Notes:
   This aims to be the last beta before the release of 2.0 in December 2008.
   Please report any remaining bugs to the issue tracker at:
     http://code.google.com/p/clive/issues/list

 User-visible changes:
   * Removed metacafe support until fixed (see known issues)
   * Changed Youtube login to report if there were "too many login failures"
   * Fixed Youtube login support: reported failures incorrectly as OK
   * Added support clivepass(1) utility (http://code.google.com/p/clive-utils)
   * Added support for metacafe and sevenload embed URL translation

 Developer-visible changes:
   * Added TODO file
   * New prerequisite module: Expect
   * Updated FreeBSD + Ubuntu details (INSTALL)
   * Cleaned up some code
   * Rewrote embed URL translation

 Known issues:
   * Metacafe support broken (http/404)


version 2.0beta3
(November 1, 2008)

 User-visible changes:
  * Fixed pasting from clipboard containing multiple URLs
  * Fixed page fetch progress glitch that occured with 1+ batches
  * Added --agent option
  * Added --proxy option
  * Added --savedir option
  * Added --cclass option
  * Added --filename-format option
  * Added --show-format option
  * Added --youtube-user and --youtube-pass options
  * Added --emit-xml option
  * Added --progress=[none|bar|dot]
  * Replaced --noprogress with --progress=none
  * Added avg. transfer rate notification
  * Fixed filename printing for existing output files (e.g. output.flv.1)
  * Added --play option
  * Fixed metacafe support (error: failed to extract videoCDNURL)
  * Added --rencode option

 Developer-visible changes:
  * Ported --emit-csv option from 1.x with minor changes
    - Backwards compatible with 1.x
    - Prints additional video details
        - $length, $video_id, $time_stamp, $page_title, $cont_from, $remaining
  * Changed to prefer 'dot' bar if the output is not a TTY
  * Replaced progress bar with Term::ProgressBar (new module prerequisite)
  * Cleaned up queue processing subroutine


Version 2.0beta2
(October 15, 2008)

 User-visible changes:
  * clive now ignores input lines that start with the '#' character
  * Added support for CLIVE_CONFIGDIR environment variable
  * Ported lastfm video support from 1.x
  * --version now displays XML::Simple
  * Changed "= Play:" to "=> Playing ..."
  * Playing occurs now subsequently after going over the URL batch

 Developer-visible changes:
  * Removed a google video redirect (commented out, see code)
  * Added the AUTHORS file
  * XML::Simple was missing as a prerequisite in INSTALL
  * Made minor syntactic tweaks to the source code
  * Fixed missing --quiet check with the "=> Play" message


Version 2.0beta1
(September 23, 2008)

A complete overhaul and rewrite of 1.x.

 User-visible changes:
  * Users are expected to use the --continue/-c option to resume transfers
  * Configuration file format (=> INI), path was changed (=> ~/.config/clive)
  * All extractions now assume flv as the default download format
  * Users are expected to understand when/how use the --format/-f option
  * Reading input from multiple sources is possible (e.g. % clive -x URL URL)
  * Added: --grep: used to grep and recall cached URL entries
  * Added: --background and --output=logfile, --append=logfile options
  * Many old cmdline and config options were removed due to new design
  * Improved GoogleVideo support: handles redirects to other hosts
  * Pager is used where needed (e.g. --show/-s)
  * Changed default output file naming format to "%n-(%i)-[%d].%s"
  * Removed: guba (deadweight), myvideo (borked), dmotion (bitches @ anon users)

 Developer-visible changes:
  * Python => Perl
    - See the INSTALL file for prerequisites
  * No installation: all-in-one script (excl. the 3rd party modules)
  * Cache is now an integral part of clive, see CACHE in the manual page
  * Embedded the --manual page (Pod)
  * Improved Youtube login: removed is_adult HTTP get (done manually now)
  * Grab the file suffix from the Content-Type header
  * Improved GoogleVideo support: mp4 detection no more relies on English words
  * Improved Metacafe support: removed unnecessary "familyfilter" HTTP get

 Other:
  * Project: moved
    - 2.x+ at http://googlecode.com/p/clive/
    - 1.x remains at http://gna.org/projects/clive
  * Tarballs: moved
    - 2.x+ at http://googlecode.com/p/clive/
    - 1.x remain at http://dl.gna.org/clive
  * Website: moved
    - http://clive.sf.net/
    - http://home.gna.org/clive redirects to the above
  * SCM: SVN => Git
    - 2.x+ at git://repo.or.cz/clive.git
    - 1.x remains at svn://svn.gna.org/svn/clive
  * Issue tracking: Moved
    - 2.x+ at http://googlecode.com/p/clive/issues/
    - 1.x bug tracker remains at http://gna.org/projects/clive
  * Created http://googlegroups.com/group/clive-announce/

NOTE: See http://dl.gna.org/clive/CHANGES for 1.x.
