From mboxrd@z Thu Jan 1 00:00:00 1970 Delivered-To: chneukirchen@gmail.com Received: by 10.49.85.105 with SMTP id g9csp47086qez; Sun, 6 Jan 2013 18:43:45 -0800 (PST) Return-Path: Received-SPF: pass (google.com: domain of rack-core+bncBD75LW742ECRBYHMVCDQKGQEGWWHWVA@googlegroups.com designates 10.50.163.66 as permitted sender) client-ip=10.50.163.66 Authentication-Results: mr.google.com; spf=pass (google.com: domain of rack-core+bncBD75LW742ECRBYHMVCDQKGQEGWWHWVA@googlegroups.com designates 10.50.163.66 as permitted sender) smtp.mail=rack-core+bncBD75LW742ECRBYHMVCDQKGQEGWWHWVA@googlegroups.com; dkim=pass header.i=@googlegroups.com X-Received: from mr.google.com ([10.50.163.66]) by 10.50.163.66 with SMTP id yg2mr6177522igb.0.1357526624938 (num_hops = 1); Sun, 06 Jan 2013 18:43:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20120806; h=x-received:mime-version:x-beenthere:x-received:x-received :received-spf:x-received:message-id:date:from:to:subject :x-original-sender:x-original-authentication-results:reply-to :precedence:mailing-list:list-id:x-google-group-id:list-post :list-help:list-archive:sender:list-unsubscribe; bh=KSVygbnm3zpVcUI9MfPGhgDZjmAS7m53GHw79w1hDhc=; b=Yiy3OpbOdvfEqFC7MjJNWmbvq50Up0ETc4j6nShL8HZH+K159vAeVmygZ/Xv3+iVjV AnTGhhjMI6JkgEcBPif9bIbBATO5+IoZJiNxtJ0WW+1+HZYcf57vjFLH4/nKnvcd9GjD XnqnRkkAY58mny1IHm99wZOKHbcQdEE2oWd4WCuqBam51vJ81ZQJMIL6vi3Sso57VnmL b4w9+ZRAZ9fK4jn2gJSh71enZ089RnO9aXqSVsXngSGtIs81IgE1zhYIZ+5DEOQgw5Ij 25Ba5qkGH3dTN33IMZVYp5a9ItOEjgy1NBi5C+kL7wfCiVHEwI/L5s2d44myaXP6fw3F FMtw== X-Received: by 10.50.163.66 with SMTP id yg2mr1745189igb.0.1357526624672; Sun, 06 Jan 2013 18:43:44 -0800 (PST) MIME-Version: 1.0 X-BeenThere: rack-core@googlegroups.com Received: by 10.50.15.168 with SMTP id y8ls1304494igc.42.canary; Sun, 06 Jan 2013 18:43:44 -0800 (PST) X-Received: by 10.66.90.67 with SMTP id bu3mr10548704pab.45.1357526624484; Sun, 06 Jan 2013 18:43:44 -0800 (PST) X-Received: by 10.66.90.67 with SMTP id bu3mr10548702pab.45.1357526624473; Sun, 06 Jan 2013 18:43:44 -0800 (PST) Received: from mail-pb0-f44.google.com (mail-pb0-f44.google.com [209.85.160.44]) by gmr-mx.google.com with ESMTPS id uz6si12074521pbc.0.2013.01.06.18.43.44 (version=TLSv1/SSLv3 cipher=OTHER); Sun, 06 Jan 2013 18:43:44 -0800 (PST) Received-SPF: pass (google.com: domain of jftucker@gmail.com designates 209.85.160.44 as permitted sender) client-ip=209.85.160.44; Received: by mail-pb0-f44.google.com with SMTP id uo1so10301581pbc.17 for ; Sun, 06 Jan 2013 18:43:44 -0800 (PST) X-Received: by 10.68.135.99 with SMTP id pr3mr184578818pbb.151.1357526624384; Sun, 06 Jan 2013 18:43:44 -0800 (PST) Received: from localhost (c-67-180-21-214.hsd1.ca.comcast.net. [67.180.21.214]) by mx.google.com with ESMTPS id p10sm37776932pax.27.2013.01.06.18.43.42 (version=TLSv1/SSLv3 cipher=OTHER); Sun, 06 Jan 2013 18:43:43 -0800 (PST) Message-ID: <50ea365f.4a50420a.6396.ffff8319@mx.google.com> Date: Sun, 06 Jan 2013 18:43:43 -0800 (PST) From: jftucker@gmail.com To: ruby-talk@ruby-lang.org, rack-devel@googlegroups.com, rack-core@googlegroups.com Subject: [SEC][ANN] Rack 1.4.2, a modular Ruby webserver interface X-Original-Sender: jftucker@gmail.com X-Original-Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of jftucker@gmail.com designates 209.85.160.44 as permitted sender) smtp.mail=jftucker@gmail.com; dkim=pass header.i=@gmail.com Reply-To: rack-core@googlegroups.com Precedence: list Mailing-list: list rack-core@googlegroups.com; contact rack-core+owners@googlegroups.com List-ID: X-Google-Group-Id: 504757074975 List-Post: , List-Help: , List-Archive: Sender: rack-core@googlegroups.com List-Unsubscribe: , Hello, Today we are proud to announce the release of Rack 1.4.2. = Rack, a modular Ruby webserver interface Rack provides a minimal, modular and adaptable interface for developing web applications in Ruby. By wrapping HTTP requests and responses in the simplest way possible, it unifies and distills the API for web servers, web frameworks, and software in between (the so-called middleware) into a single method call. The exact details of this are described in the Rack specification, which all Rack applications should conform to. == Changes * January 6th, 2013: Twenty ninth public release 1.4.2 * Add warnings when users do not provide a session secret * Fix parsing performance for unquoted filenames * Updated URI backports * Fix URI backport version matching, and silence constant warnings * Correct parameter parsing with empty values * Correct rackup '-I' flag, to allow multiple uses * Correct rackup pidfile handling * Report rackup line numbers correctly * Fix request loops caused by non-stale nonces with time limits * Fix reloader on Windows * Prevent infinite recursions from Response#to_ary * Various middleware better conforms to the body close specification * Updated language for the body close specification * Additional notes regarding ECMA escape compatibility issues * Fix the parsing of multiple ranges in range headers * Prevent errors from empty parameter keys * Added PATCH verb to Rack::Request * Various documentation updates * Fix session merge semantics (fixes rack-test) * Rack::Static :index can now handle multiple directories * All tests now utilize Rack::Lint (special thanks to Lars Gierth) * Rack::File cache_control parameter is now deprecated, and removed by 1.5 * Correct Rack::Directory script name escaping * Rack::Static supports header rules for sophisticated configurations * Multipart parsing now works without a Content-Length header * New logos courtesy of Zachary Scott! * Rack::BodyProxy now explicitly defines #each, useful for C extensions * Cookies that are not URI escaped no longer cause exceptions == Where can I get it? You can download Rack at http://chneukirchen.org/releases/rack-1.4.2.tar.gz (upload pending at time of writing) http://rubyforge.org/projects/rack Alternatively, you can checkout from the development repository with: git clone git://github.com/rack/rack.git cd rack && git checkout rack-1.4 # for this release Happy hacking and have a nice day, James Tucker on behalf of the Rack Core Team. ad48e43b2206ae244485241ff2b3bc51f2d1a0d0 rack-1.4.2.tar.gz 201d642833ffca3485fdf9b16eaf0e43d2c69919 rack-1.4.2.gem