ESI middleware implementation for Rack. This middleware is currently reimplemented to run commands in parallel and fetch with curb.
Switch branches/tags
Pull request Compare This branch is 15 commits behind boof:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib
test
.document
.gitignore
LICENSE
README.markdown
Rakefile
VERSION

README.markdown

rack-esi

Nokogiri based ESI middleware implementation for Rack with (limited) support for include, remove and comment.

Features

  • path blacklisting (:skip => nil, expects Regexp)
  • type whitelisting (:only => /^text/(?:x|ht)ml/)
  • recursion limit (:depth => 5)
  • include limits (:includes => 32)
  • support for <include> alt and noerror attributes

It's for development purpose...

Installation

gem install rack-esi

Rails Setup (environment.rb)

config.gem 'rack-esi'
require 'rack-esi'
config.middleware.insert_before config.middleware.first, Rack::ESI

TODO

  • write documentation
  • write more tests
  • support more ESI elements
  • switch to Nokogiri::XML::SAX::Document?

Dependencies

  • Nokogiri
  • Rack

Note on Patches/Pull Requests

  • Fork the project.
  • Make your feature addition or bug fix.
  • Add tests for it. This is important so I don't break it in a future version unintentionally.
  • Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
  • Send me a pull request. Bonus points for topic branches.

Thanks

tenderlove and Qerub

Copyright

Copyright (c) 2009 Florian Assmann. See LICENSE for details.