Skip to content

Historic: Sprint: IETF92Sprint

Robert Sparks edited this page Apr 26, 2023 · 1 revision

IETF92 Code Sprint

Sprint Goals

The IETF 92 Code Sprint in Dallas will, as always, let you work on fixing those things about the datatracker which you most urgently desire to do something about.

The overall focus of this Code Sprint will however be Testing. The background for this is a number of improvements related to testing which have come in with the latest releases. There is now code coverage measurements, and the template and URL coverage measurements we were already doing have been refined.

At the end of a complete test suite, you will now get a summary of test coverage which will look something like this:

Test coverage data:
      Template coverage:  65.06%  (5.12.2:  65.06%)
           Url coverage:  51.64%  (5.12.2:  51.64%)
          Code coverage:  66.20%  (5.12.2:  66.20%)

If the test coverage has dropped compared with the latest release, the test suite will return an error, which hopefully will encourage everyone to write tests for any new code.

If a code coverage report is available, it will now be shown at the datatracker relative url /static/coverage (see https://datatracker.ietf.org/static/coverage/ for an example). You will be able to navigate to the /static/coverage/ page of your development copy of the datatracker and see the code coverage report as soon as you've done a test run:

 $ ietf/manage.py test --settings=settings_sqlitetest

When a release has been done, summary of the code coverage for that release will be available at the top of the datatracker's release notes page, see https://datatracker.ietf.org/release/5.12.2/ for an example.

There is now also a BuildBot running which runs 3 different test suites (pyflakes, the regular test suite, and the full test crawler) on any commit: https://trac.tools.ietf.org/tools/ietfdb/buildbot/waterfall . The buildbot is also available on its own standalone site: https://trac.tools.ietf.org:8010/ . [buildbot.net BuildBot] is a continuous integration tool written in Python which is very configurable and extensible, and is in use by many software projects: [BuildBot(https://github.com/ietf-tools/datatracker/wiki/BuildBot) showcases]. (The datatracker project also used buidbot during the intensive skunkworks project to rewrite the public datatracker from Perl to Python/Django, see the old BuildBot page).

More about the points above is covered in the wiki page Testing.

Sprint Participation

The Sprint will be run according to the IETFSprintHowto.

If you plan to participate, please sign up on the IETF92SprintSignUp page.

This sprint will take place from 9:30 to 18:00 in meeting room State on the B level. The coding will end 18:00 on the dot, with dinner afterwards. The meeting rooms map will help you find the way here: http://www.ietf.org/meeting/92/floor-plans.pdf

We have the mailing list "codesprints@ietf.org" to help with coordination and for use during the event. Please make sure you're subscribed before the event starts. More info on the list is available at https://www.ietf.org/mailman/listinfo/codesprints.

There is also a jabber room at codesprint@jabber.ietf.org.

For information on setting up your environment, code checkout and commit, etc., see the SprintCoderSetup and SprintDatabase pages.

During the sprint, please update the two tables below; this helps both with coordination and with getting the code merged, released, and deployed :-)

See you in Dallas!

This sprint's plan

  • Address whatever is bothering you the most
  • Identify an area of code which lacks testing coverage, and write tests
  • Fix as many of the issues captured at EnhancementIdeas as we can.
  • Work out any remaining issues with the Facelift

Please consider the higher priority items first. If you're looking for a short task, look for rows marked "easy" . If there's something you hope the sprint will address that's not on that list, please enter it as a new ticket using http://tools.ietf.org/tools/ietfdb/newticket

Who's working on what?

Please fill in the following table when you've picked a task for the sprint. It's quite all right to pick and complete multiple tasks :-)

Who Short Description **Related ticket numbers **
Suresh Replaced ID Handling #1619

Completed code ready for merge and release

When you are ready to commit code which is ready form merge and release, please use the phrase Commit ready for merge in your commit message, if all related changes are contained in one commit, or Branch ready for merge if all your commits to your branch, up to the current, should be merged as one unit. This is described more extensively in CodeRepository#Requestingamergetotrunk

For sprint work on other things than the datatracker, please fill in the following table:

Who Notes
Joel Halpern Added nomcom test cases, commit #9317

Wishlist (for this sprint or future sprints)

See (and add to) the list started at EnhancementIdeas -- current method of adding items is to open a new trac ticket.

If you have time to take on larger tasks between sprints, look through the full set of open tickets at http://wiki.tools.ietf.org/tools/ietfdb/report/13 for those not marked sprint.

Special notes for setup for this sprint

Prerequisites

  • A working knowledge of python and/or web design

  • Learn the basic concepts of Django 1.7, e.g., work through the excellent tutorial.

  • Bring a laptop with Python 2.7, Subversion and (optionally) Mysql (5.x) installed, and be ready to check out a branch of the IETF web site from the tools svn server. (Some hints on preparing mac laptops are at MacSetup, hints for Debian 1.7 at DebianWheezySetup)

Clone this wiki locally