Two Bash scripts that build release zips for phpBB packages: one for phpBB extensions, one for phpBB language packs.
| Script | Builds | Zip name |
|---|---|---|
git-release.sh |
A phpBB extension | <vendor>-<name>-<version>.zip, from composer.json |
git-release-langpack.sh |
A phpBB language pack for the phpBB.com Customisation Database | <languagename>_<version>.zip |
Both scripts build the zip from the current git commit (HEAD), so uncommitted changes are not included. Files marked export-ignore in .gitattributes are left out. They were written and tested on Linux.
git-release.sh:git,jq,zipgit-release-langpack.sh:git,curl,jq,unzip,zip. For--checkalsophp,composerandsha256sum.
Run it inside the extension's git repository. composer.json must have a name (vendor/name) and a version.
git-release.shThe zip is written to ../git-exported, next to the repository. Its top folder is vendor/name/.
Run it inside the language pack's git repository. With no arguments it prints help.
git-release-langpack.sh --check --release--checkruns the phpBB Translation Validator (branch1.6.x, phpBB 3.3 only) on the exact zip contents. It uses the English files of the official phpBB release zip as the reference, checked against phpBB's published SHA-256.--releasebuilds<languagename>_<version>.zipwith a folder of the same name inside. Onlyext/,language/andstyles/are included, because the Language Pack Validation Policy does not allow other files.- With both options, the zip is written only if validation passes.
- The version defaults to the current stable phpBB 3.3 release from
https://version.phpbb.com/phpbb/versions.json. Use--versionto set it, for example--version 3.3.16.
Run git-release-langpack.sh --help for all options.
tests/test-release-scripts.shThe tests run offline in a temporary directory. GitHub Actions runs them, and ShellCheck, on every pull request.
Contributions are welcome!
- Bug reports: Open an issue.
- Everything else (questions, feature requests, ideas, general discussion): Use Discussions.
- Pull requests are welcome for bug fixes or discussed features.
- Code review, bug fixes, and documentation assisted by Claude.
This project is licensed under the GNU General Public License v2.0.
See LICENSE for more information.