=== 0.3.1 / 2010-02-13 09:38 UTC This release fixes a memory leak in the optional C extension due to misuse of the Ruby C API. Users of the pure Ruby version are unaffected. === 0.3.0 / 2010-02-09 22:04 UTC You may now force the :reentrant flag to +true+ or +false+ in your Rack configuration file: use Clogger, :format => Clogger::Format::Combined, :logger => ::File.open("/path/to/log", "ab"), :reentrant => true This is to be compatible with Rack servers that do not use use events or Fibers for concurrency instead of threads. By default, reentrancy is enabled if env["rack.multithread"] is true, but "rack.multithread" cannot indicative of a reentrancy requirement in a web server. === 0.2.0 / 2010-01-07 02:03 UTC The optional C extension no longer tries to preserve the original response array as it could become subtly broken by people using non-frozen but constant responses. For the pure Ruby version, there is a 1.9-encoding bugfix for response size calculation. === 0.1.0 / 2009-10-06 20:49 UTC This release should help ensure compatibility with a to-be-released version of Rack::Lint that allows subclasses of the core String and Hash objects for users of the optional C extension. Eric Wong (6): ext: convert non-Hashes #to_hash if possible ext: ensure all objects we byte_xs are Strings tests for subclassing gemspec: disable the license= field for older RubyGems GNUmakefile: fix grammar FAIL in comment cleanup packaging and website/rdoc === 0.0.7 / 2009-09-09 17:13 UTC We now properly handle bodies that do not respond to the :close method. Additionally there small documentation/formatting fixes. === 0.0.6 / 2009-09-07 23:59 UTC "clogger_ext" is no longer a separate gem, but merged into the "clogger" gem itself. The installation should automatically detect compatible versions of Ruby and only build the C extension for MRI 1.8/1.9. Rack::Utils::HeaderHash is now used for $sent_http_* variable lookups instead of a hand-rolled solution. HeaderHash objects should be reusable in Rack soon to avoid the penalty of recreating them repeatedly in middlewares and hopefully more-widely used as a result. Underlying logger objects are sync=true for safety reasons. This has always been the case for the C extension version when writing to regular files. Other small changes include more CGI variables and the :ORS (output record separator) option added (default: "\n"). === 0.0.5 / 2009-09-03 01:45 UTC The following variables are now exposed: $request_method, $content_length and $content_type. Additionally, attempts to use $http_content_length or $http_content_type will be remapped to use the non-"$http_"-prefixed variable instead since the "$http_"-variants of those variables is not allowed by Rack. === 0.0.4 / 2009-09-02 08:04 UTC The pure Ruby version now escapes with uppercase A-F characters to match nginx log output. There are now extra checks against badly behaving Rack applications and 500 errors will be logged before TypeError is raised if the application response does not conform (minimally) to Rack expectations. Finally, handling of $request (requests without "HTTP_VERSION" set in the Rack env) should now be logged correctly without unnecessary trailing characters. Hackers: the primary git repository has been moved to git://git.bogomips.org/clogger.git for now since I'm having issues with pushing to Rubyforge (seems related to Support Requests item #26185). === 0.0.3 / 2009-08-29 23:20 UTC The MRI extension clogger_ext gets GC bug fix and cleanups/robustness improvements. It should now be more tolerant of misbehaving applications in that it'll be less likely to segfault. No changes to the (recommended) pure implementation. === 0.0.2 / 2009-08-29 20:53 UTC The $request_uri variable (as documented in the README) is now implemented. Those using C extension could potentially segfault if the app returned an invalid response; we now log 500 errors in their place. === 0.0.1 / 2009-08-29 04:47 UTC initial release