-
Notifications
You must be signed in to change notification settings - Fork 29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Hollow out package to just be aliases/shims to the new home #126
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* Initial renaming in README and Actions config * Add CoC * Add CONTRIBUTING.md * Add Dependabot config * Add release notes config * Update Makefile to match connect-go * Update module name in go.mod * Rename module in buf.gen.yaml * Use absolute paths to work around Go 1.19 breakages in CLI * Remove OpenCensus code * Remove OpenCensus README examples * Update golangci-lint config * Use golangci-lint 1.49.0
Part of our compliance work - use centralized workflow
This PR contains the little bit of code I've actually managed to write in this repo. My intention is to transfer what little knowledge I've accumulated to @joshcarp, who's going to actually carry this project over the finish line. Included here is: * A bit of Makefile and lint configuration cleanup. * Some structure for the top-level API. The primary entrypoint is `otelconnect.WithTelemetry`, which returns a `connect.Option`. * Configuration and options. * A no-op metrics interceptor. * A unary-only tracing interceptor, which doesn't yet have any tests. The next thing to do is probably to add tests for unary tracing (following [the approach used in otelgrpc](https://github.com/open-telemetry/opentelemetry-go-contrib/blob/main/instrumentation/google.golang.org/grpc/otelgrpc/test/grpc_test.go)), then refactor and add streaming tracing support, then add metrics and tests. Co-authored-by: Joshua Carpeggiani <32605850+joshcarp@users.noreply.github.com>
We're already using GCI (since we default to using all available linters), so there's no need for `goimports`. We're landing the same change in Buf, core, and the other Go repos.
- Add tests for unarytracing - Add unarymetrics + tests - Add client and server streaming + limited tests Also adds simple benchmark to make sure that it's not too much slower: ``` goos: darwin goarch: arm64 pkg: github.com/bufbuild/connect-opentelemetry-go BenchmarkStreamingServerNoOptions-10 637 1786482 ns/op BenchmarkStreamingServerOption-10 643 1802962 ns/op PASS ok github.com/bufbuild/connect-opentelemetry-go 3.052s ``` Co-authored-by: Akshay Shah <akshay@akshayshah.org>
Bumps [github.com/bufbuild/connect-go](https://github.com/bufbuild/connect-go) from 1.2.0 to 1.3.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/bufbuild/connect-go/releases">github.com/bufbuild/connect-go's releases</a>.</em></p> <blockquote> <h2>v1.3.1</h2> <!-- raw HTML omitted --> <h2>What's Changed</h2> <h3>Bugfixes</h3> <ul> <li>Don't re-wrap Any when creating ErrorDetails by <a href="https://github.com/jhump"><code>@jhump</code></a> in <a href="https://github-redirect.dependabot.com/bufbuild/connect-go/pull/409">bufbuild/connect-go#409</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/jhump"><code>@jhump</code></a> made their first contribution in <a href="https://github-redirect.dependabot.com/bufbuild/connect-go/pull/409">bufbuild/connect-go#409</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/bufbuild/connect-go/compare/v1.3.0...v1.3.1">https://github.com/bufbuild/connect-go/compare/v1.3.0...v1.3.1</a></p> <h2>v1.3.0</h2> <h2>What's Changed</h2> <h3>Enhancements</h3> <ul> <li>Ensure streaming <code>http.ResponseWriters</code> implement <code>http.Flusher</code> by <a href="https://github.com/akshayjshah"><code>@akshayjshah</code></a> in <a href="https://github-redirect.dependabot.com/bufbuild/connect-go/pull/406">bufbuild/connect-go#406</a></li> <li>Close TLS connection when HTTP/1.1 clients call bidi methods by <a href="https://github.com/akshayjshah"><code>@akshayjshah</code></a> in <a href="https://github-redirect.dependabot.com/bufbuild/connect-go/pull/408">bufbuild/connect-go#408</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/bufbuild/connect-go/compare/v1.2.0...v1.3.0">https://github.com/bufbuild/connect-go/compare/v1.2.0...v1.3.0</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/bufbuild/connect-go/commit/c16c8c96105660bb00226500295476111c0b65b7"><code>c16c8c9</code></a> add API to make it easier to work with ErrorDetail if you have/want an Any (#...</li> <li><a href="https://github.com/bufbuild/connect-go/commit/7a7970478712cfa57384e5f0fd418288b9930e08"><code>7a79704</code></a> Close conn when HTTP/1.1 clients call bidi methods (<a href="https://github-redirect.dependabot.com/bufbuild/connect-go/issues/408">#408</a>)</li> <li><a href="https://github.com/bufbuild/connect-go/commit/9a4d409e6e126418f6791d5b38864625a67ef84f"><code>9a4d409</code></a> Ensure streaming ResponseWriters implement Flush (<a href="https://github-redirect.dependabot.com/bufbuild/connect-go/issues/406">#406</a>)</li> <li><a href="https://github.com/bufbuild/connect-go/commit/241768d08ff2091fd73bff6a15899634e7e11d2a"><code>241768d</code></a> Format imports with GCI (<a href="https://github-redirect.dependabot.com/bufbuild/connect-go/issues/407">#407</a>)</li> <li>See full diff in <a href="https://github.com/bufbuild/connect-go/compare/v1.2.0...v1.3.1">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/bufbuild/connect-go&package-manager=go_modules&previous-version=1.2.0&new-version=1.3.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Updates readme to add examples and matrix of metrics/tracing support
This PR makes a few changes to the README: * It clarifies the status and support sections to highlight that this is currently an untagged alpha release, and that we won't have a stable v1 until the underlying OpenTelemetry libraries stabilize. * It corrects goroutine handling in the README, so that the client request doesn't race with the server starting. * It strips all the prometheus and zipkin initialization from the example. Ideally, we'd show users a realistic example, but the OpenTelemetry, Prometheus, and Zipkin APIs are all incredibly verbose and complex-looking. On balance, I think we're better off pushing that complexity off to the OTel documentation.
Pull in the latest connect-go and OTel SDKs.
Currently a bug where propagation only occurs in client interceptors. This fixes that and propagates in both server and client interceptors
Bumps [github.com/bufbuild/connect-go](https://github.com/bufbuild/connect-go) from 1.4.0 to 1.4.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/bufbuild/connect-go/releases">github.com/bufbuild/connect-go's releases</a>.</em></p> <blockquote> <h2>v1.4.1</h2> <!-- raw HTML omitted --> <h2>What's Changed</h2> <h3>Bugfixes</h3> <ul> <li>Ensure server reflection can always access protobuf descriptors by <a href="https://github.com/joshcarp"><code>@joshcarp</code></a> in <a href="https://github-redirect.dependabot.com/bufbuild/connect-go/pull/418">bufbuild/connect-go#418</a></li> <li>Don't clobber custom User-Agents by <a href="https://github.com/akshayjshah"><code>@akshayjshah</code></a> in <a href="https://github-redirect.dependabot.com/bufbuild/connect-go/pull/423">bufbuild/connect-go#423</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/bufbuild/connect-go/compare/v1.4.0...v1.4.1">https://github.com/bufbuild/connect-go/compare/v1.4.0...v1.4.1</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/bufbuild/connect-go/commit/eab7f2a485611c5a2e3f7188c18ac2c612f8ac1b"><code>eab7f2a</code></a> Prepare for v1.4.1 (<a href="https://github-redirect.dependabot.com/bufbuild/connect-go/issues/425">#425</a>)</li> <li><a href="https://github.com/bufbuild/connect-go/commit/4c75d858192be9df6cdc21b66046140e374a3bc9"><code>4c75d85</code></a> Don't clobber custom User-Agents (<a href="https://github-redirect.dependabot.com/bufbuild/connect-go/issues/423">#423</a>)</li> <li><a href="https://github.com/bufbuild/connect-go/commit/528158cc6401c1679822b10b08b984fda27a111c"><code>528158c</code></a> Import base go file even if there are no base types required (<a href="https://github-redirect.dependabot.com/bufbuild/connect-go/issues/418">#418</a>)</li> <li>See full diff in <a href="https://github.com/bufbuild/connect-go/compare/v1.4.0...v1.4.1">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/bufbuild/connect-go&package-manager=go_modules&previous-version=1.4.0&new-version=1.4.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
## Changes: - Refactor, - Implement streaming handler tracing - Implement streaming client tracing - Add AttributeFilter - Remove `Tracer()` method and `traceprovider` on config and just initialize a single tracer for opentelemetry-connect-go - Consolidate metrics and span recording together; don't ### fix existing bugs: - `success` is recorded instead of any error in `StreamingClient` - `requests` and `responses` metrics are currently recorded in `streamingState`, but it has been moved to the interceptors because `requests` are `send` events for clients and `receive` events for handlers (and vice versa for `responses`). - both `instr.requestsPerRPC.Record` and `instr.responsesPerRPC.Record` are currently called within `streamingstate.receive` which is incorrect because then any `receive` event records both events when it should be one. At least one of these calls should be in `send` depending on what type of handler it is. - inject trace context from unary client; I don't see any reason why a span trace can't be handed to a unary call. - Don't record events when err == io.EOF - Set span events and attributes at the end of the interceptor (this helps with readability quite a lot) ### Attribute filter There is now an option to filter based on attribute.KeyValue + Request. This is enabled by passing in an option `otelconnect.WithAttributeFilter` that takes a `Request` and `attribute.KeyValue`. Example of filtering out `NetPeerPort` for server metrics only: ```go otelconnect.WithAttributeFilter(func(request *otelconnect.Request, value attribute.KeyValue) bool { if !request.Spec.IsClient && (value.Key == semconv.NetPeerPortKey || value.Key == semconv.NetPeerIPKey) { return false } return true }) ```
Re-word README to reflect addition of streaming metrics and tracing.
… servers (#50) This removes all references to `net.peer.ip` addresses and replaces it with `net.peer.name` as is required for the opentelemetry specification. > net.peer.name | string | RPC server host name. [3] | example.com | Required > -- | -- | -- | -- | -- > Additional attribute requirements: At least one of the following sets of attributes is required: > [net.sock.peer.addr](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/trace/semantic_conventions/span-general.md) [net.peer.name](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/trace/semantic_conventions/span-general.md) Also notably this can also be set to up addresses: > When host component is an IP address, instrumentations SHOULD NOT do a reverse proxy lookup to obtain DNS name and SHOULD set net.peer.name to the IP address provided in the host component. There was also an issue in the logic that wasn't adding `NetPeerPortKey` correctly, that's now been fixed. Related: https://github.com/bufbuild/connect-opentelemetry-go/issues/48
…ans (#56) All server spans are untrusted by default, the user can explicitly trust with WithTrustRemote() All client spans are trusted by default, WithTrustRemote() is a noop Closes: https://github.com/bufbuild/connect-opentelemetry-go/issues/47
We want to use a PR title to enforce cleaner PR titles
- Only set SpanStatus when errors are non nil - Leave SpanStatus unset for all non error scenarios - Add test for Streaming - Update old tests to check SpanStatus Fixes: https://github.com/bufbuild/connect-opentelemetry-go/issues/51
The only use case we have of using this package is using a number of Interceptors instead of just the `WithTelemetry` option. It's anticipated that if a project is using connect-opentelemetry-go the chances are that it's probably also using other interceptors. In that case it makes sense to expose a `New` function that returns an `type interceptor struct` that can be plugged into the existing interceptor plumbing. The only difference this makes to existing projects that are using `WithTelemetry` is that they now need to use `connect.WithInterceptor(otelconnect.New())` Fixes: https://github.com/bufbuild/connect-opentelemetry-go/issues/21
connect-go v1.5.2 requires go 1.19, this updates both
Prefix OTel unit constants to reduce the chances of unintentional shadowing later on.
#85) I am about to release `v0.1.0` of this repo, so this removes references to `untagged alpha release`
Add ecosystem part in README.md
Changes from `2023` to `2022-2023`
Bumps [google.golang.org/protobuf](https://github.com/protocolbuffers/protobuf-go) from 1.28.1 to 1.29.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/protocolbuffers/protobuf-go/releases">google.golang.org/protobuf's releases</a>.</em></p> <blockquote> <h2>v1.29.0</h2> <ul> <li><a href="https://github.com/protocolbuffers/protobuf-go/blob/HEAD/#v1.29-overview">Overview</a></li> <li><a href="https://github.com/protocolbuffers/protobuf-go/blob/HEAD/#v1.29-notable-changes">Notable changes</a></li> </ul> <h2>Overview <!-- raw HTML omitted --><!-- raw HTML omitted --></h2> <p>This version introduces a new package <code>protodelim</code> to marshal and unmarshal size-delimited messages. It also bringt the implementation up to date with the latest protobuf features.</p> <h2>Notable changes <!-- raw HTML omitted --><!-- raw HTML omitted --></h2> <p><strong>New Features.</strong></p> <ul> <li><a href="https://go.dev/cl/419254">CL/419254</a>: encoding: add protodelim package</li> <li><a href="https://go.dev/cl/450775">CL/450775</a>: reflect/protoreflect: add Value.Equal method</li> <li><a href="https://go.dev/cl/462315">CL/462315</a>: cmd/protoc-gen-go: make deprecated messages more descriptive</li> <li><a href="https://go.dev/cl/473015">CL/473015</a>: encoding/prototext: allow whitespace and comments between minus sign and number in negative numeric literal</li> </ul> <p><strong>Alignment with protobuf</strong></p> <ul> <li><a href="https://go.dev/cl/426054">CL/426054</a>: types/descriptorpb: update *.pb.go to use latest protoc release, 21.5</li> <li><a href="https://go.dev/cl/425554">CL/425554</a>: encoding/protojson: fix parsing of google.protobuf.Timestamp</li> <li><a href="https://go.dev/cl/461238">CL/461238</a>: protobuf: remove the check for reserved field numbers</li> <li><a href="https://go.dev/cl/469255">CL/469255</a>: types/descriptorpb: regenerate using latest protobuf v22.0 release</li> <li><a href="https://go.dev/cl/472696">CL/472696</a>: cmd/protoc-gen-go: support protobuf retention feature</li> </ul> <p><strong>Documentation improvements:</strong></p> <ul> <li><a href="https://go.dev/cl/464275">CL/464275</a>: proto: document Equal behavior of invalid messages</li> <li><a href="https://go.dev/cl/466375">CL/466375</a>: all: update links to Protocol Buffer documentation</li> </ul> <p><strong>Minor performance improvements</strong></p> <ul> <li><a href="https://go.dev/cl/460215">CL/460215</a>: types/known/structpb: preallocate map in AsMap</li> <li><a href="https://go.dev/cl/465115">CL/465115</a>: internal/strs: avoid unnecessary allocations in Builder</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/protocolbuffers/protobuf-go/commit/484b9f31ec32608d11edb577c307741f364e3cff"><code>484b9f3</code></a> all: release v1.29.0</li> <li><a href="https://github.com/protocolbuffers/protobuf-go/commit/eba8b0975f4efc219baabc1e0e13df28a6e1ad28"><code>eba8b09</code></a> cmd/protoc-gen-go: support protobuf retention feature</li> <li><a href="https://github.com/protocolbuffers/protobuf-go/commit/fcf5f6cb72978812ac36085183b5c52701c069cb"><code>fcf5f6c</code></a> encoding/prototext: allow whitespace and comments between minus sign and numb...</li> <li><a href="https://github.com/protocolbuffers/protobuf-go/commit/bc1253ad37431ee26876db47cd8207cdec81993c"><code>bc1253a</code></a> types/descriptorpb: regenerate using latest protobuf v22.0 release</li> <li><a href="https://github.com/protocolbuffers/protobuf-go/commit/246af0d153cae8ef4e2915a8d212167ad0751985"><code>246af0d</code></a> internal,reflect: correct typos</li> <li><a href="https://github.com/protocolbuffers/protobuf-go/commit/49eaa78c6c9cc759b5ac50b64249247f393e9bdd"><code>49eaa78</code></a> all: update links to Protocol Buffer documentation</li> <li><a href="https://github.com/protocolbuffers/protobuf-go/commit/e831c33179b55b753630e0555cdc32b83b81e954"><code>e831c33</code></a> proto: document Equal behavior of invalid messages</li> <li><a href="https://github.com/protocolbuffers/protobuf-go/commit/358fe40267afd0cb5380d132cc93ddcbed2beb44"><code>358fe40</code></a> internal/strs: avoid unnecessary allocations in Builder</li> <li><a href="https://github.com/protocolbuffers/protobuf-go/commit/0430d694e04ae06ca14b27b50e83674d07e2e662"><code>0430d69</code></a> internal/impl: remove the unreachable line of code</li> <li><a href="https://github.com/protocolbuffers/protobuf-go/commit/a9481185b34db2fb2f5c90fcf7446be1554e42f7"><code>a948118</code></a> cmd/protoc-gen-go: make deprecated messages more descriptive</li> <li>Additional commits viewable in <a href="https://github.com/protocolbuffers/protobuf-go/compare/v1.28.1...v1.29.0">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=google.golang.org/protobuf&package-manager=go_modules&previous-version=1.28.1&new-version=1.29.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: joshcarp <jcarpeggiani@buf.build>
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 3 to 4. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/actions/setup-go/releases">actions/setup-go's releases</a>.</em></p> <blockquote> <h2>v4.0.0</h2> <p>In scope of release we enable cache by default. The action won’t throw an error if the cache can’t be restored or saved. The action will throw a warning message but it won’t stop a build process. The cache can be disabled by specifying <code>cache: false</code>.</p> <pre lang="yaml"><code>steps: - uses: actions/checkout@v3 - uses: actions/setup-go@v4 with: go-version: ‘1.19’ - run: go run hello.go </code></pre> <p>Besides, we introduce such changes as</p> <ul> <li><a href="https://redirect.github.com/actions/setup-go/pull/305">Allow to use only GOCACHE for cache</a></li> <li><a href="https://redirect.github.com/actions/setup-go/pull/315">Bump json5 from 2.2.1 to 2.2.3</a></li> <li><a href="https://redirect.github.com/actions/setup-go/pull/323">Use proper version for primary key in cache</a></li> <li><a href="https://redirect.github.com/actions/setup-go/pull/351">Always add Go bin to the PATH</a></li> <li><a href="https://redirect.github.com/actions/setup-go/pull/350">Add step warning if go-version input is empty</a></li> </ul> <h2>Add support for stable and oldstable aliases</h2> <p>In scope of this release we introduce aliases for the <code>go-version</code> input. The <code>stable</code> alias instals the latest stable version of Go. The <code>oldstable</code> alias installs previous latest minor release (the stable is 1.19.x -> the oldstable is 1.18.x).</p> <h3>Stable</h3> <pre lang="yaml"><code>steps: - uses: actions/checkout@v3 - uses: actions/setup-go@v3 with: go-version: 'stable' - run: go run hello.go </code></pre> <h3>OldStable</h3> <pre lang="yaml"><code>steps: - uses: actions/checkout@v3 - uses: actions/setup-go@v3 with: go-version: 'oldstable' - run: go run hello.go </code></pre> <h2>Add support for go.work and pass the token input through on GHES</h2> <p>In scope of this release we added <a href="https://redirect.github.com/actions/setup-go/pull/283">support for go.work file to pass it in go-version-file input</a>.</p> <pre lang="yaml"><code>steps: - uses: actions/checkout@v3 - uses: actions/setup-go@v3 </tr></table> </code></pre> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/actions/setup-go/commit/4d34df0c2316fe8122ab82dc22947d607c0c91f9"><code>4d34df0</code></a> Update configuration files (<a href="https://redirect.github.com/actions/setup-go/issues/348">#348</a>)</li> <li><a href="https://github.com/actions/setup-go/commit/fdc0d672a12b8fc05ef4c549c3fd5b0f03ebeb4c"><code>fdc0d67</code></a> Add Go bin if go-version input is empty (<a href="https://redirect.github.com/actions/setup-go/issues/351">#351</a>)</li> <li><a href="https://github.com/actions/setup-go/commit/ebfdf6ac95bce0e7e743a60aba7adf59b400885b"><code>ebfdf6a</code></a> add warning if go-version is empty (<a href="https://redirect.github.com/actions/setup-go/issues/350">#350</a>)</li> <li><a href="https://github.com/actions/setup-go/commit/b27d76912e7cb72b7262b5be2ec903b6cfaf358a"><code>b27d769</code></a> fix lockfileVersion (<a href="https://redirect.github.com/actions/setup-go/issues/349">#349</a>)</li> <li><a href="https://github.com/actions/setup-go/commit/c51a7207680f1bee06f4a751214aab70667f9e25"><code>c51a720</code></a> Enable caching by default with default input (<a href="https://redirect.github.com/actions/setup-go/issues/332">#332</a>)</li> <li><a href="https://github.com/actions/setup-go/commit/6b848af622919e18822928df24a57044dc6ea9ab"><code>6b848af</code></a> Merge pull request <a href="https://redirect.github.com/actions/setup-go/issues/343">#343</a> from akv-platform/reusable-workflow</li> <li><a href="https://github.com/actions/setup-go/commit/12741cc20952a981105f1dc8366d69f1d24ed472"><code>12741cc</code></a> Format update-config-files.yml</li> <li><a href="https://github.com/actions/setup-go/commit/7a77a6aab66a15178e313f5908f5ed9b8500894c"><code>7a77a6a</code></a> Merge branch 'main' into reusable-workflow</li> <li><a href="https://github.com/actions/setup-go/commit/42a0cc8e1491c14a0e9486c3a895d2124f51af1a"><code>42a0cc8</code></a> Add update-config-files.yml</li> <li><a href="https://github.com/actions/setup-go/commit/7406d654ad8f517886f6c77135494c2b99355381"><code>7406d65</code></a> Add and configure ESLint and update configuration for Prettier (<a href="https://redirect.github.com/actions/setup-go/issues/341">#341</a>)</li> <li>Additional commits viewable in <a href="https://github.com/actions/setup-go/compare/v3...v4">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/setup-go&package-manager=github_actions&previous-version=3&new-version=4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [google.golang.org/protobuf](https://github.com/protocolbuffers/protobuf-go) from 1.29.0 to 1.30.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/protocolbuffers/protobuf-go/releases">google.golang.org/protobuf's releases</a>.</em></p> <blockquote> <h2>v1.30.0</h2> <ul> <li><a href="https://github.com/protocolbuffers/protobuf-go/blob/HEAD/#v1.30.0-notable-changes">Notable changes</a></li> </ul> <p><strong>Announcement</strong> In the previous two releases, v1.29.0 and v1.29.1, we associated the tags with the wrong commits and thus the tags do not reference any commit in this repository. This tag, v1.30.0, refers to an existing commit again. Sorry for the inconvenience.</p> <h2>Notable changes <!-- raw HTML omitted --><!-- raw HTML omitted --></h2> <p><strong>New Features</strong></p> <ul> <li><a href="https://go.dev/cl/449576">CL/449576</a>: protoadapt: helper functions to convert v1 or v2 message to either v1 or v2 message.</li> </ul> <h2>v1.29.1</h2> <ul> <li><a href="https://github.com/protocolbuffers/protobuf-go/blob/HEAD/#v1.29.1-notable-changes">Notable changes</a></li> </ul> <h2>Notable changes <!-- raw HTML omitted --><!-- raw HTML omitted --></h2> <p><strong>Bug fixes</strong></p> <ul> <li><a href="https://go.dev/cl/475995">CL/475995</a>: internal/encoding/text: fix parsing of incomplete numbers</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/protocolbuffers/protobuf-go/commit/f221882bfb484564f1714ae05f197dea2c76898d"><code>f221882</code></a> all: release v1.30.0</li> <li><a href="https://github.com/protocolbuffers/protobuf-go/commit/e344383da66ac9cf11000f824674793a77fc7d7e"><code>e344383</code></a> protoadapt: helper functions to convert v1 or v2 message to either v1 or v2 m...</li> <li><a href="https://github.com/protocolbuffers/protobuf-go/commit/32efccd1582255f0ef48bcc3942484e81985c76b"><code>32efccd</code></a> all: start v1.29.1-devel</li> <li><a href="https://github.com/protocolbuffers/protobuf-go/commit/771d8c7a1eefbd21bf7db08ec6967fed9ff9d704"><code>771d8c7</code></a> all: release v1.29.1</li> <li><a href="https://github.com/protocolbuffers/protobuf-go/commit/edaf511a7a37a90db2727b600d699e1e8d2840b4"><code>edaf511</code></a> internal/encoding/text: fix parsing of incomplete numbers</li> <li><a href="https://github.com/protocolbuffers/protobuf-go/commit/fe5bc5404151983756ef8980016a7d59bd63bb7e"><code>fe5bc54</code></a> all: start v1.29.0-devel</li> <li><a href="https://github.com/protocolbuffers/protobuf-go/commit/d3c9826520c7d6061812d1d94ad81f871792ea8c"><code>d3c9826</code></a> all: release v1.29.0</li> <li>See full diff in <a href="https://github.com/protocolbuffers/protobuf-go/compare/v1.29.0...v1.30.0">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=google.golang.org/protobuf&package-manager=go_modules&previous-version=1.29.0&new-version=1.30.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: joshcarp <jcarpeggiani@buf.build> Co-authored-by: Joshua Carpeggiani <32605850+joshcarp@users.noreply.github.com>
Amend the README to include common gotchas (WithTrustRemote and cardinality), and add a link to the docs on connect.build. Addresses the comments on #91.
- Updates deps - Fixes test cases
The go opentelemetry metrics api is now stable
Upgrades from `v1.19.0` to `v1.20.0`
Bumps [github.com/bufbuild/connect-go](https://github.com/bufbuild/connect-go) from 1.7.0 to 1.8.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/bufbuild/connect-go/releases">github.com/bufbuild/connect-go's releases</a>.</em></p> <blockquote> <h2>v1.8.0</h2> <h2>What's Changed</h2> <h3>Enhancements</h3> <ul> <li>Expose HTTP method of unary requests (see <a href="https://connect.build/docs/go/get-requests-and-caching#distinguishing-get-requests">documentation</a>) by <a href="https://github.com/jhump"><code>@jhump</code></a> and <a href="https://github.com/akshayjshah"><code>@akshayjshah</code></a> in <a href="https://redirect.github.com/bufbuild/connect-go/pull/502">bufbuild/connect-go#502</a> and <a href="https://redirect.github.com/bufbuild/connect-go/pull/509">bufbuild/connect-go#509</a></li> <li>Implement <code>fmt.Stringer</code> interface for StreamType to improve debug logging by <a href="https://github.com/svrana"><code>@svrana</code></a> in <a href="https://redirect.github.com/bufbuild/connect-go/pull/495">bufbuild/connect-go#495</a></li> </ul> <h3>Bugfixes</h3> <ul> <li>Fix documentation comments to use correct identifier name by <a href="https://github.com/cuishuang"><code>@cuishuang</code></a> in <a href="https://redirect.github.com/bufbuild/connect-go/pull/498">bufbuild/connect-go#498</a></li> <li>Fix Makefile quotes to handle paths with spaces by <a href="https://github.com/bufdev"><code>@bufdev</code></a> in <a href="https://redirect.github.com/bufbuild/connect-go/pull/508">bufbuild/connect-go#508</a></li> <li>Always close response body in <code>CloseRead</code> by <a href="https://github.com/pkwarren"><code>@pkwarren</code></a> in <a href="https://redirect.github.com/bufbuild/connect-go/pull/515">bufbuild/connect-go#515</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/cuishuang"><code>@cuishuang</code></a> made their first contribution in <a href="https://redirect.github.com/bufbuild/connect-go/pull/498">bufbuild/connect-go#498</a></li> <li><a href="https://github.com/svrana"><code>@svrana</code></a> made their first contribution in <a href="https://redirect.github.com/bufbuild/connect-go/pull/495">bufbuild/connect-go#495</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/bufbuild/connect-go/compare/v1.7.0...v1.8.0">https://github.com/bufbuild/connect-go/compare/v1.7.0...v1.8.0</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/bufbuild/connect-go/commit/728fde3b192d9e163186827d75912f6c284fb46f"><code>728fde3</code></a> Prepare for v1.8.0 (<a href="https://redirect.github.com/bufbuild/connect-go/issues/516">#516</a>)</li> <li><a href="https://github.com/bufbuild/connect-go/commit/43a6f8347af7f7a2e12b55f8713dd16a3ba9c926"><code>43a6f83</code></a> Always close response body in CloseRead (<a href="https://redirect.github.com/bufbuild/connect-go/issues/515">#515</a>)</li> <li><a href="https://github.com/bufbuild/connect-go/commit/b16fbd1009dabe7bfbb94d8d9b36f750ade60b6d"><code>b16fbd1</code></a> Expose HTTP method in unary handlers (<a href="https://redirect.github.com/bufbuild/connect-go/issues/509">#509</a>)</li> <li><a href="https://github.com/bufbuild/connect-go/commit/17eb88dfe4c3112c494f2233ccf67d61040da5be"><code>17eb88d</code></a> Expose request method of unary requests to clients and server handlers (<a href="https://redirect.github.com/bufbuild/connect-go/issues/502">#502</a>)</li> <li><a href="https://github.com/bufbuild/connect-go/commit/d82d4724bc78d38019b8e4eee164adcd58f9e604"><code>d82d472</code></a> Fix Makefile quotes (<a href="https://redirect.github.com/bufbuild/connect-go/issues/508">#508</a>)</li> <li><a href="https://github.com/bufbuild/connect-go/commit/555c1c027642e50b629b79fd718d058d2d6cacfa"><code>555c1c0</code></a> Upgrade tool dependencies (<a href="https://redirect.github.com/bufbuild/connect-go/issues/505">#505</a>)</li> <li><a href="https://github.com/bufbuild/connect-go/commit/783d36764d77aeb03afe33586a3a8de24522e101"><code>783d367</code></a> Move asMaxBytesError to error.go (<a href="https://redirect.github.com/bufbuild/connect-go/issues/504">#504</a>)</li> <li><a href="https://github.com/bufbuild/connect-go/commit/acc59cbed359a3f4b014c56dcbbabf59d6c0aba6"><code>acc59cb</code></a> Implement fmt.Stringer interface for StreamType (<a href="https://redirect.github.com/bufbuild/connect-go/issues/495">#495</a>)</li> <li><a href="https://github.com/bufbuild/connect-go/commit/e04e4bd94c1d91031cdb2de84a50be3c003b275f"><code>e04e4bd</code></a> Prefix comments with correct identifier name (<a href="https://redirect.github.com/bufbuild/connect-go/issues/498">#498</a>)</li> <li><a href="https://github.com/bufbuild/connect-go/commit/b41ccea0660379ef573466ad7f3698a1ccb50ec7"><code>b41ccea</code></a> Back to development (<a href="https://redirect.github.com/bufbuild/connect-go/issues/497">#497</a>)</li> <li>See full diff in <a href="https://github.com/bufbuild/connect-go/compare/v1.7.0...v1.8.0">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/bufbuild/connect-go&package-manager=go_modules&previous-version=1.7.0&new-version=1.8.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.8.3 to 1.8.4. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/stretchr/testify/commit/f97607b89807936ac4ff96748d766cf4b9711f78"><code>f97607b</code></a> Create GitHub release when new release tag is pushed (<a href="https://redirect.github.com/stretchr/testify/issues/1354">#1354</a>)</li> <li>See full diff in <a href="https://github.com/stretchr/testify/compare/v1.8.3...v1.8.4">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/stretchr/testify&package-manager=go_modules&previous-version=1.8.3&new-version=1.8.4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
For Connect RPCs that use GET and a "304 Not Modified" status is returned, the metric will use the `http.status_code` attribute with a value of 304, instead of an `rpc.connect.error_code` attribute. (It would previously label the metric with an error code of "unknown", which is misleading.)
Addresses https://github.com/bufbuild/connect-opentelemetry-go/issues/92 with a new interceptor option to omit the sent/received events.
If the RPC is using the Connect protocol and returns a not modified error, we shouldn't set the span status to error. Follow-up to #120. --------- Co-authored-by: Josh Humphries <2035234+jhump@users.noreply.github.com>
Add `connect` and `pingv1` import aliases for packages whose name doesn't match. Signed-off-by: Koichi Shiraishi <zchee.io@gmail.com>
- Changes name of option from `OmitRPCEvents` to `OmitTraceEvents` to be more clear - Omits trace events for streaming too - Adds tests Closes: #92 --------- Co-authored-by: Akshay Shah <akshay@akshayshah.org>
Go does not allow creating an alias for a generic type. That means we can't do this same thing for the connect-go repo. And since this repo depends on that, we can't really do it here either. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This draft PR is a preview of what this repo will look like after the module has been moved to a new home at
connectrpc.com/otelconnect
. For code that continues to refer to the prior module name, all exported vars, consts, and types are just aliases to the new module, and all exported functions are shims that call the new module.