remove TODO from dist
[clive.git] / ChangeLog
blob765cf20d03f01c975043e43036fa7e0ef45dbe6b
1 Revision history for clive.
3 2.3.0_2 (beta 2)
4 Changes:
5         - Use quvi(1) for parsing video details, --quvi arg
6         - Use external command to download, --get-with arg
7         - Use version->declare instead of version::qv
8         - Add JSON::XS dependency
9         - Add examples/cliverc
10         - Additional config file search paths (e.g. system-wide)
11         - Remove WWW::Quvi dependency
12         - Remove WWW::Curl dependency
13         - Remove Term::ReadKey dependency
14         - Remove --continue, --overwrite, --proxy
15         - Remove --no-proxy, --agent, --throttle
17 Please read the NEWS file. Even if you did so for beta 1.
18 There have been several major changes between the betas.
21 2.3.0_1 (beta 1)  Wed Oct 27 2010
23 Changes:
24         - Use libquvi (WWW::Quvi) to parse video details
25         - Remove options / features
26         - Rename options
27         - Prerequisites
28 Bugfixes:
29         - Progressbar unicode issues
31 Version 2.3 discards some of the more esoteric features provided by the older
32 versions. Read NEWS file for the details.
35 Version 2.2.16
36 September 28, 2010
38 Changes:
39   * Add support for webm_480p, webm_720p [youtube]
40     * Thanks to Mark Weaver for the patch, <http://is.gd/fmwv5>
41   * Misc. minor tweaks in manual (e.g. URLs, etc.)
42   * Migrate issue tracking from Googlecode to Sourceforge, <http://is.gd/fmylF>
45 Version 2.2.15
46 September 10, 2010
48 Changes:
49   * New Youtube test URL
50   * --format, "flv" is now called "default"
51   * Add Youtube 1080p support (#62)
52   * Update Youtube format IDs to match those used with quvi
54 Bugfixes:
55   * Vimeo support (http/404), thanks to Jonas Smedegaard for the fix (#61)
56     - <http://bugs.debian.org/595486>
59 Version 2.2.14
60 September 2, 2010
62 Bugfixes:
63   * Output File path encoding (#60)
66 Version 2.2.13
67 August 12, 2010
69 Changes:
70   * Add --license option
73 Version 2.2.12
74 July 25, 2010
76 Changes:
77   * Mark cctv support as broken
79 Bugfixes:
80   * [youtube] http/404, ported from quvi, fix by Daniel Schaal (quvi #7)
81   * break.com support, thanks to Werner Elsler for the fix (#57)
84 Version 2.2.11
85 --------------
86 April 3, 2010
88 Bugfixes:
89   * Youtube, update patterns to reflect website changes
92 Version 2.2.10
93 --------------
94 March 24, 2010
96 Changes:
97   * Add buzzhumor.com support
98   * Mark ehrensenf.de support as broken
100 Bugfixes:
101   * Update --hosts format strings
102   * dailymotion.com
103     # Change format IDs to reflect website changes (yet again):
104       * h264-hd -> hd
105       * h264-hq -> hq
106       * removed h264 and spark-mini (no longer even listed)
107     # Parse title from elsewhere
108       * Title was previously parsed from the title HTML tag
109       * Which usually contained more than we cared for
110     # Spew out an error if the video looks like a partner video
111   * break.com
112     # Support, thanks to Werner Elsler for the fix
113     # Title parsing, ported from libquvi
116 Version 2.2.9
117 (February 13, 2010)
119  User-visible changes:
120   * Fix dailymotion formats
121     - vp6-hd -> h264-hd
122     - vp6-hq -> h264-hq
123     - vp6 -> h264
124   * Fix vimeo support
125     # closes issue #49
126   * Partial fix: cctv: dump multi-segment video links
127     # single-segment videos are still copied normally
128     # closes issue #45 (for now)
130  Developer-visible changes:
131   * Rename CHANGES -> ChangeLog
132   * Add NEWS file
133   * Remove dead test link:
134     # tlinks/sload.url
135     # t/10sevenload.t
138 Version 2.2.8
139 (December 18, 2009)
141  User-visible changes:
142   * Remove the remains of the redtube support
143   * Do not replace dashes with underscores in IDs (closes issue #44)
144   * Sevenload:
145     # Fix http/401 error
146     # Cleanup title parsing (use config data instead)
147   * Croak with an error if BerkeleyDB module is not found
148     # And either -d or -g options are used
151 Version 2.2.7
152 (September 29, 2009)
154  User-visible changes:
155   * Fix: dailymotion id parsing
156   * Youtube:
157     # Accept -f fmt34
158     # fmt34 is now treated as yet another (new?) format
159     # Rewrite youtube section of the FORMATS in the manual
160   * Fix: --format=best not working with youtube (closes issue #39)
161     # Thanks to Peter Baranyi for the fix
163  Developer-visible changes:
164   * Disable: t/11redtube.t (broken, see known issues)
165   * "make test": ADULT_OK env.var. now enables redtube test
167  Known issues:
168   * redtube: broken (verify -> http/404)
171 Version 2.2.6
172 (September 14, 2009)
174  User-visible changes:
175   * Fix: liveleak: "error: Unsupported protocol (http/1)" (closes #36)
176   * Fix: vimeo: title parsing (Thanks to Peter Baranyi for the fix, closes #37)
177     - Fixes title issues with accented chars
178   * Fix: break: http/403 (Thanks to Werner Elsler for the fix, closes #38)
180  Developer-visible changes:
181   * t/11redtube.t: fix dead link
184 Version 2.2.5
185 (August 14, 2009)
187  User-visible changes:
188   * Add: --print-fname option
189   * Fix: dailymotion ID parsing
190   * Fix: --hosts: dailymotion: spak-mini -> spark-mini
191   * Zeropad ETA
193  Developer-visible changes:
194   * Correct copyright years and notices in source code
195   * tlinks/youtube-utf8.url: fix dead link
198 Version 2.2.4
199 (August 2, 2009)
201  User-visible changes:
202   * Add:
203     # --stream-pass option (port from cclive)
204     # funnyhub support
205       * Port from cclive
206     # myubo support
207       * Port from cclive
208     # clipfish support
209       * Thanks to Patrick Hoffmann <patrick@sobran.de> for data mining
210   * Fix:
211     # Misc. typos in manual
212     # Redtube support (videoid/title parsing issues)
213     # Dailymotion: spak-mini -> spark-mini
214   * Change:
215     # replace dashes ("-") with underscores ("_") in video ids
217  Developer-visible changes:
218   * Add:
219     # Host/Clipfish.pm
220     # Host/Funnyhub.pm
221     # Host/Myubo.pm
222     # t/16clipfish.t
223     # t/17funnyhub.t
224     # t/18funnyhub.t
225     # tlinks/clipfish.url
226     # tlinks/funnyhub.url
227     # tlinks/myubo.url
228   * Change:
229     # t/02youtube.t: test link (dead link)
230     # tlinks/ytube.url: ditto
231     # tlinks/multi.url: youtube: ditto
232   * Remove:
233     # tlinks/multi.lst
236 Version 2.2.3
237 (July 25, 2009)
239  User-visible changes:
240   * Add:
241     1. Support spiegel.de (closes issue #32) [thanks to anon for data]
242     2. Support golem.de (closes issue #33) [thanks to anon for data]
243     3. ~/.clive/config path support
244     4. --cookie-jar option
245     5. Support for ehrensenf.de (closes issue #34) [thanks to bjoern for data]
246   * Improve: unicode support (related to issue #29)
247     1. cctv: no longer requires -C and -R options (obsoletes -R)
248     2. --cclass: now works as expected with unicode as well
249   * Improve: backwards compatibility with clive 2.0, 2.1
250     1. Allow --format=(mp4|hd|hq|3gp) (closes Debian bug #535957)
251     2. Restore ~/.config/clive/config path support (closes Debian bug #535483)
252     3. Add --upgrade-config (2.0/2.1 config to 2.2+ format)
253   * Change:
254     1.  --hosts prints now supported formats
255     2. Pair --exec with --exec-run, the latter now triggers the former
256        2.1. Closes Debian bug #520520
257     3. Relocate files
258       3.1. ~/.clivelast -> ~/.cache/clive/last
259       3.2. ~/.clivecache -> ~/.cache/clive/cache
260     4. If HOME environment variable undefined, assume current workdir
261     5. --version: print locale etc.
262   * Fix:
263     1. --version: copyright years
264     2. File suffix for CCTV (.x-shockwave-flash -> .flv)
265     3. Remove "see examples" from pod markup (closes issue #30)
266     4. Prevent ".$suffix" output filenames
267       4.1. Use $id if !$title && %i was not defined in --filename-format
268       4.2. Related to issue #29
269     5. --no-proxy: really disable all proxy use (closes issue #25)
270       5.1. http_proxy setting was still used
271     6. Can't call method "filename" on unblessed reference at Exec.pm line 5x
272       6.1. e.g. clive URL --exec="ls;"
273       6.2. Closes Debian bug #535459
274     7. Dailymotion support (closes issue #35)
275     8. Redtube support (error: no match: `(?-xism:videoid=(.*?)')')
276   * Rename:
277     1. --recall, --recall-file -> --last, --last-file
278     2. CLIVE_HOME -> CLIVE_CACHE
279   * Remove:
280     1. -R, --raw (obsoleted by improved unicode support)
281     2. --home-dir option
282       2.1. Missleading name
283       2.2. Obsoleted by --cache-file and --last-file
284   * Manual page:
285     1. Add note about numeric suffix (closes issue #28)
286     2. Fix a number of typos, use better grammar
287     3. Overhaul
289  Developer-visible changes:
290   * Add:
291     * clive/Compat.pm
292     * clive/Host/Spiegel.pm
293     * clive/Host/Golem.pm
294     * clive/Host/Ehrensenf.pm
295     * t/06golem.t
296     * t/14spiegel.t
297     * t/15ehrensenf.t
298     * tlinks/golem.url
299     * tlinks/spiegel.url
300     * tlinks/ehrensenf.url
301   * New prerequisite: Config::Tiny
302     1. Required by --upgrade-config
303   * Makefile.PL:
304     1. Extract VERSION from lib/clive/Config.pm
305     2. Add "use warnings/strct"
306     3. chmod +x
309 Version 2.2.2
310 (July 9, 2009)
312  User-visible changes:
313   * Change: Google: --format=mp4/best
314     1. Default to flv if mp4 is not available
315     2. Fix --format=best support
317  Developer-visible changes:
318   * Add: t/$host.t: NO_INTERNET variable support (closes issue #24)
319   * Change: t/02youtube.t test link
320     1. Old dropped dead
321   * Remove: t/06lastfm.t
322     1. t/02youtube.t: includes the same test
325 Version 2.2.1
326 (June 21, 2009)
328  User-visible changes:
329   * Add: support for Vimeo (closes issue #19)
330   * Add: return codes for each error case (closes issue #22)
331   * Fix: return code is always 0 (closes issue #20)
332   * Change: --hosts output now matches cclive output
334  Developer-visible changes:
335   * Change: Cctv, Dailymotion, Liveleak -> use clive::Utils::matchRegExps
336   * Add: t/12error.t
339 Version 2.2.0
340 (June 14, 2009)
342 FOREWORD
343 --------
345 This release is a major overhaul aimed to fix the previous design flaws
346 and clean up the codebase. Note that 2.2.0 breaks compatibility with
347 the earlier versions of clive.
349 Most users will not notice much differences after upgrading to 2.2.0
350 but those users who have used clive for anything more than "clive URL"
351 should read the changes carefully. The summary of changes section
352 includes more detailed changes that is recommended reading for all
353 users and maintainers.
355 2.2.0 changes the license from ISC to GPLv3. The license was last
356 changed in 2.1.0 to ISC but has now been reverted back to GPLv3 after
357 some further consideration.
359 Config::Tiny has been replaced with Getopt::ArgvFile. The latter had
360 some advantages over Config::Tiny that lead to the switch. For example,
361 instead of trying to memorize the (often confusing) config variable
362 names, users can now use command line options in the config file.
364 This also means that everytime a new feature is added to the program,
365 we are no longer required to modify the code responsible for parsing
366 the config file. Using Getopt::ArgvFile also required adding only one
367 line of code to the project whereas Config::Tiny required several.
369 cache no longer reads by default. This means that --cache-read option
370 must be invoked for clive to read previously stored video records
371 from the cache. The change was made after seeing how most users found
372 the reading from cache too confusing and frequently reported expired
373 link errors such as HTTP 403 as bugs even though the behaviour was
374 documented in the manual page. DAERTM?
376 --emit-csv now outputs very few details about the videos. Only those
377 fields that are known to be any use are printed out.
379 2.2.0 also removes a number of less used features that have lingered
380 in the project since the 1.x. Most of these features were never
381 requested and have only been burdening the program codebase since
382 their introduction.
384 Part time hackers and/or developers will notice that clive now follows
385 a new OO design -- as well as Perl5 allows it. While there are still
386 some considerations regarding the design and limitations that could not
387 quite be ported from C++ used in cclive, WYSIWYG.
389 Package/port maintainers will want to read the README file. The previously
390 used GNU Makefile is no longer used and clive installation now depends on
391 ExtUtils::MakeMaker instead.
393 SUMMARY of CHANGES
394 ------------------
396  User-visible changes:
398   * License change
399     1. ISC -> GPLv3
400     2. Last changed in 2.1.0 (-> ISC)
402   * Slight improvements to program startup time
404   * Config file format changes (Config::Tiny -> Getopt::ArgvFile)
405     1. Command line options can now be used in config file
406     2. Breaks compatibility with previous versions 
407     3. Cleaner and new format allows using cmdline options in configs
408     4. Format was last changed in 2.0.0
409     Example:
410     -----------------------------------------------
411         # Config::Tiny: clive 2.0 - 2.1
412         cat >> ~/.config/clive/config
413         [http]
414             proxy = "http://foo:1234"
415         [output]
416             savedir = "/home/user/videos"
418         # Getopt::ArgvFile: clive 2.2
419         cat >> ~/.cliverc
420         --proxy="http://foo:1234"
421         --savedir="/home/user/videos"
422     -----------------------------------------------
424   * Fix: Redtube video title parsing
426   * Cache changes
427     1. Cache is now passive (read:no, write:yes)
428     2. Add: --cache- option prefix
429     3. New option: --cache-read, --no-cache
430     5. Rename: misc. options (e.g. --show -> --cache-dump)
431     6. Record field changes
432         o Breaks compatibility with previous versions 
433     7. New field delimiter '#'
434     8. New field order
436   * File path changes
437     1. ~/.config/clive/config -> ~/.cliverc
438     2. ~/.config/clive/recall -> ~/.clivelast
439     3. ~/.config/clive/cache -> ~/.clivecache
441   * --format changes
442     1. Add: --format=best support (closes  issue #15 )
443     2. Rename: mp4 -> fmt18 (Youtube)
444     3. Rename: Dailymotion ID spark -> flv
446   * Bugfixes
447     1. cURL error handling
448     2. Google mp4 support
449     3. Do not strip link params (closes debian bug #530659)
450     4. --format=fmt6 (no longer supported by Youtube?) 
451     5. Dailymotion ID parsing
453   * New options:
454     1. --home-dir
455     2. --recall-file
456     3. --cache-file
457     4. --no-cclass
458     5. --raw
459     6. --stop-after (closes issue #18)
461   * --emit-csv: changes to CSV fields (cleanup, print only the necessary fields)
462     1. clive 2.0 - 2.1:
463         page_link,          video_link,     filename,   file_length_mb,
464         file_length_bytes,  video_id,       time_stamp, page_title,
465         initial_length,     remaining_bytes
466     2. clive 2.2:
467         base_filename, file_length, video_link
469   * Remove options:
470     1. --savebatch
471     2. --renew (now obsolete)
472     3. --youtube-user (broken since 2.1)
473     4. --youtube-pass (...)
474     5. --no-login (...)
475     6. --clivepass (...)
476     7. --emit-xml
477     8. --background
478     9. --progress
479     10. --output
480     11. --append
481     12. --paste
482     13. --format=fmt6 
484   * Other changes:
485     1. Long options: aliases (e.g. --output_file | --output-file | --outputfile)
486     2. --filename-format: new specifiers, rename some of the old ones
487     3. --format: exit with an error if id is not recognized by clive
488     4. Rename: -r -> -l (--recall) 
489     5. Many short options have been removed (or reused)
491  Developer-visible changes:
493   * OO Perl5 style
495   * Change: use a custom perltidyrc (closes issue #17)
496     - Thanks to Tong Sun <suntong001@gmail.com>
498   * Prerequisite changes
499     1. Written for Perl 5.10.0
500         o 5.8 probably OK although unverified
501     2. New prerequisites
502         o Class::Singleton
503         o Getopt::ArgvFile 
504     3. Removed prerequisites
505         o Config::Tiny
506         o IO::Pager
507         o Expect
508         o Clipboard 
509     4. Optional modules (no changes from 2.1.14)
510         o BerkeleyDB
511         o Term::ReadKey
513   * Change: use decode_utf8 returned html only if html is valid utf8
515   * Installation changes
516     1. Makefile.PL (ExtUtils::MakeMaker) [see README]
518   * Remove files:
519     1. Makefile (obsoleted by Makefile.PL)
520     2. clive.pod (merged into bin/clive)
521     3. clive.1 (generated from bin/clive)
523   * Remove: binmode STDOUT, ":utf8"
525   * Remove: extra decode_utf8
528 Version 2.1.14
529 (May 25, 2009)
531  User-visible changes:
532   * Add: support for youtube-nocookie.com (closes issue #12)
533   * Add: fmt35 format ID for Youtube [closes issue #10 (and #13)]
534   * Fix: liveleak id parsing
535   * Rename: --format IDs for Youtube
536     ** mp4_hd -> fmt22
537     ** 3gpp -> fmt17
538     ** xflv -> fmt6
539   * Rename: --output-video -> --output-file
540   * Rename: output:file -> output:filename_format (config file)
541   * Remove: --overwrite option (use --output-file instead)
543  Developer-visible changes:
544   * Add: tests/ytube-nocookies.url
545   * Update: INSTALL
547  Other:
548   * 2.2.0 is under development, read more here:
549     http://code.google.com/p/clive/wiki/WhatsNew_2_2_0
552 Version 2.1.13
553 (May 16, 2009)
555  Developer-visible changes:
556   * Change: use perltidy defaults for style
557   * Change: BerkeleyDB and File::Path modules are now optional
558     ** Cache features depend on these modules
559   * Moved opted_mods initilization to init_opted_mods (-> loop)
562 Version 2.1.12
563 (May 9, 2009)
565  User-visible changes:
566   * Change: --connect-timeout, --connect-timeout-socks default -> 30s
567   * Fix: timeout after file transfer starts
568   * Fix: title parsing with custom character class (closes issue #8)
569   * Add: redtube support; thanks to anonprn2@gmail.com (closes issue #11)
570   * Fix: typo in --emit-xml --help string
573 Version 2.1.11
574 (April 29, 2009)
576  User-visible changes:
577   * Change: --youtube-pass: prompt for password if left undefined
578   * Change: --filename-format: default -> "%t.%s"
579   * Fix: "Use of uninitialized value $opts{"ytpass"} ..."
580   * Add new options:
581     ** --connect-timeout
582     ** --connect-timeout-socks
583   * Cleanup: manual page
585  Developer-visible changes:
586   * Rename: auth_youtube subroutine -> loginto_youtube
588  Known-issues:
589   * Youtube login does not work (throw an error, patches welcome!)
592 Version 2.1.10
593 (April 4, 2009)
595 NOTE: This release changes the clive status messages. This will likely
596 break compatibility with utilities that depend on these messages.
597 The changes were made to enable using abby (0.2.0+) as a front-end
598 for clive.
600  User-visible changes:
601   * Add abby (front-end) compatibility
602     - Change output similar to cclive
603     - http://code.google.com/p/abby/
604   * Add Youtube HD support (--format=mp4_hd)
605     - Thanks to bf for the patch (via FreeBSD ports)
606   * Add tv.cctv.com support [issue #6]
607     - Thanks to suntong001 for data mining
608   * Add new options
609     - --limit-rate (config: [http]:limit_rate)
610     - --hosts (print supported hosts to stdout)
611     - --stderr (redirect all output to stderr instead of stdout)
612   * Improve file suffix parsing from content-type
613     - Rewrite the content-type handling block in query_video_length
614     - Use whatever is found after slash in the content-type string
615     - Use "flv" for exceptions (e.g. octet-*, x-flv, etc.)
616   * Replace dashes in video IDs with underscores before using them in fnames
617   * Change --version output
618   * Fix reading from stdin (closes Debian #522422)
619     - Assume reading from stdin only if queue and argv arrays are empty
620   * Fix exit with status code
621     - Exit 0 on success, and >0 if an error occurs
623  Developer-visible changes:
624   * Update examples/config with limit_rate
625   * Rename: configrc -> examples/config
626   * Replace the monstrous if-elsif-$host code block with a loop
629 Version 2.1.9
630 (March 27, 2009)
632  User-visible changes:
633   * Fix GoogleVideo "id not found" handling
634     - Symptom: exit after "process page..." message
635     - Cause: no check for undefined id value
636   * Fix GoogleVideo support
637     - Symptom: see above fix
638     - Cause: HTML changes to the video pages
639   * Fix URI::Escape import for GoogleVideo redirects
640     - Symptom: crash with "Undefined subroutine &URI::Escape::uri_unescape"
641     - Cause: recent script start optimizations; a missing 'require'
642   * Fix Break support
643     - Symptom: "expected different content-type"
644     - Cause: website content-type changes
646  Developer-visible changes:
647   * Cleanup code (style-wise)
648     - perltidy -gnu -l=72
651 Version 2.1.8
652 (March 24, 2009)
654  User-visible changes:
655   * Keep URL queue order
656     - Remove duplicate URL checking
657   * Remove --modver, change --version output
658   * Update manual page (clive.1, clive.pod)
659     - Rewrite EXAMPLES section
660     - Cleanup other sections
661   * Config file: add support for [output]:format (--format)
662   * Port dailymotion support from cclive
664  Developer-visible changes:
665   * Makefile changes:
666     - Replace Perl module checking with for-loops (incl. optional)
667   * Optimize script start time
668     - Replace "use $module" with "require $module" where possible
669   * Update LICENSE, configrc
670     - Cosmetic changes
671     - Add [output]:format to configrc
672   * Add tests/dmotion.url
675 Version 2.1.7
676 (March 15, 2009)
678  User-visible changes:
679   * Add --output-video option
680   * Add option groups to --help output
681   * Add --stream-exec and --stream options
682     - Ported from cclive
683   * Config file: add support for
684     - [commands]:exec (--exec)
685     - [commands]:stream (--stream-exec)
686     - See configrc for an example
687   * Fix --exec; should no longer spew out "not found" shell errors
688   * Change default filename format to "%t_%d_%i.%s"
689   * Change to use "file is already fully retrieved" error message
690   * Port resizing progressbar from cclive
692  Developer-visible changes:
693   * Add tests/lastfm.url and tests/multi.lst
694   * Remove XML::Simple dependency
695     - Use regex instead
696   * Implement SIGWINCH handling
697     - Resize progressbar to match terminal width
698     - Progressbar width defaults to 80 (chars)
699     - OS must support SIGWINCH
700     - Requires Term::ReadKey module
701       - clive works without the module but will ignore any SIGWINCH events
702   * Touch cclive.1, cclive.pod, INSTALL and Makefile files
703   * Clean up regex
705  Other changes:
706   * Buried clive-list, grew weary of fighting spam with bare fists
707     - email the author directly or use the issue tracker, thanks
710 Version 2.1.6
711 (February 19, 2009)
713  User-visible changes:
714   * Renamed the following options
715     - --noproxy => --no-proxy
716     - --noextract => --no-extract
717     - --nologin => --no-login
718   * Butchered --help output
719     - much less verbose now
720     - relocated manual page data to clive.pod
721   * Removed --manual option
722   * Obsoleted "play" and "rencode" config keys in "commands" section
723   * Added --exec option which resembles cclive's --exec command
724   * Removed --play, --noplay, --rencode and --norencode options
725     - use --exec instead
726   * Changed --paste short option from '-x' to '-p'
727   * Removed wmv format (breakcom)
728     - persistant HTTP/404 (not found) error
730  Developer-visible changes:
731   * Makefile changes
732     - additional INSTALL variables
733     - added WITH_CHECK
734     - can be used to disable module checks
735     - removed "man" from "all"
736     - removed "clean" (useless)
739 Version 2.1.5
740 (February 6, 2009)
742  User-visible changes:
743   * Fixed sevenload support
746 Version 2.1.4
747 (February 1, 2009)
749  User-visible changes:
750   * Fixed Youtube login which sometimes reported failed attempts as OK
751     - Youtube defaults web interface language based on users ip
752     - clive looks for English words in the post-login page to confirm login
753   * Tweaked --version output
755  Developer-visible changes:
756   * Removed metacafe remnants
757   * Fixed bug in time2str subroutine which caused incorrect calculations
758   * Updated INSTALL
759   * removed genman script (obsoleted by "make man")
760   * Added a rudimentary (GNU) Makefile
761   * Cleaned up translate_embed subroutine
763  Other changes:
764   * Removed the clive-announce and clive-users mailing lists
765     - New release announcements will be posted via Freshmeat alone from now on
766     - Subscribe to the project at http://freshmeat.net/projects/clive
767   * Created the clive-list@googlegroups.com mailing-list
768     - For support questions, patches and bug reports
769     - Issue tracker will remain for tracking bugs
770     - Send an email to clive-list-subscribe@googlegroups.com to subscribe
773 Version 2.1.3
774 (January 9, 2009)
776  User-visible changes:
777   * Documented missing "%t" (--filename-format) in manual page
778   * Tweaked "localfile_length == remotefile_length" message
779   * Renamed CLIVE_CONFIGDIR environment variable to CLIVE_HOME
781  Developer-visible changes:
782   * Cleaned up manual page
783   * Added LICENSE file
784   * Cleaned up FreeBSD details (INSTALL)
787 Version 2.1.2
788 (December 29, 2008)
790  User-visible changes:
791   * Removed "See --manual" from --version output
792   * Added support for evisortv
793     - http://code.google.com/p/clive/issues/detail?id=4
794   * Fixed: reused incorrectly last http error code for remaining urls in queue
795   * Fixed: progressbar reported 100% even if error had occurred (e.g. http/403)
797  Developer-visible changes:
798   * Cleaned up subroutines
801 Version 2.1.1
802 (December 19, 2008)
804  User-visible changes:
805   * Fixed "Requested range was not delivered by the server (http/33)" w/ -c
806     - this would occur with a batch of URLs while using the --continue option,
807     e.g. if the first file was continued, the following page fetches exited
808     with the above error
809   * Added --savebatch option
810   * Added --overwrite option
811   * Replaced the buggy progressbar with a "lazy man's progressbar"
812   * Fixed "print() on closed filehandle STDOUT" with --grep+delete
813   * Fixed progressbar display with --continue
815  Developer-visible changes:
816   * Updated INSTALL
817   * Started to bundle src tarball with clive.1 manual page
818   * Added genman script which wraps pod2man with common options
819   * Fixed a potential div by zero bug in calc_progress
822 Version 2.1.0
823 (December 10, 2008)
825  NOTE: Changed license GPL3 => ISC/OpenBSD.
827  User-visible changes:
828   * Added --modversion option
829   * Replaced Term::Progressbar with a built-in thermometer progressbar
830   * Removed --progress=bar:nominor support due to above changes
831   * Added liveleakcom support
832     - http://code.google.com/p/clive/issues/detail?id=3
834  Developer-visible changes:
835   * Made IO::Pager module optional
836   * Removed COPYING
837   * Cleaned up --progress option description
838   * Changed to require WWW::Curl 4.05+
839   * Removed Term::Progress module dependency
840   * Fixed a potential bug in calc_progress (improper $rate init)
841   * Updated INSTALL
842   * Made Expect module optional
845 Version 2.0.0
846 (December 2, 2008)
848  User-visible changes:
849    * Fixed gvideo/mp4 support (http/404 even if the extraction link existed)
850    * Changed "found redirect" message
851    * Changed --play, --rencode status messages to use file basename
853  Developer-visible changes:
854    * decode_utf8($page): removes extra steps, works better with HTML::TokeParser
855    * Added missing Expect module version to INSTALL
858 Version 2.0beta4
859 (November 22, 2008)
861  Notes:
862    This aims to be the last beta before the release of 2.0 in December 2008.
863    Please report any remaining bugs to the issue tracker at:
864      http://code.google.com/p/clive/issues/list
866  User-visible changes:
867    * Removed metacafe support until fixed (see known issues)
868    * Changed Youtube login to report if there were "too many login failures"
869    * Fixed Youtube login support: reported failures incorrectly as OK
870    * Added support clivepass(1) utility (http://code.google.com/p/clive-utils)
871    * Added support for metacafe and sevenload embed URL translation
873  Developer-visible changes:
874    * Added TODO file
875    * New prerequisite module: Expect
876    * Updated FreeBSD + Ubuntu details (INSTALL)
877    * Cleaned up some code
878    * Rewrote embed URL translation
880  Known issues:
881    * Metacafe support broken (http/404)
884 version 2.0beta3
885 (November 1, 2008)
887  User-visible changes:
888   * Fixed pasting from clipboard containing multiple URLs
889   * Fixed page fetch progress glitch that occured with 1+ batches
890   * Added --agent option
891   * Added --proxy option
892   * Added --savedir option
893   * Added --cclass option
894   * Added --filename-format option
895   * Added --show-format option
896   * Added --youtube-user and --youtube-pass options
897   * Added --emit-xml option
898   * Added --progress=[none|bar|dot]
899   * Replaced --noprogress with --progress=none
900   * Added avg. transfer rate notification
901   * Fixed filename printing for existing output files (e.g. output.flv.1)
902   * Added --play option
903   * Fixed metacafe support (error: failed to extract videoCDNURL)
904   * Added --rencode option
906  Developer-visible changes:
907   * Ported --emit-csv option from 1.x with minor changes
908     - Backwards compatible with 1.x
909     - Prints additional video details
910         - $length, $video_id, $time_stamp, $page_title, $cont_from, $remaining
911   * Changed to prefer 'dot' bar if the output is not a TTY
912   * Replaced progress bar with Term::ProgressBar (new module prerequisite)
913   * Cleaned up queue processing subroutine
916 Version 2.0beta2
917 (October 15, 2008)
919  User-visible changes:
920   * clive now ignores input lines that start with the '#' character
921   * Added support for CLIVE_CONFIGDIR environment variable
922   * Ported lastfm video support from 1.x
923   * --version now displays XML::Simple
924   * Changed "= Play:" to "=> Playing ..."
925   * Playing occurs now subsequently after going over the URL batch
927  Developer-visible changes:
928   * Removed a google video redirect (commented out, see code)
929   * Added the AUTHORS file
930   * XML::Simple was missing as a prerequisite in INSTALL
931   * Made minor syntactic tweaks to the source code
932   * Fixed missing --quiet check with the "=> Play" message
935 Version 2.0beta1
936 (September 23, 2008)
938 A complete overhaul and rewrite of 1.x.
940  User-visible changes:
941   * Users are expected to use the --continue/-c option to resume transfers
942   * Configuration file format (=> INI), path was changed (=> ~/.config/clive)
943   * All extractions now assume flv as the default download format
944   * Users are expected to understand when/how use the --format/-f option
945   * Reading input from multiple sources is possible (e.g. % clive -x URL URL)
946   * Added: --grep: used to grep and recall cached URL entries
947   * Added: --background and --output=logfile, --append=logfile options
948   * Many old cmdline and config options were removed due to new design
949   * Improved GoogleVideo support: handles redirects to other hosts
950   * Pager is used where needed (e.g. --show/-s)
951   * Changed default output file naming format to "%n-(%i)-[%d].%s"
952   * Removed: guba (deadweight), myvideo (borked), dmotion (bitches @ anon users)
954  Developer-visible changes:
955   * Python => Perl
956     - See the INSTALL file for prerequisites
957   * No installation: all-in-one script (excl. the 3rd party modules)
958   * Cache is now an integral part of clive, see CACHE in the manual page
959   * Embedded the --manual page (Pod)
960   * Improved Youtube login: removed is_adult HTTP get (done manually now)
961   * Grab the file suffix from the Content-Type header
962   * Improved GoogleVideo support: mp4 detection no more relies on English words
963   * Improved Metacafe support: removed unnecessary "familyfilter" HTTP get
965  Other:
966   * Project: moved
967     - 2.x+ at http://googlecode.com/p/clive/
968     - 1.x remains at http://gna.org/projects/clive
969   * Tarballs: moved
970     - 2.x+ at http://googlecode.com/p/clive/
971     - 1.x remain at http://dl.gna.org/clive
972   * Website: moved
973     - http://clive.sf.net/
974     - http://home.gna.org/clive redirects to the above
975   * SCM: SVN => Git
976     - 2.x+ at git://repo.or.cz/clive.git
977     - 1.x remains at svn://svn.gna.org/svn/clive
978   * Issue tracking: Moved
979     - 2.x+ at http://googlecode.com/p/clive/issues/
980     - 1.x bug tracker remains at http://gna.org/projects/clive
981   * Created http://googlegroups.com/group/clive-announce/
983 NOTE: See http://dl.gna.org/clive/CHANGES for 1.x.