From: Matt Todd Date: 2008-06-27T06:00:03+09:00 Subject: [ANN] Halcyon 0.5.1 Released! Halcyon version 0.5.1 has been released! == DESCRIPTION Halcyon is a framework for developing service-oriented applications. == ANNOUNCEMENT Halcyon has undergone minor improvements and bug fixes, including a new configuration system and before/after filters for controllers. == CHANGES * major refectoring of the app configuration system [#38 resolved] * new boot process with better flexibility [#41 resolved] * hooks system cleaned up (part of [#41]) * before/after filters implemented [#42 resolved] * standard responders (ok and not_found) accept headers hash [#45 resolved] * YAML config files are now filtered through ERB first [#48 resolved] * generating apps config files (config/init.rb) instead of YAML [#52 resolved] * JSON-P support included (as Rack middleware) [#47 resolved] (Flinn Mueller) * fixed major Windows-based bug (FloatDomainError) [#46 resolved] == SYNOPSIS A great example of an SOA is the Twitter API service, accessed via sending requests to URLs and parsing the data returned. Halcyon utilizes the widely used HTTP protocol and JSON format for handling requests and responses, making its overall footprint light and sending complex data trivial. Halcyon is built on top of Rack which means it can be folded into existing Rack application stacks, can be run on any kind of server supported (including Thin, Mongrel, etc), and provides a great deal of flexibility for injecting functionality. Several example applications exist within the repository. Check them out at http://github.com/mtodd/halcyon/tree/master/examples/. == INSTALLATION Halcyon can be installed with RubyGems with: $ sudo gem install halcyon The latest development gem can be downloaded from with: $ sudo gem install halcyon --source=http://halcyon.rubyforge.org/latest/ If you're feeling adventurous, you can also clone the repository and install directly from the Rake task: $ git clone git://github.com/mtodd/halcyon.git $ cd halcyon; rake install NOTE: Because of platform limitations with dependencies, Halcyon by default only ensures that the JSON pure-Ruby variant is installed. To install the faster C-based extension, try: $ sudo gem install json == DOCUMENTATION Halcyon has been under a complete overhaul of its documentation (and is still being worked on). New articles have been written for getting started, writing controllers, defining routes, etc, and even more advanced topics have been touched on (or are planned), such as integrating databases into the development of your application as well as taking full advantage of the Rack features. Check out the documentation at http://halcyon.rubyforge.org/docs/ == LICENSE Copyright (c) 2007-2008 Matt Todd . Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. http://www.opensource.org/licenses/mit-license.php