I am automating version bumping of my project with this bash script:
#!/usr/bin/env bash CHANGELOG="Changelog.md" DEBIAN_CHANGELOG="debian/changelog" UPSTREAM_VERSION=$(cat VERSION) # Updating entries in rpm files DEB_RELEASE_NOTES=$(awk '{print " * " $0}' < RELEASE_NOTES) echo "Adding new Debian changelog entry for version $UPSTREAM_VERSION." dch -D unstable -m "$DEB_RELEASE_NOTES" --newversion "$UPSTREAM_VERSION-0debian1-unstable1" # Prompt user to edit Debian changelog $EDITOR_CHOICE "$DEBIAN_CHANGELOG" echo "Version updated successfully: $UPSTREAM_VERSION" What it does it sync and places the version in both rpm and debian packages. But this command:
dch -D unstable -m "$DEB_RELEASE_NOTES" --newversion "$UPSTREAM_VERSION-0debian1-unstable1" Gives me some trouble because in places upon debian/changelog the following:
mkdotenv (0.2.0-0debian1-unstable1) unstable; urgency=medium * * 1. Split codebase into multiple files. * 2. Use a seperate version file and define built version upon compile. * 4. [BUGFIX] If input file is same as output file copy input file into a temporary one. * 5. Improved Documentation -- Dimitrios Desyllas <[email protected]> Mon, 10 Mar 2025 20:08:00 +0200 Whereas the RELEASE_NOTES file contains:
1. Split codebase into multiple files. 2. Use a seperate version file and define built version upon compile. 4. [BUGFIX] If input file is same as output file copy input file into a temporary one. 5. Improved Documentation Do you know why all lines are stuck as a single bullet???
select_editorfunction and usesensible-editorinstead