Process gap fix. Up to today the library had no version constant
and no git tags -- downstream consumers were pinning commit
hashes, which is fragile (any force-push or rebase invalidates
the pin silently, and the hash doesn't convey "breaking" vs
"patch"). Two pieces land together:
src/mb.version.pas MB_VERSION = '0.5.1' + split major/minor/patch
constants. Included from build.sh so every
target gets it.
CHANGELOG.md Index of prior milestones (0.3.0 through 0.5.0)
with the commit each one maps to, and the
release notes for 0.5.1 (today's security-
hardening round).
Retroactive tags follow in the next invocation. Going forward:
every release bumps MB_VERSION and places a matching v<ver> tag
in the same commit.
README "Status" section now points consumers at CHANGELOG.md and
the v0.5.1 tag.
26 lines
595 B
ObjectPascal
26 lines
595 B
ObjectPascal
{ mb.version -- single source of truth for the fpc-msgbase
|
|
library version string. Consumers can display / log it at
|
|
start-up or pin against it at build time.
|
|
|
|
Version discipline: every release gets a git tag (v<major>.<minor>.<patch>)
|
|
and a bumped MB_VERSION constant in the same commit. Security
|
|
fixes go in patch releases; additive features in minor;
|
|
anything that breaks the API goes in major.
|
|
}
|
|
|
|
unit mb.version;
|
|
|
|
{$mode objfpc}{$H+}
|
|
|
|
interface
|
|
|
|
const
|
|
MB_VERSION_MAJOR = 0;
|
|
MB_VERSION_MINOR = 5;
|
|
MB_VERSION_PATCH = 1;
|
|
MB_VERSION = '0.5.1';
|
|
|
|
implementation
|
|
|
|
end.
|