diff --git a/CHANGELOG.md b/CHANGELOG.md index 6e3f0334278..2702ccda255 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,13 +10,41 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ### Added -- - Extract resource attributes from the `OTEL_RESOURCE_ATTRIBUTES` environment variable and merge them with the `resource.Default` resource as well as resources provided to the `TracerProvider` and metric `Controller`. (#1785) +### Changed + +### Deprecated + +### Removed + +### Fixed + +### Security + +## [0.20.0] - 2021-04-23 + +### Added + +- The OTLP exporter now has two new convenience functions, `NewExportPipeline` and `InstallNewPipeline`, setup and install the exporter in tracing and metrics pipelines. (#1373) +- Adds semantic conventions for exceptions. (#1492) - Added Jaeger Environment variables: `OTEL_EXPORTER_JAEGER_AGENT_HOST`, `OTEL_EXPORTER_JAEGER_AGENT_PORT` These environment variables can be used to override Jaeger agent hostname and port (#1752) -- The OTLP exporter now has two new convenience functions, `NewExportPipeline` and `InstallNewPipeline`, setup and install the exporter in tracing and metrics pipelines. (#1373) -- Adds test to check BatchSpanProcessor ignores `OnEnd` and `ForceFlush` post `Shutdown`. (#1772) - Option `ExportTimeout` was added to batch span processor. (#1755) -- Adds semantic conventions for exceptions. (#1492) +- `trace.TraceFlags` is now a defined type over `byte` and `WithSampled(bool) TraceFlags` and `IsSampled() bool` methods have been added to it. (#1770) +- The `Event` and `Link` struct types from the `go.opentelemetry.io/otel` package now include a `DroppedAttributeCount` field to record the number of attributes that were not recorded due to configured limits being reached. (#1771) +- The Jaeger exporter now reports dropped attributes for a Span event in the exported log. (#1771) +- Adds test to check BatchSpanProcessor ignores `OnEnd` and `ForceFlush` post `Shutdown`. (#1772) +- Extract resource attributes from the `OTEL_RESOURCE_ATTRIBUTES` environment variable and merge them with the `resource.Default` resource as well as resources provided to the `TracerProvider` and metric `Controller`. (#1785) +- Added `WithOSType` resource configuration option to set OS (Operating System) type resource attribute (`os.type`). (#1788) +- Added `WithProcess*` resource configuration options to set Process resource attributes. (#1788) + - `process.pid` + - `process.executable.name` + - `process.executable.path` + - `process.command_args` + - `process.owner` + - `process.runtime.name` + - `process.runtime.version` + - `process.runtime.description` +- Adds `k8s.node.name` and `k8s.node.uid` attribute keys to the `semconv` package. (#1789) - Added support for configuring OTLP/HTTP and OTLP/gRPC Endpoints, TLS Certificates, Headers, Compression and Timeout via Environment Variables. (#1758, #1769 and #1811) - `OTEL_EXPORTER_OTLP_ENDPOINT` - `OTEL_EXPORTER_OTLP_TRACES_ENDPOINT` @@ -33,21 +61,7 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm - `OTEL_EXPORTER_OTLP_CERTIFICATE` - `OTEL_EXPORTER_OTLP_TRACES_CERTIFICATE` - `OTEL_EXPORTER_OTLP_METRICS_CERTIFICATE` -- `trace.TraceFlags` is now a defined type over `byte` and `WithSampled(bool) TraceFlags` and `IsSampled() bool` methods have been added to it. (#1770) -- The `Event` and `Link` struct types from the `go.opentelemetry.io/otel` package now include a `DroppedAttributeCount` field to record the number of attributes that were not recorded due to configured limits being reached. (#1771) -- The Jaeger exporter now reports dropped attributes for a Span event in the exported log. (#1771) -- Adds `k8s.node.name` and `k8s.node.uid` attribute keys to the `semconv` package. (#1789) - Adds `otlpgrpc.WithTimeout` option for configuring timeout to the otlp/gRPC exporter. (#1821) -- Added `WithOSType` resource configuration option to set OS (Operating System) type resource attribute (`os.type`). (#1788) -- Added `WithProcess*` resource configuration options to set Process resource attributes. (#1788) - - `process.pid` - - `process.executable.name` - - `process.executable.path` - - `process.command_args` - - `process.owner` - - `process.runtime.name` - - `process.runtime.version` - - `process.runtime.description` ### Fixed @@ -62,15 +76,6 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ### Changed -- Updated Jaeger Environment Variable: `OTEL_EXPORTER_JAEGER_ENDPOINT` to have a default value of - `http://localhost:14250` when not set, in compliance with OTel spec. Changed the function `WithCollectorEndpoint` - in the Jaeger exporter package to no longer accept an endpoint as an argument. - The endpoint can be passed in as a `CollectorEndpointOption` using the `WithEndpoint` function or - specified through the `OTEL_EXPORTER_JAEGER_ENDPOINT` environment variable. (#1824) -- Modify Zipkin Exporter default service name, use default resouce's serviceName instead of empty. (#1777) -- Updated Jaeger Environment Variables: `JAEGER_ENDPOINT`, `JAEGER_USER`, `JAEGER_PASSWORD` - to `OTEL_EXPORTER_JAEGER_ENDPOINT`, `OTEL_EXPORTER_JAEGER_USER`, `OTEL_EXPORTER_JAEGER_PASSWORD` - in compliance with OTel spec (#1752) - Span `RecordError` now records an `exception` event to comply with the semantic convention specification. (#1492) - Jaeger exporter was updated to use thrift v0.14.1. (#1712) - Migrate from using internally built and maintained version of the OTLP to the one hosted at `go.opentelemetry.io/proto/otlp`. (#1713) @@ -78,28 +83,32 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm - The storage of a local or remote Span in a `context.Context` using its SpanContext is unified to store just the current Span. The Span's SpanContext can now self-identify as being remote or not. This means that `"go.opentelemetry.io/otel/trace".ContextWithRemoteSpanContext` will now overwrite any existing current Span, not just existing remote Spans, and make it the current Span in a `context.Context`. (#1731) +- Improve OTLP/gRPC exporter connection errors. (#1737) - Information about a parent span context in a `"go.opentelemetry.io/otel/export/trace".SpanSnapshot` is unified in a new `Parent` field. The existing `ParentSpanID` and `HasRemoteParent` fields are removed in favor of this. (#1748) - The `ParentContext` field of the `"go.opentelemetry.io/otel/sdk/trace".SamplingParameters` is updated to hold a `context.Context` containing the parent span. This changes it to make `SamplingParameters` conform with the OpenTelemetry specification. (#1749) +- Updated Jaeger Environment Variables: `JAEGER_ENDPOINT`, `JAEGER_USER`, `JAEGER_PASSWORD` + to `OTEL_EXPORTER_JAEGER_ENDPOINT`, `OTEL_EXPORTER_JAEGER_USER`, `OTEL_EXPORTER_JAEGER_PASSWORD` + in compliance with OTel spec (#1752) - Modify `BatchSpanProcessor.ForceFlush` to abort after timeout/cancellation. (#1757) -- Improve OTLP/gRPC exporter connection errors. (#1737) - The `DroppedAttributeCount` field of the `Span` in the `go.opentelemetry.io/otel` package now only represents the number of attributes dropped for the span itself. It no longer is a conglomerate of itself, events, and link attributes that have been dropped. (#1771) - Make `ExportSpans` in Jaeger Exporter honor context deadline. (#1773) +- Modify Zipkin Exporter default service name, use default resouce's serviceName instead of empty. (#1777) - The `go.opentelemetry.io/otel/sdk/export/trace` package is merged into the `go.opentelemetry.io/otel/sdk/trace` package. (#1778) - The prometheus.InstallNewPipeline example is moved from comment to example test (#1796) - The convenience functions for the stdout exporter have been updated to return the `TracerProvider` implementation and enable the shutdown of the exporter. (#1800) - Replace the flush function returned from the Jaeger exporter's convenience creation functions (`InstallNewPipeline` and `NewExportPipeline`) with the `TracerProvider` implementation they create. This enables the caller to shutdown and flush using the related `TracerProvider` methods. (#1822) +- Updated the Jaeger exporter to have a default enpoint, `http://localhost:14250`, for the collector. (#1824) +- Changed the function `WithCollectorEndpoint` in the Jaeger exporter to no longer accept an endpoint as an argument. + The endpoint can be passed with the `CollectorEndpointOption` using the `WithEndpoint` function or by setting the `OTEL_EXPORTER_JAEGER_ENDPOINT` environment variable value appropriately. (#1824) - The Jaeger exporter no longer batches exported spans itself, instead it relies on the SDK's `BatchSpanProcessor` for this functionality. (#1830) - The Jaeger exporter creation functions (`NewRawExporter`, `NewExportPipeline`, and `InstallNewPipeline`) no longer accept the removed `Option` type as a variadic argument. (#1830) ### Removed -- Removed the functions `CollectorEndpointFromEnv` and `WithCollectorEndpointOptionFromEnv` from the Jaeger exporter. - These functions for retrieving specific environment variable values are redundant of other internal functions and - are not intended for end user use. (#1824) - Removed Jaeger Environment variables: `JAEGER_SERVICE_NAME`, `JAEGER_DISABLED`, `JAEGER_TAGS` These environment variables will no longer be used to override values of the Jaeger exporter (#1752) - No longer set the links for a `Span` in `go.opentelemetry.io/otel/sdk/trace` that is configured to be a new root. @@ -117,6 +126,9 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm The information that could be configured in the `Process` struct should be configured in a `Resource` instead. (#1776, #1804) - Remove the `WithDisabled` option from the Jaeger exporter. To disable the exporter unregister it from the `TracerProvider` or use a no-operation `TracerProvider`. (#1806) +- Removed the functions `CollectorEndpointFromEnv` and `WithCollectorEndpointOptionFromEnv` from the Jaeger exporter. + These functions for retrieving specific environment variable values are redundant of other internal functions and + are not intended for end user use. (#1824) - Removed the Jaeger exporter `WithSDKOptions` `Option`. This option was used to set SDK options for the exporter creation convenience functions. These functions are provided as a way to easily setup or install the exporter with what are deemed reasonable SDK settings for common use cases. @@ -1275,7 +1287,8 @@ It contains api and sdk for trace and meter. - CODEOWNERS file to track owners of this project. -[Unreleased]: https://github.com/open-telemetry/opentelemetry-go/compare/v0.19.0...HEAD +[Unreleased]: https://github.com/open-telemetry/opentelemetry-go/compare/v0.20.0...HEAD +[0.20.0]: https://github.com/open-telemetry/opentelemetry-go/releases/tag/v0.20.0 [0.19.0]: https://github.com/open-telemetry/opentelemetry-go/releases/tag/v0.19.0 [0.18.0]: https://github.com/open-telemetry/opentelemetry-go/releases/tag/v0.18.0 [0.17.0]: https://github.com/open-telemetry/opentelemetry-go/releases/tag/v0.17.0 diff --git a/bridge/opencensus/go.mod b/bridge/opencensus/go.mod index 81a653b54c4..1e37099db69 100644 --- a/bridge/opencensus/go.mod +++ b/bridge/opencensus/go.mod @@ -4,12 +4,12 @@ go 1.14 require ( go.opencensus.io v0.22.6-0.20201102222123-380f4078db9f - go.opentelemetry.io/otel v0.19.0 - go.opentelemetry.io/otel/metric v0.19.0 - go.opentelemetry.io/otel/oteltest v0.19.0 - go.opentelemetry.io/otel/sdk v0.19.0 - go.opentelemetry.io/otel/sdk/export/metric v0.19.0 - go.opentelemetry.io/otel/trace v0.19.0 + go.opentelemetry.io/otel v0.20.0 + go.opentelemetry.io/otel/metric v0.20.0 + go.opentelemetry.io/otel/oteltest v0.20.0 + go.opentelemetry.io/otel/sdk v0.20.0 + go.opentelemetry.io/otel/sdk/export/metric v0.20.0 + go.opentelemetry.io/otel/trace v0.20.0 ) replace go.opentelemetry.io/otel => ../.. diff --git a/bridge/opentracing/go.mod b/bridge/opentracing/go.mod index 5083e71213d..87e20b0877b 100644 --- a/bridge/opentracing/go.mod +++ b/bridge/opentracing/go.mod @@ -6,8 +6,8 @@ replace go.opentelemetry.io/otel => ../.. require ( github.com/opentracing/opentracing-go v1.2.0 - go.opentelemetry.io/otel v0.19.0 - go.opentelemetry.io/otel/trace v0.19.0 + go.opentelemetry.io/otel v0.20.0 + go.opentelemetry.io/otel/trace v0.20.0 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../opencensus diff --git a/example/jaeger/go.mod b/example/jaeger/go.mod index 087c386dad8..14a00892744 100644 --- a/example/jaeger/go.mod +++ b/example/jaeger/go.mod @@ -9,9 +9,9 @@ replace ( ) require ( - go.opentelemetry.io/otel v0.19.0 - go.opentelemetry.io/otel/exporters/trace/jaeger v0.19.0 - go.opentelemetry.io/otel/sdk v0.19.0 + go.opentelemetry.io/otel v0.20.0 + go.opentelemetry.io/otel/exporters/trace/jaeger v0.20.0 + go.opentelemetry.io/otel/sdk v0.20.0 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../../bridge/opencensus diff --git a/example/namedtracer/go.mod b/example/namedtracer/go.mod index a132b240f9a..c8d3955e345 100644 --- a/example/namedtracer/go.mod +++ b/example/namedtracer/go.mod @@ -9,10 +9,10 @@ replace ( ) require ( - go.opentelemetry.io/otel v0.19.0 - go.opentelemetry.io/otel/exporters/stdout v0.19.0 - go.opentelemetry.io/otel/sdk v0.19.0 - go.opentelemetry.io/otel/trace v0.19.0 + go.opentelemetry.io/otel v0.20.0 + go.opentelemetry.io/otel/exporters/stdout v0.20.0 + go.opentelemetry.io/otel/sdk v0.20.0 + go.opentelemetry.io/otel/trace v0.20.0 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../../bridge/opencensus diff --git a/example/opencensus/go.mod b/example/opencensus/go.mod index 6272117afd8..62a42e2c0f4 100644 --- a/example/opencensus/go.mod +++ b/example/opencensus/go.mod @@ -11,11 +11,11 @@ replace ( require ( go.opencensus.io v0.22.6-0.20201102222123-380f4078db9f - go.opentelemetry.io/otel v0.19.0 - go.opentelemetry.io/otel/bridge/opencensus v0.19.0 - go.opentelemetry.io/otel/exporters/stdout v0.19.0 - go.opentelemetry.io/otel/sdk v0.19.0 - go.opentelemetry.io/otel/sdk/export/metric v0.19.0 + go.opentelemetry.io/otel v0.20.0 + go.opentelemetry.io/otel/bridge/opencensus v0.20.0 + go.opentelemetry.io/otel/exporters/stdout v0.20.0 + go.opentelemetry.io/otel/sdk v0.20.0 + go.opentelemetry.io/otel/sdk/export/metric v0.20.0 ) replace go.opentelemetry.io/otel/bridge/opentracing => ../../bridge/opentracing diff --git a/example/otel-collector/go.mod b/example/otel-collector/go.mod index 22fd0887fb4..22d24859dd5 100644 --- a/example/otel-collector/go.mod +++ b/example/otel-collector/go.mod @@ -9,12 +9,12 @@ replace ( ) require ( - go.opentelemetry.io/otel v0.19.0 - go.opentelemetry.io/otel/exporters/otlp v0.19.0 - go.opentelemetry.io/otel/metric v0.19.0 - go.opentelemetry.io/otel/sdk v0.19.0 - go.opentelemetry.io/otel/sdk/metric v0.19.0 - go.opentelemetry.io/otel/trace v0.19.0 + go.opentelemetry.io/otel v0.20.0 + go.opentelemetry.io/otel/exporters/otlp v0.20.0 + go.opentelemetry.io/otel/metric v0.20.0 + go.opentelemetry.io/otel/sdk v0.20.0 + go.opentelemetry.io/otel/sdk/metric v0.20.0 + go.opentelemetry.io/otel/trace v0.20.0 google.golang.org/grpc v1.37.0 ) diff --git a/example/prom-collector/go.mod b/example/prom-collector/go.mod index 9ad01000686..60cf1299ea3 100644 --- a/example/prom-collector/go.mod +++ b/example/prom-collector/go.mod @@ -10,12 +10,12 @@ replace ( ) require ( - go.opentelemetry.io/otel v0.19.0 - go.opentelemetry.io/otel/exporters/metric/prometheus v0.19.0 - go.opentelemetry.io/otel/exporters/otlp v0.19.0 - go.opentelemetry.io/otel/metric v0.19.0 - go.opentelemetry.io/otel/sdk v0.19.0 - go.opentelemetry.io/otel/sdk/metric v0.19.0 + go.opentelemetry.io/otel v0.20.0 + go.opentelemetry.io/otel/exporters/metric/prometheus v0.20.0 + go.opentelemetry.io/otel/exporters/otlp v0.20.0 + go.opentelemetry.io/otel/metric v0.20.0 + go.opentelemetry.io/otel/sdk v0.20.0 + go.opentelemetry.io/otel/sdk/metric v0.20.0 google.golang.org/grpc v1.37.0 ) diff --git a/example/prometheus/go.mod b/example/prometheus/go.mod index 937bd01b51a..a00bd1f7ac6 100644 --- a/example/prometheus/go.mod +++ b/example/prometheus/go.mod @@ -9,9 +9,9 @@ replace ( ) require ( - go.opentelemetry.io/otel v0.19.0 - go.opentelemetry.io/otel/exporters/metric/prometheus v0.19.0 - go.opentelemetry.io/otel/metric v0.19.0 + go.opentelemetry.io/otel v0.20.0 + go.opentelemetry.io/otel/exporters/metric/prometheus v0.20.0 + go.opentelemetry.io/otel/metric v0.20.0 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../../bridge/opencensus diff --git a/example/zipkin/go.mod b/example/zipkin/go.mod index 4207485739a..d0e3ab7fd83 100644 --- a/example/zipkin/go.mod +++ b/example/zipkin/go.mod @@ -9,10 +9,10 @@ replace ( ) require ( - go.opentelemetry.io/otel v0.19.0 - go.opentelemetry.io/otel/exporters/trace/zipkin v0.19.0 - go.opentelemetry.io/otel/sdk v0.19.0 - go.opentelemetry.io/otel/trace v0.19.0 + go.opentelemetry.io/otel v0.20.0 + go.opentelemetry.io/otel/exporters/trace/zipkin v0.20.0 + go.opentelemetry.io/otel/sdk v0.20.0 + go.opentelemetry.io/otel/trace v0.20.0 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../../bridge/opencensus diff --git a/exporters/metric/prometheus/go.mod b/exporters/metric/prometheus/go.mod index 8ec489b75a3..6089d4fdf1c 100644 --- a/exporters/metric/prometheus/go.mod +++ b/exporters/metric/prometheus/go.mod @@ -10,11 +10,11 @@ replace ( require ( github.com/prometheus/client_golang v1.10.0 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.19.0 - go.opentelemetry.io/otel/metric v0.19.0 - go.opentelemetry.io/otel/sdk v0.19.0 - go.opentelemetry.io/otel/sdk/export/metric v0.19.0 - go.opentelemetry.io/otel/sdk/metric v0.19.0 + go.opentelemetry.io/otel v0.20.0 + go.opentelemetry.io/otel/metric v0.20.0 + go.opentelemetry.io/otel/sdk v0.20.0 + go.opentelemetry.io/otel/sdk/export/metric v0.20.0 + go.opentelemetry.io/otel/sdk/metric v0.20.0 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../../../bridge/opencensus diff --git a/exporters/otlp/go.mod b/exporters/otlp/go.mod index da7b2d39e2c..fe4fdba8535 100644 --- a/exporters/otlp/go.mod +++ b/exporters/otlp/go.mod @@ -10,12 +10,12 @@ replace ( require ( github.com/google/go-cmp v0.5.5 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.19.0 - go.opentelemetry.io/otel/metric v0.19.0 - go.opentelemetry.io/otel/sdk v0.19.0 - go.opentelemetry.io/otel/sdk/export/metric v0.19.0 - go.opentelemetry.io/otel/sdk/metric v0.19.0 - go.opentelemetry.io/otel/trace v0.19.0 + go.opentelemetry.io/otel v0.20.0 + go.opentelemetry.io/otel/metric v0.20.0 + go.opentelemetry.io/otel/sdk v0.20.0 + go.opentelemetry.io/otel/sdk/export/metric v0.20.0 + go.opentelemetry.io/otel/sdk/metric v0.20.0 + go.opentelemetry.io/otel/trace v0.20.0 go.opentelemetry.io/proto/otlp v0.7.0 google.golang.org/grpc v1.37.0 google.golang.org/protobuf v1.26.0 diff --git a/exporters/stdout/go.mod b/exporters/stdout/go.mod index 8c332d3ecd1..a572a95c437 100644 --- a/exporters/stdout/go.mod +++ b/exporters/stdout/go.mod @@ -9,12 +9,12 @@ replace ( require ( github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.19.0 - go.opentelemetry.io/otel/metric v0.19.0 - go.opentelemetry.io/otel/sdk v0.19.0 - go.opentelemetry.io/otel/sdk/export/metric v0.19.0 - go.opentelemetry.io/otel/sdk/metric v0.19.0 - go.opentelemetry.io/otel/trace v0.19.0 + go.opentelemetry.io/otel v0.20.0 + go.opentelemetry.io/otel/metric v0.20.0 + go.opentelemetry.io/otel/sdk v0.20.0 + go.opentelemetry.io/otel/sdk/export/metric v0.20.0 + go.opentelemetry.io/otel/sdk/metric v0.20.0 + go.opentelemetry.io/otel/trace v0.20.0 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../../bridge/opencensus diff --git a/exporters/trace/jaeger/go.mod b/exporters/trace/jaeger/go.mod index adb99f11553..336202e8d07 100644 --- a/exporters/trace/jaeger/go.mod +++ b/exporters/trace/jaeger/go.mod @@ -10,9 +10,9 @@ replace ( require ( github.com/google/go-cmp v0.5.5 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.19.0 - go.opentelemetry.io/otel/sdk v0.19.0 - go.opentelemetry.io/otel/trace v0.19.0 + go.opentelemetry.io/otel v0.20.0 + go.opentelemetry.io/otel/sdk v0.20.0 + go.opentelemetry.io/otel/trace v0.20.0 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../../../bridge/opencensus diff --git a/exporters/trace/zipkin/go.mod b/exporters/trace/zipkin/go.mod index e4e6a4570c9..7c9fc8c72d1 100644 --- a/exporters/trace/zipkin/go.mod +++ b/exporters/trace/zipkin/go.mod @@ -11,9 +11,9 @@ require ( github.com/google/go-cmp v0.5.5 github.com/openzipkin/zipkin-go v0.2.5 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.19.0 - go.opentelemetry.io/otel/sdk v0.19.0 - go.opentelemetry.io/otel/trace v0.19.0 + go.opentelemetry.io/otel v0.20.0 + go.opentelemetry.io/otel/sdk v0.20.0 + go.opentelemetry.io/otel/trace v0.20.0 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../../../bridge/opencensus diff --git a/go.mod b/go.mod index a6a36d88b24..a0e9267ad36 100644 --- a/go.mod +++ b/go.mod @@ -5,9 +5,9 @@ go 1.14 require ( github.com/google/go-cmp v0.5.5 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel/metric v0.19.0 - go.opentelemetry.io/otel/oteltest v0.19.0 - go.opentelemetry.io/otel/trace v0.19.0 + go.opentelemetry.io/otel/metric v0.20.0 + go.opentelemetry.io/otel/oteltest v0.20.0 + go.opentelemetry.io/otel/trace v0.20.0 ) replace go.opentelemetry.io/otel => ./ diff --git a/metric/go.mod b/metric/go.mod index 687e9a168d2..47bc47badde 100644 --- a/metric/go.mod +++ b/metric/go.mod @@ -49,6 +49,6 @@ replace go.opentelemetry.io/otel/trace => ../trace require ( github.com/google/go-cmp v0.5.5 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.19.0 - go.opentelemetry.io/otel/oteltest v0.19.0 + go.opentelemetry.io/otel v0.20.0 + go.opentelemetry.io/otel/oteltest v0.20.0 ) diff --git a/oteltest/go.mod b/oteltest/go.mod index 555239f192f..07b7ddf270a 100644 --- a/oteltest/go.mod +++ b/oteltest/go.mod @@ -47,7 +47,7 @@ replace go.opentelemetry.io/otel/sdk/metric => ../sdk/metric replace go.opentelemetry.io/otel/trace => ../trace require ( - go.opentelemetry.io/otel v0.19.0 - go.opentelemetry.io/otel/metric v0.19.0 - go.opentelemetry.io/otel/trace v0.19.0 + go.opentelemetry.io/otel v0.20.0 + go.opentelemetry.io/otel/metric v0.20.0 + go.opentelemetry.io/otel/trace v0.20.0 ) diff --git a/sdk/export/metric/go.mod b/sdk/export/metric/go.mod index 08a7e713f8b..170d38157fa 100644 --- a/sdk/export/metric/go.mod +++ b/sdk/export/metric/go.mod @@ -48,7 +48,7 @@ replace go.opentelemetry.io/otel/trace => ../../../trace require ( github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.19.0 - go.opentelemetry.io/otel/metric v0.19.0 - go.opentelemetry.io/otel/sdk v0.19.0 + go.opentelemetry.io/otel v0.20.0 + go.opentelemetry.io/otel/metric v0.20.0 + go.opentelemetry.io/otel/sdk v0.20.0 ) diff --git a/sdk/go.mod b/sdk/go.mod index 990c36e8d96..8b516740d1f 100644 --- a/sdk/go.mod +++ b/sdk/go.mod @@ -7,9 +7,9 @@ replace go.opentelemetry.io/otel => ../ require ( github.com/google/go-cmp v0.5.5 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.19.0 - go.opentelemetry.io/otel/oteltest v0.19.0 - go.opentelemetry.io/otel/trace v0.19.0 + go.opentelemetry.io/otel v0.20.0 + go.opentelemetry.io/otel/oteltest v0.20.0 + go.opentelemetry.io/otel/trace v0.20.0 ) replace go.opentelemetry.io/otel/bridge/opencensus => ../bridge/opencensus diff --git a/sdk/metric/go.mod b/sdk/metric/go.mod index 9a93db44a17..6ad529662cf 100644 --- a/sdk/metric/go.mod +++ b/sdk/metric/go.mod @@ -49,8 +49,8 @@ replace go.opentelemetry.io/otel/trace => ../../trace require ( github.com/benbjohnson/clock v1.0.3 // do not upgrade to v1.1.x because it would require Go >= 1.15 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.19.0 - go.opentelemetry.io/otel/metric v0.19.0 - go.opentelemetry.io/otel/sdk v0.19.0 - go.opentelemetry.io/otel/sdk/export/metric v0.19.0 + go.opentelemetry.io/otel v0.20.0 + go.opentelemetry.io/otel/metric v0.20.0 + go.opentelemetry.io/otel/sdk v0.20.0 + go.opentelemetry.io/otel/sdk/export/metric v0.20.0 ) diff --git a/trace/go.mod b/trace/go.mod index 508fa95968e..914e4f4384a 100644 --- a/trace/go.mod +++ b/trace/go.mod @@ -49,5 +49,5 @@ replace go.opentelemetry.io/otel/trace => ./ require ( github.com/google/go-cmp v0.5.5 github.com/stretchr/testify v1.7.0 - go.opentelemetry.io/otel v0.19.0 + go.opentelemetry.io/otel v0.20.0 ) diff --git a/version.go b/version.go index f15d8d1753e..81be6f36817 100644 --- a/version.go +++ b/version.go @@ -16,5 +16,5 @@ package otel // import "go.opentelemetry.io/otel" // Version is the current release version of OpenTelemetry in use. func Version() string { - return "0.19.0" + return "0.20.0" } diff --git a/version_test.go b/version_test.go new file mode 100644 index 00000000000..ce598d1f4b6 --- /dev/null +++ b/version_test.go @@ -0,0 +1,34 @@ +// Copyright The OpenTelemetry Authors +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package otel_test + +import ( + "regexp" + "testing" + + "github.com/stretchr/testify/assert" + + "go.opentelemetry.io/otel" +) + +// regex taken from https://github.com/Masterminds/semver/tree/v3.1.1 +var versionRegex = regexp.MustCompile(`^v?([0-9]+)(\.[0-9]+)?(\.[0-9]+)?` + + `(-([0-9A-Za-z\-]+(\.[0-9A-Za-z\-]+)*))?` + + `(\+([0-9A-Za-z\-]+(\.[0-9A-Za-z\-]+)*))?$`) + +func TestVersionSemver(t *testing.T) { + v := otel.Version() + assert.NotNil(t, versionRegex.FindStringSubmatch(v), "version is not semver: %s", v) +}