1.3.1 * Fix potential overwriting of music files when cache setup is wrong * Fix registering dirs with MySQL cache when MI_QUICKPL is on 1.3.0 * Implement MySQL cache backend * Implement whole directory content fetch from cache * Implement timing information ("in ... s") * Fix wrong logic for filesize summing leading to incoherent output during recursive searches * Fix showing Download List without support for tarball in custom list * Fix a performance issue (copying hidden filenames while recursing) * Fix a performance issue in cache-file backend, recreating directories immediately after deletion * Fix file locking logic in cache-file, which "happened" to work * Improve memory usage in send_url() * Perform checks before allocation in make_music_entry * Rationalize cache initialization to avoid redundant checks * Perform custom management of scratch memory * Use restrict keyword * Use -fstrict-aliasing * Introduce mi_rdebug() 1.2.5 * pt-br translation * Fix cookie not created by mod_musicindex overwrite * Fix streaming playlists to IE7 * Fix broken RSS/podcast * Fix incoherent and incorrect RSS output * Fix a bug by which tarball generation made the cache inconsistent * Fix potential divide by 0 in Xing MP3 code * Fix handling of MusicDirPerLine in .htaccess * Fix per directory configuration merging logic * Fix randomdir segfault when dealing with empty folders * Compute and send tarball size to the browser * Make RSS/Podcast i18n compliant * Make PRETTY_FOLDERS a runtime option * Add new code optimizations * Make the code apache2 API native * Move over to libmp4v2 using deprecated API (instead of mpeg4ip) 1.2.2 * Add a summary footer at the end of the songs table * Fix a bug by which Download All would show in search results * Fix a long standing silly bug in playlist-mp3, now some wicked mp3 files won't report bogus bitrate and length * Improve a little bit the stylesheet * Make PRETTY_FOLDERS a configure option 1.2.1 * Fix single file streaming * Fix Select panel display with -Stream +Tarball options * Fix Select panel display with -Stream +Download options 1.2.0 * This release breaks backward compatibility with pre 1.1 releases: + At the configuration level, deprecated options have been dropped + At the HTTP GET level, sorting arguments have changed * Bugfixes & cleanup: + Fix missing free() in send_tarball() (memory leak) + Fix permission checking in tarball and playlist generation + Fix directory sorting ("Foo" is now before "Foo CD1") + Fix gettext for apache 2 build + Fix broken-by-design sort order handling in forms + Fix bogus MP4 file extension checking + Add missing Filename field (#416933) + Add a workaround buggy libarchive FILE_OFFSET_BITS + Add Album to default fields + Allow custom playlist operations regardless of current directory's permission (rework of treat_post_args() and send_customlist()) + cache-file now uses the fact that p->title always exists + speed optimizations in the sorting routines + Major rewrite of the sorting algorithm (reduced object size and improved performance) + Switch from recursive quicksort to linear mergesort + Reduce the amount of unnecessary computation by introducing a new mu_pack type + More const-enforcement. Remove unnecessary args from some key funcs + Get rid of most floating point operations + Get rid of sprintf in send_url() + Do fileext check in all codec backends, major speedup + Inline some functions + Improve memory usage (realloc) + Remove some dead code * New features: + Italian translation thanks to Lorenzo Salvadorini + Add new icons to let the user know what will happens with the files in the custom playlist 1.1.5 * Switch from <input> to <button> to allow translation * Fix gettext build and enforce UTF-8 output * Minor improvements to the CSS 1.1.4 * Support 3 Apache generations (1.3, 2.0 & 2.2) * Allow local "valid-*" icons (#385619) * Document cookie limitations (#388440) and local icons trick * Get rid of most <img> tags, replaced with CSS (side effect: #381593) 1.1.3 * Apache 2.2 support 1.1.2 * Fix an xml compliance bug (#385370) 1.1.1 * Improve cache allocations (only execute some code if cache is valid) * Fixes once and for all the passing of special chars from client to server by using base64 encoding * Make sure that search results actions still work 1.1.0 * New cache handling, with more flexibility. We can now have different backends * Fix stupid bug breaking custom playlists. * New "MusicIndex" option, replacing "MusicLister", "MusicAllowStream", "MusicAllowDownload", "MusicAllowSearch", and "MusicAllowRss". * Various internal minor reworks. * Add the possibility to generate podcast RSS stream. Thanks to Mattia Dongili <malattia@linux.it> for the patch. * Implemented archive download, using libarchive. * Display units as hints ("<acronym>") * Fix non-working multiple CSS (#371164) * Implement variable directories per line (#350759) * Fix directories allowed operations in directory listing * Use icons instead of text 1.0.2 * Fixed MP3 VBR "0" bitrate output * Disabled detect-by-content for MP3 (doesn't work) * Removed trailing "/" in directory listings * Documented "stream and download are the same thing" in README 1.0.1 * Improved MP3 tag handling * Clarified randomdir action text * Reworked the apache version auto-detection so it actually works 1.0 * Autotools fixes : + --enable-apache2 was bad, Debian-specific, and is now replaced by --with-apxs=/path/to/apxs and automatic detection of the version + Get rid of libtool + Steal some libtool macros to use PIC on architectures which support it * Fixed another bunch of potential issues in cache-file.c * Fixed a really stupid bug in playlist.c that would DoS apache because of too many open files * Improved CSS (sans serif style, column spacing) 0.999 * Yes ! we're still alive ! * Release Candidate for 1.0 * Temporarily remove some development stuff * Switch to autotools for more fun * Data stuff are installed to /usr/share/mod_musicindex * New (incompatible with previous versions) configuration syntax * Support for (.){cover,folder}.ext 0.99.X -- Never released * Bugfix: icecast can't do https * gettext in progress * cache sql in progress * moved files to a debian fashionned place 0.99.8 * BUGFIX RELEASE * playlist-mp4.c: fixed NULL dereferencing bug * playlist.c: fixed pointer arithmetics overflow bug * playlist-mp3.c: fixed a precision bug in track length reporting * html.c: changed the way size is displayed * mod_musicindex.h: changed storage size for track length 0.99.7 * MORE MASSIVE CHANGES * Use POST method for sending data * Added VBR flag and samplerate field to mu_ent type * Added MP4 support * Added random directory relocator * Reworked MP3 handler, now supports correctly VBR files * Modularized build system, it's no longer necessary to have all libs * Slight change in RSS feed format, still not perfect * Some core functions have been reworked for efficiency and maintainability * Corrected OGG handler to show nominal bitrate and VBR when possible * A couple of likely bugs have been fixed 0.99.5 * bugfix release: serious breakage (#271912) 0.99.4 * bugfix release: handles ssl servers, patch from A. Jargensen (#268921) 0.99.3 * bugfix release: handles specially crafted MP3 files (#259255) * Stupid mistake: the RSS idea came from Soren Hansen 0.99.2 * Added first RSS feed support * Cache versionning support * Switch to XHTML 1.1 * Added FLAC support * Fix : display size when requested 0.99.1 * CODE CLEANUP RELEASE * flags cleanup * treat_args cleanup * move some HTTP stuff from playlist.c to mod_musicindex.c * new code for header display (#if 0'ed atm) * prepare for latter inclusion of RSS patch 0.99.0 * THE one with big changes (bumped from 0.9.7 to 0.99.0) * Only check we can read cover files, don't open them (html.c) * Generated pages rework : - Switch to XHTML 1.0 Strict - No more table in the header - No more table in the footer - Diverse minor XHTML/CSS cleanups - CSS should now be valid * First implementation of custom cross-directories playlists * Merge of the two functions to generate playlists * Simplification of call to generate pages * Removal of useless defined values * Configuration change : use of On/Off-type parameters to enable/disable features with .htaccess files. * Reworked sort system. * Autodetect present CSS and make them available * Possibility to choose the default CSS file * Better use of AllowOverride options * Do not display stream buttons if Stream is disabled * Next release should be 1.0! 0.9.7 * Hopefully, new apache2 bug in Suse 9.0 fixed 0.9.6 * Fixed a segfault when streaming with apache2 * Fixed the module signature in apache2 * If the icecast hostname is missing, the URL hostname will be assumed 0.9.5 * There was no 0.9.[3-4], too much rework * Deep rewrite and split of the code * We now use arrays of function pointers to deal with different file types * Stricter function pointers declarations * Cache subsystem has been rewritten to behave as a file handler itself * Hard coded string length in mu_ent_names struct * Makefile now autogenerates dependencies (quit roughly though) 0.9.2 * Possibility to use an external icecast server for streaming * Moved file closing inside make_mp3_entry() * Merge of handle_mp3 and handle_ogg to handle_musicfile * Bugfix in decoding mp3 genre number in brackets * Alternative optimized mp3 genre number detection * Some variable scope declarations optimisations * More Apache2 tweaks * More cleanups and code rewrites * Added support for gif file as cover image * Added favicon * Added LGPL license and copyright to README * README update 0.9.1 * Merged makefiles * Cache bugfix in cache_remove_dir() * Sorting bugfix in inf_global() * Directory shuffle bugfix in send_directories() * Improved sorting of search results * Got rid of ascii2uri() in html.c * First attempt at a better handling of stream requests * Various code rewrites and cleanups 0.9.0 * Apache2 ready * Cache bugfix on BSD systems (EPERM vs EISDIR) * playlist.c code rewrite (merged 2 funcs) * Code janitorial (got rid of deprecated ap_log func) 0.8.10 * Preparing gettext compat 0.8.9 * Preparing Apache 2 compat * Minor code rewrites * Removed extra includes * Moved new_ent() to playlist.c * New option to name root link * Reverted zlib change: libid3tag depends on it 0.8.8 * Field sorting in search results * Enhanced error reporting through Apache logs * Makefile rewritten to support OSX, Solaris and unknown OSes. * Minor code rewrites (OSX, Solaris) * Got rid of -lz 0.8.7 * Fix for cache locking problem * Fix empty fields initialisation from cache * Minor cleanups 0.8.6 * Added "genre" tag management 0.8.5 * Initial Freshmeat announcement * HTML 4.01 Strict * More bugfixes and improvements * First step in file handlers * Cache subsystem 0.7.8 * Switch to LGPL * Part Of a Set key added * New search result display * Bugfixes and functions rework 0.7.7 * Initial Release