Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: golang/net Loading
base: v0.25.0
Choose a base ref
...
head repository: golang/net Loading
compare: v0.26.0
Choose a head ref
  • 20 commits
  • 45 files changed
  • 5 contributors

Commits on May 8, 2024

  1. http2: avoid panic on h2c upgrade failure

    When performing an h2c upgrade, we would panic if an error occurred
    reading the client preface. *serverConn.closeStream assumes that
    a conn with an IdleTimeout > 0 will have an idleTimer, but in the
    h2c upgrade case the stream may have been created before the timer.
    
    Fixes golang/go#67168
    
    Change-Id: I30b5a701c10753ddc344079b9498285f099155cf
    Reviewed-on: https://go-review.googlesource.com/c/net/+/584255
    Reviewed-by: Jonathan Amsterdam <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    neild committed May 8, 2024
    Configuration menu
    Copy the full SHA
    7fa635b View commit details
    Browse the repository at this point in the history

Commits on May 10, 2024

  1. webdav: return 409 for PUT without parent collection

    Aligning with the WebDAV RFC specification,
    changes the server response for PUT operations that would
    create a resource without an existing parent collection
    from HTTP 404 Not Found to HTTP 409 Conflict.
    
    RFC RFC4918, section 9.7.1
    
    Fixes golang/go#67150
    
    Change-Id: I5ce6c5ea147a6a450ef5ae2e0077eb0dce409743
    Reviewed-on: https://go-review.googlesource.com/c/net/+/583055
    Reviewed-by: Cherry Mui <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Auto-Submit: Damien Neil <[email protected]>
    Reviewed-by: Damien Neil <[email protected]>
    vvatanabe authored and gopherbot committed May 10, 2024
    Configuration menu
    Copy the full SHA
    ac99879 View commit details
    Browse the repository at this point in the history

Commits on May 13, 2024

  1. http2: drop the gate type

    Drop a trivial "gate" type used in exactly one location,
    replacing it with an equivalent channel operation.
    
    We've been using a "gate" with a different definition in
    the quic package; dropping this hapax legomenon type from
    the http2 package frees up the name if we want to use the
    same gate here.
    
    Change-Id: Id9c7d05daf7ee920c38090df960822fcc1168a4d
    Reviewed-on: https://go-review.googlesource.com/c/net/+/584896
    Reviewed-by: Jonathan Amsterdam <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    neild committed May 13, 2024
    Configuration menu
    Copy the full SHA
    2c14f51 View commit details
    Browse the repository at this point in the history

Commits on May 15, 2024

  1. http2: cancel handler context on stream errors

    When we reset a stream due to an error, cancel the handler context.
    
    Fixes golang/go#67036
    
    Change-Id: I66941d9bffb35d8b4358ff8d85cc784c1846afa6
    Reviewed-on: https://go-review.googlesource.com/c/net/+/585595
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Reviewed-by: Jonathan Amsterdam <[email protected]>
    neild committed May 15, 2024
    Configuration menu
    Copy the full SHA
    8aa6dbf View commit details
    Browse the repository at this point in the history

Commits on May 16, 2024

  1. http2: set up the timer of closing idle connection after the initiali…

    …zation
    
    Fixes golang/go#66763
    
    Change-Id: I046028b6072a6da77e7f1b4d1f2e6b14f8edb042
    Reviewed-on: https://go-review.googlesource.com/c/net/+/578115
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Reviewed-by: Dmitri Shuralyov <[email protected]>
    Reviewed-by: Damien Neil <[email protected]>
    Auto-Submit: Damien Neil <[email protected]>
    panjf2000 authored and gopherbot committed May 16, 2024
    Configuration menu
    Copy the full SHA
    c87a5b6 View commit details
    Browse the repository at this point in the history

