-NEWS
-====
+-------------------------------------------
+0.4.7 (to be announced) "infinite rollback"
+-------------------------------------------
----------------------------------------------
-0.?.? (to be announced) "inductive resonance"
----------------------------------------------
+ - 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.
+
+------------------------------------------
+0.4.6 (2011-03-31) "deterministic entropy"
+------------------------------------------
+
+Lots of ogg/vorbis improvements, the new test suite, enhancements
+for para_gui and a fair amount of other bug fixes.
+
+ - For DCCP/OGG streams the audio file header is only sent once
+ at the beginning of the stream rather than periodically
+ every five seconds. This reduces network traffic and the
+ FEC group size.
+ - The vorbis comment header is replaced by an empty dummy header
+ before the header is sent over the network. This also results in
+ less network traffic and smaller FEC groups.
+ - The new "test" make target allows to perform some sanity checks prior
+ to installing the package.
+ - ogg timing fixes and performance improvements
+ - Scheduler improvements
+ - Proper exit codes for para_write
+ - para_gui: New option --theme to select a startup theme. Several
+ other improvements and fixes.
+ - aacdec error message cleanups
+ - simplified color error handling
+
+--------------------------------------------
+0.4.5 (2010-12-17) "symmetric randomization"
+--------------------------------------------
+
+Bug fixes, internal cleanups and variable-sized FEC slices.
+
+ - Contains a fix for an invalid-free-bug in the ogg audio format
+ handler code.
+ - Switching off the DCCP sender works again.
+ - para_audiod handles crashes of para_server more robustly.
+ - Internal scheduler and writer cleanups.
+ - Reduced latency due to variable-sized FEC slices.
+ - Improved documentation and error diagnostics.
+ - The build of para_server is now optional, allowing the build
+ to succeed in case libosl is not installed.
+
+------------------------------------------
+0.4.4 (2010-08-06) "persistent regularity"
+------------------------------------------
+
+Support for yet another audio format, para_write improvements and
+bug fixes.
+
+ - Support for the speex codec.
+ - Support for sample formats other than 16 bit little endian.
+ - error2.h is now created by a perl script which speeds up configure
+ considerably.
+ - Fix a bug in the aac decoder which could lead to segfaults in
+ para_filter/para_audiod.
+ - Fixes for autoconf-2.66.
+
+----------------------------------------
+0.4.3 (2010-07-05) "imaginary radiation"
+----------------------------------------
+
+Many improvements for the DCCP and the UDP transport, the new user
+manual and the usual mix of bug fixes and internal improvements.
+
+ - FEC support for the DCCP sender (Gerrit Renker). The new
+ --dccp_max_slice_size, --dccp_data_slices_per_group and
+ --dccp_slices_per_group options can be used to set the FEC
+ parameters for the DCCP transport.
+ - DNS lookups for UDP targets (Gerrit Renker).
+ - The new user manual replaces the README, README.afs, REQUIREMENTS
+ and INSTALL documents.
+ - Fix an end-of-file detection bug in the oggdec filter.
+ - The new nonblock API.
+ - Both options of the oggdec filter have been removed.
+ - New debug mode for the internal scheduler.
+
+------------------------------------------
+0.4.2 (2010-04-23) "associative expansion"
+------------------------------------------
+
+It's been some time since the last release, but finally here is
+paraslash-0.4.2. The bulk of the changes comes from the new buffer
+tree API, but there are changes all over the tree. Mainly performance
+and usability improvements, but also quite some bug fixes.
+
+ - The new buffer tree API.
+ - DCCP: Support for CCID negotiation (Gerrit Renker).
+ - UDP robustness fixes.
+ - The --bufsize option for mp3dec is gone as it no longer makes sense
+ for the new buffer tree API.
+ - Fix audible buffer underruns for wma streams.
+ - The alsa writer no longer prints meaningless underrun durations.
+ - audiod: Defaults work also for udp streams. If no filter is
+ given for an audio format that is received via upd, fecdec is
+ automatically added as the first filter (along with the decoder).
+
+---------------------------------------
+0.4.1 (2009-12-22) "concurrent horizon"
+---------------------------------------
+
+Support for another audio format, minor feature enhancements and lots of bug
+fixes. All fixes that have been accumulated in the maint branch (in particular
+those mentionened in the 0.3.6 release notes) appear in this release as well.
+
+ - wma support.
+ - new afh option: --human to activate human-readable output.
+ - new server/audiod option: --log-timing to print timing information.
+ - build system improvements.
+ - source code documentation updates.
+
+-------------------------------------
+0.3.6 (2009-12-07) "cubic continuity"
+-------------------------------------
+
+Quite a few bugs have been found and fixed since 0.3.5, so here's
+another 0.3.x release. No new features.
+
+ - Always check return value of malloc().
+ - ogg vorbis/FEC: Do not write garbage after the audio file header.
+ - exit if root privileges could not be dropped.
+ - FEC: Fix computation of extra slices.
+ - oss: Fix check for empty input buffer.
+ - Avoid buffer underruns due to filter chain output buffer constraints.
+ - server: Fix assignment of afs_pid.
+ - Don't panic if the afs database contains unknown audio formats.
+ - http/dccp: Do not send the audio file header twice.
+ - FEC: Timing improvements.
+
+----------------------------------------------
+0.4.0 (2009-11-10) "simultaneous independence"
+----------------------------------------------
+
+Two significant changes which require the new version number: The
+improved authentication dialog and the fact that the database code
+has been moved to a library, libosl. To use the new version, you have
+to generate new RSA keys, see INSTALL for details. A shell script is
+provided for conversion of the 0.3 database to the new 0.4 format.
+
+ - stronger crypto for client authentication
+ - the database code has been moved to a library
+ - improved status item handling
+ - cleanup of the build system
+ - The "-V" option now also prints the git version
+ - the new parser-friendly listing mode for the ls and stat commands
+ - mandatory rc4 encryption
+ - major audio format handler cleanups
+ - (id3,...) tags are no longer stored as a combined string in the database
+ - new mood methods: artist_matches, title_matches, comment_matches,
+ album_matches, year_maches, year.
+
+--------------------------------------------
+0.3.5 (2009-09-21) "symplectic separability"
+--------------------------------------------
+
+Full client support for *BSD Unixes, complete re-write of the ogg
+vorbis audio format handler, various improvements all over the place
+and the usual mix of bugfixes. This release marks the end of the 0.3
+series if no serious problems show up.
+
+ - the new oss writer (supported on *BSD and Linux)
+ - rewrite of the ogg vorbis audio format handler. It's
+ recommended to replace the chunk tables of existing ogg
+ vorbis files in the afs database by re-adding these files
+ with "add -f".
+ - support for netmask subsets (Gerrit Renker)
+ - the new prebuffer filter
+ - improved signal handling
+ - variable fec output buffer size
+ - improved FEC timing fixes audible buffer underruns in UDP mode
+ - --log_color actually works
+ - new ls option: -d (print dates as seconds after the epoch)
+ - update to gengetopt 2.22.2
+ - support for RSA keys of size > 512 bits
+ - new option "mixer_channel" for para_fade
+
+-----------------------------------------
+0.3.4 (2009-05-07) "elliptic inheritance"
+-----------------------------------------
+
+The new udp sender, forward error correction, colored logs and various
+other improvements. As the udp sender does not depend on any special
+libraries, it is built unconditionally.
+
+ - The udp sender replaces the ortp sender. The new code uses forward
+ error correction to protect against packet losses. Many thanks to
+ Gerrit Renker for providing ipv6 support.
+ - The default port for udp streaming now defaults to 8000, like
+ for the http and the dccp senders/receivers.
+ - Loglevels are now specified as symbolic names, e.g.
+ "--loglevel info".
+ - improved ipv4 and ipv6 URI parser (Gerrit Renker).
+ - para_server/para_audiod: Color support for log messages.
+ - new options for mp3dec: --ignore-crc, --bufsize
+ - new audiod option: --config-file.
+ - gengetopt cleanups.
+ - Improved help/man pages: The documentation of para_audiod,
+ para_recv, para_filter and para_write now also contains
+ all options of the available receivers/filters/writers. The
+ man page of para_fade contains a description of the different
+ modes of operation.
+ - More source code documentation.
+ - vss timing fixes.
+
+--------------------------------------------
+0.3.3 (2008-12-01) "axiomatic perspectivity"
+--------------------------------------------
+
+Internal code cleanups, bug fixes, improved tag handling and the new
+amplification filter.
+
+ - para_server uses the generic scheduling code.
+ - overhaul of the virtual streaming system.
+ - mp3: id3 version 2 support via libid3tag (optional)
+ - ogg: vorbis comment support.
+ - aac meta info support.
+ - mp3 audio format handler cleanups.
+ - new filter: "amp" to amplify the amplitude of the audio stream
+ - new status item/database entry: amplification. It is
+ used by the amp filter to pre-amplify the audio stream.
+ - fix a close-without-open bug in para_write.
+ - fix a bug in com_init() which was introduced in 0.3.2.
+ - better error diagnostics for para_client.
+
+-----------------------------------------
+0.3.2 (2008-04-11) "probabilistic parity"
+-----------------------------------------
+
+The new para_afh executable, scheduling and documentation improvements.
+
+ - new ls option: -lc (list chunk table)
+ - new executable: para_afh, the stand-alone audio file handler tool
+ - afs commands can send output more than SHMMAX (32MB on Linux). This
+ also reduces the memory usage of commands that produce large amounts
+ of output.
+ - major scheduler and audiod cleanups.
+ - more detailed and much nicer man pages.
+
+---------------------------------------
+0.3.1 (2008-02-23) "liquid interaction"
+---------------------------------------
+
+A mix of cleanups, bug fixes, improvements, and some new features. No
+significant changes to the new database (osl) code, which is generally
+a good sign.
+
+ - Share some similar/duplicate code between the http and the
+ dccp sender.
+ - Generic access control lists for paraslash senders.
+ - dccp sender: Access control lists, connection limiting and support
+ for the allow,deny,on,off,help sender commands.
+ - The default dccp port changed from 5001 to 8000 (suggested by
+ Gerrit Renker).
+ - para_server starts even if not all public keys could be loaded.
+ - Audiod performance improvements.
+ - fix a bug in the "off" command of the http sender.
+ - fix some fd and memory leaks.
+ - Update to gengetopt-2.22.
+
+-------------------------------------
+0.3.0 (2008-01-12) "solar saturation"
+-------------------------------------
+
+paraslash.0.3.0 -- 'WWDBND --what would databases never do?'.
+
+
+Usually one might expect lots of new features AND a big increase in size
+for a major release like this.
+
+However, paraslash-0.3.0.tar.bz2 is the smallest paraslash tarball
+ever. The decrease in size is mostly due to the removal of some
+graphical tools (which were only quick hacks anyway). But also the
+fact that the mysql code is gone cuts down the size a bit.
+
+Being independent of mysql comes at a cost: The fact that paraslash
+now contains its own database (the object storage layer, osl) increases
+the (stripped) binary size of para_server by ~50K on i386.
+
+ - no more restrictions on unique basenames.
+ - independent of mysql: The new self-contained object
+ storage layer (osl) replaces the mysql database.
+ - New executable para_fsck: Check integrity of osl tables.
+ - Lyrics support.
+ - Reliable audio file move/rename detection.
+ - More portable than ever: Tested on Linux (x86_32, x86_64, sparc64),
+ MacOS (ppc32, x86_32), FreeBSD (x86_32), NetBSD (x86_32) and
+ Solaris (sparc64).
+ - the new osl-based audio file selector (afs) replaces the random,
+ the playlist and the mysql selector of paraslash-0.2.x.
+ - IPv6 support (thanks to Gerrit Renker).
+ - paraslash-0.2.x streams are now called "moods". Writing
+ 0.3.x-mood definitions should be both easier and more
+ powerful than writing 0.2.x-stream definitions.
+ - para_krell, para_slider, para_para_sdl_gui, para_dbadm have
+ been removed. The world is a better place without them. However,
+ para_gui is still there.
+ - afs tracks audio file selection also in playlist mode.
+ - few easy-to-use afs commands replace the many not-so-easy-to-use
+ mysql commands (and are available also in playlist mode).
+ - Improved error subsystem.
+ - The earth-shaking new logo.
+
+-----------------------------------------
+0.2.17 (2007-11-20) "isotropic threshold"
+-----------------------------------------
+
+Mainly bugfixes and cleanups in this version which marks the end of
+the 0.2.x series if no serious bugs show up after the release.
+
+ - mysql_selector: fix a locking bug.
+ - universal chunk queueing.
+ - dccp sender uses chunk queueing if write() returns EAGAIN (thanks
+ to Gerrit Renker).
+ - be more carful wrt. signed vs. unsigned argument passing.
+ - cleanup error.h and fix some references to invalid error
+ codes.
+ - update to gengetopt-2.21.
+ - update to ortp-0.13.1.
+ - autoconf: extend checks for headers, library functions and
+ compiler characteristics.
+ - Fix streaming of large mp3 files.
+ - Fix an off-by-one bug in playlist handling.
+
+--------------------------------------
+0.2.16 (2007-04-05) "neural discharge"
+--------------------------------------
+
+The main change in this release is the major audio format handler
+cleanup which removes some similar/duplicate code and makes it easier
+to implement plugins for other audio formats. Of course, the usual mix
+of other improvements/changes/bugfixes also made it into the release.
+
+ - simplified audio format handlers (most of the handling functions
+ were moved one layer up to the virtual streaming system).
+ - para_server uses mmap to read audio files
+ - repositioning of mp3 streams is much faster, in particular for
+ jumping near the end of large mp3 files.
+ - permission flags DB_READ,DB_WRITE have been renamed to AFS_READ
+ and AFS_WRITE.
+ - fix a bug in para_filter that caused decoding of aac files
+ to start only after a few seconds.
+ - fix osx_writer hangs
+ - simplified dccp code (thanks to Gerrit Renker)
+ - the compress filter works also on big endian systems (ppc)
+
+-----------------------------------------
+0.2.15 (2007-02-16) "inductive resonance"
+-----------------------------------------
+
+Minor improvements, more documentation and a bunch of bug fixes.
+
+ - para_server: The server.users file is only read once on server
+ startup rather than for each connection
+ - mp3dec: Fix decoding of corrupt mp3 files
+ - afs (audio file sender) is now called vss (virtual streaming
+ system). Consequently, the permission flags specified in
+ ~/.paraslash/server.users have also changed: AFS_READ and AFS_WRITE
+ become VSS_READ and VSS_WRITE respectively.
+ - para_audiod/para_filter: Fix a bug that caused the last chunk
+ of audio data not being written under certain circumstances
+ - audiod: compute the difference of server time and local time
+ correctly
+ - para_server/para_audiod: Fix some memory leaks
+ - documentation improvements
+ - configure.ac: fix checks for para_krell
+ - new man pages
-------------------------------------------
0.2.14 (2006-10-15) "transient singularity"
------------------------------------------
-0.2.5 (2005-10-13) "aggressive_resolution"
+0.2.5 (2005-10-13) "aggressive resolution"
------------------------------------------
This release adds internal senders, i.e. no more external programs are