Skip to content
Commits on Jan 12, 2016
  1. @mflatt
Commits on Oct 15, 2015
  1. Use aws-log-warning not log-error

    committed Oct 15, 2015
    - Use the aws not generic logger.
    
    - Use warning not error level. Why:
    
      - Racket prints error and higher level log messages to stderr, by
        default. DrDr complains about output to stderr when running our
        tests that exercise the retry -- even though the tests succeed.
    
      - Maybe warning really is the appropriate level to use here: Although
        this relates to an exception happening, and it's a more unusual
        situation than some other warning-level log messages (which is why I
        thought to log it as an error, so it gets noticed), we're catching
        it and retrying. From the POV of a using app, it's not an error, at
        least not yet.
Commits on Oct 14, 2015
  1. Bump to v1.7

    committed Oct 14, 2015
  2. Retry a few odd 200 Not Really OK responses

    committed Sep 17, 2015
    Amazon documents that S3 can, for delete-multiple, copy, and
    complete-multipart-upload, return a 200 response code, but we must check
    the response body to see if it actually succeeded. Although we were
    already checking this, we ought to include these errors in what we
    retry.
    
    Rather than try to shoehorn this 200 Not OK notion into the
    call/xxx-request/retry functions, handle it locally in each of the 3
    spots. (This means there are "nested retries", but I believe this is
    OK -- that is, Really OK.)
Commits on Sep 20, 2015
Commits on Sep 13, 2015
  1. @racket-dep-fixer

    Fix dependencies.

    racket-dep-fixer committed with Sep 10, 2015
  2. Add license badge

    committed Sep 13, 2015
  3. Change README badges

    committed Sep 13, 2015
Commits on Sep 11, 2015
  1. Move badges to top

    committed Sep 11, 2015
Commits on Sep 9, 2015
  1. post-with-retry exn and log level

    committed Sep 9, 2015
    - If post-with-retry eventually times out, now it raises an exn:fail:aws
      rather than using `error`.
    
    - Retry log messages are at level 'warning not 'info.
    
    - Use at-exps.
    
    - Smarter use of match.
  2. glacier: Use hasheq and λ

    committed Sep 9, 2015
    Also fix some indenting.
  3. Replace `tags` and `first-tag-value`

    committed Sep 9, 2015
    These date from my earliest Racket code, when I didn't know about
    xml/path.
    
    All uses of `first-tag-value` can be replaced with `se-path*`.
    
    No uses of `tags` can be replaced with `se-path*/list`, because the
    former returns the entire matched elements, whereas the latter returns
    only their child values. However `tags` can be replaced with my
    `se-path*/elements`, which is in the same style as `se-path*/list` and
    with the desired behavior.
    
    While "the hood is open" for some of these files, do some other code
    freshening:
    
    - Change contracts to the prefix style.
    - More Rackety generally (e.g. more and smarter use of match).
  4. Add bucket-location. Bump to v1.6

    committed Sep 8, 2015
    Also, group the definitions of some functions on objects, below the
    definitions of functions on buckets.
Commits on Sep 8, 2015
  1. Experimental multipart-put/file resume; issue #48

    committed Sep 8, 2015
    Add incomplete-multipart-put/file and resume-multipart-put/file, which
    support resuming an interrupted multipart-put/file.
    
    For background about the approach used, see:
    
      http://stackoverflow.com/questions/32444787/why-isnt-list-parts-to-be-used-with-complete-multipart-upload
    
    Also:
    
    - Bump to v1.5.
    
    - Replace some uses of `tr` with at-exps.
    
    - Replace some uses of `first-tag-value` with `se-path*`. But note that
      `se-path*/list` is not an exact replacement for our `tags`, because
      the former returns only an element's children whereas the latter
      returns the entire element. This matters for XML like S3's:
    
        (ListBucketResult ()
          ....
          (Bucket () ....)
          (Bucket () ....))
    
    - Replace many instances of "pathname" with "file" and "entity" with
      "body" in docs.
  2. Bump to v1.4

    committed Sep 8, 2015
  3. @dbrunner-de
Commits on Sep 7, 2015
  1. Scribble: Use multi-page

    committed Sep 7, 2015
    Also, group some of the early sections as subsections.
  2. Bump to v1.3

    committed Sep 7, 2015
Commits on Aug 31, 2015
  1. Better default part-size. Closes #46

    committed Aug 31, 2015
    multipart-put/file #:part-size now defaults to #f -- which means it
    should calculate a part size that is as small as possible while not
    exceeding the 10,000 limit on the number of parts.
Commits on Aug 18, 2015
  1. Fix bad link

    committed Aug 18, 2015
  2. Fix typo

    committed Aug 18, 2015
  3. Bump to v1.2

    committed Aug 18, 2015
  4. Require Racket 6.0.1 or newer

    committed Aug 18, 2015
    Racket 6.0 errors:
    
        raco setup: error running: (lib aws/aws.scrbl)
        aws/aws/aws.scrbl:953:44: endpoint: unbound identifier in module
          in: endpoint
    
    But newer versions do not. After spending non-trivial time trying to
    figure out why, I'm deciding instead to drop support for 6.0. Rationale:
    If someone wanted 6.0, they'd want the point release. Besides which, as
    I type this Racket is already up to 6.2.1.
    
    While I'm updating it anyway, clean up the README generally.
  5. Improve S3 documentation

    committed Aug 17, 2015
    - Add tip about and link to `heads-string->dict` from http/head.
    
    - `provide` from s3.rkt and `defthing` in aws.scrbl the
      aws-chunk-size-xxx and s3-multipart-size-xxx values and contracts.
Commits on Aug 17, 2015
  1. Improve documentation

    committed Aug 17, 2015
    - Add Makefile, rm make-doc.sh.
    - Drop the markdown format doc build.
    - Correct collection info.rkt.
    - Rename manual.scrbl to aws.scrbl
    - Use relative paths in for-label requires.
    - Add missing xxx-region items.
    - Use the default value syntax for defparam instead of prose.
Something went wrong with that request. Please try again.