Commits on May 20, 2024

  1. proxy: use strings.TrimSuffix

    Change-Id: Icca4cdbdc1fb964eda8e0fed559f8d4e5dc45073
    Reviewed-on: https://go-review.googlesource.com/c/net/+/586115
    Reviewed-by: Ian Lance Taylor <[email protected]>
    Auto-Submit: Tobias Klauser <[email protected]>
    Reviewed-by: Carlos Amedee <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    tklauser authored and gopherbot committed May 20, 2024
    Configuration menu
    Copy the full SHA
    49bf2d7 View commit details
    Browse the repository at this point in the history
  2. http2: use implicit synchronization in tests

    Rewrite the synchronization used in Transport tests.
    This replaces the explicit synchronization, which requires
    annotating every point where a goroutine in the code under test
    may block, with implicit syncronization based on parsing
    goroutine stacks to identify when all goroutines of interest are
    blocked.
    
    Change-Id: I02646e2752c359ed1b08126370a48f3d3c1fde77
    Reviewed-on: https://go-review.googlesource.com/c/net/+/584895
    Reviewed-by: Jonathan Amsterdam <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    neild committed May 20, 2024
    Configuration menu
    Copy the full SHA
    b1ec120 View commit details
    Browse the repository at this point in the history
  3. http2: clearer distinction between test server types

    newServerTester is used to create an HTTP/2 server for testing.
    It returns a *serverTester, which includes a number of methods
    for sending frames to and reading frames from a server connection
    under test.
    
    Many tests also use newServerTester to simply start an
    *httptest.Server. These tests pass an "optOnlyServer" to
    indicate that they don't need a client connection to interact with.
    They interact with the *httptest.Server, and use no methods or
    fields of *serverTester.
    
    Make a clearer distinction between test types.
    
    Add a newTestServer function which starts and returns
    an *httptest.Server.
    
    This function replaces use of newServerTester with optOnlyServer.
    
    Change-Id: Ia590c9b4dcc23c17e530b0cc273b9120965da11a
    Reviewed-on: https://go-review.googlesource.com/c/net/+/586155
    Reviewed-by: Jonathan Amsterdam <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    neild committed May 20, 2024
    Configuration menu
    Copy the full SHA
    9545aea View commit details
    Browse the repository at this point in the history

Commits on May 21, 2024

  1. all: replace deprecated io/ioutil calls

    The io/ioutil package's features were moved to
    the io and os packages in Go 1.16.
    
    x/net depends on Go 1.18. Drop ioutil calls,
    so gopls doesn't warn about them.
    
    Change-Id: Ibdb576d94f250808ae285aa142e2fd41e7e9afc9
    Reviewed-on: https://go-review.googlesource.com/c/net/+/586244
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Reviewed-by: Ian Lance Taylor <[email protected]>
    neild committed May 21, 2024
    Configuration menu
    Copy the full SHA
    c1f5833 View commit details
    Browse the repository at this point in the history
  2. http2: remove spec coverage test

    When run with -coverspec, tests track which portions of the
    specification they cover and the TestSpecCoverage test produces
    an error if any sections lack test coverage.
    
    This is a lovely idea, and perhaps we should resurrect it at
    some point, but there is currently exactly one coverage
    annotation, dating back to the first commit of this package.
    
    Change-Id: I5d2d8a1032b783d113ed0982f7e97a3bd1c07a33
    Reviewed-on: https://go-review.googlesource.com/c/net/+/586243
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Reviewed-by: Jonathan Amsterdam <[email protected]>
    neild committed May 21, 2024
    Configuration menu
    Copy the full SHA
    332fe23 View commit details
    Browse the repository at this point in the history
  3. http2: avoid racy access to clientStream.requestedGzip

    clientStream.requestedGzip is set from clientStream.writeRequest,
    and examined by clientConn.readLoop. I'm not sure if there's
    any possible way for an actual data race to happen here in
    practice, since the read loop should only examine the field
    after the request is sent by writeRequest, but it's enough
    for the race detector to complain.
    
    Set the field in ClientConn.roundTrip instead, before
    the clientStream has become accessible to any other goroutines.
    
    No test, but a following CL has race detector failures without
    this change.
    
    Change-Id: Id30f1b95bcfcc35c213440e0e47cce3feaaff06d
    Reviewed-on: https://go-review.googlesource.com/c/net/+/586245
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Reviewed-by: Jonathan Amsterdam <[email protected]>
    neild committed May 21, 2024
    Configuration menu
    Copy the full SHA
    410d19e View commit details
    Browse the repository at this point in the history
  4. http2: add a more full-featured test net.Conn

    Add a net.Conn implementation that plays nicely with testsyncGroup,
    implements read/write timeouts, and gives control over buffering
    to let us write tests that cause writes to a Conn to block at
    specific points in time.
    
    Change-Id: I9d870b211ac9d938a8c4a221277981cdb821a6e4
    Reviewed-on: https://go-review.googlesource.com/c/net/+/586246
    Reviewed-by: Jonathan Amsterdam <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    neild committed May 21, 2024
    Configuration menu
    Copy the full SHA
    022530c View commit details
    Browse the repository at this point in the history

