Repository navigation
0.4.0 2019-07-17
Pre-release
Pre-release
Added
- BREAKING: Middlewares have to be named when used (11):
use :cookies, Rack::Session:Cookie, secret: 'my_secret', key: 'foo'- BREAKING: Middlewares have to be initialized when composed (11):
use :pipe, PipeWithMiddlewares.new- BREAKING: The array of injected plugs is now scoped within a
plugs:kwarg (11):
App.new(plugs: { nothing: ->(conn) { conn } })- Middlewares can be injected (11):
App.new(middlewares: { cache: [MyMiddleware, my_options] })- DSL helper method
composeto add middlewares and plugs in order and in a single shot (12):
class App
include WebPipe.(container: Container)
use :first, FirstMiddleware
plug :first_plug, 'first_plug'
end
class AnotherApp
include WebPipe.(container: Container)
compose App
# Equivalent to:
# use App.new
# plug &App.new
use :second, SecondMiddleware
plug :second_plug, 'second_plug'
end