Merge branch 't/image-0.5'
[paraslash.git] / NEWS
diff --git a/NEWS b/NEWS
index e8f847b9cba942f6baa90195aafc20c0111d3985..5cd0d374aac732340e4ac67f200a4c8f93d67780 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,8 +1,186 @@
--------------------------------------------
-0.4.7 (to be announced) "infinite rollback"
--------------------------------------------
+---------------------------------------------
+0.5.0 (to be announced) "invertible validity"
+---------------------------------------------
+
+       - The sideband compatibility code has been removed, hence
+         sideband connections (introduced in 0.4.11) are now mandatory.
+       - Addblob commands can produce output.
+       - The stat command no longer sends garbage when para_server was
+         compiled against libgcrypt.
+       - Dependencies for gengetopt files are computed automatically.
+         This eliminates a constant source of build bugs.
+       - The setatt command now accepts file name patterns rather than only
+         path names.
+       - overview.pdf is now based on dia, a simple diagram creation program.
+         The new version is much more detailed and contains descriptions of
+         the various programs of the paraslash package.
+       - The separator of all multi-word options has been changed from
+         underscore to dash. For example --log_color becomes --log-color.
+       - New logo.
+
+--------------------------------------
+0.4.13 (2013-07-29) "spectral gravity"
+--------------------------------------
+
+One more 0.4.x release before the API-breaking changes for 0.5.0 go
+in. The main features of this release are the ogg/opus audio format,
+and UTF-8 support, but it includes also tons of other improvements
+and fixes all over the place.
+
+       - New audio format: ogg/opus.
+       - UTF8 support for para_gui and the mp3 audio format handler.
+       - Scheduler improvements and fixes.
+       - The obsolete gettimeofday() function has been replaced
+         by clock_gettime() on systems which support it.
+       - Speed and usability improvements for para_gui.
+       - para_client now restores the fd flags of stdin and stdout
+         on shutdown.
+       - Improved manual pages.
+       - Consistent version strings for all executables.
+       - Reduced dependencies on generated files result in fewer
+         recompilations on changes.
+       - Performance improvements for the compress filter.
+       - Improved downloads web page.
+
+-----------------------------------------
+0.4.12 (2012-12-20) "volatile relativity"
+-----------------------------------------
+The new command line player, the resample filter, ALSA support for
+para_fade, and the improved build system are the highlights of this
+release which probably marks the end of the 0.4.x series.
+
+       - The afh receiver and the para_play executable.
+       - The resample filter: A sample rate converter based on
+         libsamplerate.
+       - The "versions" directory has been removed from the master
+         branch. The tarballs of the old releases are now available
+         in the new "releases" branch.
+       - Overhaul of the build system: All generated files are now
+         written to the "build" directory.
+       - The modular mixer API and the alsa mixer.
+       - Minor fixes for the osx writer.
+
+--------------------------------------
+0.4.11 (2012-07-20) "mutual diversity"
+--------------------------------------
+
+The major feature in this release is the new sideband API for
+client-server communication. This API will be used exclusively starting
+with 0.5.0, which breaks backward compatibility but allows to get rid
+of quite some compatibility code. Other noteworthy changes include
+decoder latency improvements and a long-standing bug fix for the
+ALSA writer.
+
+       - Sideband connections: If both para_server and para_client
+         support this feature, data is sent as a multiplexed stream.
+       - The --no_default_filters option of para_filter has been
+         removed.
+       - Several fixes and latency improvements to various decoders.
+       - The ALSA writer now limits the prebuffer time to 500ms.
+       - Documentation improvements.
+       - Overhaul of the command_util.sh script.
+       - Fixes for some minor problems found by the clang analyzer.
+       - Compiles (almost) without warnings on gcc-3.
+       - Robustness improvements of the buffer tree code.
+
+------------------------------------------
+0.4.10 (2012-03-30) "heterogeneous vacuum"
+------------------------------------------
+
+Nothing earth-shaking in this release, but quite a few usability
+improvements and the usual mix of cleanups and fixes.
+
+       - The --no_default_filters option of para_filter has been
+         deprecated. It still works but has no effect and will be
+         removed in the next version.
+       - para_gui now prints also the stderr output of the executing
+         command in the bottom window.
+       - Cleanup and consolidation of the various wrappers for
+         write(), writev(), send() and friends.
+       - The obscure error messages on mmap() failures have been
+         replaced by meaningful messages. This affects mainly
+         para_afh.
+       - para_audioc: Cleanups and memory leak fixes.
+       - Test 0004-server no longer fails if para_server is not
+         being built.
+       - New configure options: --with-id3tag-{headers,libs}.
+
+-------------------------------------
+0.4.9 (2011-12-06) "hybrid causality"
+-------------------------------------
+
+Support for another audio format, interactive mode for para_client
+and para_audiod and many small improvements/fixes all over the place.
+
+       - Support for flac, the free lossless audio codec.
+       - Fix for an endless loop in the mp3 decoder for certain
+         (corrupt) mp3 files.
+       - When executed without specifying a command, para_client
+         and para_audioc start an interactive shell (requires
+         libreadline being installed). The interactive mode offers
+         full tab completion and command line history.
+       - autogen.sh now detects a distcc setup and adjusts the
+         parameter for the -j option of make accordingly.
+       - Shared memory areas are no longer restricted to 64K. We now
+         detect the maximal size of a shared memory area at runtime.
+       - cleanup of the internal uptime API.
+       - para_server prefaults the mmapped audio file to avoid
+         delays on slow media.
+       - A new test for the test-suite that exercises the
+         communication between para_server and para_audiod.
+       - The alsa writer eats up less CPU cycles when configured to
+         use the DMIX plugin.
+       - Simplified and unified receiver code.
+       - Makefile cleanups.
+       - Commands which print a list of matching audio files now
+         emit a meaningful error message if no audio file matched the
+         given pattern(s).
 
