about summary refs log tree commit diff stats
path: root/RELEASE_GUIDE.md
diff options
context:
space:
mode:
authorMichael Vetter <jubalh@iodoru.org>2019-01-15 13:57:05 +0100
committerMichael Vetter <jubalh@iodoru.org>2019-01-15 14:07:07 +0100
commitf3ca75d61e0d73e8cd5f5c147b36bbdf74830325 (patch)
treeaf99bf5988353edafb1046f44f07549d3c61b8b3 /RELEASE_GUIDE.md
parent4a382aa1ee407540ab49a951c05a89fa885fd5a6 (diff)
downloadprofani-tty-f3ca75d61e0d73e8cd5f5c147b36bbdf74830325.tar.gz
Reformat RELEASE_GUIDE as md and add more info
Diffstat (limited to 'RELEASE_GUIDE.md')
-rw-r--r--RELEASE_GUIDE.md91
1 files changed, 91 insertions, 0 deletions
diff --git a/RELEASE_GUIDE.md b/RELEASE_GUIDE.md
new file mode 100644
index 00000000..3712a211
--- /dev/null
+++ b/RELEASE_GUIDE.md
@@ -0,0 +1,91 @@
+# Release Guide
+
+Usually release candidates are tagged 0.6.0.rc1, 0.6.0.rc2 and tested for a week or so.
+
+* Release libstrophe and libmesode 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)
+
+* Update Inline help
+* Check copright dates in all files (Copywright 2012-2019)
+
+* Generate HTML docs (the docgen argument only works when package status is development)
+    `./profanity docgen`
+
+* Update plugin docs
+* Update CHANGELOG
+* Update profrc.example
+
+## Creating artefacts
+* Clone the repository
+* Set the correct release version in configure.ac:
+
+```
+AC_INIT([profanity], [0.6.0], [boothj5web@gmail.com])
+```
+
+* Set the package status in configure ac:
+
+```
+PACKAGE_STATUS="release"
+```
+
+* Commit
+* Tag (0.6.0)
+* Push
+* Set version to next release
+
+```
+AC_INIT([profanity], [0.7.0], [boothj5web@gmail.com])
+```
+
+* Set the pacakge status back to dev
+
+```
+PACKAGE_STATUS="development"
+```
+
+* Create a branch for patch releases (0.6.patch)
+* Push
+* Clone the repository into a fresh folder and checkout the tag
+
+```
+git clone https://github.com/boothj5/profanity.git profanity-0.6.0
+cd profanity-0.6.0
+git checkout 0.6.0
+```
+
+* Remove files not needed in the artefcat
+
+```
+rm -rf apidocs .git
+rm CHANGELOG configure-debug configure-plugins .gitignore profanity.spec prof.supp README.md theme_template travis-build.sh .travis.yml
+```
+
+* Bootstrap the build
+
+```
+./bootstrap.sh
+```
+
+* Remove automake cache
+
+```
+rm -rf autom4te.cache
+```
+
+* Leave the folder and create the artefacts
+
+```
+cd ..
+tar -zcvf profanity-0.6.0.tar.gz profanity-0.6.0
+zip -r profanity-0.6.0.zip profanity-0.6.0
+```
+
+## Updating website
+  * Make changes to the git repo incuding uploading the new artefacts at:
+        https://github.com/boothj5/www_profanity_im
+  * Email boothj5web@gmail.com to get them published to the website