CHANGES.md in jellyfish-0.6.0 vs CHANGES.md in jellyfish-0.8.0
- old
+ new
@@ -1,6 +1,77 @@
# CHANGES
+## Jellyfish 0.8.0
+
+### Incompatible changes
+
+* Now there's no longer Jellyfish#controller but Jellyfish.controller,
+ as there's no much point for making the controller per-instance.
+ You do this to override the controller method instead:
+
+``` ruby
+class MyApp
+ include Jellyfish
+ def self.controller
+ MyController
+ end
+ class MyController < Jellyfish::Controller
+ def hi
+ 'hi'
+ end
+ end
+ get{ hi }
+end
+```
+
+* You can also change the controller by assigning it. The same as above:
+
+``` ruby
+class MyApp
+ include Jellyfish
+ class MyController < Jellyfish::Controller
+ def hi
+ 'hi'
+ end
+ end
+ controller MyController
+ get{ hi }
+end
+```
+
+### Enhancements for Jellyfish core
+
+* Introduced Jellyfish.controller_include which makes it easy to pick
+ modules to be included in built-in controller.
+* Introduced Controller#halt as a short hand for `throw :halt`
+* Now default route is `//`. Using `get{ 'Hello, World!' }` is effectively
+ the same as `get(//){ 'Hello, World!' }`
+* Now inheritance works.
+* Now it raises TypeError if passing a route doesn't respond to :match.
+* Now Jellyfish would find the most suitable error handler to handle
+ errors, i.e. It would find the error handler which would handle the
+ nearest exception class in the ancestors chain. Previously it would
+ only find the first one which matches, ignoring the rest. It would
+ also cache the result upon a lookup.
+
+### Enhancements for Jellyfish extension
+
+* Added `Jellyfish::ChunkedBody` which is similar to `Sinatra::Stream`.
+
+* Added `Jellyfish::MultiAction` which gives you some kind of ability to do
+ before or after filters. See README.md for usage.
+
+* Added `Jellyfish::NormalizedParams` which gives you some kind of Sinatra
+ flavoured params.
+
+* Added `Jellyfish::NormalizedPath` which would unescape incoming PATH_INFO
+ so you could match '/f%C3%B6%C3%B6' with '/föö'.
+
+### Enhancements for Jellyfish::Sinatra
+
+* Now `Jellyfish::Sinatra` includes `Jellyfish::MultiAction`,
+ `Jellyfish::NormalizedParams`, and `Jellyfish::NormalizedPath`.
+
## Jellyfish 0.6.0 -- 2012-11-02
### Enhancements for Jellyfish core
* Extracted Jellyfish::Controller#call and Jellyfish::Controller#block_call