Commits on Mar 6, 2012
  1. merged faraday master

    jonmagic committed Mar 6, 2012
Commits on Feb 15, 2012
Commits on Jan 28, 2012
  1. Release 0.8.0.rc2

    mislav committed Jan 28, 2012
  2. fix Utils::Headers

    mislav committed Jan 28, 2012
  3. Release 0.8.0.rc

    mislav committed Jan 28, 2012
  4. add EventMachine adapter

    mislav committed Jan 13, 2012
  5. enable automatic parallel manager detection

    jimeh authored and mislav committed Dec 29, 2011
    This enables the use of `#in_parallel` without manually passing in a
    parallel manager instance.
    If the adapter you're using has a parallel manager, it will work as
    expected. If it doesn't, it'll work as normal sequential requests.
  6. Improve how params, headers & options are handled in the request phase

    mislav committed Jan 11, 2012
    Old behavior:
      # init connection with some defaults:
      conn = :params => {...}, :request => {...}
      conn.get('/') do |request|
        request.params = {...}   # params got merged with defaults
        request.options = {...}  # options got deep-merged with defaults
    New behavior:
      conn.get('/', {...}) do |request|
        request.params.update(...)  # merge with existing params
        request.params = {...}      # replace all existing params
        request.options[:proxy][:user] = "..." # add extra request options:
        request.options = {...}                # replace all existing options
    Pros of the new behavior are consistency, ability to completely override
    parameters per-request. Cons are breaking backwards-compatibility.
Commits on Jan 24, 2012
  1. raise exception if initializing middleware with missing dependencies

    mislav committed Jan 20, 2012
    Previously it would just try to use the middleware and it would result
    in unexplained errors when making requests.
Commits on Jan 19, 2012
  1. eliminate Ruby warnings

    mislav committed Jan 19, 2012
Commits on Jan 11, 2012
  1. fix build_url to accept URI instance

    lmarburger authored and mislav committed Jan 10, 2012
Commits on Jan 9, 2012
  1. cleanup & update gemspec, Rakefile

    mislav committed Jan 9, 2012
     - remove "date" and "rubyforge" fields from gemspec
     - remove obsolete "test:live" task
     - bring the file list in gemspec up to date
     - remove dumb validation task for gemspec
Commits on Jan 6, 2012
  1. add additional 2nd arg to get/head/delete(): a query params hash

    mislav committed Jan 6, 2012
    This is backwards-incompatible.
    The signature for these methods was:
      (url, headers)
    Now it is:
      (url, params, headers)
    The params hash adds values to the query string of the request.
    Closes #88
  2. remove hacks when conditionally forwarding blocks in methods

    mislav committed Jan 6, 2012
    Yes, named blocks (Procs) in methods are slow in Ruby. This is because
    of unfortunate performance penalty of instantiating and
    garbage-collecting these Proc objects, which happens even if we never
    use or even pass a block to the method. Certain methods in Faraday were
    optimized to avoid named blocks.
    This removes such optimizations. The rationale is that the performance
    penalty of named blocks is negligible to the overhead of HTTP requests
    over the network.
Commits on Jan 2, 2012
  1. ensure no regex warnings about UTF-8 strings

    mislav committed Jan 2, 2012
    This is a cherry-pick of 3dddbfc
    References #95
  2. add Faraday.register_middleware

    mislav committed Dec 29, 2011
    Allows 3rd-party libraries to register named shortcuts to resolve to
    fully qualified constant names for specific middleware.
      Faraday.register_middleware :aloha => MyModule::Aloha
      Faraday.register_middleware :response, :boom => MyModule::Boom
      Faraday.register_middleware :lazy => lambda { MyModule::LazyLoaded }
    Those shortcuts are then available in Builder:
      builder.use :aloha
      builder.response :boom
Commits on Dec 30, 2011
  1. RUBY_ENGINE doesn't have to be present

    mislav committed Dec 30, 2011
    It wasn't found on 1.8.7p352
  2. skip Excon tests on Rubinius

    mislav committed Dec 30, 2011
  3. enable GET requests with body in Patron

    mislav committed Dec 30, 2011
    They are still unsupported in Patron itself because of
  4. enable GET requests with body for Net::HTTP adapter

    Jiren Patel authored and mislav committed Dec 30, 2011
  5. remove dependency on Addressable::URI

    mislav committed Dec 29, 2011
    This is a potentially breaking change for 3rd party code that relies on
    env[:url] being specifically Addressable. After this change all urls are
    passed around as instances of URI::HTTP.