diff --git a/docgen/go.mod b/docgen/go.mod index 3670981c..5a3b53c4 100644 --- a/docgen/go.mod +++ b/docgen/go.mod @@ -78,7 +78,7 @@ require ( github.com/xeipuuv/gojsonschema v1.2.0 // indirect go.opencensus.io v0.23.0 // indirect go4.org/intern v0.0.0-20211027215823-ae77deb06f29 // indirect - go4.org/unsafe/assume-no-moving-gc v0.0.0-20211027215541-db492cf91b37 // indirect + go4.org/unsafe/assume-no-moving-gc v0.0.0-20230209150437-ee73d164e760 // indirect golang.org/x/crypto v0.0.0-20220411220226-7b82a4e95df4 // indirect golang.org/x/net v0.0.0-20220822230855-b0a4917ee28c // indirect golang.org/x/oauth2 v0.0.0-20220411215720-9780585627b5 // indirect diff --git a/docgen/go.sum b/docgen/go.sum index 485f0d1b..92f949fb 100644 --- a/docgen/go.sum +++ b/docgen/go.sum @@ -864,8 +864,9 @@ go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/ go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= go4.org/intern v0.0.0-20211027215823-ae77deb06f29 h1:UXLjNohABv4S58tHmeuIZDO6e3mHpW2Dx33gaNt03LE= go4.org/intern v0.0.0-20211027215823-ae77deb06f29/go.mod h1:cS2ma+47FKrLPdXFpr7CuxiTW3eyJbWew4qx0qtQWDA= -go4.org/unsafe/assume-no-moving-gc v0.0.0-20211027215541-db492cf91b37 h1:Tx9kY6yUkLge/pFG7IEMwDZy6CS2ajFc9TvQdPCW0uA= go4.org/unsafe/assume-no-moving-gc v0.0.0-20211027215541-db492cf91b37/go.mod h1:FftLjUGFEDu5k8lt0ddY+HcrH/qU/0qk+H8j9/nTl3E= +go4.org/unsafe/assume-no-moving-gc v0.0.0-20230209150437-ee73d164e760 h1:gH0IO5GDYAcawu+ThKrvAofVTgJjYaoOZ5rrC4pS2Xw= +go4.org/unsafe/assume-no-moving-gc v0.0.0-20230209150437-ee73d164e760/go.mod h1:FftLjUGFEDu5k8lt0ddY+HcrH/qU/0qk+H8j9/nTl3E= golang.org/x/crypto v0.0.0-20171113213409-9f005a07e0d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181009213950-7c1a557ab941/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= diff --git a/go.mod b/go.mod index 307dbd17..c70e3ae0 100644 --- a/go.mod +++ b/go.mod @@ -88,7 +88,7 @@ require ( github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect go.opencensus.io v0.24.0 // indirect go4.org/intern v0.0.0-20220617035311-6925f38cc365 // indirect - go4.org/unsafe/assume-no-moving-gc v0.0.0-20220617031537-928513b29760 // indirect + go4.org/unsafe/assume-no-moving-gc v0.0.0-20230209150437-ee73d164e760 // indirect golang.org/x/crypto v0.5.0 // indirect golang.org/x/mod v0.7.0 // indirect golang.org/x/net v0.5.0 // indirect diff --git a/go.sum b/go.sum index 12dc779f..43a787b6 100644 --- a/go.sum +++ b/go.sum @@ -857,8 +857,9 @@ go4.org/intern v0.0.0-20211027215823-ae77deb06f29/go.mod h1:cS2ma+47FKrLPdXFpr7C go4.org/intern v0.0.0-20220617035311-6925f38cc365 h1:t9hFvR102YlOqU0fQn1wgwhNvSbHGBbbJxX9JKfU3l0= go4.org/intern v0.0.0-20220617035311-6925f38cc365/go.mod h1:WXRv3p7T6gzt0CcJm43AAKdKVZmcQbwwC7EwquU5BZU= go4.org/unsafe/assume-no-moving-gc v0.0.0-20211027215541-db492cf91b37/go.mod h1:FftLjUGFEDu5k8lt0ddY+HcrH/qU/0qk+H8j9/nTl3E= -go4.org/unsafe/assume-no-moving-gc v0.0.0-20220617031537-928513b29760 h1:FyBZqvoA/jbNzuAWLQE2kG820zMAkcilx6BMjGbL/E4= go4.org/unsafe/assume-no-moving-gc v0.0.0-20220617031537-928513b29760/go.mod h1:FftLjUGFEDu5k8lt0ddY+HcrH/qU/0qk+H8j9/nTl3E= +go4.org/unsafe/assume-no-moving-gc v0.0.0-20230209150437-ee73d164e760 h1:gH0IO5GDYAcawu+ThKrvAofVTgJjYaoOZ5rrC4pS2Xw= +go4.org/unsafe/assume-no-moving-gc v0.0.0-20230209150437-ee73d164e760/go.mod h1:FftLjUGFEDu5k8lt0ddY+HcrH/qU/0qk+H8j9/nTl3E= golang.org/x/crypto v0.0.0-20171113213409-9f005a07e0d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181009213950-7c1a557ab941/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= diff --git a/vendor/go4.org/unsafe/assume-no-moving-gc/assume-no-moving-gc.go b/vendor/go4.org/unsafe/assume-no-moving-gc/assume-no-moving-gc.go index 14a41e73..fb585807 100644 --- a/vendor/go4.org/unsafe/assume-no-moving-gc/assume-no-moving-gc.go +++ b/vendor/go4.org/unsafe/assume-no-moving-gc/assume-no-moving-gc.go @@ -4,7 +4,11 @@ // Package go4.org/unsafe/assume-no-moving-gc exists so you can depend // on it from unsafe code that wants to declare that it assumes that -// the Go runtime does not using a moving garbage colllector. +// the Go runtime does not using a moving garbage colllector. Specifically, +// it asserts that the caller is playing stupid games with the addresses +// of heap-allocated values. It says nothing about values that Go's escape +// analysis keeps on the stack. Ensuring things aren't stack-allocated +// is the caller's responsibility. // // This package is then updated for new Go versions when that // is still the case and explodes at runtime with a failure @@ -16,6 +20,14 @@ // // There is no API. // +// It is intentional that this package will break code that's not updated +// regularly to double check its assumptions about the world and new Go +// versions. If you play stupid games with unsafe pointers, the stupid prize +// is this maintenance cost. (The alternative would be memory corruption if +// some unmaintained, unsafe library were built with a future version of Go +// that worked very differently than when the unsafe library was built.) +// Ideally you shouldn't write unsafe code, though. +// // The GitHub repo is at https://github.com/go4org/unsafe-assume-no-moving-gc package assume_no_moving_gc diff --git a/vendor/go4.org/unsafe/assume-no-moving-gc/untested.go b/vendor/go4.org/unsafe/assume-no-moving-gc/untested.go index da4d943f..dbb16904 100644 --- a/vendor/go4.org/unsafe/assume-no-moving-gc/untested.go +++ b/vendor/go4.org/unsafe/assume-no-moving-gc/untested.go @@ -2,8 +2,8 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -//go:build go1.20 -// +build go1.20 +//go:build go1.21 +// +build go1.21 package assume_no_moving_gc @@ -22,5 +22,5 @@ func init() { if os.Getenv(env) == v { return } - panic("Something in this program imports go4.org/unsafe/assume-no-moving-gc to declare that it assumes a non-moving garbage collector, but your version of go4.org/unsafe/assume-no-moving-gc hasn't been updated to assert that it's safe against the " + v + " runtime. If you want to risk it, run with environment variable " + env + "=" + v + " set. Notably, if " + v + " adds a moving garbage collector, this program is unsafe to use.") + panic("Something in this program imports go4.org/unsafe/assume-no-moving-gc to declare that it assumes a non-moving garbage collector, but your version of go4.org/unsafe/assume-no-moving-gc hasn't been updated to assert that it's safe against the " + v + " runtime. If you want to risk it, run with environment variable " + env + "=\"" + v + "\" set. Notably, if " + v + " adds a moving garbage collector, this program is unsafe to use.") } diff --git a/vendor/modules.txt b/vendor/modules.txt index 7bebd41b..b96a120d 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -360,7 +360,7 @@ go.opencensus.io/trace/tracestate # go4.org/intern v0.0.0-20220617035311-6925f38cc365 ## explicit; go 1.13 go4.org/intern -# go4.org/unsafe/assume-no-moving-gc v0.0.0-20220617031537-928513b29760 +# go4.org/unsafe/assume-no-moving-gc v0.0.0-20230209150437-ee73d164e760 ## explicit; go 1.11 go4.org/unsafe/assume-no-moving-gc # golang.org/x/crypto v0.5.0