From: "Lin Jen-Shin (godfat)" Date: 2012-03-18T02:48:24+09:00 Subject: [ANN] rest-more 1.0.0 released # rest-more by Cardinal Blue Lin Jen-Shin ([godfat]) had given a talk about rest-core on [RubyConf Taiwan 2011]. The slide is in English, but the talk is in Mandarin. You can also read some other topics at [doc] [godfat]: https://github.com/godfat [RubyConf Taiwan 2011]: http://rubyconf.tw/2011/#6 [doc]: https://github.com/cardinalblue/rest-core/blob/master/doc/ToC.md ## DESCRIPTION: Various REST clients such as Facebook and Twitter built with [rest- core] [rest-core]: https://github.com/cardinalblue/rest-core ## INSTALLATION: gem install rest-more Or if you want development version, put this in Gemfile: gem 'rest-more', :git => 'git://github.com/cardinalblue/rest- more.git', :submodules => true ### SYNOPSIS: The simplest usage: require 'rest-more' RestCore::Twitter.new.statuses('_cardinalblue') # get user tweets RestCore::Github.new.get('users/cardinalblue') # get user info linkedin = RestCore::Linkedin.new(:consumer_key => '...', :consumer_secret => '...') linkedin.authorize_url! # copy and paste the URL in browser to authorize linkedin.authorize!('..') # paste your code from browser linkedin.me # get current user info RestCore::Facebook.new.get('4') # get user info Runnable example: https://github.com/cardinalblue/rest-more/blob/master/example/simple.rb Please see [slides] from [rubyconf.tw/2011] for concepts. [slides]: http://www.godfat.org/slide/2011-08-27-rest-core.html [rubyconf.tw]: http://rubyconf.tw/2011/#6 ## CHANGES: ### rest-more 1.0.0 -- 2012-03-17 ### Enhancement All clients are now asynchrony-aware. Asynchrony support is added in rest-core >=1.0.0. Whenever you pass a callback block, the response would then be passed to the block. Error handling is different, too. In synchronous style, usually an exception would be raised, but in asynchronous style, the exception would be passed to the block instead of being raised. * [`Dropbox`] Added Dropbox support. * [`Bing::Error`] Added `code` method to get the original error code. * [`Twitter::Error`] Added `code` method to get HTTP status code. * [`Facebook::Error`] Instead of passing `[true]`, pass error messages. * [`Facebook`] Pages related API is reimplemented. Passing a block would result a serious call to the callback block, ending with a nil. * [`Config`] Make sure the default attributes module is there even if the config file isn't presented.