Difference between revisions of "Release process"
From collectd Wiki
(+Category:Development) |
(Point to the Perl script.) |
||
Line 5: | Line 5: | ||
#* Write from a user's point of view. For example: <span style="color: darkgreen;">"Support for recent versions of ''gcrypt'' has been added."</span> rather than <span style="color: maroon;">"don't enable gcrypt thread callbacks when gcrypt recent enough"</span>. | #* Write from a user's point of view. For example: <span style="color: darkgreen;">"Support for recent versions of ''gcrypt'' has been added."</span> rather than <span style="color: maroon;">"don't enable gcrypt thread callbacks when gcrypt recent enough"</span>. | ||
#* Write in the past tense, use passive form. For example: "Support for X has been added.", "The Y option has been added." | #* Write in the past tense, use passive form. For example: "Support for X has been added.", "The Y option has been added." | ||
− | # Convert the ChangeLog entry to plain-text and add it to the top of {{GitFile|ChangeLog}}. [[ | + | # Convert the ChangeLog entry to plain-text and add it to the top of {{GitFile|ChangeLog}}. See [[#wiki2changelog.pl]] below. |
# Increase the version number in {{GitFile|version-gen.sh}}. | # Increase the version number in {{GitFile|version-gen.sh}}. | ||
# Commit and call <code>./build.sh</code> so autoconf picks up the new version number. | # Commit and call <code>./build.sh</code> so autoconf picks up the new version number. | ||
Line 12: | Line 12: | ||
# Update <code>SHA1SUM</code> and friends. | # Update <code>SHA1SUM</code> and friends. | ||
# Change links on the download page and in the left-hand menu. | # Change links on the download page and in the left-hand menu. | ||
− | # Convert the ChangeLog entry to HTML and update the ''News'' page. [[ | + | # Convert the ChangeLog entry to HTML and update the ''News'' page. See [[#wiki2html.pl]] below. |
# Update the topic in the IRC channel. | # Update the topic in the IRC channel. | ||
# Make noise (Twitter, Google+, …) | # Make noise (Twitter, Google+, …) |
Revision as of 17:07, 26 February 2015
This page is meant as a rough guide for doing a collectd release.
- Start writing a ChangeLog. This is easiest when writing the changelog in the wiki, e.g. at Version 5.4.
- I usually get a list of all commits (
git log collectd-5.4.1..collectd-5.4
), go through this commit-by-commit. - Write from a user's point of view. For example: "Support for recent versions of gcrypt has been added." rather than "don't enable gcrypt thread callbacks when gcrypt recent enough".
- Write in the past tense, use passive form. For example: "Support for X has been added.", "The Y option has been added."
- I usually get a list of all commits (
- Convert the ChangeLog entry to plain-text and add it to the top of ChangeLog. See #wiki2changelog.pl below.
- Increase the version number in version-gen.sh.
- Commit and call
./build.sh
so autoconf picks up the new version number. - Build tarballs with
make distcheck
- Upload tarballs; make sure files are world-readable.
- Update
SHA1SUM
and friends. - Change links on the download page and in the left-hand menu.
- Convert the ChangeLog entry to HTML and update the News page. See #wiki2html.pl below.
- Update the topic in the IRC channel.
- Make noise (Twitter, Google+, …)
wiki2changelog.pl
#!/usr/bin/perl
use strict;
use warnings;
while (<>)
{
s#'''##g;
s#''##g;
s#<code>([^<]+)</code>#"$1"#g;
s#\[\[[^\|\]]+\|([^\]]+)\]\]#$1#g;
s#{{Plugin\|([^}]+)}}#plugin($1)#ge;
s/{{Issue\|([^}]+)}}/#$1/g;
print "\t$_";
}
sub plugin
{
$_ = lc ($_[0]);
s/\s/_/g;
return "$_ plugin";
}
wiki2html.pl
#!/usr/bin/perl
use strict;
use warnings;
while (<>)
{
chomp;
s#^\* ##;
s#'''([^']+)'''#<strong>$1</strong>#g;
s#''([^']+)''#<em>$1</em>#g;
s#\[\[([^\|\]]+)\|([^\]]+)\]\]#<a href="/wiki/index.php/$1">$2</a>#g;
s#{{Plugin\|([^}]+)}}#<a href="/wiki/index.php/Plugin:$1">$1 plugin</a>#g;
s#{{Issue\|([^}]+)}}#<a href="https://github.com/collectd/collectd/issues/$1">\#$1</a>#g;
print "$_<br />\n";
}