Skip to content

Conversation

marcalff
Copy link
Member

@marcalff marcalff commented Aug 29, 2025

Fixes # (issue)

Changes

Please provide a brief description of the changes here.

  • Add a tbump.toml script to maintain opentelemetry-cpp versions numbers in the code base.

For significant contributions please make sure you have completed the following items:

  • CHANGELOG.md updated for non-trivial changes
  • Unit tests have been added
  • Changes in public API reviewed

@marcalff marcalff requested a review from a team as a code owner August 29, 2025 20:10
@marcalff
Copy link
Member Author

Example 1:

tbump 1.23.0 --only-patch

gives

:: Bumping from 1.23.0-dev to 1.23.0
=> Would update current version in tbump.toml
- tbump.toml:25 current = "1.23.0-dev"
+ tbump.toml:25 current = "1.23.0"
=> Would patch these files
- CMakeLists.txt:18 set(OPENTELEMETRY_VERSION_NUMBER "1.23.0")
+ CMakeLists.txt:18 set(OPENTELEMETRY_VERSION_NUMBER "1.23.0")
- CMakeLists.txt:19 set(OPENTELEMETRY_VERSION_SUFFIX "-dev")
+ CMakeLists.txt:19 set(OPENTELEMETRY_VERSION_SUFFIX "")
- MODULE.bazel:6 version = "1.23.0-dev",
+ MODULE.bazel:6 version = "1.23.0",
- api/include/opentelemetry/version.h:13 #define OPENTELEMETRY_VERSION "1.23.0-dev"
+ api/include/opentelemetry/version.h:13 #define OPENTELEMETRY_VERSION "1.23.0"
- api/include/opentelemetry/version.h:14 #define OPENTELEMETRY_VERSION_MAJOR 1
+ api/include/opentelemetry/version.h:14 #define OPENTELEMETRY_VERSION_MAJOR 1
- api/include/opentelemetry/version.h:15 #define OPENTELEMETRY_VERSION_MINOR 23
+ api/include/opentelemetry/version.h:15 #define OPENTELEMETRY_VERSION_MINOR 23
- api/include/opentelemetry/version.h:16 #define OPENTELEMETRY_VERSION_PATCH 0
+ api/include/opentelemetry/version.h:16 #define OPENTELEMETRY_VERSION_PATCH 0
- sdk/include/opentelemetry/sdk/version/version.h:6 #define OPENTELEMETRY_SDK_VERSION "1.23.0-dev"
+ sdk/include/opentelemetry/sdk/version/version.h:6 #define OPENTELEMETRY_SDK_VERSION "1.23.0"
- sdk/src/version/version.cc:14 const int major_version    = 1;
+ sdk/src/version/version.cc:14 const int major_version    = 1;
- sdk/src/version/version.cc:15 const int minor_version    = 23;
+ sdk/src/version/version.cc:15 const int minor_version    = 23;
- sdk/src/version/version.cc:16 const int patch_version    = 0;
+ sdk/src/version/version.cc:16 const int patch_version    = 0;
- sdk/src/version/version.cc:17 const char *pre_release    = "dev";
+ sdk/src/version/version.cc:17 const char *pre_release    = "";
- sdk/src/version/version.cc:19 const char *short_version  = "1.23.0";
+ sdk/src/version/version.cc:19 const char *short_version  = "1.23.0";
- sdk/src/version/version.cc:20 const char *full_version   = "1.23.0-dev";
+ sdk/src/version/version.cc:20 const char *full_version   = "1.23.0";
:: Looking good? (y/N)
> => Updating current version
- tbump.toml:25 current = "1.23.0-dev"
+ tbump.toml:25 current = "1.23.0"
=> Patching files
- CMakeLists.txt:18 set(OPENTELEMETRY_VERSION_NUMBER "1.23.0")
+ CMakeLists.txt:18 set(OPENTELEMETRY_VERSION_NUMBER "1.23.0")
- CMakeLists.txt:19 set(OPENTELEMETRY_VERSION_SUFFIX "-dev")
+ CMakeLists.txt:19 set(OPENTELEMETRY_VERSION_SUFFIX "")
- MODULE.bazel:6 version = "1.23.0-dev",
+ MODULE.bazel:6 version = "1.23.0",
- api/include/opentelemetry/version.h:13 #define OPENTELEMETRY_VERSION "1.23.0-dev"
+ api/include/opentelemetry/version.h:13 #define OPENTELEMETRY_VERSION "1.23.0"
- api/include/opentelemetry/version.h:14 #define OPENTELEMETRY_VERSION_MAJOR 1
+ api/include/opentelemetry/version.h:14 #define OPENTELEMETRY_VERSION_MAJOR 1
- api/include/opentelemetry/version.h:15 #define OPENTELEMETRY_VERSION_MINOR 23
+ api/include/opentelemetry/version.h:15 #define OPENTELEMETRY_VERSION_MINOR 23
- api/include/opentelemetry/version.h:16 #define OPENTELEMETRY_VERSION_PATCH 0
+ api/include/opentelemetry/version.h:16 #define OPENTELEMETRY_VERSION_PATCH 0
- sdk/include/opentelemetry/sdk/version/version.h:6 #define OPENTELEMETRY_SDK_VERSION "1.23.0-dev"
+ sdk/include/opentelemetry/sdk/version/version.h:6 #define OPENTELEMETRY_SDK_VERSION "1.23.0"
- sdk/src/version/version.cc:14 const int major_version    = 1;
+ sdk/src/version/version.cc:14 const int major_version    = 1;
- sdk/src/version/version.cc:15 const int minor_version    = 23;
+ sdk/src/version/version.cc:15 const int minor_version    = 23;
- sdk/src/version/version.cc:16 const int patch_version    = 0;
+ sdk/src/version/version.cc:16 const int patch_version    = 0;
- sdk/src/version/version.cc:17 const char *pre_release    = "dev";
+ sdk/src/version/version.cc:17 const char *pre_release    = "";
- sdk/src/version/version.cc:19 const char *short_version  = "1.23.0";
+ sdk/src/version/version.cc:19 const char *short_version  = "1.23.0";
- sdk/src/version/version.cc:20 const char *full_version   = "1.23.0-dev";
+ sdk/src/version/version.cc:20 const char *full_version   = "1.23.0";