Commits on May 28, 2024

  1. http2: use synthetic time in server tests

    Change newServerTester to return a server using fake time
    and a fake net.Conn.
    
    Change-Id: I9d5db0cbe75696aed6d99ff1cd2369c2dea426c3
    Reviewed-on: https://go-review.googlesource.com/c/net/+/586247
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Reviewed-by: Jonathan Amsterdam <[email protected]>
    neild committed May 28, 2024
    Configuration menu
    Copy the full SHA
    03c24c2 View commit details
    Browse the repository at this point in the history
  2. http2: drop unused retry function

    Change-Id: Ibe7e022a4863c8b0e502d7952b870046443acf7e
    Reviewed-on: https://go-review.googlesource.com/c/net/+/586248
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Reviewed-by: Jonathan Amsterdam <[email protected]>
    Reviewed-by: Brad Fitzpatrick <[email protected]>
    neild committed May 28, 2024
    Configuration menu
    Copy the full SHA
    9f5b79b View commit details
    Browse the repository at this point in the history
  3. http2: factor out frame read/write test functions

    Client and server tests both write frames to a test connection
    and read frames back. Frame reads are usually paired with
    test expectations.
    
    Unify the API used for frame reads/writes in tests.
    
    Introduce a testConnFramer type that implements a common set
    of read/write methods, and embed it in both client and server
    test types.
    
    Change-Id: I6927c43459ba24f150a21c058a92797754f82bf1
    Reviewed-on: https://go-review.googlesource.com/c/net/+/586249
    Reviewed-by: Jonathan Amsterdam <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    neild committed May 28, 2024
    Configuration menu
    Copy the full SHA
    0d515a5 View commit details
    Browse the repository at this point in the history

Commits on May 30, 2024

  1. http2: avoid corruption in priority write scheduler

    When removing a stream containing children in the priority
    tree, it was possible for some children to not be correctly
    moved to the parent of the removed stream.
    
    Fixes golang/go#66514
    
    Change-Id: Ie8a8743a6213a6b1a2426e023111878afff78f9e
    Reviewed-on: https://go-review.googlesource.com/c/net/+/589255
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Reviewed-by: Jonathan Amsterdam <[email protected]>
    neild committed May 30, 2024
    Configuration menu
    Copy the full SHA
    5608279 View commit details
    Browse the repository at this point in the history
  2. http2: report an error if goroutines outlive serverTester tests

    Change-Id: Icd2152b4bddacf12120be16c32c8c2d52d235fbd
    Reviewed-on: https://go-review.googlesource.com/c/net/+/589075
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    Reviewed-by: Jonathan Amsterdam <[email protected]>
    neild committed May 30, 2024
    Configuration menu
    Copy the full SHA
    67e8d0c View commit details
    Browse the repository at this point in the history

Commits on Jun 3, 2024

  1. quic: disable X25519Kyber768Draft00 in tests

    Enabling this bloats the TLS handshake so flights no longer
    fit in a single datagram. Disable it in tests. Add a test
    using the crypto/tls defaults, to ensure we do handshake
    properly with them.
    
    Fixes golang/go#67783
    
    Change-Id: I521188e7b5a313e9289e726935e5b26994090b4a
    Reviewed-on: https://go-review.googlesource.com/c/net/+/589855
    Auto-Submit: Damien Neil <[email protected]>
    Reviewed-by: Jonathan Amsterdam <[email protected]>
    Reviewed-by: Filippo Valsorda <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    neild authored and gopherbot committed Jun 3, 2024
    Configuration menu
    Copy the full SHA
    603e3e6 View commit details
    Browse the repository at this point in the history
  2. http2: avoid race in server handler SetReadDeadine/SetWriteDeadline

    Can't safely access responseWriter.rws from on the server's serve loop.
    
    Change-Id: I477abe58cf9dd23813a0c5507aed2319696fdfaf
    Reviewed-on: https://go-review.googlesource.com/c/net/+/589856
    Reviewed-by: Brad Fitzpatrick <[email protected]>
    Reviewed-by: Matthew Dempsky <[email protected]>
    Auto-Submit: Damien Neil <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    neild authored and gopherbot committed Jun 3, 2024
    Configuration menu
    Copy the full SHA
    6249541 View commit details
    Browse the repository at this point in the history

Commits on Jun 4, 2024

  1. go.mod: update golang.org/x dependencies

    Update golang.org/x dependencies to their latest tagged versions.
    
    Change-Id: I472c3d990ea3c7c88a92bc0824034b112cec0eff
    Reviewed-on: https://go-review.googlesource.com/c/net/+/590237
    Reviewed-by: Dmitri Shuralyov <[email protected]>
    Reviewed-by: Than McIntosh <[email protected]>
    Auto-Submit: Gopher Robot <[email protected]>
    LUCI-TryBot-Result: Go LUCI <[email protected]>
    gopherbot committed Jun 4, 2024
    Configuration menu
    Copy the full SHA
    66e838c View commit details
    Browse the repository at this point in the history
Loading