I notice that TFM_VERSION_MANUAL gets set to "2.2.1" in both release/2.2.x and in main. Granted, the hash gets appended to make TFM_VERSION, and there's some reading of git tags involved that can override TFM_VERSION_MANUAL, but it still feels odd that both identify as the "same" version.
Perhaps main should be flagged as being the "next" version as soon as the previous version branch has been created? So we would tag main as v2.3.pre or something. Either that or something that identifies as *not* being a regular release.
Chris
Hi,
Yes, I agree it can be confusing as any static version reference becomes outdated with the first post-release change. Just to recap, 3 use cases for handling TF-M versioning:
1. A Git repository with tags 2. A Git repository without tags 3. Plain source code with no Git In cases 2 and 3, the TFM_VERSION_MANUAL variable is used to define the version manually. To clearly distinguish ongoing development in the main from the last release, we could use a notation like "2.2.1+", indicating it's an increment beyond the 2.2.1 release.
Does that approach make sense? Best regards, Anton
From: Chris.Brand--- via TF-M tf-m@lists.trustedfirmware.org Sent: Tuesday, November 25, 2025 10:15 PM To: tf-m@lists.trustedfirmware.org Subject: [TF-M] TFM_VERSION
I notice that TFM_VERSION_MANUAL gets set to "2.2.1" in both release/2.2.x and in main. Granted, the hash gets appended to make TFM_VERSION, and there's some reading of git tags involved that can override TFM_VERSION_MANUAL, but it still feels odd that both identify as the "same" version.
Perhaps main should be flagged as being the "next" version as soon as the previous version branch has been created? So we would tag main as v2.3.pre or something. Either that or something that identifies as *not* being a regular release.
Chris
tf-m@lists.trustedfirmware.org