cc::file: Remove unused macro definition
[cclive.git] / NEWS
blobef349a58a267cdf0cb36d501493b0bb178c49c65
1 v0.9.2  [2013-08-08]
3 Toni Gundogdu:
4   [!] glibmm 2.24+ is now a prerequisite
5   - Add --timestamp: Try to preserve modification time (PORT) [50213d7]
6   - Bump the required Boost version to v1.49 [86978ab]
7   - [DOC] --update-interval: Accepts now integers only [6426f8f]
8   - Improve cc::input (complete rewrite) [81303f9]
9   - Improve cc:options (complete rewrite) [314e722]
11  28 files changed, 1434 insertions(+), 873 deletions(-)
14 v0.9.1  [2013-07-16]
16 Toni Gundogdu:
17   [!] GLib 2.24+ is now a prerequisite
18   [!] Relicense under AGPLv3+
19   - Add cc::input -- improve input parsing [ad1f2e6]
20   - DOC: cclive(1): Revise INPUT section [75d1b5c]
21   - DOC: Revise --stream description [401e8c0]
22   - FIX: configure.ac: AS_IF for date(1) [0019e62]
23   - Deprecate --prefer-format in favor of --stream with libquvi 0.9+ [f55f70d]
24   - Rewrite status_callback for libquvi v0.9.2 [7d94207]
25   - Make --stream configurable [993a0be]
26   - Move --support implementation to print_support [3d35e5e]
27   - --filename-format: Remove depr. support for %h sequence [ad214c7]
28   - --print-streams: Make output similar to quvi(1) 0.9+ [2294e93]
29   - --version: Add CXX and CXXFLAGS to the output [65f8373]
30   - --version: Print copyr notice to stderr instead of stdout [6c1f678]
31   - --version: Provide additional info about libquvi [9e6e50e]
33  45 files changed, 976 insertions(+), 616 deletions(-)
36 v0.9.0  [2013-05-25]
38 Toni Gundogdu:
39   - Add libquvi 0.9+ compatibility layer
40   - Add --print-config [bf22b60]
41   - Add short-option for --verbose-libcurl [239ea61]
42   - Drop libquvi 0.2.16.x support
43     - README: Bump libquvi prereq. to 0.4.0+ [99b47eb]
44   - FIX: Regression in retrying introduced by 4b118378 [b57e47b]
45   - FIX: Skip transfer with USR1, do not retry transfer [293dbc9]
46   - Merge --version and --license options [474c143]
47     - Add build time to --version output [ca5e80f]
48   - Remove all deprecated options/features
49     - Remove depr. --format [e32fc26]
50     - Remove depr. --query-formats [e8114a0]
51     - Remove depr. --regexp [0392fb0]
52     - Remove depr. --subst [8d2ac37]
53   - Update m4/boost.m4 to the latest [982bbc7]
55  28 files changed, 782 insertions(+), 422 deletions(-)
58 v0.7.12 -- [2013-02-10, r:Toni Gundogdu]
60 Toni Gundogdu:
61   - Add quvi compatibility layer [cda6cc4]
62   - Add short-option -h [8a279a6]
63   - Add short-option -v [ec969f1]
64   - Deprecate --format, add --stream [949d476]
65   - Deprecate --query-formats, add --print-streams [7188199]
66   - doc: Revise manual [777d82a]
67   - FIX: Do not ignore I/O errors during file transfer [6f2e711]
68   - options: Make 'continue' configurable [92bd61f]
69   - options: Make 'no-resolve' configurable [4afab3e]
70   - Upgrade boost.m4 to the latest [c436150]
72 See ChangeLog for a more detailed list of changes.
74  47 files changed, 1881 insertions(+), 1993 deletions(-)
77 v0.7.11  -- [2012-12-12, r:Toni Gundogdu]
79 Adam Sampson:
80   - Check .error() for user-provided regexps [03d69e0]
81   - Copy strings passed to StringPiece [5325ecc]
83  3 files changed, 31 insertions(+), 19 deletions(-)
86 v0.7.10 (2012-08-28) / Toni Gundogdu
88 Toni Gundogdu:
89   - Append contents of INSTALL file to README file [a90c854]
90     - README file will contain the cclive specific information
91     - INSTALL file will now be provided by GNU Autotools
92   - configure.ac: Add AC_PROG_LN_S [da6c39a]
93   - configure.ac: Install ccl symlink by default [9ecaaf8]
94   - configure.ac: Lower AC_PREREQ to 2.67 [e317832]
95   - configure.ac: Modernize AM_INIT options [76fd2d0]
96   - configure.ac: Modernize libtool options [0f39e93]
97   - configure.ac: Replace deprecated macros [59fce53]
98   - configure.ac: Run gen-ver.sh to get version value [4f0d4a8]
99   - DOC: Manual: Revise descriptions for option sections [fe31766]
100   - DOC: Rewrite EXIT STATUS section [6690303]
101   - FIX: Return non-zero exit status if failure (#18) [4d3c506]
102     - exit_status: Redefine as ok (EXIT_SUCCESS) and error (EXIT_FAILURE) [20cbf6d]
103       - Replace "invalid_option" with "error" [980792e]
104     - main: Use exit_status, have caught exceptions set exit status [99bd1b2]
105   - gen-ver.sh: Rewrite completely [df0a4ce]
106   - go_background: Return application::error instead [36158a1]
107   - Install ccl symlink now by default, see --disable-ccl in README
108   - install-exec-hook: Remove the 'ccl' symlink [e394f71]
109   - m4/boost.m4: Update to the most recent [1044d88]
110   - m4/version.m4: Remove the file [d1e6bae]
112  17 files changed, 206 insertions(+), 139 deletions(-)
115 v0.7.9  (2012-03-03) / Toni Gundogdu
117 Toni Gundogdu:
118   - FIX: Print only HTTP category domains with --support (#17) [8172356]
119   - FIX: --support: Strip lua escapes from domain patterns (#16) [b089d63]
120   - Update boost.m4 to the latest version [edc7b12]
123 0.7.8  Sat Nov 26 2011  Toni Gundogdu
124 Changes:
125     - Improvements to --exec
126       - Invoke --exec with "nothing todo"
127       - Additional specifiers %n and %t
128       - Allow multiple occurences
129       - Argument handling
132 0.7.7  Sun Oct 16 2011  Toni Gundogdu
133 Bugfixes:
134     - Do not create doc dir unnecessarily with "make install"
135     - Option -O evaluated incorrectly (#13)
136 Changes:
137     - Use QUVI_VERSION_SCRIPTS when available
138     - Add YouTube fmtNN ref. URL to manual
141 0.7.6  Mon Sep 12 2011  Toni Gundogdu
142 Changes:
143     - Add --tr (depr. --regexp, --subst)
144     - Add --prefer-format
145     - Revise manual
148 0.7.5.1  Thu Aug 18 2011  Toni Gundogdu
149 Changes:
150     - Lower quvi prerequisite to 0.2.16.1
153 0.7.5  Sat Aug 13 2011  Toni Gundogdu
155 Changes:
156     - Make --update-interval a "configurable" option
157     - Implement 'simple' progressbar
158     - Add --progressbar
159 Fixes:
160     - --update-interval (with negative) values doesn't work as intended (#11)
163 0.7.4.1  Thu Jun 23 2011  Toni Gundogdu
165 Fixes: dist
166     - make: rm: cannot remove `cclive': Is a directory (#9)
169 0.7.4  Sat Jun 18 2011  Toni Gundogdu
171 Changes:
172     - Add --no-resolve (replaces --no-shortened)
173     - Rewrite to use quvi "media interface"
174     - Add support for reading from files
175     - Deprecate "--format list"
176     - Remove --no-shortened
177     - Add --query-format
179 Changes: dist
180     - configure: Rename --with-man -> --with-manual
181     - Bump quvi prerequisite to 0.2.17
182     - Revert back to GNU Autotools
185 0.7.3.1  Tue Mar 15 2011  Toni Gundogdu
186 Bugfixes:
187         - CMake Error at src/CMakeLists.txt:43 (#7)
190 0.7.3  Sat Mar 12 2011  Toni Gundogdu
191 Changes:
192         - Add QUVIOPT_CATEGORY check
193             - Set QUVIPROTO_HTTP
194         - Do not build quvicpp as a static library
195             - Build quvicpp in the "cclive" target instead
196             - See also ChangeLog for 3a867d7 commit message
197 Bugfixes:
198         - Compilation with boost 1.46.0 (#6)
199             - Boost::Filesystem uses v3 as the new default in 1.46.0
202 0.7.2   Mon Feb 07 2011 Toni Gundogdu
203 Changes:
204         - Add SIGUSR1 handler
205         - Add progress meter
206 Bugfixes:
207         - Normal progressbar min-max rendering while resizing window
210 0.7.1   Fri Jan 07 2011 Toni Gundogdu
211 Changes:
212         - Lower pcre prereq. to 8.02, thanks to Alejandro Garrido Mota
213         - Show --background in options on platforms that support fork
214         - Print pid to log file with --background
215         - Add getpid check to CMakeLists.txt
216         - Add --no-shortened switch
217         - Make --quiet exclusive
218 Bugfixes:
219         - Wrong full path for downloaded file (#5) (d#608393)
220         - Number of various issues with --background log
223 0.7.0.1  Sat Dec 18 2010  Toni Gundogdu
224 Changes:
225         - Add --output-dir
228 0.7.0 rc2  Sat Dec 04 2010  Toni Gundogdu
229 Changes:
230         - Lower boost prerequisite to 1.42.0, thanks to Alejandro Garrido Mota
231         - Add --format [<help>|<list> <pattern>]
232         - gzip manual before installing it
233 Bugfixes:
234         - CMAKE_VERBOSE_MAKEFILE
235         - Manual install dir
238 0.7.0 rc1  Sat Nov 20 2010  legatvs
239 Changes:
240         - progressbar.cpp: Rewrite to_unit
243 0.7.0 beta4  Wed Nov 03 2010  legatvs
244 Changes:
245         - Add --regexp check
246         - Clean up manual page
247         - Improve progressbar line clearing
250 Version 0.7.0 beta 3
251 October 15, 2010
253 Changes:
254   * Print --help, --version, --license, --support to stdout
257 Version 0.7.0 beta 2
258 September 30, 2010
260 Changes:
261   * Migrated issue tracker to sf.net (read more: <http://is.gd/fnDU2>)
262   * Use "git describe" for version instead
263   * Add --max-retries, --retry-wait (#47)
264   * --version, print libquvi
267 Version 0.7.0 beta 1
268 September 1, 2010
270 Changes:
271   * Add prerequisite: Boost library
272   * Build system: GNU Autotools -> CMake
273   * Rewrite everything
275 See also:
276     <http://code.google.com/p/cclive/wiki/Development_0_7_0>
279 0.6.1
280 -------------
282 --format no longer uses hardcoded values. The accepted
283 values are now provided by libquvi.
286 0.6.0
287 -------------
289 Significant changes to the project. 0.6.0 has gone through
290 tedious testing but expect bugs.
292 * Added new dependency for libquvi (http://quvi.googlecode.com/)
293   - libquvi is a brand new a spinoff library
294   - based on cclive 0.5 host specific code
295   - takes care of all of the page fetching and parsing
297 * cclive will now prepend "error: libquvi:" if an error occurs
298 in the library, this means that any such bug should be reported
299 to the *quvi bug tracker* (see the link above)
301 * Added support for (cctv) multi-segment videos, see also:
302   http://code.google.com/p/clive/issues/detail?id=45
304 * Adult websites are now only supported if libquvi was built
305 with the support (default:no)
307 * CCLIVE_CURLINIT return code is now obsolete, libquvi
308 initializes libcurl and spews out the init error
310 * The code responsible for the underlaying "retry-transfer"
311 logic was rewritten for better readability
313 * Removed the libiconv dependency, libquvi takes care of
314 the character set conversions now
316 * Tests no longer run any of the old host specific checks,
317 the quvi package takes care of this now, other changes
318 to the test suite include:
320   * ADULT_OK environment variable is now obsolete,
321   this is now libquvi territory
323   * Renamed CCLIVE_TEST_OPTS -> CCLIVE_TEST_OPTIONS
325   * Tests are now perl scripts
327   * See INSTALL file for the list of test suite supported
328   environment variables
330 * libquvi introduces some misc. minor improvements to the 
331 page fetching and parsing, e.g. spiegel videos now skip
332 the video page fetch altogether
334 * Spyfilms video ids were previously (0.5.9) glued together
335 from various video page elements, as of 0.6.0 (and libquvi)
336 spyfilms video ids are generated using different scheme
338   * This is a special case, all other supported websites
339   use unique ids for their videos
341 * Option changes
343   * Remove --stream option. This option was supported for historical
344   reasons only, until now. It has been considered deprecated since
345   the introduction of --stream-pass in 0.4.6.
348 0.5.7
349 -------------
351 Multiple regular expressions can now be supplied for --substitute.
353 For example:
354   % cclive -S "s/old/new/i s/[/:-]/_/g" URL
356 Note the whitespace between the regular expressions.
359 0.5.6
360 -------------
362 Added --substitute which mimics Perl's s/old/new/(gi) substitution.
363 It can be used to replace substrings in output filenames.
365 Example:
366   % cclive -S "s/old/new/i" URL
367   % cclive -S "s/[/:-]/_/g" URL
369 Changed --regexp to accept Perl-like regular expressions, e.g.
370   % cclive -r "/(\w+)/" URL
371   % cclive -r "/(\w+)/g" URL
372   % cclive -r "/([a-e])/gi" URL
374 Note that this breaks the backward compatibility.
375   * --regexp now expects /pattern/(gi)
376   * --find-all is no longer supported (use /g instead)
378 Added --background which is similar to what clive (2.1.x) once had.
379 The progress indication while in the background is very simplistic.
380 Note that --logfile and --logfile-interval options were also added
381 to support --background.
384 0.5.2
385 -------------
387 New youtube format: fmt34. This was previously referred to as youtube
388 default format which no longer appears to be the case. Note that the
389 fmt34 video quality and resolution may vary.
391 Fixes a few bugs.
393 Redtube support is broken.
394   http://code.google.com/p/cclive/issues/detail?id=5
397 0.5.0
398 -------------
400 The dependency of Perl and HTML::Tokenizer module have been replaced with
401 libiconv and PCRE for significantly lower system footprint. Perl was previously
402 used for parsing video titles and cleaning them up.
404 configure no longer supports --enable-sigwinch. The support is now compiled
405 into the program automatically if signal.h is found and defines SIGWINCH.
407 tests/ have been rewritten in C++.
409 Other notable changes:
411   Removed options:
412   --title
413     - obsoleted by --filename-format since 0.4.1 
414   --cclass, --no-cclass
415     - obsoleted by --regexp and --find-all (below)
417   New options:
418   -r, --regexp
419     - Defines the regular expression that can be used to "filter"
420       video titles before they are used for filenames
422   -g, --find-all
423     - Used together with the above to repeat the matching to find
424       all occurences, similar to Perl's /g option
426   Example:
427     cclive -gr "(\w|\s)" URL
429   Comparison:
430   -----------
431                               SIZE     RES      Notes
432   clive  2.2.4              ~13924k  ~10388k    Perl all the way
433   cclive 0.4.7 (w/ perl)     ~8300k   ~6908k    Video titles enabled
434   cclive 0.4.7 (w/o perl)    ~5940k   ~3224k    No video titles
435   cclive 0.5.0               ~5780k   ~3196k    Video titles enabled by default
437   SIZE = total size of the process (text, data, and stack)
438   RES  = current amount of resident memory
440   Note  : Figures are approximates. cclive was built with "-O2 -march=pentium4"
441   Tested: FreeBSD 7.2, numbers provided by top(1), numbers vary slightly per URL