+--------------------------------------
+0.4.8 (2011-08-19) "nested assignment"
+--------------------------------------
+
+Gcrypt support, the overhauled osx writer and regex format specifiers
+are the highlights of this release.
+
+       - support for libgcrypt as a drop-in replacement for openssl.
+         Run configure --enable-cryptolib=gcrypt to link against
+         libgcrypt. The two crypto implementations are compatible to
+         each other, i.e. a para_client executable linked against
+         gcrypt can connect to para_server linked against libssl
+         and vice versa.
+       - Rewrite of the osx writer (output plugin for Mac OS).
+       - audiod: The format specifier for receivers, filters and
+         writers is now treated as a regular expression. This allows
+         to replace 5 lines in the config file (one for each audio
+         format) by one single line. See the manual for details.
+       - The *.cmdline.[ch] files are no longer contained in the released
+         tarballs. This reduces the size of the tarballs but requires
+         gengetopt to build the tarball.
+       - Compiles cleanly also with llvm/clang.
+       - Corrupt mp3 files are handled more gracefully.
+       - The alsa writer uses poll fds instead of computing timeouts.
+       - Cleanup of the generic writer API.
+       - sched: Optimized zero timeouts.
+       - vss timeout cleanups.
+       - oggdec fixes and improvements.
+
+--------------------------------------
+0.4.7 (2011-06-01) "infinite rollback"
+--------------------------------------
+
+The new ao writer, support for ssh RSA keys and a couple of other
+enhancements.
+
+       - Support for ESD, Pulseaudio, AIX, Solaris, IRIX and other
+         platforms through the libao audio library.
+       - Support for RSA keys generated with ssh-keygen.
        - configure: improved options for ogg/vorbis/speex.
+       - The git version reported by --version always matches HEAD.
+       - The autogen script detects the number of processors and
+         runs a parallel make if possible.
+       - Major cleanup of the crypto API.
+       - Documentation updates.
 
 ------------------------------------------
 0.4.6 (2011-03-31) "deterministic entropy"
@@ -406,7 +584,6 @@ A bunch of new features and core changes.
        - para_fade: wake time defaults to 8 hours from now
        - update to autoconf-2.60
 
-
 ------------------------------------------
 0.2.12 (2006-05-12) "oriented abstraction"
 ------------------------------------------
@@ -460,7 +637,6 @@ they are now called "audio file selectors" instead.
        - X86_64 fixes (thanks to Steffen Klassert)
        - para_play fixes
 
-
 --------------------------------------
 0.2.10 (2006-02-17) "cyclic attractor"
 --------------------------------------
@@ -482,7 +658,6 @@ to the new source documentation.
        for para_recv/para_audiod as this information is now encoded in
        each rtp packet sent by para_server.
 
-
 -------------------------------------------
 0.2.9 (2006-01-24) "progressive turbulence"
 -------------------------------------------
@@ -504,7 +679,6 @@ a lot of small improvements.
        - the new error subsystem gives better error diagnostics
          and reduces code size.
 
-
 -----------------------------------------
 0.2.8 (2006-01-02) "dynamic accumulation"
 -----------------------------------------
@@ -519,7 +693,6 @@ The new modular filter design and the para_play-hangs bugfix.
        - para_play: fix a stupid bug that caused it to hang under
          certain circumstances.
 
-
 -------------------------------------------
 0.2.7 (2006-12-27) "transparent invariance"
 -------------------------------------------
@@ -543,7 +716,6 @@ Not many user-visible changes but a fair amount of internal improvements.
        - use of gcc-extensions that #define away for non-gcc and
          gcc < 3.0.
 
-
 -------------------------------------------
 0.2.6 (2005-10-29) "recursive compensation"
 -------------------------------------------
@@ -566,7 +738,6 @@ the internal find command and several other improvements and cleanups.
        - para_client code cleanup
        - para_gui: faster display of output of display commands
 
-
 ------------------------------------------
 0.2.5 (2005-10-13) "aggressive resolution"
 ------------------------------------------
@@ -596,7 +767,6 @@ in parallel.
        - com_ne(): ignore errors on remove
        - audiod: fix segfault on server restart
 
-
 ---------------------------------------
 0.2.4 (2005-09-21) "toxic anticipation"
 ---------------------------------------
@@ -618,7 +788,6 @@ Several small improvements, fixes and the new grab command.
        - server: report total size of memory allocated with sbrk by malloc,
          new command line option: --announce_time
 
-
 -----------------------------------------
 0.2.3 (2005-09-01) "hydrophilic movement"
 -----------------------------------------
@@ -641,7 +810,6 @@ Two new executables and major feature enhancements.
          a local network to syncronize the audio output of all
          clients that play the same stream.
 
-
 ------------------------------------------
 0.2.2 (2005-08-19) "tangential excitation"
 ------------------------------------------
@@ -662,7 +830,6 @@ for the mysql database tool.
          (new entry), "snp" (set numplayed). Read the manual for more
          information.
 
-
 ---------------------------------------
 0.2.1 (2005-08-15) "surreal experience"
 ---------------------------------------
@@ -685,8 +852,6 @@ surprise, only minor bug fixes.
        - audiod: 5 slots ought to be enough for everybody
        - audiod: new status item: Uptime, kill hup command
 
-
-
 ------------------------------------------
 0.2.0 (2005-08-06) "distributed diffusion"
 ------------------------------------------
@@ -715,7 +880,6 @@ self-contained than the old 0.1.x series. Enjoy!
        - para_krell: fix crash on server shutdown
        - switch from gzip to bzip2
 
-
 ----------------------------------------
 0.1.7 (2005-04-18) "melting penetration"
 ----------------------------------------
@@ -740,7 +904,6 @@ e.g. the dmix plugin which is provided by ALSA.
          deactivate a slot if it is idle for that many seconds (default=`5')
        - diffstats
 
-
 ---------------------------------------
 0.1.6 (2005-03-05) "asymptotic balance"
 ---------------------------------------
@@ -825,7 +988,6 @@ Visible changes:
        - new command: csp (change stream and play)
        - para_gui also reports current database tool and server uptime
 
-
 -------------------------------------------
 0.1.2: (2004-11-28) "spherical fluctuation"
 -------------------------------------------
@@ -847,7 +1009,7 @@ Point release before the big dbtool changes go in.
        - several small fixes
 
 -------------------------------------
-0.1.0: (2204-10-22) "rotating cortex"
+0.1.0: (2004-10-22) "rotating cortex"
 -------------------------------------
 
        - fix logging bug for loglevel > VERBOSE