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: use guess-next-dev instead of release-branch-semver for versioning [2.15] #11231

Merged
merged 3 commits into from
Oct 31, 2024

Conversation

erikayasuda
Copy link
Contributor

@erikayasuda erikayasuda commented Oct 30, 2024

We need to use guess-next-dev for versioning for release branches in order to ensure that system tests can work with them.

This is a manual PR, but the goal is to automate this PR generation (probably in the release.py script)

Great context from internal ticket:

Using "release-branch-semver" will allow the main branch to have its version computed from last tag adding +1 to minor and .dev decorator. This is what we want. The problem is that algorithm is used on any branch that is not a release branch. So it will also be used on any branch that targets a release branch, meaning all backport PRs.

Using "guess-next-dev" will set any non release branch to the same minor version as last tag. This works for backport branches but not for main that will get the same minor version as last release.

Why is version miscomputation a problem?
System tests are enabling new feature tests based on version. In the first case, the version on backports are one minor ahead, leading to possibly run system tests for the next version, causing errors for missing features. On the second case, most possibly system tests won’t be running the new tests for the main branch, which can be ever more problematic (CI green but feature just got silently broken).

Checklist

  • PR author has checked that all the criteria below are met
  • The PR description includes an overview of the change
  • The PR description articulates the motivation for the change
  • The change includes tests OR the PR description describes a testing strategy
  • The PR description notes risks associated with the change, if any
  • Newly-added code is easy to change
  • The change follows the library release note guidelines
  • The change includes or references documentation updates if necessary
  • Backport labels are set (if applicable)

Reviewer Checklist

  • Reviewer has checked that all the criteria below are met
  • Title is accurate
  • All changes are related to the pull request's stated goal
  • Avoids breaking API changes
  • Testing strategy adequately addresses listed risks
  • Newly-added code is easy to change
  • Release note makes sense to a user of the library
  • If necessary, author has acknowledged and discussed the performance implications of this PR as reported in the benchmarks PR comment
  • Backport labels are set in a manner that is consistent with the release branch maintenance policy

@erikayasuda erikayasuda added the changelog/no-changelog A changelog entry is not required for this PR. label Oct 30, 2024
@erikayasuda erikayasuda requested a review from a team as a code owner October 30, 2024 15:03
@erikayasuda erikayasuda requested a review from P403n1x87 October 30, 2024 15:03
@erikayasuda erikayasuda enabled auto-merge (squash) October 30, 2024 15:03
Copy link
Contributor

CODEOWNERS have been resolved as:

pyproject.toml                                                          @DataDog/python-guild

@datadog-dd-trace-py-rkomorn
Copy link

datadog-dd-trace-py-rkomorn bot commented Oct 30, 2024

Datadog Report

Branch report: erikayasuda/use-guess-next-dev-2.15
Commit report: 2cbe76b
Test service: dd-trace-py

✅ 0 Failed, 592 Passed, 694 Skipped, 18m 17.83s Total duration (21m 2.51s time saved)

@pr-commenter
Copy link

pr-commenter bot commented Oct 30, 2024

Benchmarks

Benchmark execution time: 2024-10-31 19:16:51

Comparing candidate commit 2cbe76b in PR branch erikayasuda/use-guess-next-dev-2.15 with baseline commit 07c4671 in branch 2.15.

Found 0 performance improvements and 0 performance regressions! Performance is the same for 371 metrics, 53 unstable metrics.

@erikayasuda erikayasuda disabled auto-merge October 31, 2024 18:54
@erikayasuda
Copy link
Contributor Author

/merge

@dd-devflow
Copy link

dd-devflow bot commented Oct 31, 2024

🚂 MergeQueue: waiting for PR to be ready

This merge request is not mergeable yet, because of pending checks/missing approvals. It will be added to the queue as soon as checks pass and/or get approvals.
Note: if you pushed new commits since the last approval, you may need additional approval.
You can remove it from the waiting list with /remove command.

Use /merge -c to cancel this operation!

@dd-devflow
Copy link

dd-devflow bot commented Oct 31, 2024

🚂 MergeQueue: pull request added to the queue

The median merge time in 2.15 is 0s.

Use /merge -c to cancel this operation!

@dd-mergequeue dd-mergequeue bot merged commit eae25ee into 2.15 Oct 31, 2024
536 of 537 checks passed
@dd-mergequeue dd-mergequeue bot deleted the erikayasuda/use-guess-next-dev-2.15 branch October 31, 2024 19:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
changelog/no-changelog A changelog entry is not required for this PR. mergequeue-status: done
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants