All Versions
44
Latest Version
Avg Release Cycle
414 days
Latest Release
689 days ago

Changelog History
Page 3

  • v1.3 Changes

    ๐Ÿ†• New methods:

    • OAuth#url_for_dialog creates URLs for Facebook dialog pages
    • API#set_app_restrictions handles JSON-encoding app restrictions
    • GraphCollection.parse_page_url now exposes useful functionality for non-Rails apps
    • โœ… RealtimeUpdates#subscription_path and TestUsers#test_user_accounts_path are now public

    โšก๏ธ Updated methods:

    • ๐Ÿ‘€ REST API methods are now deprecated (see http://developers.facebook.com/blog/post/616/)
    • OAuth#url_for_access_token and #url_for_oauth_code now include any provided options as URL parameters
    • APIError#raw_response allows access to the raw error response received from Facebook
    • ๐Ÿ—„ Utils.deprecate only prints each message once (no more spamming)
    • API#get_page_access_token now accepts additional arguments and HTTP options (like other calls)
    • โšก๏ธ TestUsers and RealtimeUpdates methods now take http_options arguments
    • All methods with http_options can now take :http_component => :response for the complete response
    • ๐Ÿ‘‰ OAuth#get_user_info_from_cookies returns nil rather than an error if the cookies are expired (thanks, herzio)
    • โœ… TestUsers#delete_all now uses the Batch API and is much faster

    Internal improvements:

    • FQL queries now use the Graph API behind-the-scenes
    • Cleaned up file and class organization, with aliases for backward compatibility
    • โž• Added YARD documentation throughout
    • ๐Ÿ›  Fixed bugs in RealtimeUpdates, TestUsers, elsewhere
    • Reorganized file and class structure non-destructively

    โœ… Testing improvements:

    • โœ… Expanded/improved test coverage
    • โœ… The test suite no longer users any hard-coded user IDs
    • ๐Ÿ‘‰ KoalaTest.test_user_api allows access to the TestUsers instance
    • ๐Ÿ”ง Configured tests to run in random order using RSpec 2.8.0rc1
  • v1.2.1 Changes

    ๐Ÿ†• New methods:

    • RestAPI.set_app_properties handles JSON-encoding application properties

    โšก๏ธ Updated methods:

    • ๐Ÿ‘‰ OAuth.get_user_from_cookie works with the new signed cookie format (thanks, gmccreight!)
    • Beta server URLs are now correct
    • OAuth.parse_signed_request now raises an informative error if the signed_request is malformed

    Internal improvements:

    • Koala::Multipart middleware properly encoding nested parameters (hashes) in POSTs
    • โšก๏ธ Updated readme, changelog, etc.

    โœ… Testing improvements:

    • โœ… Live tests with test users now clean up all fake users they create
    • โœ‚ Removed duplicate test cases
    • โœ… Live tests with test users no longer delete each object they create, speeding things up
  • v1.2 Changes

    ๐Ÿ†• New methods:

    • API is now the main API class, contains both Graph and REST methods
      • Old classes are aliased with deprecation warnings (non-breaking change)
    • โšก๏ธ TestUsers#update lets you update the name or password of an existing test user
    • API.get_page_access_token lets you easily fetch the access token for a page you manage (thanks, marcgg!)
    • โž• Added version.rb (Koala::VERSION)

    โšก๏ธ Updated methods:

    • ๐Ÿ“œ OAuth now parses Facebook's new signed cookie format
    • API.put_picture now accepts URLs to images (thanks, marcgg!)
    • ๐Ÿ“œ Bug fixes to put_picture, parse_signed_request, and the test suite (thanks, johnbhall and Will S.!)
    • Smarter GraphCollection use
      • Any pageable result will now become a GraphCollection
      • Non-pageable results from get_connections no longer error
      • GraphCollection.raw_results allows access to original result data
    • โœ… Koala no longer enforces any limits on the number of test users you create at once

    Internal improvements:

    • ๐Ÿ‘€ Koala now uses Faraday to make requests, replacing the HTTPServices (see wiki)
      • Koala::HTTPService.http_options allows specification of default Faraday connection options
      • Koala::HTTPService.faraday_middleware allows custom middleware configurations
      • Koala now defaults to Net::HTTP rather than Typhoeus
      • Koala::NetHTTPService and Koala::TyphoeusService modules no longer exist
      • Koala no longer automatically switches to Net::HTTP when uploading IO objects to Facebook
    • โšก๏ธ RealTimeUpdates and TestUsers are no longer subclasses of API, but have their own .api objects
      • The old .graph_api accessor is aliases to .api with a deprecation warning
    • โœ‚ Removed deprecation warnings for pre-1.1 batch interface

    โœ… Testing improvements:

    • โœ… Live test suites now run against test users by default
      • Test suite can be repeatedly run live without having to update facebook_data.yml
      • OAuth code and session key tests cannot be run against test users
    • โœ… Faraday adapter for live tests can be specified with ADAPTER=[your adapter] in the rspec command
    • โœ… Live tests can be run against the beta server by specifying BETA=true in the rspec command
    • โœ… Tests now pass against all rubies on Travis CI
    • ๐Ÿ”จ Expanded and refactored test coverage
    • ๐Ÿ›  Fixed bug with YAML parsing in Ruby 1.9
  • v1.1 Changes

    ๐Ÿ†• New methods:

    • โž• Added Batch API support (thanks, seejohnrun and spiegela!)
      • includes file uploads, error handling, and FQL
    • โž• Added GraphAPI#put_video
    • Added GraphAPI#get_comments_for_urls (thanks, amrnt!)
    • โž• Added RestAPI#fql_multiquery, which simplifies the results (thanks, amrnt!)
    • โฑ HTTP services support global proxy and timeout settings (thanks, itchy!)
    • Net::HTTP supports global ca_path, ca_file, and verify_mode settings (thanks, spiegela!)

    โšก๏ธ Updated methods:

    • โšก๏ธ RealtimeUpdates now uses a GraphAPI object instead of its own API
    • RestAPI#rest_call now has an optional last argument for method, for calls requiring POST, DELETE, etc. (thanks, sshilo!)
    • Filename can now be specified when uploading (e.g. for Ads API) (thanks, sshilo!)
    • get_objects([]) returns [] instead of a Facebook error in non-batch mode (thanks, aselder!)

    Internal improvements:

    • ๐Ÿ’Ž Koala is now more compatible with other Rubies (JRuby, Rubinius, etc.)
    • HTTP services are more modular and can be changed on the fly (thanks, chadk!)
      • Includes support for uploading StringIOs and other non-files via Net::HTTP even when using TyphoeusService
    • ๐Ÿ’Ž Koala now uses multi_json to improve compatibility with Rubinius and other Ruby versions
    • Koala now uses the modern Typhoeus API (thanks, aselder!)
    • Koala now uses the current modern Net::HTTP interface (thanks, romanbsd!)
    • ๐Ÿ›  Fixed bugs and typos (thanks, waynn, mokevnin, and tikh!)
  • v1.0 Changes

    ๐Ÿ†• New methods:

    • ๐Ÿ‘ Photo and file upload now supported through #put_picture
      • Added UploadableIO class to manage file uploads
    • โž• Added a delete_like method (thanks to waseem)
    • Added put_connection and delete_connection convenience methods

    โšก๏ธ Updated methods:

    • Search can now search places, checkins, etc. (thanks, rickyc!)
    • You can now pass :beta => true in the http options to use Facebook's beta tier
    • โœ… TestUser#befriend now requires user info hashes (id and access token) due to Facebook API changes (thanks, pulsd and kbighorse!)
    • All methods now accept an http_options hash as their optional last parameter (thanks, spiegela!)
    • url_for_oauth_code can now take a :display option (thanks, netbe!)
    • โฑ Net::HTTP can now accept :timeout and :proxy options (thanks, gilles!)
    • โœ… Test users now supports using test accounts across multiple apps

    Internal improvements:

    • 0๏ธโƒฃ For public requests, Koala now uses http by default (instead of https) to improve speed
      • This can be overridden through Koala.always_use_ssl= or by passing :use_ssl => true in the options hash for an api call
    • Read-only REST API requests now go through the faster api-read server
    • Replaced parse_signed_request with a version from Facebook that also supports the new signed params proposal
      • Note: invalid requests will now raise exceptions rather than return nil, in keeping with other SDKs
    • Delete methods will now raise an error if there's no access token (like put_object and delete_like)
    • Updated parse_signed_request to match Facebook's current implementation (thanks, imajes!)
    • ๐Ÿ‘ป APIError is now < StandardError, not Exception
    • โž• Added KoalaError for non-API errors
    • 0๏ธโƒฃ Net::HTTP's SSL verification is no longer disabled by default

    โœ… Test improvements:

    • โœ… Incorporated joshk's awesome rewrite of the entire Koala test suite (thanks, joshk!)
    • โœ… Expanded HTTP service tests (added Typhoeus test suite and additional Net::HTTP test cases)
    • โœ… Live tests now verify that the access token has the necessary permissions before starting
    • โœ… Replaced the 50-person network test, which often took 15+ minutes to run live, with a 5-person test
  • v0.10.0 Changes

    • โž• Added test user module
    • ๐Ÿ›  Fixed bug when raising APIError after Facebook fails to exchange session keys
    • Made access_token accessible via the readonly access_token property on all our API classes
  • v0.9.1 Changes

    • โœ… Tests are now compatible with Ruby 1.9.2
    • โž• Added JSON to runtime dependencies
    • โœ‚ Removed examples directory (referenced from github instead)
  • v0.9.0 Changes

    • Added parse_signed_request to handle Facebook's new authentication scheme
      • note: creates dependency on OpenSSL (OpenSSL::HMAC) for decryption
    • โž• Added GraphCollection class to provide paging support for GraphAPI get_connections and search methods (thanks to jagthedrummer)
    • โž• Added get_page method to easily fetch pages of results from GraphCollections
    • Exchanging sessions for tokens now works properly when provided invalid/expired session keys
    • You can now include a :typhoeus_options key in TyphoeusService#make_request's options hash to control the Typhoeus call (for example, to set :disable_ssl_peer_verification => true)
    • All paths provided to HTTP services start with leading / to improve compatibility with stubbing libraries
    • ๐Ÿ‘ป If Facebook returns nil for search or get_connections requests, Koala now returns nil rather than throwing an exception
  • v0.8.0 Changes

    • ๐Ÿ’ฅ Breaking interface changes
      • Removed string overloading for the methods, per 0.7.3, which caused Marshaling issues
      • Removed ability to provide a string as the second argument to url_for_access_token, per 0.5.0
  • v0.7.4 Changes

    • ๐Ÿ‘‰ Fixed bug with get_user_from_cookies