Files
weewx/DEV_NOTES.txt

94 lines
3.1 KiB
Plaintext

checklist for doing a release:
1. Check to make sure weewx.conf doesn't have any local changes.
In particular, check to make sure:
1. WEEWX_ROOT points to /home/weewx
2. Debug set to zero.
2. Make sure the correct version has been entered in weewx.__init__.py
3. Make sure the correct version has been entered in weewx.conf
4. Make sure all changes have been logged in docs/changes.txt
5. Make sure the upgrading guide has been updated if necessary.
6. Make sure the customizing.htm and usersguide.htm have the correct
version number at the top.
7. If working off a branch, commit all changes.
8. Switch to main trunk
9. Right click on the top level weewx, select Team | Merge. Select
"Reintegrate" and enter the branch as the URL.
10. After looking things over, commit changes back to the trunk.
11. Right click top level weewx, select Team | Tag and create a new tag
with a name similar to tags/v1.3.1. Comment should read something
like "Version 1.3.1 release"
12. Using a terminal, run "./setup.py sdist" to create a tarball.
13. As a final sanity check, go to the production machine, unpack the
tarball, install, run.
14. Uploading to SourceForge:
1. Upload tarball
2. Select the new tarball as the Mac, Linux, and BSD distribution
3. Upload docs/changes.txt as README.txt in the files area
15. Run a backup on Raven
16. Run Microsoft Expression Web on the PC.
1. Copy all the new docs to the weewx web folder, subdirectory docs.
2. Add to the "What's New" section on the front page.
3. Upload everything to the web server.
17. Announce the release to the weewx user's group.
source install:
setup.py install
setup.py install home=/opt/weewx-x.y.z
debian install:
dpkg -i weewx_x.y.z-r.deb
(apt-get install weewx)
redhat install:
yum install weewx [--nogpgcheck]
how to update the version number:
modify __version__ in bin/weewx/__init__.py
make version
svn commit -m "..."
how to build source package:
make src-package
how to build debian package:
make deb-changelog
emacs pkg/debian/changelog
svn commit -m "..."
make deb-package
how to build redhat package:
make rpm-changelog
emacs pkg/weewx.spec.in
svn commit -m "..."
make rpm-package
to generate gpg key used for signing packages:
gpg --gen-key
gpg --list-keys
for signing rpm packages:
~/.rpmmacros
%_signature gpg
%_gpg_name Matthew Wall
gpg info must match the name and email in the changelog entries.
there are multiple changelogs:
docs/changes.txt - definitive changelog for the app
pkg/debian/changelog - changes to the debian packaging
pkg/weewx.spec.in - changes to the redhat packaging
README.txt - copy of changes.txt uploaded to sourceforge
there are many ways to build a debian package. first tried dpkg (uses DEBIAN
dir and is fairly low-level) but that does not create changes and source diffs.
then dried dpkg-buildpackage (uses debian dir and is higher level) but misses
the config and templates. ended up using dpkg-buildpackage with some manual
(scripted) file manipulation.
what to test when creating debian packages:
install, upgrade, remove, purge