UDS-P Summit Development Cycle

We’re less than a month away from the start of UDS-P, which means we’re winding down the development pace on the Summit project. It’s been a very, very busy 6 months for us, we’ve done more work on Summit this cycle than I think it has ever seen before.  As I mentioned in previous posts, our main focus this cycle has been on stabilizing both the code, and the development process, and I think we’ve done an excellent job of meeting those goals.

During this cycle we have developed an easy to reproduce development environment that allows new contributors to get started hacking on Summit much faster than the could previously.  At the same time we’ve implemented stricter code reviews, requiring accompanying test cases in most instances, and have configured Tarmac to help us keep approved branches landing without delay.  We have also handed the task of maintaining our production environment and production deployments to Canonical’s IS team so that Summit will be managed by the same professional team as any other Ubuntu website.  We have also added 3 new contributors during this cycle, and hope to add more even more in the next.

From the end of UDS-O to the time of this writing, the Summit developers have closed 37 bugs, landed 89 merge proposals, and added 118 test cases (which is 118 more than we had before).  I can’t even begin to say how proud I am of the team of developers that have contributed to this project, and the amazing results that we have achieved in so short a time.  It is even more incredible because this is truly a community project, we all contribute to it in our spare time.  So thank you to everybody who has contributed to the success of the Summit project this cycle.

Below is the full list of bugs, branch merges and test cases from this cycle.

Bugs

Bug # Title Priority
855826 session slugs containing + have broken etherpad links Critical
854709 URL encoding Launchpad links breaks them Critical
849078 Stop displaying the track name in the room name when there is a single track Medium
781693 Rooms: Add boolean for if a room has dial-in Medium
793018 Pull the summary from the launchpad blueprint and push it out via the iCal to Guidebook High
779833 Automatically clear cache when the data it contains changes Critical
853991 Plus sign in meeting name breaks url lookup Critical
815196 meeting import failed for lp update High
777171 Percent signs in the wiki field break summit Critical
766392 Pull Real Names from LP for use as “crew” Wishlist
765031 Support for private rooms and private meetings in those rooms Wishlist
793019 Make the colors for the track a database field instead of in the css High
647131 Don’t depend on a room being declared “plenary” Critical
849331 Needs to send no-cache headers when requesting +temp-meeting-export High
780342 Logging in next= is broken again Medium
835955 Sanitize input! Undecided
779884 autoscheduler should never schedule sessions at times in the past Critical
831311 Internal error when trying to delete a duplicate sponsoree High
814375 meeting link breaks on non-unique or missing meeting name Critical
813531 logo should point to http://uds.ubuntu.com/ High
829529 Summit barfs if lp id doesn’t exist and you submit it for sponsorship. High
793021 Add a today link to the topnav Medium
798826 Name fields throw confusing error Low
781137 Need more space between QR code and Day/Room name Low
781117 Change /today to be /xx/today Low
780969 Enable 404 page instead of showing a debug Low
779769 Remove ‘Attendees’ from meeting page if it is a plenary Low
783291 Brainstorm should be removed from summit Medium
668542 Don’t reschedule events/days that have already happened Critical
790675 Stop screen scraping launchpad for information. Use the API instead. High
782062 When importing from Launchpad, the blueprint name should be cleaned before being used High
665589 Importing blueprints unreliable High
798822 initslots doesn’t give feedback when done Low
793020 Match uds.ubuntu.com and summit.ubuntu.com main-nav Medium
783030 Change room.name to room.title on the next sessions page Low
783029 Add link to meeting page in iCal Wishlist
664879 “previous day” and “next day” links on schedule would be nice Low

 

Branch Merges

