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

Add External Type Checking #1603

Merged

Conversation

hdost
Copy link
Contributor

@hdost hdost commented Mar 6, 2024

The purpose of this is to ensure we understand the API surface area. Anything exposed by a crate like a type can affect the possible compatibility. This means that if we bump an external type it could cause breaking changes. This tracks them to limit this possibility.

Affected Crates:

  • opentelemetry-otlp
  • opentelemetry-zipkin

Fixes #
Design discussion issue (if applicable) #

Changes

Please provide a brief description of the changes here.

Merge requirement checklist

  • CONTRIBUTING guidelines followed
  • Unit tests added/updated (if applicable)
  • Appropriate CHANGELOG.md files updated for non-trivial, user-facing changes
  • Changes in public API reviewed (if applicable)

The purpose of this is to ensure we understand the API surface area.
Anything exposed by a crate like a type can affect the possible
compatibility. This means that if we bump an external type it could
cause breaking changes. This tracks them to limit this possibility.

Affected Crates:
- opentelemetry-otlp
- opentelemetry-zipkin
@hdost hdost requested a review from a team March 6, 2024 08:49
@@ -0,0 +1,22 @@
# Copyright The OpenTelemetry Authors
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(sorry to nit pick) - Not related to this PR, we don't include copyright/license headers in individual files, we have the LICENSE file in each crate, and also license information in crates.toml. I noticed that the header is present in other allowed-external-types.toml's too, which seems like something we should address in a separate cleanup :)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1

Copy link
Member

@lalitb lalitb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Probably we should be adding this static external type check for other crates not having it separately.

@hdost
Copy link
Contributor Author

hdost commented Mar 8, 2024

LGTM. Probably we should be adding this static external type check for other crates not having it separately.

To my knowledge the tool only supports a per crate configuration ot workspace level.

@hdost hdost merged commit bcf1205 into open-telemetry:main Mar 8, 2024
14 of 15 checks passed
@hdost hdost deleted the add-external-type-checks-to-more-crates branch March 8, 2024 07:19
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