This repository has been archived by the owner. It is now read-only.
Permalink
Switch branches/tags
Nothing to show
Commits on Jun 18, 2013
  1. Update README.markdown

    lukeredpath committed Jun 18, 2013
    Added note about no longer supporting the project.
Commits on Dec 13, 2011
  1. Some enhancements to the GET streaming API.

    lukeredpath committed Dec 13, 2011
    * Generally, if the user is handling the data themselves in the onData callback, we don't want
    to accumulate the data within the client as the reason the user is streaming could be because it is a large file and they want to write it directly to disk.
    
    * Rather than doing some naive error checking and calling an error handler, we can just call
    a response block as with other APIs, although the response object's data will be empty (as noted in the documentation).
    
    This should fix #20.
  2. Added a new timeout test.

    lukeredpath committed Dec 13, 2011
Commits on Aug 7, 2011
  1. Fixed memory leak.

    lukeredpath committed Aug 7, 2011
Commits on Aug 2, 2011
Commits on Aug 1, 2011
  1. Provide a means of accessing request errors through the response obje…

    lukeredpath committed Aug 1, 2011
    …ct, so block-based
    
    callbacks can detect if the request was successful and act accordingly.
    
    Updated example app to show usage.
  2. Underlying connection errors should be forwarded to the request deleg…

    lukeredpath committed Aug 1, 2011
    …ate.
    
    A little bit more thought is needed on how these errors should be propagated to block callbacks.
Commits on Jul 29, 2011
  1. Changed the way delegate responses are called.

    lukeredpath committed Jul 29, 2011
    For regular delegates, methods will be called on whatever thread the operation executed on, which probably won't be the main thread. If delegate methods need to update the UI, they should shunt themselves onto the main thread.
    
    For block-based callbacks, we can shunt the call on to the main thread automatically by using dispatch_async (because we don't need to wait for the callback to finish) and the main queue.
    
    However, this causes a problem with the acceptance tests because they execute on the main thread and will lock the main thread using an NSCondition when calling assertEventually. For that reason, the option to shunt the block callback on to the main queue can be turned off.
  2. Fixed memory error.

    lukeredpath committed Jul 29, 2011
  3. Ensure all callbacks are called on the main thread, not the thread th…

    lukeredpath committed Jul 29, 2011
    …e request was started on.
  4. Fix assert eventually implementation; make sure it runs with backgrou…

    lukeredpath committed Jul 29, 2011
    …nd priority and doesn't interfere with the running of requests.
  5. Remove redundant logging.

    lukeredpath committed Jul 29, 2011
  6. Revert all of the previous change except for the runloop mode change.

    lukeredpath committed Jul 29, 2011
    I've experienced no issues running this operation within the thread it has been created on and moving it to the main thread causes problems with the synchronous proxy implementation.
Commits on Jul 27, 2011
  1. Forces start method on the main thread, changed runloop modes.

    Joris Kluivers Joris Kluivers
    Joris Kluivers authored and Joris Kluivers committed Jul 27, 2011
Commits on Jul 24, 2011
  1. Catch exceptions when checking the probe; I was getting weird null se…

    lukeredpath committed Jul 24, 2011
    …lector errors but
    
    wrapping it in a try/catch seems to handle this without affecting the tests.
Commits on Jul 7, 2011
  1. There was evidence that spinning the run-loop to wait for the result …

    lukeredpath committed Jul 7, 2011
    …of the asynchronous calls
    
    within the synchronous proxy was not very efficient and used excess CPU cycles.
    
    The solution was to replace the run-loop spin with an NSCondition which waits to be signalled
    by the synchronous proxy block.
    
    In order for this to work, the asynchronous work needs to happen on a different thread. Because
    in iOS4 and greater, we can guarantee that any operation added to any queue by the main queue
    happens off of the main thread (thanks to GCD), we can remove the shunt to main thread and
    run NSURLConnection in the secondary thread's run loop instead.
    
    This also has a nice side effect of increasing performance slightly; the test suite improved by
    roughly 1 second on my machine.
  2. Further retry tests.

    lukeredpath committed Jul 7, 2011
  3. I just spent ages debugging a failing test because I was passing in a…

    lukeredpath committed Jul 7, 2011
    … path, not an HTTP URL.
    
    I added this assertion as a sanity test; it also revealed one other test where I'd forgotten
    to pass in a complete URL - doh!