1. 13 Jun, 2011 3 commits
  2. 12 Jun, 2011 1 commit
  3. 11 Jun, 2011 5 commits
  4. 10 Jun, 2011 14 commits
  5. 09 Jun, 2011 13 commits
  6. 08 Jun, 2011 4 commits
    • Nigel Tao's avatar
      compress/lzw: reduce decoder buffer size from 3*4096 to 2*4096. · 833529fd
      Nigel Tao authored
      This happens to speed up the decoder benchmarks by 50% on my computer
      (GOARCH=amd64 GOOS=linux), but I don't have a good intuition as to why.
      For example, just adding an unused [4096]byte field to the decoder
      struct doesn't significantly change the numbers.
      
      Before:
      
      lzw.BenchmarkDecoder1e4	    5000	    488057 ns/op	  20.49 MB/s
      lzw.BenchmarkDecoder1e5	     500	   4613638 ns/op	  21.67 MB/s
      lzw.BenchmarkDecoder1e6	      50	  45672260 ns/op	  21.90 MB/s
      lzw.BenchmarkEncoder1e4	    5000	    353563 ns/op	  28.28 MB/s
      lzw.BenchmarkEncoder1e5	     500	   3431618 ns/op	  29.14 MB/s
      lzw.BenchmarkEncoder1e6	      50	  34009640 ns/op	  29.40 MB/s
      
      After:
      
      lzw.BenchmarkDecoder1e4	    5000	    339725 ns/op	  29.44 MB/s
      lzw.BenchmarkDecoder1e5	     500	   3166894 ns/op	  31.58 MB/s
      lzw.BenchmarkDecoder1e6	      50	  31317260 ns/op	  31.93 MB/s
      lzw.BenchmarkEncoder1e4	    5000	    354909 ns/op	  28.18 MB/s
      lzw.BenchmarkEncoder1e5	     500	   3432710 ns/op	  29.13 MB/s
      lzw.BenchmarkEncoder1e6	      50	  34010500 ns/op	  29.40 MB/s
      
      R=rsc, r
      CC=golang-dev
      https://golang.org/cl/4535123
      833529fd
    • Brad Fitzpatrick's avatar
      http: fix handling of 0-lengthed http requests · 9c436ab7
      Brad Fitzpatrick authored
      Via Russ Ross' bug report on golang-nuts, it was not possible
      to send an HTTP request with a zero length body with either a
      Content-Length (it was stripped) or chunking (it wasn't set).
      
      This means Go couldn't upload 0-length objects to Amazon S3.
      (which aren't as silly as they might sound, as S3 objects can
      have key/values associated with them, set in the headers)
      
      Amazon further doesn't supported chunked uploads. (not Go's
      problem, but we should be able to let users set an explicit
      Content-Length, even if it's zero.)
      
      To fix the ambiguity of an explicit zero Content-Length and
      the Request struct's default zero value, users need to
      explicit set TransferEncoding to []string{"identity"} to force
      the Request.Write to include a Content-Length: 0.  identity is
      in RFC 2616 but is ignored pretty much everywhere.  We don't
      even then serialize it on the wire, since it's kinda useless,
      except as an internal sentinel value.
      
      The "identity" value is then documented, but most users can
      ignore that because NewRequest now sets that.
      
      And adds more tests.
      
      R=golang-dev, rsc
      CC=golang-dev
      https://golang.org/cl/4603041
      9c436ab7
    • Brad Fitzpatrick's avatar
      http: change most map[string][]string types to new Values type · 6a876283
      Brad Fitzpatrick authored
      This replaces most the map[string][]string usage with
      a new Values type name, with the usual methods.
      
      It also changes client.PostForm to take a Values, rather
      than a map[string]string, closing a TODO in the code.
      
      R=rsc
      CC=golang-dev
      https://golang.org/cl/4532123
      6a876283
    • Robert Griesemer's avatar
      gofmt: update test script so that it passes again · 013cfea3
      Robert Griesemer authored
      (TODO: should replace this with a Go program, eventually)
      
      R=bradfitz
      CC=golang-dev
      https://golang.org/cl/4584047
      013cfea3