193: Michael Hall 2011-10-02 [merge] [r=james-w] Optimizations to reduce the number of database queries on the summit and schedule pages.
192: James Westby 2011-09-22 [merge] [r=mhall119] Apply the same transform as etherpad to meeting names when generating pad urls.
191: Michael Hall 2011-09-22 [merge] [r=mhall119] Allow linaro tracks to be scheduled in adjacent slots in the same room.
190: James Westby 2011-09-21 [merge] [r=mhall119] Don’t escape URLs before putting them in the HTML.
189: Michael Hall 2011-09-21 [merge] [r=james-w] Change user_private_ical to use Schedule.from_request, add test case for private ical.
188: James Westby 2011-09-21 [merge] [r=mhall119] Allow + in track, room and attendee names without causing url lookup errors.
187: James Westby 2011-09-21 [merge] [r=mhall119] Fix the 500 error pages to not crash when displayed.
186: Michael Hall 2011-09-19 [merge] [r=james-w] Exclude attendee secret key from the API
185: James Westby 2011-09-19 [merge] [r=mhall119] Allow “+” in a meeting name without crashing on the url lookup.
184: James Westby 2011-09-17 [merge] Make it a single query, rather than doing a few queries per meeting.
183: Michael Hall 2011-09-18 [merge] [r=nigelbabu] Fixes problem with old cache on track view schedule
182: James Westby 2011-09-18 [merge] [r=mhall119] Add some tests for constructing a Schedule object.
181: Nigel Babu 2011-09-17 [merge] [r=james-w] Initial run at pep8 and pyflakes complaints fixing.
180: Michael Hall 2011-09-17 [merge] [r=james-w] Adds read-only REST/JSON API to the schedule data
179: Michael Hall 2011-09-17 [merge] [r=james-w] Adds the ability to download or subscribe to an ical containing your public *and* private meetings
178: Michael Hall 2011-09-17 [merge] [r=james-w,nigelbabu] Fix tests that were looking for a hard-coded SITE_ROOT in urls
177: Jamal Fanaian 2011-09-16 [merge] [r=mhall119] Updating the description of a meeting from the LP blueprint.
176: James Westby 2011-09-16 [merge] The autoscheduler will now reliably not require someone to be in two places at once.
175: Michael Hall 2011-09-16 [merge] [r=nigelbabu] In unit tests, specify that all Meeting instances are requires_dial_in=False unless explicitly testing that functionality.
174: James Westby 2011-09-16 [merge] [r=mhall119] Add fields on rooms and meetings for dial-in.
173: James Westby 2011-09-16 [merge] [r=mhall119] Remove the code to display the track in the room title if there is only one.
172: James Westby 2011-09-16 [merge] [r=mhall119] Add tests for the reschedule command, and make it do something again.
171: James Westby 2011-09-16 [merge] [r=mhall119] Fix a javascript error when a meeting has no participants.
170: James Westby 2011-09-16 [merge] [r=mhall119] Revert r50 which was a band-aid to fix a bug that can no longer be reproduced.
169: James Westby 2011-09-15 [merge] Fix percent sign escaping in render.py
168: James Westby 2011-09-15 [merge] Add support for using multiple Launchpad sprints to populate a single Summit, which will allow separate UDS and Linaro Connect sprints
167: Michael Hall 2011-09-14 [merge] [r=james-w] Adds test cases to make sure % signs are being properly escaped in render.py
166: James Westby 2011-09-14 [merge] [r=mhall119] Update the location of the linaro theme branch.
165: James Westby 2011-09-13 [merge] Add headers to avoid caches on the +temp-meeting-export fetch.
164: Michael Hall 2011-09-14 [merge] [r=james-w] Fix to allow periods in records names
163: James Westby 2011-09-13 [merge] Stops the auto-scheduler from acting on private meetings.
162: Chris Johnston 2011-09-13 [merge] [r=james-w] Updates linaro link to match uds.u.c
161: Michael Hall 2011-09-13 [merge] [r=nigelbabu] Fixes 2 typos in the get_edit_link_to_pad method
160: Michael Hall 2011-09-13 [merge] [r=james-w] Fix for the PrivateSchedulingTestCase
159: Michael Hall 2011-09-12 [merge] [r=nigelbabu] Adds a new TestCase for building tests of the schedule conflict resolution.
158: Michael Hall 2011-09-11 [merge] [r=chrisjohnston] Adds a new ‘color’ field to the Track record, this contains a 6-char hex color code that will be used as the background for meeting blocks on the schedule.
157: Michael Hall 2011-09-02 [merge] [r=chrisjohnston] Check that at least one plenary room exists before trying to use 156: Michael Hall 2011-09-02 Add back in what was lost on rebase
155: Michael Hall 2011-09-02 Add back in what was lost on rebase
154: Chris Johnston 2011-09-02 Adds ability for schedulers to schedule private rooms.
153: Chris Johnston 2011-09-02 Adds private rooms to edit page
152: Chris Johnston 2011-09-02 Adds display of private rooms on UDS page for staff
151: Chris Johnston 2011-09-02 Adds def private_rooms
150: Jamal Fanaian 2011-09-02 [merge] [r=mhall119] Created a method to get an attendee’s full name. Showing crew
149: Chris Johnston 2011-09-02 [merge] [r=mhall119] Removes stray }
148: Michael Hall 2011-08-27 [merge] More XSS fixes
147: Michael Hall 2011-08-27 [merge] Fix XSS vulnerability
147: Michael Hall 2011-08-22 [merge] Check with launchpad to see if an entered username is valid on sponsorship suggestion form
147: Michael Hall 2011-08-22 [merge] Fix errors when converting sponsorship scores to unicode strings
146: Chris Johnston 2011-08-22 [merge] [r=nigelbabu,mhall119] Updates the version of light-django-theme and fixes bzr apps after an update.
145: Chris Johnston 2011-08-22 [merge] [r=nigelbabu] Moves admin link to masthead due to wrapping in main-nav
144: Chris Johnston 2011-08-19 [merge] [r=nigelbabu] Changes Linaro link to match uds.u.c
143: Chris Johnston 2011-08-14 [merge] [r=nigelbabu] This will set debug to true when running locally.
142: Chris Johnston 2011-08-12 [merge] [r=nigelbabu] Switches summit to using bzr_apps by running init-summit.
141: Chris Johnston 2011-08-12 [merge] [r=nigelbabu] Adds a link to the page for editing an etherpad
140: Chris Johnston 2011-08-01 [merge] Adds today link to main-nav
140: Michael Hall 2011-07-22 [merge] Adds the meeting id to the meeting_page_url, and uses only that as the lookup parameter
parameter
139: Nigel Babu 2011-07-30 [merge] [r=mhall119] Reset the theme of the documentation to default.
138: Chris Johnston 2011-07-30 [merge] [r=nigelbabu][] Remove translation tags, summit is not translated.
137: Nigel Babu 2011-07-30 [merge] [r=][] Create a docs so that it shows up in rtfd.org
136: Chris Johnston 2011-07-25 [merge] [r=mhall119][] Removes old migrations and adds new initial migration
137: Michael Hall 2011-07-20 [merge] Adds 960px style to all pages except the wide schedule
134: Chris Johnston 2011-07-20 [merge] Fixes lpupdate. Props mhall119
134: Michael Hall 2011-07-20 Make sure we don’t have periods in meeting names when trying to form the meeting page url
133: Michael Hall 2011-07-20 [merge] point logo link to http://uds.ubuntu.com
133: Michael Hall 2011-07-20 If meeting has no name, we can’t form a proper URL for it, fallback to returning no URL
132: Chris Johnston 2011-07-19 [merge] [r=mhall119][] Adds update-openids script to summit to fix usernames.
131: Chris Johnston 2011-07-19 [merge] [r=mhall119][765031] Adds private room as an option for a room status.
130: Chris Johnston 2011-07-19 [merge] [r=mhall119][793020] Modifies links to match uds.ubuntu.com
129: Michael Hall 2011-07-19 [merge] [r=mhall119][781117] Changes /today url to /summit_name/today
128: Chris Johnston 2011-07-18 [merge] [r=chrisjohnston][] Fixes a minor spelling issue in fields.py
127: Chris Johnston 2011-07-18 [merge] [r=][] Updates required version of south
126: Chris Johnston 2011-07-11 [merge] [r=][] Fixes minor spelling error
125: Chris Johnston 2011-06-26 [merge] [r=nigelbabu][chrisjohnston][798822] Adds a print statement to provide feedback
124: Chris Johnston 2011-06-17 [merge] [r=mhall119][chrisjohnston][798826] Displays information in the name field error message more clearly.
123: Maris Fogels 2011-06-17 [merge] [r=nigelbabu][mars][] Added a tests.py module and an in-memory sqlite database for running the test suite.
122: Nigel Babu 2011-06-12 [merge] [r=james-w][nigelbabu][782062] Remove the ‘.’ from the name of the meeting and replace it with ‘-’
121: Nigel Babu 2011-06-10 [merge] [r=james-w][nigelbabu][790675] Stop the screen scape and use the json API instead.
120: Nigel Babu 2011-06-11 [merge] [r=chrisjohnston,james-w][nigelbabu][783291] Removed the brainstorm code out of
119: Penelope Stowe 2011-06-11 [merge] [r=james-w,nigelbabu][Penelope Stowe] try-catching the launchpad requests with 5
118: Nigel Babu 2011-06-09 [merge] Removes Attendees list from the meeting page if the session is a plenary. Props Nigel Babu
117: Nigel Babu 2011-06-09 [merge] Adds spacing around the QR code to avoid overlap. Props Nigel Babu
116: Nigel Babu 2011-05-22 [merge] Fix authschedule to not modify anything in the past
115: Chris Johnston 2011-05-22 [merge] Add prev/next day links to schedule view
114: Michael Hall 2011-05-22 [merge] Add full path to meeting page in the ical feed
113: Michael Hall 2011-05-22 Fix errors in template, add settings option to have django serve media files even when DEBUG=False
112: Chris Johnston 2011-05-22 [merge] Disable debug mode and give better error messages
111: Nigel Babu 2011-05-22 [merge] Fixes to reschedule command
110: Michael Hall 2011-05-22 [merge] Updated setup.py and requirements.txt to match current production environment

 

