Slide 1

Slide 1 text

Contributing to Django Tickets, patches and triaging Tomek Paczkowski @oinopion January 2012

Slide 2

Slide 2 text

Tickets Django uses Trac. For better or worse. http://code.djangoproject.com

Slide 3

Slide 3 text

Tickets statistics All open tickets 1800 (!) Waiting for patch 675 Patch needs improvement 412 Patch needs tests 167 Patch needs review 196

Slide 4

Slide 4 text

Ticket triaging Tickets start as new

Slide 5

Slide 5 text

Ticket triaging Tickets start as new If bug is confirmed: accepted

Slide 6

Slide 6 text

Ticket triaging Tickets start as new If bug is confirmed: accepted Patch is good: ready for commit

Slide 7

Slide 7 text

Ticket triaging Tickets start as new If bug is confirmed: accepted Patch is good: ready for commit Commited to trunk: fixed

Slide 8

Slide 8 text

Ticket triaging Tickets start as new If bug is confirmed: accepted Patch is good: ready for commit Commited to trunk: fixed http://j.mp/django-triage

Slide 9

Slide 9 text

Ticket flags has patch if not, write one!

Slide 10

Slide 10 text

Ticket flags has patch if not, write one! patch needs improvement style, logic errors

Slide 11

Slide 11 text

Ticket flags has patch if not, write one! patch needs improvement style, logic errors needs documentation docs are a must

Slide 12

Slide 12 text

Ticket flags has patch if not, write one! patch needs improvement style, logic errors needs documentation docs are a must needs tests and so are tests

Slide 13

Slide 13 text

Ticket flags has patch if not, write one! patch needs improvement style, logic errors needs documentation docs are a must needs tests and so are tests easy pickings good for rookies

Slide 14

Slide 14 text

Get that damn trunk Check out the code from the repository: svn co https://code.djangoproject.com/svn/django/trunk/ or git clone git://github.com/django/django.git

Slide 15

Slide 15 text

Running unit tests cd /path/to/trunk pip install -e . # best in virtualenv cd tests/ ./runtests.py --settings=test_sqlite

Slide 16

Slide 16 text

Running unit tests cd /path/to/trunk pip install -e . # best in virtualenv cd tests/ ./runtests.py --settings=test_sqlite Running single test, selenium, etc: http://j.mp/django-unit-tests

Slide 17

Slide 17 text

Patching svn diff > ticket12345.diff or git diff > ticket12345.diff

Slide 18

Slide 18 text

Concerned? If you have ever shipped any production code than you are qualified to contribute.

Slide 19

Slide 19 text

That’s all, folks! Questions?

Slide 20

Slide 20 text

That’s all, folks! Questions? Thank you! http://j.mp/django-contribute