Skip to content
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

Release v0.10.0 #981

Closed
wants to merge 2 commits into from
Closed

Conversation

MrAlias
Copy link
Contributor

@MrAlias MrAlias commented Jul 28, 2020

0.10.0 - 2020-07-28

Added

  • The Zipkin exporter now has NewExportPipeline and InstallNewPipeline constructor functions to match the common pattern.
    These function build a new exporter with default SDK options and register the exporter with the global package respectively. (Unify trace and metric exporter helpers #944)

Changed

  • Replace the RegisterGlobal Option in the Jaeger exporter with an InstallNewPipeline constructor function.
    This matches the other exporter constructor patterns and will register a new exporter after building it with default configuration. (Unify trace and metric exporter helpers #944)
  • The trace (go.opentelemetry.io/otel/exporters/trace/stdout) and metric (go.opentelemetry.io/otel/exporters/metric/stdout) stdout exporters are now merged into a single exporter at go.opentelemetry.io/otel/exporters/stdout.
    This new exporter was made into its own Go module to follow the pattern of all exporters and decouple it from the go.opentelemetry.io/otel module. (Unify trace and metric stdout exporters #956)
  • The go.opentelemetry.io/otel/api/kv/value package was merged into the parent go.opentelemetry.io/otel/api/kv package. (Remove sub-package value from kv #968)
    • value.Bool was replaced with kv.BoolValue.
    • value.Int64 was replaced with kv.Int64Value.
    • value.Uint64 was replaced with kv.Uint64Value.
    • value.Float64 was replaced with kv.Float64Value.
    • value.Int32 was replaced with kv.Int32Value.
    • value.Uint32 was replaced with kv.Uint32Value.
    • value.Float32 was replaced with kv.Float32Value.
    • value.String was replaced with kv.StringValue.
    • value.Int was replaced with kv.IntValue.
    • value.Uint was replaced with kv.UintValue.
    • value.Array was replaced with kv.ArrayValue.
  • Rename Infer to Any in the go.opentelemetry.io/otel/api/kv package. (Rename kv.Infer to kv.Any (#969) #972)

Removed

Fixed

@lizthegrey
Copy link
Member

do we want to create a go.mod for the api package so people can import it by itself?

@MrAlias
Copy link
Contributor Author

MrAlias commented Jul 28, 2020

@lizthegrey: sorry, probably should have pinged you in my last comment: #977 (comment)

... [t]he idea is to add a go.mod for the sdk/ subdirectory and have the API be the main entry point to go.opentelemetry.io/otel (#964). How the restructuring of the api package will look is still not 100% nailed down, but the separation of the SDK is the main goal (#940). Still need to resolve the instrumentation package issues prior to the new SDK package (#976, #974)

Does this make sense to you?

@lizthegrey
Copy link
Member

@lizthegrey: sorry, probably should have pinged you in my last comment: #977 (comment)

... [t]he idea is to add a go.mod for the sdk/ subdirectory and have the API be the main entry point to go.opentelemetry.io/otel (#964). How the restructuring of the api package will look is still not 100% nailed down, but the separation of the SDK is the main goal (#940). Still need to resolve the instrumentation package issues prior to the new SDK package (#976, #974)

Does this make sense to you?

It does. Do we want to ship this current set of changes as v0.10, or do we want to add that in before v0.10 is cut?

@MrAlias
Copy link
Contributor Author

MrAlias commented Jul 28, 2020

It does. Do we want to ship this current set of changes as v0.10, or do we want to add that in before v0.10 is cut?

Good question. I was hoping (similar to you #977 (comment)) to accomplish all this in a single release.

The remaining dependencies are in the instrumentation. I didn't want to make the current instrumentation into their own modules as they would likely be single release modules before they are renamed or moved to the contrib repo. And I can't move them to the contrib repo without having the STDOUT exporter published with a release.

I could try instead to clean up the instrumentation of all SDK imports here. Which would allow for the SDK to be made into a module without any cyclic dependencies from the otel package. Would that be prefered @lizthegrey?

@lizthegrey
Copy link
Member

I could try instead to clean up the instrumentation of all SDK imports here. Which would allow for the SDK to be made into a module without any cyclic dependencies from the otel package. Would that be prefered @lizthegrey?

Yes, I think pulling out the SDK is the right thing to do, then we cut v0.10, then we refactor contrib, I think that's the right order of operations. But you're the full-time maintainer, I'm just an approver who pitches in sometimes.

@MrAlias
Copy link
Contributor Author

MrAlias commented Jul 28, 2020

I could try instead to clean up the instrumentation of all SDK imports here. Which would allow for the SDK to be made into a module without any cyclic dependencies from the otel package. Would that be prefered @lizthegrey?

Yes, I think pulling out the SDK is the right thing to do, then we cut v0.10, then we refactor contrib, I think that's the right order of operations. But you're the full-time maintainer, I'm just an approver who pitches in sometimes.

Agreed, I'll retry this after that work.

@MrAlias MrAlias closed this Jul 28, 2020
@MrAlias MrAlias deleted the pre_release_v0.10.0 branch July 28, 2020 18:44
@MrAlias MrAlias mentioned this pull request Jul 28, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants