Skip to content

Commit ced177b

Browse files
authored
Pre-release 1.0.0-RC1 (#2013)
* Add versions.yaml to specify module version sets * Prepare for releasing v1.0.0-RC1 * Update experimental-metrics and bridge module sets to v0.21.0 * Prepare for releasing v0.21.0 * Fixup go.mod version references * Update version.go * Update CHANGELOG * Update godoc references to "pre-GA phase" for RC1 packages * Update website_docs for 1.0.0-RC1 Signed-off-by: Anthony J Mirabella <[email protected]>
1 parent 694c9a4 commit ced177b

File tree

52 files changed

+289
-207
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

52 files changed

+289
-207
lines changed

CHANGELOG.md

+46-27
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,24 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
1010

1111
### Added
1212

13+
### Changed
14+
15+
### Deprecated
16+
17+
### Removed
18+
19+
### Fixed
20+
21+
### Security
22+
23+
## [1.0.0-RC1] / 0.21.0 - 2021-06-18
24+
25+
With this release we are introducing a split in module versions. The tracing API and SDK are entering the `v1.0.0` Release Candidate phase with `v1.0.0-RC1`
26+
while the experimental metrics API and SDK continue with `v0.x` releases at `v0.21.0`. Modules at major version 1 or greater will not depend on modules
27+
with major version 0.
28+
29+
### Added
30+
1331
- Adds `otlpgrpc.WithRetry`option for configuring the retry policy for transient errors on the otlp/gRPC exporter. (#1832)
1432
- The following status codes are defined as transient errors:
1533
| gRPC Status Code | Description |
@@ -21,23 +39,23 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
2139
| 10 | Out of Range |
2240
| 14 | Unavailable |
2341
| 15 | Data Loss |
24-
- The `Status` type was added to the `go.opentelemetry.io/otel/sdk/trace` package to represent the status of a span. (#1874)
25-
- The `SpanStub` type and its associated functions were added to the `go.opentelemetry.io/otel/sdk/trace/tracetest` package.
42+
- Added `Status` type to the `go.opentelemetry.io/otel/sdk/trace` package to represent the status of a span. (#1874)
43+
- Added `SpanStub` type and its associated functions to the `go.opentelemetry.io/otel/sdk/trace/tracetest` package.
2644
This type can be used as a testing replacement for the `SpanSnapshot` that was removed from the `go.opentelemetry.io/otel/sdk/trace` package. (#1873)
2745
- Adds support for scheme in `OTEL_EXPORTER_OTLP_ENDPOINT` according to the spec. (#1886)
2846
- Adds `trace.WithSchemaURL` option for configuring the tracer with a Schema URL. (#1889)
29-
- An example of using OpenTelemetry Go as a trace context forwarder. (#1912)
47+
- Added an example of using OpenTelemetry Go as a trace context forwarder. (#1912)
3048
- `ParseTraceState` is added to the `go.opentelemetry.io/otel/trace` package.
3149
It can be used to decode a `TraceState` from a `tracestate` header string value. (#1937)
32-
- The `Len` method is added to the `TraceState` type in the `go.opentelemetry.io/otel/trace` package.
50+
- Added `Len` method to the `TraceState` type in the `go.opentelemetry.io/otel/trace` package.
3351
This method returns the number of list-members the `TraceState` holds. (#1937)
3452
- Creates package `go.opentelemetry.io/otel/exporters/otlp/otlptrace` that defines a trace exporter that uses a `otlptrace.Client` to send data.
3553
Creates package `go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc` implementing a gRPC `otlptrace.Client` and offers convenience functions, `NewExportPipeline` and `InstallNewPipeline`, to setup and install a `otlptrace.Exporter` in tracing .(#1922)
36-
- The `Baggage`, `Member`, and `Property` types are added to the `go.opentelemetry.io/otel/baggage` package along with their related functions. (#1967)
37-
- The new `ContextWithBaggage`, `ContextWithoutBaggage`, and `FromContext` functions were added to the `go.opentelemetry.io/otel/baggage` package.
54+
- Added `Baggage`, `Member`, and `Property` types to the `go.opentelemetry.io/otel/baggage` package along with their related functions. (#1967)
55+
- Added `ContextWithBaggage`, `ContextWithoutBaggage`, and `FromContext` functions to the `go.opentelemetry.io/otel/baggage` package.
3856
These functions replace the `Set`, `Value`, `ContextWithValue`, `ContextWithoutValue`, and `ContextWithEmpty` functions from that package and directly work with the new `Baggage` type. (#1967)
3957
- The `OTEL_SERVICE_NAME` environment variable is the preferred source for `service.name`, used by the environment resource detector if a service name is present both there and in `OTEL_RESOURCE_ATTRIBUTES`. (#1969)
40-
- Creates package `go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp` implementing a HTTP `otlptrace.Client` and offers convenience functions, `NewExportPipeline` and `InstallNewPipeline`, to setup and install a `otlptrace.Exporter` in tracing. (#1963)
58+
- Creates package `go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp` implementing an HTTP `otlptrace.Client` and offers convenience functions, `NewExportPipeline` and `InstallNewPipeline`, to setup and install a `otlptrace.Exporter` in tracing. (#1963)
4159
- Changes `go.opentelemetry.io/otel/sdk/resource.NewWithAttributes` to require a schema URL. The old function is still available as `resource.NewSchemaless`. This is a breaking change. (#1938)
4260
- Several builtin resource detectors now correctly populate the schema URL. (#1938)
4361
- Creates package `go.opentelemetry.io/otel/exporters/otlp/otlpmetric` that defines a metrics exporter that uses a `otlpmetric.Client` to send data.
@@ -58,33 +76,33 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
5876
- Renamed `CloudZoneKey` to `CloudAvailabilityZoneKey` in Resource semantic conventions according to spec. (#1871)
5977
- The `StatusCode` and `StatusMessage` methods of the `ReadOnlySpan` interface and the `Span` produced by the `go.opentelemetry.io/otel/sdk/trace` package have been replaced with a single `Status` method.
6078
This method returns the status of a span using the new `Status` type. (#1874)
61-
- The `ExportSpans` method of the`SpanExporter` interface type was updated to accept `ReadOnlySpan`s instead of the removed `SpanSnapshot`.
79+
- Updated `ExportSpans` method of the`SpanExporter` interface type to accept `ReadOnlySpan`s instead of the removed `SpanSnapshot`.
6280
This brings the export interface into compliance with the specification in that it now accepts an explicitly immutable type instead of just an implied one. (#1873)
6381
- Unembed `SpanContext` in `Link`. (#1877)
64-
- Semantic conventions are now generated from the specification YAML. (#1891)
82+
- Generate Semantic conventions from the specification YAML. (#1891)
6583
- Spans created by the global `Tracer` obtained from `go.opentelemetry.io/otel`, prior to a functioning `TracerProvider` being set, now propagate the span context from their parent if one exists. (#1901)
6684
- The `"go.opentelemetry.io/otel".Tracer` function now accepts tracer options. (#1902)
6785
- Move the `go.opentelemetry.io/otel/unit` package to `go.opentelemetry.io/otel/metric/unit`. (#1903)
6886
- Changed `go.opentelemetry.io/otel/trace.TracerConfig` to conform to the [Contributing guidelines](CONTRIBUTING.md#config.) (#1921)
6987
- Changed `go.opentelemetry.io/otel/trace.SpanConfig` to conform to the [Contributing guidelines](CONTRIBUTING.md#config). (#1921)
70-
- Changed `span.End()` now only accepts Options that are allowed at `end()`. (#1921)
88+
- Changed `span.End()` now only accepts Options that are allowed at `End()`. (#1921)
7189
- Changed `go.opentelemetry.io/otel/metric.InstrumentConfig` to conform to the [Contributing guidelines](CONTRIBUTING.md#config). (#1921)
7290
- Changed `go.opentelemetry.io/otel/metric.MeterConfig` to conform to the [Contributing guidelines](CONTRIBUTING.md#config). (#1921)
73-
- Refactor option types according to the contribution style guide. (#1882)
91+
- Refactored option types according to the contribution style guide. (#1882)
7492
- Move the `go.opentelemetry.io/otel/trace.TraceStateFromKeyValues` function to the `go.opentelemetry.io/otel/oteltest` package.
7593
This function is preserved for testing purposes where it may be useful to create a `TraceState` from `attribute.KeyValue`s, but it is not intended for production use.
7694
The new `ParseTraceState` function should be used to create a `TraceState`. (#1931)
77-
- The `MarshalJSON` method of the `go.opentelemetry.io/otel/trace.TraceState` type is updated to marshal the type in to the string representation of the `TraceState`. (#1931)
95+
- Updated `MarshalJSON` method of the `go.opentelemetry.io/otel/trace.TraceState` type to marshal the type into the string representation of the `TraceState`. (#1931)
7896
- The `TraceState.Delete` method from the `go.opentelemetry.io/otel/trace` package no longer returns an error in addition to a `TraceState`. (#1931)
79-
- The `Get` method of the `TraceState` type from the `go.opentelemetry.io/otel/trace` package has been updated to accept a `string` instead of an `attribute.Key` type. (#1931)
80-
- The `Insert` method of the `TraceState` type from the `go.opentelemetry.io/otel/trace` package has been updated to accept a pair of `string`s instead of an `attribute.KeyValue` type. (#1931)
81-
- The `Delete` method of the `TraceState` type from the `go.opentelemetry.io/otel/trace` package has been updated to accept a `string` instead of an `attribute.Key` type. (#1931)
82-
- Rename `NewExporter` to `New` in the `go.opentelemetry.io/otel/exporters/stdout` package. (#1985)
83-
- Rename `NewExporter` to `New` in the `go.opentelemetry.io/otel/exporters/metric/prometheus` package. (#1985)
84-
- Rename `NewExporter` to `New` in the `go.opentelemetry.io/otel/exporters/trace/jaeger` package. (#1985)
85-
- Rename `NewExporter` to `New` in the `go.opentelemetry.io/otel/exporters/trace/zipkin` package. (#1985)
86-
- Rename `NewExporter` to `New` in the `go.opentelemetry.io/otel/exporters/otlp` package. (#1985)
87-
- Rename `NewUnstartedExporter` to `NewUnstarted` in the `go.opentelemetry.io/otel/exporters/otlp` package. (#1985)
97+
- Updated `Get` method of the `TraceState` type from the `go.opentelemetry.io/otel/trace` package to accept a `string` instead of an `attribute.Key` type. (#1931)
98+
- Updated `Insert` method of the `TraceState` type from the `go.opentelemetry.io/otel/trace` package to accept a pair of `string`s instead of an `attribute.KeyValue` type. (#1931)
99+
- Updated `Delete` method of the `TraceState` type from the `go.opentelemetry.io/otel/trace` package to accept a `string` instead of an `attribute.Key` type. (#1931)
100+
- Renamed `NewExporter` to `New` in the `go.opentelemetry.io/otel/exporters/stdout` package. (#1985)
101+
- Renamed `NewExporter` to `New` in the `go.opentelemetry.io/otel/exporters/metric/prometheus` package. (#1985)
102+
- Renamed `NewExporter` to `New` in the `go.opentelemetry.io/otel/exporters/trace/jaeger` package. (#1985)
103+
- Renamed `NewExporter` to `New` in the `go.opentelemetry.io/otel/exporters/trace/zipkin` package. (#1985)
104+
- Renamed `NewExporter` to `New` in the `go.opentelemetry.io/otel/exporters/otlp` package. (#1985)
105+
- Renamed `NewUnstartedExporter` to `NewUnstarted` in the `go.opentelemetry.io/otel/exporters/otlp` package. (#1985)
88106
- The `go.opentelemetry.io/otel/semconv` package has been moved to `go.opentelemetry.io/otel/semconv/v1.4.0` to allow for multiple [telemetry schema](https://github.com/open-telemetry/oteps/blob/main/text/0152-telemetry-schemas.md) versions to be used concurrently. (#1987)
89107
- Metrics test helpers in `go.opentelemetry.io/otel/oteltest` have been moved to `go.opentelemetry.io/otel/metric/metrictest`. (#1988)
90108

@@ -96,7 +114,7 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
96114

97115
### Removed
98116

99-
- Remove `resource.WithoutBuiltin()`. Use `resource.New()`. (#1810)
117+
- Removed `resource.WithoutBuiltin()`. Use `resource.New()`. (#1810)
100118
- Unexported types `resource.FromEnv`, `resource.Host`, and `resource.TelemetrySDK`, Use the corresponding `With*()` to use individually. (#1810)
101119
- Removed the `Tracer` and `IsRecording` method from the `ReadOnlySpan` in the `go.opentelemetry.io/otel/sdk/trace`.
102120
The `Tracer` method is not a required to be included in this interface and given the mutable nature of the tracer that is associated with a span, this method is not appropriate.
@@ -106,13 +124,13 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
106124
- Removed the `SpanSnapshot` type from the `go.opentelemetry.io/otel/sdk/trace` package.
107125
The use of this type has been replaced with the use of the explicitly immutable `ReadOnlySpan` type.
108126
When a concrete representation of a read-only span is needed for testing, the newly added `SpanStub` in the `go.opentelemetry.io/otel/sdk/trace/tracetest` package should be used. (#1873)
109-
- Remove the `Tracer` method from the `Span` interface in the `go.opentelemetry.io/otel/trace` package.
127+
- Removed the `Tracer` method from the `Span` interface in the `go.opentelemetry.io/otel/trace` package.
110128
Using the same tracer that created a span introduces the error where an instrumentation library's `Tracer` is used by other code instead of their own.
111129
The `"go.opentelemetry.io/otel".Tracer` function or a `TracerProvider` should be used to acquire a library specific `Tracer` instead. (#1900)
112130
- The `TracerProvider()` method on the `Span` interface may also be used to obtain a `TracerProvider` using the same trace processing pipeline. (#2009)
113131
- The `http.url` attribute generated by `HTTPClientAttributesFromHTTPRequest` will no longer include username or password information. (#1919)
114-
- The `IsEmpty` method of the `TraceState` type in the `go.opentelemetry.io/otel/trace` package is removed in favor of using the added `TraceState.Len` method. (#1931)
115-
- The `Set`, `Value`, `ContextWithValue`, `ContextWithoutValue`, and `ContextWithEmpty` functions in the `go.opentelemetry.io/otel/baggage` package are removed.
132+
- Removed `IsEmpty` method of the `TraceState` type in the `go.opentelemetry.io/otel/trace` package in favor of using the added `TraceState.Len` method. (#1931)
133+
- Removed `Set`, `Value`, `ContextWithValue`, `ContextWithoutValue`, and `ContextWithEmpty` functions in the `go.opentelemetry.io/otel/baggage` package.
116134
Handling of baggage is now done using the added `Baggage` type and related context functions (`ContextWithBaggage`, `ContextWithoutBaggage`, and `FromContext`) in that package. (#1967)
117135
- The `InstallNewPipeline` and `NewExportPipeline` creation functions in all the exporters (prometheus, otlp, stdout, jaeger, and zipkin) have been removed.
118136
These functions were deemed premature attempts to provide convenience that did not achieve this aim. (#1985)
@@ -127,7 +145,7 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
127145
- Use `http://localhost:14268/api/traces` as default Jaeger collector endpoint instead of `http://localhost:14250`. (#1898)
128146
- Allow trailing and leading whitespace in the parsing of a `tracestate` header. (#1931)
129147
- Add logic to determine if the channel is closed to fix Jaeger exporter test panic with close closed channel. (#1870, #1973)
130-
- Avoid transport security when otlp endpoint is a Unix socket. (#2001)
148+
- Avoid transport security when OTLP endpoint is a Unix socket. (#2001)
131149

132150
### Security
133151

@@ -1397,7 +1415,8 @@ It contains api and sdk for trace and meter.
13971415
- CircleCI build CI manifest files.
13981416
- CODEOWNERS file to track owners of this project.
13991417

1400-
[Unreleased]: https://github.com/open-telemetry/opentelemetry-go/compare/v0.20.0...HEAD
1418+
[Unreleased]: https://github.com/open-telemetry/opentelemetry-go/compare/v1.0.0-RC1...HEAD
1419+
[1.0.0-RC1]: https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.0.0-RC1
14011420
[0.20.0]: https://github.com/open-telemetry/opentelemetry-go/releases/tag/v0.20.0
14021421
[0.19.0]: https://github.com/open-telemetry/opentelemetry-go/releases/tag/v0.19.0
14031422
[0.18.0]: https://github.com/open-telemetry/opentelemetry-go/releases/tag/v0.18.0

attribute/doc.go

+2-3
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414

1515
// package attribute provides key and value attributes.
1616
//
17-
// This package is currently in a pre-GA phase. Backwards incompatible changes
18-
// may be introduced in subsequent minor version releases as we work to track
19-
// the evolving OpenTelemetry specification and user feedback.
17+
// This package is currently in a Release Candidate phase. Backwards incompatible changes
18+
// may be introduced prior to v1.0.0, but we believe the current API is ready to stabilize.
2019
package attribute // import "go.opentelemetry.io/otel/attribute"

baggage/doc.go

+2-3
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,7 @@ Package baggage provides functionality for storing and retrieving
1717
baggage items in Go context. For propagating the baggage, see the
1818
go.opentelemetry.io/otel/propagation package.
1919
20-
This package is currently in a pre-GA phase. Backwards incompatible changes
21-
may be introduced in subsequent minor version releases as we work to track the
22-
evolving OpenTelemetry specification and user feedback.
20+
This package is currently in a Release Candidate phase. Backwards incompatible changes
21+
may be introduced prior to v1.0.0, but we believe the current API is ready to stabilize.
2322
*/
2423
package baggage // import "go.opentelemetry.io/otel/baggage"

bridge/opencensus/go.mod

+6-6
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,12 @@ go 1.15
44

55
require (
66
go.opencensus.io v0.22.6-0.20201102222123-380f4078db9f
7-
go.opentelemetry.io/otel v0.20.0
8-
go.opentelemetry.io/otel/metric v0.20.0
9-
go.opentelemetry.io/otel/oteltest v0.20.0
10-
go.opentelemetry.io/otel/sdk v0.20.0
11-
go.opentelemetry.io/otel/sdk/export/metric v0.20.0
12-
go.opentelemetry.io/otel/trace v0.20.0
7+
go.opentelemetry.io/otel v1.0.0-RC1
8+
go.opentelemetry.io/otel/metric v0.21.0
9+
go.opentelemetry.io/otel/oteltest v1.0.0-RC1
10+
go.opentelemetry.io/otel/sdk v1.0.0-RC1
11+
go.opentelemetry.io/otel/sdk/export/metric v0.21.0
12+
go.opentelemetry.io/otel/trace v1.0.0-RC1
1313
)
1414

1515
replace go.opentelemetry.io/otel => ../..

bridge/opentracing/go.mod

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ replace go.opentelemetry.io/otel => ../..
66

77
require (
88
github.com/opentracing/opentracing-go v1.2.0
9-
go.opentelemetry.io/otel v0.20.0
10-
go.opentelemetry.io/otel/trace v0.20.0
9+
go.opentelemetry.io/otel v1.0.0-RC1
10+
go.opentelemetry.io/otel/trace v1.0.0-RC1
1111
)
1212

1313
replace go.opentelemetry.io/otel/bridge/opencensus => ../opencensus

codes/doc.go

+2-3
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,8 @@
1515
/*
1616
Package codes defines the canonical error codes used by OpenTelemetry.
1717
18-
This package is currently in a pre-GA phase. Backwards incompatible changes
19-
may be introduced in subsequent minor version releases as we work to track
20-
the evolving OpenTelemetry specification and user feedback.
18+
This package is currently in a Release Candidate phase. Backwards incompatible changes
19+
may be introduced prior to v1.0.0, but we believe the current API is ready to stabilize.
2120
2221
It conforms to [the OpenTelemetry
2322
specification](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/trace/api.md#statuscanonicalcode).

doc.go

+2-3
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,8 @@
1616
Package otel provides global access to the OpenTelemetry API. The subpackages of
1717
the otel package provide an implementation of the OpenTelemetry API.
1818
19-
This package is currently in a pre-GA phase. Backwards incompatible changes
20-
may be introduced in subsequent minor version releases as we work to track the
21-
evolving OpenTelemetry specification and user feedback.
19+
This package is currently in a Release Candidate phase. Backwards incompatible changes
20+
may be introduced prior to v1.0.0, but we believe the current API is ready to stabilize.
2221
2322
The provided API is used to instrument code and measure data about that code's
2423
performance and operation. The measured data, by default, is not processed or

example/jaeger/go.mod

+3-3
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ replace (
99
)
1010

1111
require (
12-
go.opentelemetry.io/otel v0.20.0
13-
go.opentelemetry.io/otel/exporters/jaeger v0.20.0
14-
go.opentelemetry.io/otel/sdk v0.20.0
12+
go.opentelemetry.io/otel v1.0.0-RC1
13+
go.opentelemetry.io/otel/exporters/jaeger v1.0.0-RC1
14+
go.opentelemetry.io/otel/sdk v1.0.0-RC1
1515
)
1616

1717
replace go.opentelemetry.io/otel/bridge/opencensus => ../../bridge/opencensus

example/namedtracer/go.mod

+4-4
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@ replace (
88
)
99

1010
require (
11-
go.opentelemetry.io/otel v0.20.0
12-
go.opentelemetry.io/otel/exporters/stdout/stdouttrace v0.20.0
13-
go.opentelemetry.io/otel/sdk v0.20.0
14-
go.opentelemetry.io/otel/trace v0.20.0
11+
go.opentelemetry.io/otel v1.0.0-RC1
12+
go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.0.0-RC1
13+
go.opentelemetry.io/otel/sdk v1.0.0-RC1
14+
go.opentelemetry.io/otel/trace v1.0.0-RC1
1515
)
1616

1717
replace go.opentelemetry.io/otel/bridge/opencensus => ../../bridge/opencensus

0 commit comments

Comments
 (0)