create new translation branch for v0.4

This commit is contained in:
lars 2008-04-07 23:08:43 +00:00
parent 9b4e353af7
commit 0a1d2a2e00
795 changed files with 134715 additions and 0 deletions

View file

@ -0,0 +1,115 @@
HOW TO UPLOAD A FRESH DEBIAN PACKAGE
1) tag the to-be-released version
Run:
svn cp BASE tags/v0.x.y
Replace 'BASE' with the version this release is based on (usually 'trunk').
Replace 'x' and 'y' with the numbers of your choosen release.
2) Apply the selected changes
This step is only suitable for releases that are not based on 'trunk', but are
just bugfix or language releases.
2a) Bugfix release
Apply the appropriate patch.
2b) Language release
Copy the choosen language files to the new tag directory.
Just an example for an update of the spanish ('es') translation:
cd branches/translation-base-x.y
find -type f -name \*.po | grep /intl/es/ | while read po_file
do svn cp "$po_file" "tags/v0.x.y/$po_file"
done
Add possible new languages to the "Languages" setting in
'conf-examples/cryptobox.conf'.
Add the acknowledgment for the contributor to the README file.
All changes must be merged into the 'trunk', too!
3) update the debian changelog
Run "debchange -i" to create a new changelog entry. Leave some useful notes.
BEWARE: all development releases must have the debian release no. "1" (the last
part of the version following the dash) - e.g.: 0.2.50-1.
You MUST increase the upstream version (before the dash) by one whenever you
want to upload a new debian package to the repository - otherwise you will
inevitably mess up the package repository - and you know, who will have to
figure out, how to fix this :)
4) create the package
Change to the tag directory of the new release and run the following:
../make-deb.sh x.y.z .
(do not forget the final dot)
The UPSTREAM_VERSION is the one, that you were using for the new debian
changelog entry (_before_ the hyphen, e.g. "0.3.4" instead of "0.3.4-1").
Again: _never_ upload two different debian packages with the same upstream
version number or you will surely go to hell!
The package files will get copied to ../tags/packages/debian/.
The version number in src/cryptobox/__init__.py gets updated automatically by
the make-deb.sh script.
5) double check the package
Run the two testing programs "lintian" and "linda" with the new
package.
lintian ../tags/packages/debian/cryptobox-server...deb
linda ../tags/packages/debian/cryptobox-server...deb
Try to install the new package on a system with dpkg and see if it went fine.
6) upload the package
You should use dupload - it is the preferred uploading program for debian
packages:
apt-get install dupload
See http://www.debian-administration.org/articles/286 for more details.
Create the following configuration file as ~/.dupload.conf:
package config;
$preupload{'changes'} = "";
$default_host = "sao";
$cfg{"sao"} = {
fqdn => "sao",
login => "uml-www",
method => "scpb",
incoming => "/data/deb-repo/incoming/unstable",
dinstall_runs => 1,
};
1;
Furthermore you need the following entry in your ~/.ssh/config:
Host sao
Hostname systemausfall.org
Port 2200
(otherwise it is impossible to change the ssh port in dupload)
To upload the latest debian package you could do the following:
dupload $(ls -tr ../tags/packages/debian/*.changes | tail -1)
(this will only use the latest changes-file)
7) import the package into the repository
It would be nice, if the web interface would work - but it does not.
Please wait for etch - then we will update reprepro.
For now you have to login to the www-uml:
ssh uml-www@sao
Switch to the deb-repo user:
su - deb-repo
Import all incoming packages:
scripts/import.sh
You did it!

View file

@ -0,0 +1,4 @@
Bug-Report: twill/other-packages/ClientForm.py: uncomment line 846 ("XHTMLCompatibleFormParser" instead of default parser) - this solves an eternal loop-problem caused by line 958 ("fp.feed(ch)")
Bug-Report: testoob - loading of a TestSuite (as advertised by the commandline help) does not work (due to unittest.py/loadTestsFromModule)

View file

@ -0,0 +1,34 @@
Some important notes regarding the language files:
1) warning/success messages
Attributes:
Title - title of the message
Text - text of the message
Link.Text - textual representation of a link
Link.Abs - absolute URL e.g. http://cryptobox.org/trac
Link.Prot - 'http' or 'https'
Link.Rel - relative url (based on the cgi root)
Link.Attr[12].[name|value] - arguments to be added to the link
The "Link" attributes are only necessary if the (warning) message can be resolved by
some action. Otherwise it is not necessary to define any "Link" attribute.
All values are optional, but you should follow these rules:
- at least one of "Title" and "Text" should be defined
- if there are "Link" attributes, then you should also define "Link.Text"
- "Link.Abs" can not be combined with "Link.Prot", "Link.Rel" or "Link.Attr..."
- "Link.Rel" and "Link.Prot" may be used together
(see plugin/volume_format_fs/lang/en.hdf for a good example for links)
2) adding a new language
- add the language code (e.g. "de") to the ALL_LANGUAGES setting in
scripts/update_po_files.py
- run "scripts/update_po_files.py"
- svn add plugins/*/intl/NEW_LANG_CODE intl/NEW_LANG_CODE
- svn revert plugins/*/intl/NEW_LANG_CODE/*.mo intl/NEW_LANG_CODE/*.mo
- svn propset svn:ignore "*.mo" plugins/*/intl/NEW_LANG_CODE intl/NEW_LANG_CODE
- add it to /etc/pootle/pootle.prefs in the translation pootle server
- add it to conf-examples/cryptobox.conf

View file

@ -0,0 +1,33 @@
We use a pootle server to allow online translation of our language data
The following text should give you guide lines on how to:
- update and merge language data to (A) and from (B) the pootle server
- change english original texts (C)
------------------------------------------------------------------------------
A) update the pootle language files via svn
- log in to the pootle server (thorax)
- become root
- su - pootle
- svn up svn
- svn stat svn
- resolve potential conflicts
B) commit pootle translations to svn
- log in to the pootle server (thorax)
- become root
- su - pootle
- use "svn stat" and "svn diff" to check local changes
- svn up
- resolve potential conflicts (svn stat)
- svn commit
C) update language template files (after changing english texts)
- change the language.hdf file (of the base cryptobox or of a plugin)
- run scripts/update_po_files.py
- review the changes
- commit the changes

View file

@ -0,0 +1,5 @@
debootstrap etch _builddir
chroot _builddir
sed -i "/respawn:\/sbin\/getty/d" /etc/inittab
echo "0:1235:respawn:/sbin/getty 38400 console linux" >>/etc/inittab

View file

@ -0,0 +1,29 @@
This file describes common procedures for commiting code and for releasing a
new version.
1) day-to-day commits:
The usual steps before commit:
- scripts/update_po_files.py
- run unittests:
- bin/uml-setup.py
- log into uml
- install the previously build package
- invoke-rc.d cryptobox-server stop
- hostfs/bin/do_unittests.sh
- check that CryptoBoxRootActions has OVERRIDE_FILECHECK = False
2) release a new version
- follow: http://devel.cryptobox.org/wiki/CodingGuideLines
- do last automated unittests
- check if chessecake finds important issues
- transform TODOs into trac-tickets
- follow the instructions in "debian-package_policy.txt"
- upload the tar/deb/iso to codecoop
- update the website: index and download
- announce the release on freshmeat: http://freshmeat.net/projects/cryptobox
- announce it on the Python Package Index: http://www.python.org/pypi
- update the trac-roadmap, close all done tickets