dak is the collection of programs used to maintain the Debian project's archives.

Joerg Jaspert 943136c496 Initial "Make it sphinx based" commit il y a 5 ans
alembic 0bf4c90e93 silence warning "E305 expected 2 blank lines after class or function definition" il y a 5 ans
config ecabc9c535 update configuration for generate-archive-key for buster il y a 5 ans
dak 0012d9e8a4 dak admin: Add suite-config {list,get,set} il y a 5 ans
daklib 78dfea6474 Write some docstrings il y a 5 ans
dakweb 0bf4c90e93 silence warning "E305 expected 2 blank lines after class or function definition" il y a 5 ans
debian 88857f1598 Add test coverage il y a 5 ans
docs 943136c496 Initial "Make it sphinx based" commit il y a 5 ans
integration-tests 5798560ad3 Merge remote-tracking branches 'nthykier/integration-tests-0002-remove-dup-import-key-calls' and 'nthykier/integration-test-with-minimal-dinstall' il y a 5 ans
scripts 96d1a29513 generate-archive-key: use pinentry-curses il y a 5 ans
setup f95130fb74 Add coverage to dak-setup and the dbtests il y a 5 ans
templates d8bc41320a Add link to backports-new.html (Closes: #784349) il y a 8 ans
tests f95130fb74 Add coverage to dak-setup and the dbtests il y a 5 ans
tools 0bf4c90e93 silence warning "E305 expected 2 blank lines after class or function definition" il y a 5 ans
.coveragerc 88857f1598 Add test coverage il y a 5 ans
.gitignore 943136c496 Initial "Make it sphinx based" commit il y a 5 ans
.gitlab-ci.yml 1c10ea0371 Use different css, less eye hurt il y a 5 ans
.nobackup 75726c66fc .nobackup file to avoid the git getting a not-needed backup il y a 6 ans
COPYING ef9466093b Imported sources. il y a 24 ans
README.coding 2edf9af0cc Remove ChangeLog, add README.coding il y a 16 ans
README.md ecbe6f45b7 Extend README with a bit on how to contribute changes il y a 6 ans
alembic.ini 527c40ab67 Add initial Alembic config il y a 6 ans
setup.cfg 2a841d0d9d silence warning "E731 do not assign a lambda expression, use a def" il y a 5 ans

README.coding

Some small guidelines if you want to help coding
------------------------------------------------

First: I'm always happy to get patches for Dak. I like to merge
enhancements, bugfixes, whatever. The more, the better.

Now, to not annoy us all by coming up with small fixes to patches
multiple times before I merge them, lets write down a few small
guidelines we all should follow. Yes, the current dakV1 code sure won't
follow this everywhere, but no need to have new code be the same. :)

I very much prefer git trees to merge from over simple patches,
especially if you do lots of changes. (No need for a full git tree for a
one-off fix). Reason is simple - its much easier to work with. And it is
also way better in terms of assigning who did what, who has to earn the
praise. :)
In case you have more than one feature you want me to merge, one branch
per feature please. If the location of your git tree is stable and
doesn't change every second day I'm also very grateful. :)


Code related:

- Use readable and self-speaking variable names.

- Its 4 spaces per indentation. No tab.

- You want to make sure to not add useless whitespaces. If your editor
doesn't hilight them, Git can help you with that, just set
[color "diff"]
new = green
old = red
frag = yellow
meta = cyan
commit = normal
in your ~/.gitconfig, and a git diff should hilight them.
Even better, if you enable the hook pre-commit in your copy of the dak
code (chmod +x most probably), git will refuse to commit such things.

- Describe *every* function you write using a docstring. No matter how small.

- Also describe every file.

- Don't forget the Copyright/License header in a file. We expect GPLv2 :)

- Don't write long functions. If it goes above a sane limit (like 50
lines) - split it up.

- Look at / read http://www.python.org/dev/peps/pep-0008/


VCS related:

- History rewriting is considered bad.

- Always have a "Signed-off-by" line in your commit. `git commit -s`
automatically does it for you. Alternatively you can enable the hook
"prepare-commit-msg, that should also do it for you.

- Write good, meaningful, commit messages. We do not have a Changelog
file anymore, the git commit is *the* place to tell others what you
did.
Also, try to use the standard format used in the Git world:

First comes a summary line, of around 72 caracters at most.

Then, a blank line, and as many lines and paragraphs as needed
to describe the change in detail. Beware, though, of including
in the commit message explanations that would be better to have
as comments in the code itself!

Signed-off-by: Your Name