Tests

test_sponsorship_display
test_nonlaunchpad_display
test_suggest_valid_username
test_suggest_invalid_username
test_sponsorship_review_display
test_sponsorship_about_paras_filtering
test_sponsorship_about_urlize_filtering
test_sponsorship_xss_escaping
test_sponsorshipsuggestion_review_display
test_sponsorshipsuggestion_xss_escaping
test_passing_nonexistant_summit_raises_error
test_meetings_can_not_be_scheduled_in_closed_slots
test_participants_are_in_another_meeting
test_check_schedule_errors_on_no_dial_in
test_check_schedule_errors_on_same_track_in_previous_slot
test_check_schedule_errors_on_same_track_in_next_slot
test_check_schedule_no_error_on_different_track
test_check_schedule_no_error_on_same_track_for_plenaries
test_check_schedule_no_error_on_same_track_for_ajdacent_sessions_allowed
test_try_schedule_into_refuses_room_without_dial_in
test_try_schedule_into_allows_room_with_dial_in
test_link_to_pad_with_pad_url_set
test_link_to_pad_with_pad_url_unset
test_link_to_pad_with_plus_in_meeting_name
test_edit_link_to_pad_with_pad_url_set
test_edit_link_to_pad_with_pad_url_unset
test_edit_link_to_pad_with_plus_in_meeting_name
test_ical_meeting_without_name
test_ical_meeting_name_with_period
test_private_ical
test_meeting_page_url
test_meeting_name_with_period
test_room_name_with_period
test_track_name_with_period
test_participant_name_with_period
test_meeting_name_with_percent
test_meeting_name_with_plus_sign
test_room_name_with_percent
test_room_name_with_plus_sign
test_track_name_with_percent
test_track_name_with_plus_sign
test_participant_name_with_percent
test_participant_name_with_plus_sign
test_etherpad_edit_url
test_meeting_check_schedule_no_conflict
test_meeting_check_room_conflict
test_meeting_check_schedule_participant_conflict
test_private_meeting_schedule
test_no_available_public_room
test_no_available_private_room
test_required_participant_in_private_meeting
test_percent_in_meeting_name
test_percent_in_meeting_title
test_percent_in_meeting_description
test_percent_in_spec_url
test_percent_in_wiki_url
test_percent_in_room_title
test_percent_in_meeting_track_title
test_percent_in_meeting_track_slug
test_percent_in_attendee_username
test_cache_cleared_on_meeting_change
test_cache_cleared_on_agenda_change
test_track_cache_cleared_on_meeting_change
test_track_cache_cleared_on_agenda_change
test_default_read_only
test_editable
test_read_only_for_public_summit
test_read_only_for_non_edit_request
test_read_only_for_unauthenticated_user
test_read_only_for_user_without_permission
test_default_not_personal
test_personal_if_specified_in_get
test_date_set_from_date
test_date_parsed_from_string
test_dates_set_from_summit_if_not_passed
test_room_set_from_room
test_room_set_from_summit_if_not_passed
test_rooms_include_private_if_user_is_staff
test_rooms_include_private_if_show_private
test_track_is_none_by_default
test_track_set_from_track
test_nextonly_false_by_default
test_nextonly_set_from_get_parameters
test_fakenow_none_by_default
test_fakenow_set_from_get_parameters
test_fakenow_set_to_none_if_invalid
test_calculate_unscheduled_does_nothing_when_read_only
test_calculate_unscheduled_includes_unscheduled
test_calculate_unscheduled_ignores_scheduled_meetings
test_calculate_unscheduled_ignores_meetings_in_tracks_not_in_this_room
test_calculate_unscheduled_includes_meetings_without_a_track
test_calculate_unscheduled_includes_all_meetings_in_room_without_a_track
test_calculate_unscheduled_includes_meetings_of_the_right_track
test_calculate_unscheduled_includes_meetings_with_one_right_track
test_calculate_unscheduled_ignores_plenaries_in_the_room_view
test_calculate_unscheduled_ignores_talks_in_the_room_view
test_calculate_unscheduled_ignores_specials_in_the_room_view
test_calculate_unscheduled_shows_plenaries_in_the_plenary_room_view
test_calculate_unscheduled_ignores_non_plenaries_in_the_plenary_room_view
test_update_meeting_skips_no_name
test_update_meeting_trims_name
test_update_meeting_accepts_existing_meeting
test_update_from_launchpad_response_empty
test_update_from_launchpad_response_handles_no_name
test_launchpad_sprint_import_urls_uses_default
test_launchpad_sprint_import_url_uses_one_summit_sprint
test_launchpad_sprint_import_url_uses_two_summit_sprint
test_update_from_launchpad_gets_info_for_all_import_urls
test_update_from_launchpad_does_the_update
test_update_from_launchpad_deletes_unseen_meetings
test_update_from_launchpad_doesnt_delete_meetings_with_no_spec_url
test_update_from_launchpad_updates_last_update
test_reschedule_does_nothing_on_empty_schedule
test_reschedule_removes_missing_participants
test_reschedule_removes_unavailable_participants
test_reschedule_removes_insufficient_slots
test_reschedule_leaves_old_slots
test_reschedule_leaves_manually_scheduled

This entry was posted in OpenSource and tagged , , , , , . Bookmark the permalink.

One Response to UDS-P Summit Development Cycle

  1. Pingback: SquareCows.com » Quick UDS-P Wrapup

Comments are closed.