Permalink
Switch branches/tags
Nothing to show
Commits on May 24, 2012
Commits on May 23, 2012
Commits on May 9, 2012
  1. Add commit message to subject.

    ejball committed May 9, 2012
    Also remove "comment on" from subject to make more room.
  2. Inline the CacheCommits method.

    bgrainger committed May 9, 2012
    There's no need to wait for all commits to finish downloading before caching them; they can be cached as they arrive.
  3. Fix deadlock in RequestCommits.

    bgrainger committed May 9, 2012
    If the number of commits being fetched exceeds ConnectionPointManager.DefaultConnectionLimit, additional requests will wait until the responses from the first requests are disposed. However, the code calls Task.Factory.ContinueWhenAll and waits for all requests to finish before processing any of them; this causes a deadlock.
  4. Remove duplicated code.

    bgrainger committed May 8, 2012
Commits on May 8, 2012
Commits on May 7, 2012
Commits on May 3, 2012
  1. Ignore publish settings.

    bgrainger committed May 2, 2012
Commits on Apr 18, 2012
Commits on Apr 16, 2012
Commits on Apr 15, 2012
Commits on Apr 14, 2012
  1. Use CancellationToken to avoid unnecessary steps.

    bgrainger committed Apr 14, 2012
    Previously, most methods would check if m_result had been set yet and, if so, do nothing. Now, we pass a CancellationToken to ContinueWith, and cancel that token when the final ActionResult is known. This avoids calling unnecessary methods and lets us skip straight to returning that ActionResult to the client.
  2. Minor code cleanup.

    bgrainger committed Apr 14, 2012
  3. Return 404 for feed if GitHub API returns 404. Fixes #6.

    bgrainger committed Apr 14, 2012
    All methods are executed (with chained ContinueWith statements), but do nothing if a result has already been created.
    
    Removed unnecessary ListData nested class and store per-request data in fields.
  4. Use ETag for conditional requests. Fixes #2.

    bgrainger committed Apr 14, 2012
    The URIs and ETags of all GitHub API responses that are used to construct the feed are hashed together to make the ETag for the feed itself.
    
    This doesn't save any processing time on the server, but benefits the client by allowing it to easily reuse its own cached data.
  5. Add Last-Modified header to response.

    bgrainger committed Apr 14, 2012
    Returning the feed's last modified date correctly handles the case of updated comments, but causes the client to incorrectly cache the feed when comments are deleted.
Commits on Apr 11, 2012
  1. Allow null 'line' and 'position' values.

    bgrainger committed Apr 11, 2012
    The GitHub API previously returned 0 for comments on a commit (not on a line); it now returns null for those values.
  2. Returns most recent comments. Fixes #4.

    bgrainger committed Apr 11, 2012
    The GitHub bug that didn't order comments consistently appears to have been fixed; the comments are now ordered by id (or created_at) in ascending order. To get the most recent comments, we determine the last page, then request it (and the previous page, if necessary).
  3. Allow compiler to set assembly version.

    bgrainger committed Apr 11, 2012
    If the AssemblyFileVersion attribute is omitted, both it and
    AssemblyVersion will be set to an automatically-generated version.
Commits on Mar 5, 2012
  1. Construct the result from a feed, not a formatter.

    bgrainger committed Mar 4, 2012
    The ContentType and the response body are now both controlled by SyndicationFeedAtomResult.
Commits on Mar 3, 2012
  1. Allow StreamReader to guess the encoding.

    bgrainger committed Mar 3, 2012
    Since we're just assuming it's UTF-8, allow StreamReader to override that guess if it detects something else.