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

[chore] Allow sometimes skipping deprecation process when adding variadic arguments #10041

Merged
merged 4 commits into from
May 1, 2024

Conversation

evan-bradley
Copy link
Contributor

Description

Call out that unnamed types, e.g. the function signature of an exported function, should not be relied upon by API consumers. In particular, updating a function to be variadic will break users who were depending on that function's signature.

Link to tracking issue

Helps #9041

Copy link

codecov bot commented Apr 29, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 91.87%. Comparing base (aacb835) to head (64ff97b).

Additional details and impacted files
@@            Coverage Diff             @@
##             main   #10041      +/-   ##
==========================================
- Coverage   91.88%   91.87%   -0.02%     
==========================================
  Files         360      360              
  Lines       16725    16725              
==========================================
- Hits        15368    15366       -2     
- Misses       1020     1021       +1     
- Partials      337      338       +1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link
Member

@mx-psi mx-psi left a comment

Choose a reason for hiding this comment

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

I think this should still be considered a breaking change, it is not a common exception, and while it's not super frequent to pass functions as arguments in Go it can happen.

I would be in favor of adding an exception for making the two step deprecation process described on https://github.com/open-telemetry/opentelemetry-collector/blob/main/CONTRIBUTING.md#breaking-changes for changes like this, while acknowledging this is still breaking

@evan-bradley evan-bradley force-pushed the breaking-api-changes branch from 71152dd to 66d71bf Compare April 30, 2024 15:33
@evan-bradley
Copy link
Contributor Author

Got it, I misunderstood the intent of this section. I've added a section to our contributing document instead.

@evan-bradley evan-bradley changed the title [chore] Add variadic arguments to API breaking changes [chore] Allow sometimes skipping deprecation process when adding variadic arguments Apr 30, 2024
Copy link
Contributor

@codeboten codeboten left a comment

Choose a reason for hiding this comment

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

Would be good to discuss this at the SIG this week to ensure everyone is in agreement on the exception

Copy link
Contributor

@codeboten codeboten left a comment

Choose a reason for hiding this comment

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

Thanks @evan-bradley

@codeboten codeboten merged commit fa02afe into open-telemetry:main May 1, 2024
48 checks passed
@github-actions github-actions bot added this to the next release milestone May 1, 2024
andrzej-stencel pushed a commit to andrzej-stencel/opentelemetry-collector that referenced this pull request May 27, 2024
…adic arguments (open-telemetry#10041)

Call out that unnamed types, e.g. the function signature of an exported
function, should not be relied upon by API consumers. In particular,
updating a function to be variadic will break users who were depending
on that function's signature.

#### Link to tracking issue
Helps
open-telemetry#9041

Co-authored-by: Evan Bradley <[email protected]>
Co-authored-by: Pablo Baeyens <[email protected]>
Co-authored-by: Alex Boten <[email protected]>
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.

5 participants