fix(release): replace \s with [[:space:]] in bump sed (BSD compat)

Critical: macOS BSD sed does not support \s character class.
The two substitutions in the version-bump step silently no-oped, the
grep fail-fast guard caught it (no remote damage), but release.sh
couldn't complete. Using POSIX [[:space:]] works on both BSD and GNU sed.

Also: extend test_git_archive_excludes_dev_files to cover .phpunit.result.cache,
.beads/, .claude/, dist/, .DS_Store — the test now fully enforces .gitattributes
export-ignore invariant.
This commit is contained in:
Vladimir Bryzgalov
2026-04-21 21:21:06 +05:00
parent 42b98e5438
commit 34e5571fea
2 changed files with 3 additions and 3 deletions
+2 -2
View File
@@ -76,8 +76,8 @@ log "Validation passed: version=$VERSION, tag=$TAG, branch=$BRANCH"
log "Bumping version to $VERSION in cf7-spam-to-telegram.php and readme.txt"
sed -i.bak -E \
-e "s|^(\\s*\\*\\s*Version:\\s*).*$|\\1${VERSION}|" \
-e "s|define\\('CF7STG_VERSION',\\s*'[^']+'\\)|define('CF7STG_VERSION', '${VERSION}')|" \
-e "s|^([[:space:]]*\\*[[:space:]]*Version:[[:space:]]*).*$|\\1${VERSION}|" \
-e "s|define\\('CF7STG_VERSION',[[:space:]]*'[^']+'\\)|define('CF7STG_VERSION', '${VERSION}')|" \
cf7-spam-to-telegram.php
rm cf7-spam-to-telegram.php.bak
+1 -1
View File
@@ -52,7 +52,7 @@ final class ZipArchiveBuildTest extends Cf7stgTestCase
$entries = self::listZip($zip);
$joined = implode("\n", $entries);
foreach (['tests/', 'docs/', 'composer.json', 'composer.lock', 'phpunit.xml', 'release.sh', '.gitattributes', '.gitignore', 'CLAUDE.md', 'AGENTS.md'] as $devPath) {
foreach (['tests/', 'docs/', 'composer.json', 'composer.lock', 'phpunit.xml', 'release.sh', '.gitattributes', '.gitignore', 'CLAUDE.md', 'AGENTS.md', '.phpunit.result.cache', '.beads/', '.claude/', 'dist/', '.DS_Store'] as $devPath) {
self::assertStringNotContainsString(
"cf7-spam-to-telegram/$devPath",
$joined,