chore: Update RELEASE_GUIDE.md

Signed-off-by: Michael Vetter <jubalh@iodoru.org>
This commit is contained in:
Michael Vetter
2026-03-27 08:33:20 +01:00
parent 0dbc18cd7e
commit 5e8987274f

View File

@@ -2,64 +2,45 @@
* Release libstrophe if required
* Run Unit tests: `make check-unit`
* Run Functional tests - Currently disabled
* Run manual valgrind tests for new features
* Build and simple tests in Virtual machines ideally all dists including OSX and Windows (Cygwin)
* Set the correct release version in meson.build and configure.ac
* Run Unit tests: `meson setup build_test -Dtests=true && meson test -C build_test`
* Run Functional tests: same as above but needs stabber installed
* Update Inline command help (./src/command/cmd_defs.c)
* Check copyright dates in all files
* Create clean build folder:
`meson setup build_deb --buildtype=debug -Dnotifications=enabled -Dicons-and-clipboard=enabled -Dotr=enabled -Dpgp=enabled -Domemo=enabled -Dc-plugins=enabled -Dpython-plugins=enabled -Dxscreensaver=enabled -Domemo-qrcode=enabled -Dgdk-pixbuf=enabled`
* Build profanity: `meson compile -C build_deb`
* Generate HTML docs (the docgen argument only works when package status is development)
`./profanity docgen`
`./build_deb/profanity docgen`
* Generate manpages (the mangen argument only works when package status is development)
`./build_deb/profanity mangen`
* Determine if libprofanitys version needs to be [increased](https://github.com/profanity-im/profanity/issues/973)
* Update plugin API docs (./apidocs/c and ./apidocs/python) need to run the `gen.sh` and commit the results to the website git repo
* Update CHANGELOG
* Update CHANGELOG (Use scripts/changelog-helper.py)
* Update profrc.example
* Update profanity.doap (new XEPs and latest version). Look for `DEV` which marks what is done on the development branch.
* Add new release to profanity.doap
## Creating artefacts
* Set the correct release version in configure.ac:
```
AC_INIT([profanity], [0.6.0], [boothj5web@gmail.com])
```
* Set the package status in configure.ac:
* Set the package status to release: `meson setup build_rel --buildtype=release` and in configure.ac
```
PACKAGE_STATUS="release"
```
* Update date and version in man pages (profanity.1, profanity-ox-setup.1)
* Generate manpages for profanity commands (the mangen argument only works when package status is development)
`./profanity mangen`
These files should be added to the docs subfolder and added to git whenever a command changes.
* Add generated command manpages: `git add docs/profanity-*.1`
* Commit
* Commit (Release 0.1.2)
* Tag (0.1.2)
* Push
* Configure to generate fresh Makefile:
```
./bootstrap.sh && ./configure
```
* Generate tarballs:
```
make dist
make dist-bzip2
make dist-xz
make dist-zip
```
* Set the package status back to dev:
* Generate tarballs: `meson dist -C build_rel --formats xztar,zip`
* Set the package status for autotools back to dev:
```
PACKAGE_STATUS="development"
```
@@ -73,12 +54,12 @@ PACKAGE_STATUS="development"
* Push
## Updating website
* Make changes to the git repo including uploading the new artefacts at:
https://github.com/profanity-im/profanity-im.github.io
* Add .xz and .zip tarballs to `tarballs` directory
* Copy generated main_fragment.html and toc_fragment.html to `guide/latest`
* Copy `guide/latest` to `guide/newversion`
* Update tarball location and name in index.html
* Update checksums in index.html
* Update profanity_version.txt
* Take results from profanity.doap and put them into xeps.html
Make changes to the git repo including uploading the new artefacts at:
https://github.com/profanity-im/profanity-im.github.io
* Add .xz and .zip tarballs to `tarballs` directory
* Copy generated main_fragment.html and toc_fragment.html to `guide/latest`
* Copy `guide/latest` to `guide/newversion`
* Tarball location, name, checksum in index.html will be updated automatically during `make` / GH Action
* Update profanity_version.txt
* Take results from profanity.doap and put them into xeps.html