fix(packaging): make bump-changelog.sh work non-interactively - #6
Merged
Merged
Conversation
Now that tools/version.sh reports a real rolling version, this script's
dch path actually runs (previously it was always the no-op branch, so
the bug was latent). Two fixes:
- dch --ignoretime does not exist (unknown option on noble devscripts);
drop it.
- Without DEBEMAIL/DEBNAME dch prints warnings and waits for a keypress
("Did you see those 2 warnings? Press RETURN"), which would hang an
unattended CI build. Set them from the debian/control Maintainer so
dch runs non-interactively and the changelog entry carries the right
identity.
Verified end-to-end in the jazzy build image: version.sh -> 26.09.06,
bump-changelog stamps the changelog to 26.09.06 (non-interactively,
stdin closed), dpkg-buildpackage builds, the .deb installs, and a
find_package consumer runs. Re-running the bump is a no-op
("Changelog already at 26.09.06").
Co-authored-by: openhands <openhands@all-hands.dev>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this does
Fixes
tools/bump-changelog.shso the rolling-version bump actually works in the build pipeline. This is a follow-up to #5 (fix(version): look up the monthly tag without the v prefix): onceversion.shfinally reports a real version, thedchbranch of this script stops being a latent no-op and runs — and it has two bugs.Problems
dch --ignoretimeis an unknown option —dchon noble (devscripts 2.17.10) rejects it:Unknown option: ignoretime. The option simply doesn't exist in this devscripts.dchhangs unattended builds — withoutDEBEMAIL/DEBNAMEset,dchprints warnings and waits interactively (Did you see those 2 warnings? Press RETURN to continue...). In CI this stalls the job until timeout.Both were invisible before #5 because
version.shalways returned26.09.00= the changelog's current version, so thedchpath never executed.Fix
--ignoretime.DEBNAME/DEBEMAILfor thedchcall, taken from theMaintainer:field indebian/control(falls back to git config). This both silences the warnings/prompt (fully non-interactive — verified with stdin closed) and gives the changelog entry the correct maintainer identity.Verification (end-to-end in
ghcr.io/marinholab/gazebo:jazzy, the real builder base image)Against post-#5
main(6 commits after tag26.09):tools/version.sh→26.09.06tools/bump-changelog.sh(stdin closed, CI-like) → exits 0, no prompt; changelog stamped:dpkg-buildpackage -us -uc -b→libmarinholab-sas-core_26.09.06_arm64.deb+ dbgsym ddebdpkg -i→Version: 26.09.06,Status: install ok installedfind_package(marinholab_sas_core)→ linkmarinholab::sas::core+Eigen3→ runs aClock(probe ok 0.011s, exit 0)bump-changelog.shrun →Changelog already at 26.09.06.(no-op)Effect
The PPA build (SmartArmStack/smart_arm_stack_ROS2#5, which runs
tools/bump-changelog.sh+dpkg-buildpackage) will now producelibmarinholab-sas-core_26.09.NNthat tracksmain— without any hang risk in CI.This pull request was created by an AI agent (OpenHands) on behalf of the repository owner.