Commit Graph

479 Commits

Author SHA1 Message Date
Faustino Aguilar 4409f56ba7 404 responsive Kemal logo (#334)
Add responsive width to Kemal logo.
2017-03-17 11:16:38 +02:00
Serdar Dogruyol 1177619da9 Modiy HTTP::Params.[] to fetch all params (#328) 2017-03-13 16:52:42 +02:00
Sijawusz Pur Rahnama d0c034b911 Skip files with empty #size in ParamParser, fixes #309 (#333) 2017-03-12 19:30:30 +02:00
Sijawusz Pur Rahnama e0511743b1 Add getters to Route#{path,method} (#332) 2017-03-12 18:40:30 +02:00
Cris Ward 298a4b234b moved static file handler code to send_file (#330) 2017-03-12 14:38:47 +02:00
Sijawusz Pur Rahnama e276c0a278 Fix regression introduced in 1afb4cbfa8 (#331) 2017-03-12 14:37:23 +02:00
Cris Ward e6757d9a61 Added mime-type for favicons (#329) 2017-03-12 00:23:33 +02:00
Cris Ward 1c527c2d94 return no body for head route fixes #323 (#325) 2017-03-10 13:13:38 +02:00
Sdogruyol a430b85ee7 Remove Gzip hack since https://github.com/crystal-lang/crystal/issues/4060 is fixed 2017-03-07 19:47:39 +03:00
Sdogruyol 8331beceef Move Crystal core classes to ext 2017-03-04 00:01:26 +03:00
Sdogruyol 596452f838 More docs 2017-03-03 23:56:29 +03:00
Sdogruyol 7a772a9301 Improve docs 2017-03-03 23:42:08 +03:00
Brian J. Cardiff 25af53b70d apply :nodoc: only to Kemal::FileUpload instead of the whole Kemal (#320) 2017-03-02 12:15:48 +02:00
Sdogruyol d0e04918c3 Improve helper doc 2017-02-27 23:03:09 +03:00
Sdogruyol b91f8a87eb Improve helpers doc 2017-02-27 22:20:17 +03:00
Sdogruyol e6af97c256 Make static_file_handler#etag private 2017-02-27 19:21:14 +03:00
Sdogruyol 2fe27f0890 Make FilterBlock inner class of Kemal::FilterHandler 2017-02-27 19:10:49 +03:00
Sdogruyol c28abb987e Fix #316 caused by Crystal 2017-02-24 10:25:52 +03:00
Serdar Dogruyol b7ce53e5ab Crystal 0.21.0 support (#304)
Crystal 0.21.0 support
2017-02-21 21:24:11 +02:00
Tom Richards 54e501e964 path_starts_with... method naming (#310)
Fix name of path_starts_with_... utility method
2017-02-15 19:38:26 +02:00
Sdogruyol 9607083e59 Mark inner methods as private 2017-02-13 23:39:40 +03:00
Sdogruyol c6ff2c5d2e Move file_upload to namespace 2017-02-13 22:57:58 +03:00
Serdar Dogruyol 6fe57d5e78 Better file upload 2017-02-11 15:33:42 +02:00
Sdogruyol 72dc6cf775 Fix missing semicolon in kemal#run 2017-02-06 20:16:51 +03:00
Sdogruyol 476b27892e Early return from range if request type is not GET 2017-02-04 13:35:46 +03:00
Denys Vitali 0543142a10 Add RFC7233 support (#299)
Add RFC7233 support a.k.a "Range" headers support
2017-02-04 13:06:43 +03:00
Michael Barrett c08bf71d88 Allow for disabling the shutdown message (#292)
Allow for disabling the shutdown message
2017-01-18 15:55:33 +03:00
Michael Barrett 209a9e576c Add configurable startup logging as a block (#291)
Add overload for Kemal.run with just a block. This removes default logging.
2017-01-15 21:41:07 +03:00
Serdar Dogruyol 81a702264d HTTP::Handler is not a class anymore 2016-12-24 14:22:44 +03:00
Sdogruyol ac8ec0a07b Remove redundant session stuff 2016-12-10 19:34:46 +03:00
Sdogruyol e957664565 Don't forget debug statement :/ 2016-12-08 22:15:18 +03:00
Sdogruyol 9c1c832c9a Add Kemal.stop. Fixes #269 2016-12-08 13:50:54 +03:00
Sdogruyol 166fb96f34 Ugh we're not in ecr :/ 2016-12-04 16:35:37 +03:00
Sdogruyol fa4573dcf9 HTML.escape render_500 2016-12-04 16:27:40 +03:00
Sdogruyol 878c70e0d9 Make ssl api more idiomatic 2016-12-04 14:14:43 +03:00
Sdogruyol 274d34cfc6 Move filter methods to dsl 2016-12-04 01:47:09 +03:00
Sdogruyol eb64b52f84 Actually there's no middleware anymore 2016-12-04 01:43:30 +03:00
Sdogruyol 1afb4cbfa8 Use log instead 2016-12-04 01:27:26 +03:00
sdogruyol b4c10a3f59 Remove basic auth middleware 2016-11-26 21:51:06 +03:00
Sijawusz Pur Rahnama 13293a675d Add missing class keyword to docs (#264) 2016-11-26 13:07:32 +04:00
sdogruyol 92ea55773b Handle missing 404 image. Fixes #263 2016-11-25 22:19:23 +03:00
sdogruyol 1826789e84 Use body.gets_to_end for parse_json. Fixes #260 2016-11-25 10:45:25 +03:00
Serdar Dogruyol cc44710654 Remove session & csrf from core (#259)
Remove session & CSRF
2016-11-24 16:47:30 +04:00
sdogruyol 3b9a3f84ab Treat HTTP::Request body as IO. Fixes #257 2016-11-24 12:07:39 +03:00
sdogruyol f11b0e07e4 v0.17.0 2016-11-23 21:30:49 +03:00
sdogruyol 2248475573 Properly add status_code on exceptions. Fixes #255 2016-11-23 20:36:56 +03:00
sdogruyol 6b034c3b2f Rename MemoryIO to IO::Memory since it's deprecated on Crystal 0.20.0 2016-11-22 23:29:10 +03:00
sdogruyol 733582f724 No need for require though 2016-11-19 00:11:35 +03:00
sdogruyol 23cd325def Move some stuff to Utils 2016-11-19 00:05:22 +03:00
Serdar Dogruyol bc764b7af7 Treat body as IO in param_parser (#252) 2016-11-16 22:09:50 +04:00
sdogruyol 012ac8f6b7 Yield error in custom error handlers 2016-11-16 20:27:01 +03:00
sdogruyol d3eea1d9ab Rename to FilterBlock 2016-11-10 23:54:25 +03:00
sdogruyol 8ec9ed8331 Improve docs 2016-11-10 16:38:29 +03:00
sdogruyol ddc92c44e0 Move Kemal::Handler from ext folder 2016-11-10 14:56:05 +03:00
Serdar Dogruyol ec11698ab1 Only / Exclude Paths in Middleware (#245)
Add only / exclude paths in Middlewares
2016-11-09 19:18:39 +04:00
Sam Eaton 7688bd13a5 Close repsonse on halt (#246) 2016-11-07 23:31:36 +04:00
sdogruyol 4267a5eea9 Set default exception Content-Type to text/html. Fixes #202 2016-11-06 11:58:18 +03:00
sdogruyol 87d88318de Rename to Kemal::Exceptions::InvalidPathStartException 2016-11-04 11:49:11 +03:00
sdogruyol e6810c4516 Route declaration must start with / fixes #242 2016-11-04 11:12:59 +03:00
sdogruyol 7dd834ad28 Fix broken websocket routing :/ 2016-11-02 11:19:48 +03:00
sdogruyol d676b559d2 Rename return_with as halt for clear intention 2016-11-01 11:46:13 +03:00
Serdar Dogruyol 922d6de4d1 Middleware ordering (#236)
Improve and correct request middleware

 Request -> Middleware -> Filter -> Route
2016-10-28 11:35:34 +03:00
sdogruyol 1b27f5c011 Add Int64 type to context store 2016-10-24 16:12:29 +03:00
Sam Eaton 375259f34c Replace implementation with more appropriate URI.unescape (#231) 2016-10-19 11:30:58 +03:00
Sam Eaton e43b2a3a01 Decodes url parameters (#229)
Decode url parameters
2016-10-18 16:28:42 +03:00
Sdogruyol 5d71c76554 Don't nest lines with unless. Fixes #225 2016-10-13 22:09:06 +03:00
Serdar Dogruyol 3342007701 Yield UploadFile in parse_multipart (#224) 2016-10-12 16:51:28 +03:00
Sam Eaton 875032f0dc removes Content-Type response header if the file is cached
The content-type currently defaults to text/html, which is inaccurate
because no content is being returned. Google, and many popular CDNs
omit the Content-Type header for 304 response.
2016-10-11 15:51:37 -06:00
sdogruyol 7efe69ac31 Add multipart support <3 2016-10-01 18:18:28 +03:00
Sdogruyol ad9790b9d8 Update session doc 2016-09-30 14:03:29 +03:00
Sdogruyol e2c99bcfb8 Remove array support from session for now 2016-09-30 14:03:29 +03:00
Sdogruyol a8e53fb94e Session also supports arrays 2016-09-30 14:03:29 +03:00
Sdogruyol 8c600cb26e Make session name and expire time configurable 2016-09-30 14:03:29 +03:00
Sdogruyol 6d4bf575cb Make session accept more types 2016-09-30 14:03:29 +03:00
sdogruyol cf2144636d Update CHANGELOG 2016-09-20 20:32:09 -03:00
Aurelien Louis Dit Picard 39cfe14811 Adding port to Kemal#run (#208)
Adding port to Kemal#run
2016-09-20 20:27:35 -03:00
Serdar Dogruyol d41ad90826 Merge pull request #204 from crisward/master
gzip for static files
2016-09-18 13:03:54 +03:00
Cris Ward a8cc4f4177 gzip static files options dir listing and etags
format
2016-09-18 01:46:16 +01:00
maiha b2e81e6bc1 Disable ssl when `-D without_openssl` is given 2016-09-16 23:34:23 +09:00
sdogruyol 4cd30839a5 Add gzip helper to enable/disable HTTP::DeflateHandler 2016-09-15 19:35:34 +03:00
sdogruyol 7c8915bfa4 Don't forget to call_next on NullLogHandler 2016-09-05 17:56:16 +03:00
sdogruyol 64d3271fb2 Make HTTP::Server uninitialized instead of HTTP::Server? 2016-09-05 10:38:00 +03:00
sdogruyol 0a11a1aee9 Don't overried env unless KEMAL_ENV is explicily set 2016-09-02 15:18:26 +03:00
Cris Ward 6280af2e40 added mime types (#195)
* added mime types

Added some mime type for images. Very new to crystal so hopefully this is ok.
Without this they default to octet, which just does a download

* jpg to jpeg
2016-08-19 17:49:29 +03:00
Sdogruyol 849eda06c8 Don't round to seconds/minutes in CommonLogHandler 2016-08-14 14:52:50 +03:00
Sdogruyol ad571db682 Rename view.cr to templates.cr and move it under helpers 2016-08-13 17:43:18 +03:00
Sijawusz Pur Rahnama a6678f6622 Use String#starts_with? instead of String#[]? (#194)
It shows real intention and covers cases when `application/json` is passed in the middle of the string, like `some_garbage_string; application/json`
2016-08-12 22:17:57 +03:00
Sijawusz Pur Rahnama 28859fbdb8 Fix parsing JSON params when "charset" is present in "Content-Type" header (#193)
Resolves case when `Content-Type` headers is passed in form of `application/json; charset=utf-8`
2016-08-11 22:29:29 +03:00
Sdogruyol d4e96c7b44 Add spec for send_file binary 2016-08-08 21:49:47 +03:00
Sijawusz Pur Rahnama 31cc9fbff4 Add send_file helper variation for sending raw data (#188)
Add send_file helper variation for sending raw data

* Use Response#content_type=

* Fix docs
2016-08-08 21:15:43 +03:00
Sijawusz Pur Rahnama 4397a3c7fd Use Response#content_type= 2016-08-08 04:17:58 +02:00
Rayner De Los Santos F 0b92a7fd6c Use http-only cookie for session 2016-08-02 23:41:45 -04:00
sdogruyol e5a9035a61 Add doc to CommonLogHandler 2016-08-02 13:39:01 +03:00
Sdogruyol 1705852f25 Inject STDOUT by default in CommonLogHandler 2016-08-01 23:21:19 +03:00
Sdogruyol 98efbfe341 Improve logging and specs 2016-07-28 21:12:55 +03:00
Sdogruyol 676ed2aa67 Use send_file in built-in image handler 2016-07-19 21:05:49 +03:00
Sdogruyol 5e297d86f8 Add send_file to helpers 2016-07-19 20:58:04 +03:00
Sdogruyol b00bc7a202 Add next handler to init_handler_spec 2016-07-17 20:42:00 +03:00
Sdogruyol d1c788f065 Don't override content_type in Kemal::InitHandler if it's already set 2016-07-17 20:23:45 +03:00
Sdogruyol 646edb24ca Set Content-Type after call_next in Kemal::InitHandler 2016-07-17 19:04:03 +03:00
Sdogruyol 3e3200e23e Oops, forgot call_next(context) on Kemal::InitHandler 2016-07-17 18:15:12 +03:00
Sdogruyol 09d9e708f1 Introduce Kemal::InitHandler to initialize HTTP::Server::Context with defaults 2016-07-17 18:11:26 +03:00
Sdogruyol 725e051723 Document helpers 2016-07-17 17:06:49 +03:00
Sdogruyol f7484d14d3 Use nested module declaration 2016-07-17 14:43:13 +03:00
Sdogruyol 4edebcf8eb Format 2016-07-17 14:31:45 +03:00
Sdogruyol 6ffa4af0e1 Remove redundat http require and move it to kemal.cr 2016-07-17 14:28:21 +03:00
Sdogruyol d11b702ee4 More docs 2016-07-17 14:26:22 +03:00
Sdogruyol 8aab44f7cd Fix typo 2016-07-17 14:13:05 +03:00
Sdogruyol b5ff93c677 Add docs 2016-07-17 14:10:56 +03:00
Sdogruyol 09d82ed74b Add context store 2016-07-14 21:56:01 +03:00
sdogruyol dee1d1c58b Make macro variables local 2016-07-13 16:24:25 +03:00
sdogruyol fb5ac9e0b6 Don't remove #write from common_log_handler 2016-07-13 14:42:41 +03:00
Sdogruyol e6e70fe222 Don't load unless caller and content matches for content_for 2016-07-10 15:01:00 +03:00
Sdogruyol ce2ffed705 Don't yield content if there's not any content_for it 2016-07-10 13:24:38 +03:00
Sdogruyol f3175bdb72 Split helpers.cr into helpers/macros.cr and helpers/helpers.cr 2016-07-10 13:03:09 +03:00
Sdogruyol daac09a859 Add doc for content_for 2016-07-10 13:00:13 +03:00
Sdogruyol 21b194a901 Add content_for and yield_content helpers <3. Thanks @RX14 2016-07-09 19:54:35 +03:00
Sdogruyol 73d6123f3d WIP 2016-07-09 18:57:35 +03:00
Sdogruyol 3ea6a01afc Remove file handler from CommonLogHandler. Log only to STDOUT. Fixes #159 2016-07-05 22:14:00 +03:00
Sdogruyol 9d84d51975 No need to rewind STDOUT and File handler in CommonLogHandler 2016-07-05 20:15:36 +03:00
Sdogruyol ae25d0a774 Optimize CommonLogHandler to directly use the handler instead of string interpolation 2016-07-05 20:11:03 +03:00
Sdogruyol 20a174b66e Add extra_options from CLI 2016-07-04 20:23:16 +03:00
Sdogruyol 2c0dc7fa63 Read env from KEMAL_ENV instead of -e. Fixes #168 2016-07-03 23:49:16 +03:00
Sdogruyol 19581d6e3e Improve common_exception_handler to handler custom 500 errors. Fixes #175. 2016-07-03 11:13:29 +02:00
Mike Perham 22d6c1773e Remove HTTP prefix, this is a Rack impl convention, not a standard. 2016-06-29 14:52:47 -07:00
Mike Perham 8f5736a057 Need to initialize the session token or forms won't render 2016-06-28 16:46:45 -07:00
Mike Perham e407d0195c Implement CSRF protection
This adds a middleware which, when activated, will deny any form submission which does not include a valid `authenticity_token` parameter or `http-x-csrf-token` header with the request.

The header and parameter names are identical to the ones supported by Ruby's rack-protection gem for interoperability purposes.
2016-06-28 15:50:43 -07:00
Mike Perham 46b4dc6524 Add Session#delete, more docs 2016-06-27 16:24:03 -07:00
Mike Perham 94db0c8cb8 Implement basic in-memory session store
Sessions are stored in a non-persistent Hash.  Only String values are allowed.  A reaper fiber regularly removes any sessions which expire due to inactivity.
2016-06-27 14:37:40 -07:00
Sdogruyol 0c46bd65da Add X-Powered-By header 2016-06-19 03:22:55 +03:00
Matthew Gerrior fbbb43dcab Add "headers" helper to make it easier to add headers to response. 2016-06-16 10:33:38 -04:00
sdogruyol f92d812c32 Format 2016-06-15 08:58:14 +03:00
Omar Roth ac4a5afc05 Fix ssl and specs for 0.18 2016-06-14 16:18:00 -05:00
Matthew Gerrior d1f9c4394b Opt for built-in HTTP::Params class instead. 2016-06-14 07:32:13 -04:00
Matthew Gerrior a5e4bc21f3 Allow multiple values for a single parameter key. 2016-06-11 16:52:07 -04:00
sdogruyol c9b206d1d6 Remove unnecessary type annotations 2016-05-22 23:34:37 +03:00
sdogruyol b3ebf40201 Cache request url_params 2016-05-21 15:03:34 +03:00
Sdogruyol 67abb5fff3 Allow 404 error handler to be customizable 2016-05-15 14:58:09 +03:00
Sdogruyol 92d7273759 Inherit response.content type from filter if it's given. Fixes #146. 2016-05-14 11:07:19 +03:00
Ben Jolitz b73802df0e resolve merge conflict by trusting sdogruyol/master RE property listings 2016-05-07 17:22:08 -07:00
Ben Jolitz 108e732274 rename on_options -> extra_options 2016-05-07 17:18:42 -07:00
Sdogruyol 53df88b9fb Update filters to dont care about block return type 2016-05-06 21:03:24 +03:00
sdogruyol 3b402586f8 Make error handlers also work for filters 2016-05-06 14:08:34 +03:00
sdogruyol 09439dd437 Remove unnecessary views 2016-05-05 23:54:25 +03:00
sdogruyol 12ec74e923 Add instance types for Crystal 0.16.0 2016-05-05 23:35:53 +03:00
sdogruyol 76b5add665 Don't write to context in case of an exception 2016-05-05 23:22:58 +03:00
sdogruyol 6611b976a9 Improve exception handler 2016-05-05 23:12:17 +03:00
sdogruyol e6d9311895 Start implementing error block 2016-05-05 22:35:36 +03:00
sdogruyol 35239dfaa0 Improve config semantics 2016-05-03 21:11:35 +03:00
Sdogruyol e077d17943 Remove colorize from common exception handler 2016-04-18 22:17:55 +03:00
Sdogruyol 456724f8e4 Remove colorize from common log handler 2016-04-18 22:16:41 +03:00
Sdogruyol 18efc4601f Add more documentation 2016-04-18 21:40:48 +03:00
Sdogruyol a8ecbde222 Merge branch 'instance-vars' 2016-04-17 00:04:53 +03:00
sdogruyol 2b9152ff79 Update instance types 2016-04-13 11:00:02 +03:00
sdogruyol 40ab34c63d All specs passing 2016-04-12 20:00:37 +03:00
sdogruyol b4bc818490 Update handler 2016-04-12 17:35:29 +03:00
sdogruyol c47c9488fe Return string from context 2016-04-12 17:15:43 +03:00
sdogruyol 05e44e68c6 Updating to instance types 2016-04-12 14:41:09 +03:00
Jerome Gravel-Niquet e407f52897 Only set @logger when not previously set
This came in contradiction with the docs.
2016-04-11 10:54:59 -04:00
Sdogruyol 65d0af5b5f Update config to use uninitialized server 2016-04-09 17:33:17 +03:00
Sdogruyol b32099e13b Move server from local scope to config 2016-04-09 17:20:39 +03:00
Sdogruyol 0eb7638b1b Remove redundant at_exit hook 2016-04-09 17:17:11 +03:00
Ben Jolitz 1f809c68c8 Support additional options as part of the Config
This commit adds the ability to add a closure suitable for adding
additional options. It is expected to allow someone to set global,
module or class level variables so they can pass changes/options
suitable for making decisions.
2016-03-30 13:33:51 -07:00
Fatih Kadir Akın 8110788a41 Added return_with macro to break response in the middle of the block. 2016-03-30 00:48:58 +03:00
Serdar Dogruyol 7b1bc43a41 Update dsl.cr 2016-03-23 14:45:18 +02:00
sdogruyol be418feaf3 Fix WebSocketHandler 2016-03-23 13:21:19 +02:00
Filip Defar a8ff776b49 Don't convert host_binding to slice when instantiating server 2016-03-22 21:20:21 +01:00
Sdogruyol fd904cd98d 0.11.0 2016-03-19 15:15:44 +02:00
Sdogruyol 664673f125 Set content-type to text/html on errors.Fixes #130 2016-03-18 20:03:04 +02:00
Fatih Kadir Akın 8402f06bc3 Show backtrace in 500 statuses using `inspect_with_backtrace` 2016-03-08 13:43:46 +02:00
Serdar Dogruyol a194bebe31 Merge pull request #123 from f/master
Upgrade ParamParser to make it more convinient.
2016-03-07 13:41:24 +02:00
Fatih Kadir Akın 043d1c8aa2 Add memoization to lazy param parsing 2016-03-07 11:21:37 +02:00
Fatih Kadir Akın 4ee4b66135 Make the param getters lazy to improve performance 2016-03-06 22:29:23 +02:00
Fatih Kadir Akın 42deb95688 Remove merged params to improve performance 2016-03-06 21:46:35 +02:00
Fatih Kadir Akın 53d12534b7 Remove ParamContainer abstraction to make it faster. 2016-03-06 21:43:13 +02:00
Sdogruyol e3c3154006 Make sure to instantiate null log handler 2016-03-06 20:16:51 +02:00
Fatih Kadir Akın e53ba1d9da Decouple ParamContainer which makes the code cleaner, and fix kemal.cr
url -- by @sdogruyol
2016-03-06 14:08:59 +02:00
Fatih Kadir Akın 8267ffe2c5 Upgrade ParamParser to make it more convinient.
It now decouples `env.params` to `env.params.query`, `env.params.body`,
`env.params.json` and `env.params.url` and you still can access merged
values using `env.params.all`
2016-03-06 13:22:24 +02:00
Joris Moriau 04ccb973a9 set positions for errors and logger middleware, added 2 views 2016-03-03 21:23:04 +01:00
Armin Pašalić 6759fb2373 Add options to the DSL
As in https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.2 and because it's a nice way to document API
2016-02-25 17:38:57 +01:00
Joris Moriau 8f6b00ba55 decoupled-urlparams-from-routehandler 2016-02-19 12:45:25 +01:00
Joris Moriau e6d1da6dd2 added small feature 2016-02-17 20:56:19 +01:00
sdogruyol 5a58ee3cbb Format code 2016-02-17 11:52:13 +02:00
Joris Moriau c5201f01ad added verb for filters and minor improvements 2016-02-17 10:34:01 +01:00
Jerome Gravel-Niquet 69b836a98a use new Kilt 0.3 syntax, add mention in readme for clarity 2016-02-15 12:09:33 -05:00
Joris Moriau ed769ad700 added configure serve_static 2016-02-15 12:59:26 +01:00
Jerome Gravel-Niquet 9404fa5c80 Abstract template engines with Kilt 2016-02-14 13:37:55 -05:00
Sdogruyol 8c87a3fa67 Replace global macros with methods. Thanks @asterite 2016-02-14 18:52:49 +02:00
Sdogruyol 092f5a2e49 Improve kemal.cr 2016-02-14 15:15:52 +02:00
Joris Moriau f5b5260ab9 fixed small redundancy. 2016-02-14 13:57:51 +01:00
Joris Moriau f7975d917d decoupled errors from route-handler 2016-02-14 12:52:32 +01:00
Sdogruyol 88aa9cd497 Remove call_next from RouteHandler 2016-02-14 11:02:16 +02:00
sdogruyol 8f5bc755ae Add logger macro to easily setup custom log_handler 2016-02-12 16:09:15 +02:00
sdogruyol 3c75d727ba Complete decoupling logger 2016-02-12 14:11:34 +02:00
Joris Moriau 3aa22e11c0 - add_filters no longer needs to be called explicitly it will be lazily called if needed.
- the Filter middleware no longer needs to be the first in the handlers array.
- before and after methods will raise an exception if a filter for the requested path is already defined.
2016-02-12 12:03:38 +01:00
sdogruyol 454894820d Fix config 2016-02-12 10:22:52 +02:00
Sdogruyol 850af8819e Start decoupling logger 2016-02-11 23:26:47 +02:00
Sdogruyol ffc3d6d224 Don't require yaml 2016-02-10 22:02:10 +02:00
Sdogruyol 9de66e2a60 Update CLI wording 2016-02-10 21:58:32 +02:00
TSUYUSATO Kitsune 0f86e59db6 Cache Context#params result 2016-02-10 02:11:18 +09:00