Example 2:

tbump 1.24.0-dev --only-patch

gives

:: Bumping from 1.23.0 to 1.24.0-dev
=> Would update current version in tbump.toml
- tbump.toml:25 current = "1.23.0"
+ tbump.toml:25 current = "1.24.0-dev"
=> Would patch these files
- CMakeLists.txt:18 set(OPENTELEMETRY_VERSION_NUMBER "1.23.0")
+ CMakeLists.txt:18 set(OPENTELEMETRY_VERSION_NUMBER "1.24.0")
- CMakeLists.txt:19 set(OPENTELEMETRY_VERSION_SUFFIX "")
+ CMakeLists.txt:19 set(OPENTELEMETRY_VERSION_SUFFIX "-dev")
- MODULE.bazel:6 version = "1.23.0",
+ MODULE.bazel:6 version = "1.24.0-dev",
- api/include/opentelemetry/version.h:13 #define OPENTELEMETRY_VERSION "1.23.0"
+ api/include/opentelemetry/version.h:13 #define OPENTELEMETRY_VERSION "1.24.0-dev"
- api/include/opentelemetry/version.h:14 #define OPENTELEMETRY_VERSION_MAJOR 1
+ api/include/opentelemetry/version.h:14 #define OPENTELEMETRY_VERSION_MAJOR 1
- api/include/opentelemetry/version.h:15 #define OPENTELEMETRY_VERSION_MINOR 23
+ api/include/opentelemetry/version.h:15 #define OPENTELEMETRY_VERSION_MINOR 24
- api/include/opentelemetry/version.h:16 #define OPENTELEMETRY_VERSION_PATCH 0
+ api/include/opentelemetry/version.h:16 #define OPENTELEMETRY_VERSION_PATCH 0
- sdk/include/opentelemetry/sdk/version/version.h:6 #define OPENTELEMETRY_SDK_VERSION "1.23.0"
+ sdk/include/opentelemetry/sdk/version/version.h:6 #define OPENTELEMETRY_SDK_VERSION "1.24.0-dev"
- sdk/src/version/version.cc:14 const int major_version    = 1;
+ sdk/src/version/version.cc:14 const int major_version    = 1;
- sdk/src/version/version.cc:15 const int minor_version    = 23;
+ sdk/src/version/version.cc:15 const int minor_version    = 24;
- sdk/src/version/version.cc:16 const int patch_version    = 0;
+ sdk/src/version/version.cc:16 const int patch_version    = 0;
- sdk/src/version/version.cc:17 const char *pre_release    = "";
+ sdk/src/version/version.cc:17 const char *pre_release    = "dev";
- sdk/src/version/version.cc:19 const char *short_version  = "1.23.0";
+ sdk/src/version/version.cc:19 const char *short_version  = "1.24.0";
- sdk/src/version/version.cc:20 const char *full_version   = "1.23.0";
+ sdk/src/version/version.cc:20 const char *full_version   = "1.24.0-dev";
:: Looking good? (y/N)
> => Updating current version
- tbump.toml:25 current = "1.23.0"
+ tbump.toml:25 current = "1.24.0-dev"
=> Patching files
- CMakeLists.txt:18 set(OPENTELEMETRY_VERSION_NUMBER "1.23.0")
+ CMakeLists.txt:18 set(OPENTELEMETRY_VERSION_NUMBER "1.24.0")
- CMakeLists.txt:19 set(OPENTELEMETRY_VERSION_SUFFIX "")
+ CMakeLists.txt:19 set(OPENTELEMETRY_VERSION_SUFFIX "-dev")
- MODULE.bazel:6 version = "1.23.0",
+ MODULE.bazel:6 version = "1.24.0-dev",
- api/include/opentelemetry/version.h:13 #define OPENTELEMETRY_VERSION "1.23.0"
+ api/include/opentelemetry/version.h:13 #define OPENTELEMETRY_VERSION "1.24.0-dev"
- api/include/opentelemetry/version.h:14 #define OPENTELEMETRY_VERSION_MAJOR 1
+ api/include/opentelemetry/version.h:14 #define OPENTELEMETRY_VERSION_MAJOR 1
- api/include/opentelemetry/version.h:15 #define OPENTELEMETRY_VERSION_MINOR 23
+ api/include/opentelemetry/version.h:15 #define OPENTELEMETRY_VERSION_MINOR 24
- api/include/opentelemetry/version.h:16 #define OPENTELEMETRY_VERSION_PATCH 0
+ api/include/opentelemetry/version.h:16 #define OPENTELEMETRY_VERSION_PATCH 0
- sdk/include/opentelemetry/sdk/version/version.h:6 #define OPENTELEMETRY_SDK_VERSION "1.23.0"
+ sdk/include/opentelemetry/sdk/version/version.h:6 #define OPENTELEMETRY_SDK_VERSION "1.24.0-dev"
- sdk/src/version/version.cc:14 const int major_version    = 1;
+ sdk/src/version/version.cc:14 const int major_version    = 1;
- sdk/src/version/version.cc:15 const int minor_version    = 23;
+ sdk/src/version/version.cc:15 const int minor_version    = 24;
- sdk/src/version/version.cc:16 const int patch_version    = 0;
+ sdk/src/version/version.cc:16 const int patch_version    = 0;
- sdk/src/version/version.cc:17 const char *pre_release    = "";
+ sdk/src/version/version.cc:17 const char *pre_release    = "dev";
- sdk/src/version/version.cc:19 const char *short_version  = "1.23.0";
+ sdk/src/version/version.cc:19 const char *short_version  = "1.24.0";
- sdk/src/version/version.cc:20 const char *full_version   = "1.23.0";
+ sdk/src/version/version.cc:20 const char *full_version   = "1.24.0-dev";

Copy link

codecov bot commented Aug 29, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 90.02%. Comparing base (e8e19b6) to head (777a2b7).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main    #3616      +/-   ##
==========================================
- Coverage   90.03%   90.02%   -0.01%     
==========================================
  Files         220      220              
  Lines        7069     7069              
==========================================
- Hits         6364     6363       -1     
- Misses        705      706       +1     

see 1 file with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@marcalff marcalff added the pr:please-review This PR is ready for review label Sep 1, 2025
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.

Nice :)

@ThomsonTan ThomsonTan merged commit c3f3fcd into open-telemetry:main Sep 2, 2025
66 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr:please-review This PR is ready for review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants