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