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

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

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