The Shelf middleware that enables compression
Code based on Rack::Deflator. Currently supported compression algorithms:
- gzip
- deflate
- identity (no transformation)
Shelf::Builder.app do
use Deflator, include: 'text/html', if: ->(req, status, headers, body) { headers['Content-Length'] > 512 }
end
Add the line below to your build_config.rb
:
MRuby::Build.new do |conf|
# ... (snip) ...
conf.gem 'mruby-shelf-deflator'
end
Or add this line to your aplication's mrbgem.rake
:
MRuby::Gem::Specification.new('your-mrbgem') do |spec|
# ... (snip) ...
spec.add_dependency 'mruby-shelf-deflator'
end
Note: Compile file ZLIB_STATIC
flag if you want to static link with zlib. See the build_config.rb as an example.
Clone the repo:
$ git clone https://github.com/katzer/mruby-shelf-deflator.git && cd mruby-shelf-deflator/
Compile the source:
$ rake compile
Run the tests:
$ rake test
Bug reports and pull requests are welcome on GitHub at https://github.com/katzer/mruby-shelf-deflator.
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request
- Sebastián Katzer, Fa. appPlant GmbH
The mgem is available as open source under the terms of the MIT License.
Made with 😋 in Leipzig
© 2018 appPlant GmbH