ietfdb (6.72.1) ietf; urgency=medium This is a bugfix release that addresses a few recent issues, as follows: * Merged in [14624] from rjsparks@nostrum.com: Allow those people who could upload bluesheets for an interim to upload revised bluesheets. Fixes #2442. * Merged in [14623] from rjsparks@nostrum.com: Take a different approach to avoiding the crash when a team secretary uses the bulk assignment form to unassign a request. Reverts r14570. Fixes issue #2443. * Re-worked create_proceedings_templates() so it does not blow up if it's run a second time for a given meeting. * Fixed an UnboundLocalError (only partial variable initialization) bug in views_ballot.py * Fixed a bug where the code might try to look at the first character of a line even when there are no characters, in test_to_dict() -- Henrik Levkowetz 09 Feb 2018 10:13:09 +0000 ietfdb (6.72.0) ietf; urgency=medium **Updated IPR disclosure pages** This release introduces changes to the IPR disclosure pages, requested during a WG Chairs Lunch where the changes to IPR handling introduced by RFC8179 were presented. From the commit log: * Changed the IPR disclosure page for IPR disclosure updates to show both the previous and current disclosure details side-by-side. Fixes issue #2414. * Rewrote text_to_dict() and dict_to_text() to support unicode without RFC2822 encoding issues. Added initial values in IPR update forms, from the original disclosure, in order to make updates easier. Addresses issue #2413. * Added a new section for IPR disclosures on related documents to the IPR document search result page. Fixes issue #2412. * Changed the patent information text fields to individual fields for patent number, inventor, title, date and notes, with validation. Fixes issue #2411. -- Henrik Levkowetz 06 Feb 2018 14:18:36 +0000 ietfdb (6.71.1) ietf; urgency=low This is a small bugfix release related to the new non-wg mailing list index page, in preparation for merging in the IPR changes branch: * Changed the menu entry for non-wg lists to point at our own page. * Added view caching of the non-wg list index. * Fixed 2 bugs in import_mailman_listinfo; one typo and one bug which prevented updating of lists that changed from advertised to not advertised. -- Henrik Levkowetz 01 Feb 2018 15:02:08 +0000 ietfdb (6.71.0) ietf; urgency=medium **Non-WG mailing lists index; 'many authors' warning** This release adds a page which lists all advertised IETF mailing lists that are not WG lists. The draft submission tool now shows a prominent warning if the number of draft authors exceed 5. Upload of agendas, minutes, and other meeting materials has been tweaked to accept some files that previously were (incorrectly) blocked. There are also a number of bugfixes and a new management command. From the commit log: * Added a page that lists all the advertised non-wg mailing lists, based on data fetched from mailman by a cronjob running the import_mailman_listinfo managemnt command. * Added a workaround for libmagic mislabelling plain text content with a line beginning with 'virtual' as text/x-c++. * Improved wordwrap on materials document pages. * Merged in [14575] from adam@nostrum.com: Provide authors with a prominent early warning whenever they submit a document with more than five authors listed. * Added a management command to generate apache 'Require user ...' stanzas from group:type:role specifications. This permits automated maintenance of role based access permissions, for instance for private IESG, IAOC etc. wikis. * Merged in [14572] from rjsparks@nostrum.com: Corrected the filter for closed review requests. Fixes #2152. * Removed the possibility of choosing '(None)' as reviewer from the bulk review request edit form; this prevents a crash on line 1474 of ietf/group/views.py, in manage_review_request(). * Only do coverage set/reset operations if we're in test mode. Fixes a 500 error during draft submission yang checking. -- Henrik Levkowetz 30 Jan 2018 20:59:00 +0000 ietfdb (6.70.0) ietf; urgency=medium **Enhanced document author search, NomCom tools, and more** This release expands the fields to which the 'author' entry in the document search form is applied, from just author name, to author name, email addresses, and affiliation. This makes it more feasible to enter a company name in the author field, and get meaningful results. The search results page now shows how many hits there are in each document category. Bluesheets may now be uploaded in text/plain format, not only PDF. For the nomcom, there's a new eligibility view and some additional tool links in the menu drop-downs, and for the IESG, there's now a warning if a draft is put on the telechat agenda so close to the telechat date that directorate reviews probably won't have time to be completed. Review request deadlines can now be edited, and there are also some testing enhancements. Commit log excerpt: * Made the MeetingFactory produce ietf meetings with dates appropriate for the numbers. Fixes random failures in test_eligible(). * Merged in [14549] from rjsparks@nostrum.com: Allow people who can make a review request to edit the request deadline. Send mail to other directorate secretaries when one secretary makes a change to a request. Fixes #2233. * Added .txt, text/plain, to the permitted types for bluesheet upload. Fixes issue #2437. * Expanded the fields that the 'author' entry of the document search form is applied to, from just author name, to author name, email addresses, and affiliation. Fixes issue #2415. * Added hit counts to the document search result page template. * Removed a chunk of code that won't be executed in all test environments from the test coverage measurements * Merged in [14539] from rjsparks@nostrum.com: Warn when putting a draft on a telechat that is so close that directorates will probably not have time to complete a review. Fixes #2381. * Added more test data for the eligibility view, in order to exercise all parts of the view code. * Removed code generating nomcom page urls which doesn't resolve any more. Added a comment about the eligibility view for previous nomcoms. * Merged in [14533] from rjsparks@nostrum.com: Add a page for the nomcom-chair and the secretariat to view who the datatracker thinks is nomcom eligible. Related to #2257. * Merged in [14532] from rjsparks@nostrum.com: Add another external tool link to the nomcom chair's task menu. * Modified the patch actions run under the 'check' management command to patch an issue with a unidecode lib warning. * Excluded versions of the Faker lib that produces names of type string instead of unicode for locale ro_RO, to avoid warnings from unidecode during testing. -- Henrik Levkowetz 24 Jan 2018 12:45:39 +0000 ietfdb (6.69.0) ietf; urgency=medium **Improved NomCom support** This release provides a number of enhancements to the NomCom pages, as well as fixes for a number of reported issues, as follows: * Merged in [14518] from rjsparks@nostrum.com: Added navigation for the nomcom-chair to external tools. Fixes #2258 * Merged in [14516] from rcross@amsl.com: Added admin permissions to secretariat group for nomcom objects. * Refined the URL patterns and handling of alternative meeting material file formats, which were broken by an earlier refactoring (v6.57.0). Fixes issue #2436. * Changed some URLs to match new locations after the deployment of the new IETF website. Fixes issue #2434 * Merged in [14511] from rjsparks@nostrum.com: Allow all the nomcom private tabs to show on the nomcom chair configuration help page. Fixes #2303. * Merged in [14506] from rjsparks@nostrum.com: Improved the resilience of the formatted_email nomcom filter. Fixes #1764. * Merged in [14505] from rjsparks@nostrum.com: Make extracting lists of nomcom-related email addresses easier for the nomcom chair. Fixes #1852. * Merged in [14504] from rjsparks@nostrum.com: Simplified the edit nomcom members forms. Fixes #1756. * Updated docker build and config files. * Merged in [14497] from rjsparks@nostrum.com: Added navigation to nomcom pages for nomcom members. Put the RFC Status change link in a saner place in the navigation. Fixes #1411 and #2433. * Excluded some locales from PersonFactory due to difficulties with the romanization of the names using our current transliteration library (unidecode), in particular in connection with tests doing draft author extraction. * Removed some dead code. -- Henrik Levkowetz 16 Jan 2018 11:32:18 +0000 ietfdb (6.68.3) ietf; urgency=medium **Group history comments and other refinements** This is a minor release, to fix some bugs, introduce some tweaks, and clean the slate before the planned modifications to IPR disclosure pages (see issues #2411, #2412, #2413 and #2414). From the commit log: * Merged in [14468] from rjsparks@nostrum.com: Add the ability to add a comment to a group's history. Fixes #1483. * Added more logging during draft resurrection. Added a guard against acting on an old draft status if draft status changes occur while the draft expiration loop is running. * Modified the django patch check action from [14474] (for django issue #28772) to work with arbitrary locations of the virtual Python environment, rather than assuming a particular location of the virtual environment directory. * Restricted automatic IANA state changes into 'Version Changed - Review Needed' on new draft revisions. They now only occur for events before document approval, based on a mail conversation with Michelle. (This is a preliminary release, which can come to be reverted if IANA comes back with a different desired resolution.) * Fixed some issues with a migration. The migration has been re-run on production. -- Henrik Levkowetz 09 Jan 2018 14:02:11 +0000 ietfdb (6.68.2) ietf; urgency=medium This is a bugfix release, with minor fixes as follows: * Added a patch for django issue #28772, a checks action to apply the patch, and a setting that lists patches to be applied. * With a validator in place for document names (introduced some time ago) we will not get any new documents with invalid name strings, so we can go back to a simpler regexp for document name urls. * Removed code that has been marked unreachable for more than 5 months. * Added user notification about ballots that have been closed automatically when creating a new ballot. * Merged in [14467] from housley@vigilsec.com: Close any previous ballots when a charter goes to Internal Review or Extrernal Review. Fixes #2421. * Merged in [14466] from rjsparks@nostrum.com: Include information about previous team reviews in assignement emails. Fixes #2392. -- Henrik Levkowetz 31 Dec 2017 14:40:08 +0000 ietfdb (6.68.1) ietf; urgency=medium This is a bugfix release, with a number of minor fixes, as follows: * Tweaked the query filter for 'latest' meetings in the fetch_meeting_attendance management command to deal with future meetings beyond the current meeting in the database. * Added a guard against infinite recursion in document replacement listing methods to deal better with circular relationships. * Enhanced doc event notification emails with who and when. Fixes issue #2428. * Added a data migration to create yang catalog links for yang documents published before the yang catalog link feature was introduced in the datatracker. * Fixed an ungarded object attribute access. * Updated the API notes page with improved descriptions and information. * Limited the iesg ballot position API to ADs (excluding secretariat). * Modified the run_yang_model_checks management command to accept document aliases (not only canonical names) on the command line. * Reverted an inadvertently included patch version. * Fixed some reStructuredText issues in the changelog -- Henrik Levkowetz 23 Dec 2017 21:53:13 +0000 ietfdb (6.68.0) ietf; urgency=medium **Ballot position API. Support for API keys.** This release provides infrastructure to handle API keys and easily build API endpoints which use API keys instead of username/password login. It also introduces an API endpoint built on this infrastrucure in order to let ADs automate posting of their ballot positions (if for example they have built their own infrastructure to manage, track, and update ballot positions and comments). Pages to view, create, and disable API keys are available to logged-in users. Since the use case for API keys is somewhat different (and possibly harder to secure) than the use case for username/password login (they might for instance be placed on servers in order to automate operations from the server) they have been given some addtional limitations, compared to username/password authentication. These are the principles used: - Each API key is bound to a specific user with a personal profile and verified email. - API keys require an active user -- API keys cannot be used to authorise operations if too long a time has passed since the user logged in with username and password (this limit is initially set to 30 days). - API keys can easily be revoked by the owner (and replacement keys generated) in order to make it easy to recover from inadvertent exposure of a key. - Each API key is bound to a specific API endpoint. On each use it is checked that the API key matches the API endpoint for which it is being used. - API key usage is logged, and users who have active (not disabled) API keys will receive a weekly email report for each key showing how many times it has been used, and at which time, as a monitoring service. The release also contains [14404] from rjsparks@nostrum.com: Include an explicitly set Responsible ADs email addresses in generated aliases when a document has a group. -- Henrik Levkowetz 18 Dec 2017 17:58:46 +0000 ietfdb (6.67.1) ietf; urgency=medium **Fixed display of unicode document content** This is a bugfix release, which addresses a couple of tickets (#2423, #2427), and also the longstanding issue of non-unicode-aware handling of document content internally in the datatracker. Drafts, agendas, minutes, etc. that contain unicode characters in utf-8 encoding should now be shown correctly. Commit log excerpt: * Removed some dead code. * Third part of the document read refactoring, after [14406] and [14410]. This replaces all usage of the non-unicode-aware get_document_content() function with unicode-aware Document.text() or Document.text_or_error() methods. This was triggered by yet another report of unicode content not being shown properly, and should fix all instances of document (drafts, agendas, minutes, etc.) display in the datatracker not handling unicode characters properly. * Tweaked the file content read refactoring in [14406] to try latin-1 conversion if unicode doesn't work. * Applied a patch from kivinen@iki.fi to only show review completion date when the review is completed or part completed. Fixes issue #2423. * Merged in [14403] from rjsparks@nostrum.com: Fixed a typo in the milestones under review view. Added bootstrap panels. Fixes #2427, * Fixed the formatting of a number of custom checks for the django check format, to be easier to read. * Started refactoring of reading text from document files (drafts, charters, etc.) in order to normalise on one way of doing this, and making that return unicode rather than undecoded bytes. This is the first step of two, in order to gauge the possible issues and report on discrepancies. * Improved cleaning of unidecode results in ascii name conversion. * Tweaked the coverage_changes management comand output. * Updated the IPR form update text. * Moved IPR form updates and Django 1.11 upgrade forward to positions 2 and 3 on the list. -- Henrik Levkowetz 12 Dec 2017 14:40:47 +0000 ietfdb (6.67.0) ietf; urgency=medium **Per-year RFC feed, IANA yang modules, test improvements** This release contains a number of small tweaks and features, as follows: * Merged in [14386] from rjsparks@nostrum.com: Added a per-year RFC feed. * Changed settings and handling of adhoc wiki paths to be more testing-friendly. * Changed handling of yang modules from drafts with errors, to not place them in separate directories, due to possible follow-on effects. Added use of IANA-held modules when validating, and regular rsyncing from IANA. * Added better handling for attempted (mistaken) uploads to unscheduled sessions. * Fixed an incorrect comparison in a check function. * Improved code coverage slightly. * Made the ballot type representation string more expressive, showing both name and doc_type. * Added a warning message for the user if ballot creation failed due to an already open ballot. This is a bad state, and should prevented by stricter checks before changing state, but is better than the current situation until we decide exactly which checks to implement. * Refactored the handling of BallotDocEvent in tests, only creating them as needed, in preparation for stricter checks on state transitions to avoid mismatches between state and ballot. * Moved the 'Search mailarchive' link on ballot pages to a more visible spot. * Merged in [14374] from kivinen@iki.fi: If draft name has rfcXXXX-bis or rfcXXXXbis then add rfcXXXX to diff context menu. Fixes #460 (7 years old ticket). -- Henrik Levkowetz 05 Dec 2017 12:30:27 +0000 ietfdb (6.66.0) ietf; urgency=medium **IETF 100 code sprint** This release contains datatracker bugfixes and enhancements from the IETF-100 Code Sprint. Many thanks to everyone who contributed! * Merged in [14365] from kivinen@iki.fi: Added a closed date column to the closed review list. Fixes #2150. * Merged in [14362] from rcross@amsl.com: Improved test coverage for ietf.secr.sreq. * Merged in [14359] from kivinen@iki.fi: Fixed save-continue to work. Fixes #2383. * Merged in [14356] from kivinen@iki.fi: Moved the email open assignment summary from a subpage to the main review request page. Fixes #2091. * Merged in [14355] from suresh@kaloom.com: Changed the ballot announcement email subject to be more correct. Fixes #2109 * Changed the placement of the mail-archive search link on the ballot pages. * Merged in [14354] from rcross@amsl.com: Fixed a problem where slide reordering is not retained. Fixes #2405. -- Henrik Levkowetz 15 Nov 2017 04:17:00 +0000 ietfdb (6.65.1) ietf; urgency=medium This is a small release in preparation for the IETF 100 code sprint. It adds a per-meeting public/private setting for important dates, and a menu entry for the same. From the commit log: * In order to make it possible to enter meeting important dates and have the IESG see and approve them before they are generally visible, a by-default false show_important_dates flag has been added to the Meeting model, and code has been added to show the important dates as appropriate. The secretariat will set this flag true once a meeting's important dates have IESG approval. A menu link to the important dates has also been added. * Added a check for proper API key settings in production, and added workable default API key settings for development. This is in preparation for an upcoming API endpoint to permit automation of ballot potsing. * Updated the requirements for factory boy (it must be a version that has a factory.random module) * Changed the yang impact analysis URL setting. * Updated the Dockerfile to use more modern constructs in a couple of places. * Updated docker-init with a new directory to be created. -- Henrik Levkowetz 08 Nov 2017 12:30:40 +0000 ietfdb (6.65.0) ietf; urgency=medium **IESG recent documents page** This release adds a 'recent documents' page for the IESG, by request, and a ballot page link to a document-specific search for discusses, comments, and review messages in the email archives. There's also now a brief introduction to the REST API under /api/, and some miscellaneous tweaks and fixes: * Added a link to draft ballot pages for a mail archive search for discuss, comment, and review messages related to the draft. * Added a 'Recent documents' to the IESG pages. * Revert an incorrectly committed patch level change. * Tweaked the error message for review message URLs which cannot be retrieved. * Updated some tests to match api views refactoring. * Added a brief REST API info page. In preparation for signing http notifications using RFC 7515, added information about API signing public/private keypair. Refactored api views to reside in api/views.py. Added jwcrypto to requirements. * Permit ADs to do wg session materials upload. -- Henrik Levkowetz 06 Nov 2017 09:56:14 +0000 ietfdb (6.64.1) ietf; urgency=medium This is a bugfix and data migration release. Here's an extract from the commit log: * Added new checker runs for all active drafts with yang modules to the yang link data migration, in order to make sure to have complete yang module information available when running the draft yang url creation. This migration now adds links to yangcatalog.org for all active drafts with yang modules. * Added a progress bar to the submission checker json field upgrade migration, as well as the yang links data migration. * Added capture of messages from xym's get_extracted_models(). * Made the REST API accept ordering and date before/after relations for the meeting date field. * Added missing in-loop variable initializations in the yang checker code. Fixes issue #2397. * Improved the help message for the run_yang_model_checks management command. * Included invalid yang modules in the yanglint module paths, in order to avoid some unhelpful 'model not found' messages. Fixes issue #2398. * Removed case sensitivity in the submission API when comparing the submitter email address with the email addresses found in the draft. Fixes issue #2396. * Added a data migration to upgrade the submission checker json details to a consistent format. * Typo and initialization value fixes. -- Henrik Levkowetz 03 Nov 2017 11:03:03 +0000 ietfdb (6.64.0) ietf; urgency=medium **Yang resource links on yang draft pages** Drafts containing yang modules now get links pointing to the yang impact analysis, and to module metadata for each module. Support has been added for ad-hoc trac instances, permitting automatic maintenance of role-based admin rights also for other trac instances than the WG, RG, and directorate wikis. The draft submission automation API description is now referenced from the draft submission upload page. 'Additional URLs' for drafts are now sorted, rather than presented in random order. Links pointing from draft review pages to mailing lists, for the full review text, are now validated in order to avoid presenting links to unavailable resources. An issue with parameter expansion in a nomcom template has been fixed, as have various other issues. Details from the commit log: * Tweaked a page cache time to make newly uploaded session agendas visible with less delay. * Added a guard against iterating over None in stats.views.document_stats() * Added draft URLs pointing to Yang resources (impact analysis and model metadata) for submissions containing Yang modules. * Changed the submission checkers to return more information in the checker details json blob; in particular added information about individual extracted code modules associated with a draft. This is used by the yang valididty checker to return a list of extracted yang modules. * Changed the SubmissionCheck.time field to use a default now value, instead of auto_now, to permit migrations without changing the timestamps. * Added some more debugging output for occasional author extraction failures during test. See also [14226]. * Added support for ad-hoc trac instances, with arbitrary names and filesystem paths, but still bound to a particular group's roles for management of trac admin rights. * Display document urls in alphabetical order * Permit document urls to be up to 512 bytes, rather than the default 200 * New settings for adhoc wikis and yang document urls * Added a mention of the submission automation API on the submission upload page. * Added cleaning of review_url from the review completion form, to make sure it's retrievable. * Added some debugging code to help identify random test failures * Added a new field Meeting.days to capture the length of a meeting. This is necessary now that we have previous meetings officially starting Sunday, lasting to Friday, and future meetings starting Saturday, Lasting to Friday. We use Meeting.days to calculate Meeting.end_date(). Meeting.get_ietf_monday() and two cut_off() methods have also been updated to be instance methods instead of class methods, and to not assume that a meeting starts on Sunday. * Updated coverage data * Expanded one of the nomcom tests a bit, and updated a fixture to match the current /nomcom/default/email/feedback_receipt.txt template. * Don't blow up when checking if the logged-in user is a document author, if the user doesn't have a person record. -- Henrik Levkowetz 01 Nov 2017 13:36:31 +0000 ietfdb (6.63.2) ietf; urgency=medium This is a bugfix release which also brings a small improvement of the personal profile pages. From the commit log: * Fixed a URL encoding issue on the review doc pages (when linking to rfcdiff). * Merged in [14211] from rcross@amsl.com: Changed to not check timeslot type on delete because other types now have this option. * Changed the telechat date admin to use the 'initial-date' field value instead of the now nonfunctional form.initial dictionary. This may need revisiting under Django 1.11, which has an official api to grab a form's initial values. This fixes a server 500 error on trying to save a non-default telechat date. * Tweaked the test-runner random state handling to display the correct random state filename and make sure to set the same random state on repeat runs. * Added a check in bin/mkrelease for new migrations which haven't been added to the repository yet. * Added a 'no active roles' annotation in the roles section of personal profile pages if there are none. * Added a guard against feeding int() a non-numeric string during submission confirmation and a log assertion to report same. -- Henrik Levkowetz 17 Oct 2017 11:55:55 +0000 ietfdb (6.63.1) ietf; urgency=medium This is a small bugfix release. From the commit log: * Merged in [14189] from rcross@amsl.com: Fixed an issue concerning the creation of new timeslots in secretariat scheduling tool caused by changing the meeting start date to a Saturday. * Set a temporary state 'confirmed' when handling submission confirmations in order to avoid running the confirmation code multiple times on multiple form submits. * Changed the suggested yanglint command to use its -i switch. * Added bluesheet upload permission for RG Chairs; reformatted some role_required() decorators. * Use the same layout for group additional URLs as for documents. Fixes issue #2386. -- Henrik Levkowetz 09 Oct 2017 13:57:11 +0000 ietfdb (6.63.0) ietf; urgency=medium **Support for document-specific URL annotations** This release adds support for document-specific URL annotations; look for 'Additional URLs' on the draft status page. These can be edited by the group chairs for group drafts and by the authors for individual drafts. There are also some changes and enhancements related to the submission automation API and to the nomcom template and email handling. Commit log extract: * Changed the nomcom code to permit nomcom year interpolation in the nomcom from-address and in nomcom templates. Changed the nomcom from-address setting to 'nomcom-chair-{year}@ietf.org'. Added test code to verify that nomcom from-address contains the nomcom year. * Tweaked the submission search form to accept draft names which include revision numbers. Fixes issue #2380. * Added a cancel button to the submission confirmation page. Fixes issue #2379. * Removed the repeat of the error message in the HTTP reason string. Fixes issue #2378. * Added 'Additional URLs' for documents, the same way we have them for groups. This could be used to point to a document source repository, to extracted yang module files, document wikis, and other relevant resources. * Added migrations for document url model changes. Updated the name fixtures. Added ability for individual draft authors to edit document urls. * Removed some unreachable code. * Another tweak to the draft author extraction code, to handle some name transliterations using multiple leading grave accents. -- Henrik Levkowetz 28 Sep 2017 09:33:34 +0000 ietfdb (6.62.1) ietf; urgency=medium This is a bugfix release which also brings in a utility script to add document object for some old drafts that are currently missing from the database. Details: * Merged in [14138] from rjsparks@nostrum.com: Added a script to process the id-archive and add Document objects for drafts that are currently missing from the datatracker. Fixes #1316. * Moved unidecode_name from utils.text to person.name. * Modified UserFactory to use a new locale for each new user, instead of the same locale for a whole test run. This (almost) ensures the exercise of code to deal with non-ascii names, something which would not happen if a locale with ascii names was chosen at the start of a run. * Modified name.initials() to not use non-word characters as initials. * Modified unidecode_name() to do more normalization, to conform to the conventions used in internet-drafts. * Added saving of the factory-boy random state in order to be able to re-run a test suite with the same pseudo-random sequence as in a previous failed run. * Fixed an issue with email formatting in test_api_submit_ok(). * Modified the draft author extraction code to deal better with names with embedded apostrophes. * Refined a test case which could fail incorrectly when PersonFactory produced multiple persons with the same name during a test run, using TestCase.assertMailboxContains(). * Added a new TestCase assertion: assertMailboxContains(), to be able to better express some test cases. * Updated the PLAN -- Henrik Levkowetz 20 Sep 2017 21:12:32 +0000 ietfdb (6.62.0) ietf; urgency=medium **API for submission automation** This release introduces an API suitable for automation of draft submission, as proposed by martin.thomson@gmail.com and encouraged by others. Instructions are available at https://datatracker.ietf.org/api/submit. The interface accepts only xml uploads which can be processed on the server, and requires the user to have a datatracker account. A successful submit still requires the same email confirmation roundtrip as submissions done through the regular submission tool. The release also contains some bugfixes. From the commit log: * Added ietf.utils.text.unidecode_name() and replaced various uses of unidecode() with it, in order to normalize the generation of ascii versions of names, to avoid different practices in space stripping and space normalization in different parts of the code. * Added submit API instructions and fixed a bug in error handling for the submission validity checkers. * Added an API for draft submission, at /api/submit. Added an urls.py file under api/ to hold api urls, and moved those from ietf/urls.py. Refactored out many parts of the regular submission forms and functions in submit/forms.py and submit/views.py in order to re-use the appropriate parts for the submission API. Moved support functions to submit/utils.py. Added a new validation errors for missing docName in xml-based submissions. Updated the submission test document templates to use insert additional values. Added failure and success test cases for automated API submissions, and refactored some test utility functions. * Tweaked Document.relations_that_doc() to accept unicode relationship strings, in order to let it be called from modules importing __future__.unicode_literals. * Tweaked the test utility function create_person() to create ascii-only .ascii fields, which it did not do before. * Modified the mailtrigger clean_duplicates to reduce email address list entries with the same address but different names to one instance, and use consistent unicode names for authors if known. * Fixed another place where updated logic is needed to get the current meeting when we have multiple future meetings. Fixes issue #2371. * Updated meeting.helpers.get_meeting() to deal with multiple future meetings the same way get_ietf_meeting() does. -- Henrik Levkowetz 17 Sep 2017 15:51:49 +0000 ietfdb (6.61.0) ietf; urgency=medium This is a small feature release which adds directorate mail aliases, annoncement tool refactoring, improved handling of Yang validation messages and xml submission processing messages. Details: * Merged in [14106] from rcross@amsl.com: Add support for directorates to generate-wg-aliases. Fixes #2363. * Merged in [14104] from rcross@amsl.com: Update secretariat admin permissions. Change AnnouncementFrom.address to CharField because full emails, with real name, fail EmailField validation. Includes migration. * Merged in [14103] from rcross@amsl.com: Change announcement tool access function to use data from AnnouncementFrom objects. Fixes #2362. * Tweaked the submission checker shell invocation code to deal with command lines starting with environment variable settings. * Changed the message shown when xml file parsing fails during draft submission to include the actual error message from the xml parser. Fixes issue #2353. * Fixed another issue with the meeting materials urls, related to the href() normalisation work. * Changed the handling of yang validation otput to capture errors messages also when command the exit code is zero. -- Henrik Levkowetz 11 Sep 2017 15:17:01 +0000 ietfdb (6.60.0) ietf; urgency=medium **Show NomCom eligibility on account page** This is a small feature release which adds person record creation during meeting attendance data import, fixes a previous issue with the import, and also uses the meeting attendence data to present NomCom eligibility information on peoples' account edit page. Details: * Merged in ^/personal/sbirkholz/meeting_registration_more_fixes, which adds creation of missing person records when importing meeting registration data. Tweaked the resulting code some. * Merged in [14088] from rcross@amsl.com: Strip whitespace from registration data during import. Includes migration for existing data. Fixes #2356. * Merged in [14086] from rjsparks@nostrum.com: Show whether a person is nomcom eligible on their edit_profile page. Related to #2257 and #2323. * Added an option to ietf.utils.draft.Draft to pull document name from the source file name. -- Henrik Levkowetz 03 Sep 2017 12:09:59 +0000 ietfdb (6.59.0) ietf; urgency=medium **Improved NomCom support. IPR pages updated according to RFC 8179.** This release introduces several improvements to the NomCom pages, based on feedback from NomCom chairs. The IPR pages and forms have been updated to refer to the current IPR RFC: 8179. There are improvements in document adoption forms, session materials word-wrapping and linking, session scheduling status, and improvements to the test infrastructure. Details: * Fixed a problem with missing extensions for external materials URLs, introduced in earlier doc.href() normalization work. * Merged in [14062] from housley@vigilsec.com: Show which RFC was in force when the IPR disclosure was submitted. Fixes #2309. * Merged in [14059] from rjsparks@nostrum.com: Made the nomcom view-feedback table sortable. Fixes #2259. * Merged in [14058] from rjsparks@nostrum.com: Further refinements to the nominee status table. Related to #2261. * Merged in [14057] from rjsparks@nostrum.com: Improve the nominee status table to serve as a nomcom dashboard. Fixes #2261. * Merged in [14056] from rjsparks@nostrum.com: Straightened out some DocHistory timestamps that did not align with the respective DocEvent timestamps. Fixes #1972. * Merged in [14055] from rjsparks@nostrum.com: Improved what initial states are offered when the IRTF chair or RG personnel manage adoption of a document. Fixes #2319. * Use the wordwrap filter instead of the fill filter when displaying meeting minutes and similar, to avoid messing up the formatting. * Merged in [14053] from rjsparks@nostrum.com: Fixed typo in the meeting materials template that was causing minutes for groups that met more than once to not show. * Merged in [14035] from rjsparks@nostrum.com: Make it more obvious which sessions are scheduled and which are not when viewing session details and managing materials. Fixes #2084. * Simplified and corrected some code which uses doc.href(), based on the recent updates to href(). * Merged in [14018] from rcross@amsl.com: Add meeting_importantdate to Secretatriat admin permissions. * Added an error exit when the test runner is invoked with incompatible switches (--parallel and --html-report) * Added a test to check for missing admin models, and added the admin models that were currently missing. -- Henrik Levkowetz 28 Aug 2017 08:39:24 +0000 ietfdb (6.58.0) ietf; urgency=medium **Important dates support, link cleanup and more** This release is a collection of small features, bugfixes, and code cleanup. It contains work from the later part of the IETF 99 week, and additional work since then. * Merged in [13996] from rcross@amsl.com: Moved Announcement 'From:' addresses out of code and into a database table. Fixes #1681. * Added the ability to emit detailed line-by line changes in code coverage to the coverage_changes management command. Use verbosity 2 or higher. * Added an admin model for the MeetingRegistration class. * Fixed a couple of html issues introduced in the previous release. * Changed from using get_meetings() to get_meeting() in meeting.views.floor_plan(), in order to raise 404 on missing meetings. This fixes a server 500 on /meeting/floor-plan/ for nonexistant meetings. * Added a data migration to fix recent slides names containing underscores, and changed the code which let underscores through. Added a document name validator to avoid new documents with unwanted characters in the name. * Increased the minimum pyflakes version; at least 0.9.2 is needed to deal correctly with the global declaration list in meeting migration 0056. * Tweaked the test crawler, fixing a bug and adding an url exception for some redirected urls. * Added support for mime-encoding of non-ascii name parts in document notify lists when generating draft email aliases. * Pointed at the datatracker's document pages, instead of directly at the document in question, for drafts and RFCs on a person's profile page. This reverts to the functionality as originally implemented, but uses the correct doc.get_absolute_url() instead of doc.href() (which incorrectly did the same as get_absolute_url() in some cases until recently). Fixes issue #2340. * Made Document.href() point at the rfc when doc.is_rfc(). * Made the materials links on a group's materials tab say 'Edit Materials' for people who can edit the group. Fixes issue #2332. * Merged in [13980] from rjsparks@nostrum.com: Removed the Historic charter link that has 404ed for several months. The closest we have for the content it might have reached in the path is already linked out of the concluded working groups page. Fixes #2223. * Merged in [13978] from rjsparks@nostrum.com: Query unique person objects when searching for duplicates based on aliases. Fixes #2263. * Removed the old Django admin styling; things have moved on to the point where it doesn't work well any more. The new Django admin style requires more screen space, but it seems we have to accept that now. * Changed the menubar link to meeting materials to explicitly point at /meeting/materials/, not just /meeting/. * Replaced some group-specific agenda and minutes urls with session-specific urls, and more consistently pointed to explicitly named meeting materials. Related to commit [13964]. * Fixed a time arithmetic issue in meeting cutoff-date methods. * Changed the display of individual item update times on the materials overview page. In practice, having a tooltip on every agenda, minutes, and slides link became intrusive and annoying. Changed to display a bell if the update is within one day of now, and to display the time tooltip when hovering over the bell. Also corrected the colspan numbers for cancelled sessions, for consistency in the look of the materials table. * Added urls and views for individual meeting documents, in order to be able to serve them directly from the datatracker, instead of taking them from www.ietf.org through the CDN. Adjusted the patterns used for href() accordingly. This also avoids different-origin issues. Shifted the url for materials_editable_groups() to an URL more in line with what the page links to. Changed the iframe urls for the agenda week view to work for groups with different agendas for different sessions by using href(). * Merged in [13958] from rjsparks@nostrum.com: Tweak to the important dates page title. * Merged in [13957] from rjsparks@nostrum.com: Moved Important Dates for Meetings into the datatracker. Fixes #2338. * Merged in [13955] from kivinen@iki.fi: Changed links to previous reviews go to the doc page of the last result, not the review request page. The doc page will contain the actual review, so it has all information that is needed. Fixes #2090. * Added the necessary switch argument for the registration importer's --latest switch in the daily cronjob file. * Merged in [13934] from kivinen@iki.fi: Added sorting for the review team statistics tables. Fixes #2330. * Updated the PLAN file after the Tools Committee prioritisation meeting during IETF 99. * Changed get_timeslot_for_filename() to not blow up in the presence of duplicate timeslots. -- Henrik Levkowetz 31 Jul 2017 12:32:58 +0000 ietfdb (6.57.0) ietf; urgency=medium **IETF 99 code sprint** This release contains datatracker bugfixes and enhancements from the IETF-99 Code Sprint, which was very productive :-) The release brings in many useful bugfixes and enhancements, as described below. Many thanks to everyone who contributed! * Made materials links on the ietf materials page visible to group delegates. * Fixed a bug in a meeting number comparison. * Merged in [13919] from peter@akayla.com: Print the group type and IRTF/IETF correctly in draft submission announcements. Fixes #2034. * Merged in [13918] from kivinen@iki.fi: Unified the review request views to use same template, so they all show same data, in same format. * Changed etherpad links to not use the explicit 9000 port any more; it's not needed and may cause issues. * Merged in [13916] from alireza.mohammadi@icann.org: Better punctuation during state change by adding \" before and after old and new state. Fixes issue #1545. * Merged in [13911] from kivinen@iki.fi: Fixed sign in page so it will always scroll to top when page is loaded, so the sign in fields are visible. * Merged in [13908] from alireza.mohammadi@icann.org: Added 'last updated' timestamps on meeting materials page Added UTC time to the tooltip of Agenda and slides and an new column of Updated. Updated column present the latest time stamp for agenda and slides. Fixes issue #1644. * Added an 'assignments' m2m field to the API sssion resource, in order to make it easier to use the API to pull out meeting sessions for a given meeting. * Added a guard for the case that slides might be removed from a session while agenda page construction is in flight. * Added a session status field to the /meeting/agenda.json data, to make cancelled session info available to the IETFers app. * Modified the meeting session materials template to use href(), in order to be able to point at the right materials for groups with multiple sessions with different materials. * Merged in [13905] from david.i.allan@ericsson.com: Made the status update forms deal better with clearing old status updates, showing information about the clearing instead of inserting blank entries. Fixes issue #2183. * Merged in [13903] from rjsparks@nostrum.com: Use a better timestamp for newrevisiondocevents when uploading agendas, minutes, and slides. Fixes #2039. * Merged in [13902] from rjsparks@nostrum.com: Include drafts associated with sessions when building session pdf and tarballs. Fixes #2036. * Set docker-internal UID and GID to match the external values for the user. Makes life easier when running docker under linux. * Merged in [13900] from peter@akayla.com: Allow ADs to manage meeting materials from the meeting/##/materials page. Fixes #2213. * Merged in [13899] from rjsparks@nostrum.com: Allow editing of title for agendas, minutes, and bluesheets documents. Fixes #2317. * Merged in [13897] from rjsparks@nostrum.com: Send email to reviewer when request is closed with no response. Fixes issue #2176. * Merged in [13893] from housley@vigilsec.com: Made the IPR pages reference the new IPR document, RFC 8179. Partial fix to #2309. * Merged in [13892] from mahoney@nostrum.com: Made email subject 'I-D ACTION:' consistent with other 'I-D Action: ' email subjects. Fixes #1519. * Merged in [13888] from rjsparks@nostrum.com: Refined the 'state changed' email message per discussion on tools-development. Fixes #2116. * Merged in [13887] from rjsparks@nostrum.com: Allow minutes to be uploaded after previous minutes had been uploaded and removed from the session. Fixes #2286. * Changed the test telechat dates so that the first active telechat doesn't change to lie in the past if the tests are run across midnight. * Merged in [13883] from rjsparks@nostrum.com: Repaired missing table id, allowing slide reordering to be saved. Fixes #2327. * Set docker/settings_local.py to use yanglint, so the yanglint tests will be run under docker. Added libyang (with yanglint) to the Dockerfile. -- Henrik Levkowetz 19 Jul 2017 12:14:58 +0000 ietfdb (6.56.0) ietf; urgency=medium This release clears the table for the IETF 99 sprint. It adds minor improvements and bugfixes, such as better agenda and minutes upload validation, more easily found draft last call end dates in document history, added features for AGs (Area Groups) which are now treated more like WGs and RGs, links to the session description for edu-team sessions and similar, and internal code and test suite improvements: * Added more validation of extension, mime type, etc. for uploaded meeting agendas and minutes. Added '.md' (markdown) as an accepted file type. Html with frames is now rejected. Factored out validation code into separate functions. * When proceedings have been finalized, redirect meeting/xx/materials to the finalized meeting/xx/proceedings page, instead of presenting an interstitial page. * Modified a test to make it less sensitive to timing vagaries causing arbitrary failures. * Added the last call end date to the first line of the last call announcement event description, on request from worley@ariadne.com. * Fixed a place where doc.save() was called instead of doc.save_with_history(). * Added a test for interim meeting agenda and minutes urls. * Did a bit of optimization of the /meeting/past/ view. * Fixed a problem with loosing the outermost html element when massaging html agendas, which resulted in mangled agendas if that element was a
.

  * Merged in [13832] from rjsparks@nostrum.com:
    Treat Area Groups similar to Working Groups and Research Groups where it
    makes sense to do so.

  * Use a datatracker internal url for session agendas and minutes, to 
    avoid X-Frame-Options SAMEORIGIN preventing agenda display in frames.

  * django-bootstrap3 9.0.0 breaks compatibility with 8.x.y; disallow 9.0.0 
    and higher till we can rewrite.

  * Merged in [13830] from rjsparks@nostrum.com:
    Show all the sessions for area groups in the proceedings. Fixes #2265.  
    Should be patched into production. 

  * Added wiki creation for groups in state 'bof'

  * Replaced the local copy of the draft/rfc htmlization code with rfc2html 
    as installed modeule.

  * Added links to uploaded session agendas for sessions of type 'other',
    such as for example Edu-team sessions.

  * Added a slide abstract [Edit] button on slide document pages also for 
    empty abstracts, to provide the ability to add abstracts.

  * Added a mock of urllib2.urlopen for another test which uses 
    finalize(meeting) in order to prevent external http accesses when running 
    tests.

  * Added another surname particle.

  * Added a switch to control generation of the code coverage html report, 
    which now defaults to false.  The report can be generated post-testing with 
    "coverage html -d static/coverage/".

  * Fixed an issue with the docker/settings_local settings for yang module 
    directories.

  * Fixed a docker/run current directory issue when invoked with a command 
    to run.

  * Added log.unreachable() calls to some functions believed to be unused.

  * Added code coverage settings and configuration to ignore debug-related 
    lines of code.

 -- Henrik Levkowetz   13 Jul 2017 12:41:10 +0000


ietfdb (6.55.3) ietf; urgency=medium

  Another bugfix release with some refactoring.  From the commit log:

  * Added reverse relationships from drafts to submissions to submission 
    checks to the Json API, to make it easier to find the yang checks for a 
    given document.

  * Reduced the number of non-functional URL patterns for interim meetings. 
    Can easily be expanded as needed.

  * Added test cases for ADs and IRTF Chair for the chartering buttons on 
    /group/chartering.

  * Make sure that test factory groups have a type.

  * Limited the pyang and xym requirements to current major version; there's a
    possibility of new API-incompatible versions with semantic versioned
    numbers appearing.

  * Call can_manage_group_type() with the right information.  Fixes an issue
    with chartering buttons not being visible for ADs. Added a log assertion
    for calls to can_manage_group_type.

  * Merged in [13775] from rcross@amsl.com:
    Refactor session edit page.  Add button to cancel a session, which sets 
    the status.  Fixes #2296.   

  * Set an url for the server_error page, for testing.

  * Added the debian security updates to apt sources for the docker image.

  * Added a check for duplicate Yang model names after xym extraction.  
    This prevents running pyang and yanglint on one module, moving it to the 
    module libs, and then failing to run the checks on a second module with the 
    same name, because the file has been moved after the first check.

  * Linked to the submission status page from the submission confirmation 
    page, in case people want to look at the text or xml which will be posted
    before confirming the submission

  * Removed some test code which isn't useful with tastypie 0.14.0

  * Updated template exclusion settings.

  * Added the new format '4' to the list of recognized formats in the 
    coverage_changes management command.

  * Added a test to verify that we can load the 500 page template

  * Tastypie 0.14.0 does not support the callback parameter as it did before; 
    disable the tests for this as we don't use it anyway.

  * On request from a user, added information about running idnits before 
    submission upload to the upload form page.

  * Fixed an issue with the scope of a server-mode-dependent variable when in
    production mode.

  * Tweaked the wording of the unexpected-encoding warning on submission
    upload.

  * Changed to check the whole draft submission text when checking mime type,
    and catch decoding errors and raise ValidationError when converting
    submission form txt file to unicode for Draft().


 -- Henrik Levkowetz   08 Jul 2017 10:09:25 +0000


ietfdb (6.55.2) ietf; urgency=medium

  This release contains bugfixes and code refactoring:


  * Merged in [13731] from rjsparks@nostrum.com:
    Reworked how review assigments are processed in order to ensure a 
    team's queue rotates when it should. Fixes #2305.  

  * Merged in [13727] from rcross@amsl.com:
    Removed legacy external interim meeting listing.  Installed redirect to
    /meeting/past.  Fixes #2166.  

  * Upgraded xym to 0.4.2, with related changes in method calls.

  * Fixed an issue with the test_edit_replace_user() test

  * Added email address validation for the Email.address field, now that 
    we're not putting dummy addresses in it.

  * Tweaked the EmailFactory to not return email addresses longer than the
    Email.address field.

  * Added a utility function to show just the text content of the test client
    response.

  * Included the temporary yang model extraction directory in the list of
    model librarires given to yanglint, in order to support drafts with models
    referencing models in the same draft.  Fixes issue #2324.

  * Merged in [13726] from rcross@amsl.com:
    Updated the secr.rolodex app to deactivate old Users when replaced on edit.  
    Fixes #2001.   

  * Added more test objects in test_merge_users(), and fixed an issue with 
    merge_users() uncovered by the added testing.

  * Merged in [13718] from rcross@amsl.com:
    Improved User merge handling in merge_persons().  Fixes #1900.   

  * Merged in [13717] from rjsparks@nostrum.com:
    Actually use the topic audience type in the feedback view. Fixes #2320. 

  * Modified the text shown on Chairs' "Manage Document Adoption in Group"
    button and corrected the logic for which text to show.

  * Merged in [13722] and [13712] from rcross@amsl.com:
    Removed all use of request.session from secretariat apps.  Added tests for 
    affected views.  Fixes #1455.

  * Removed the copy of xym copied directly from repository -- the method 
    call we use is too unstable at the moment.  Now requiring xym=='0.4'.

  * Merged in [13628] from rcross@amsl.com:
    Grant secretariat meeting__meeting admin permissions.   

  * Added checks for the presence of yang module directories to the check 
    framework.  Tweaked some text strings.

  * Modified the yang checker to work with both versions 0.3.x and 0.4.x of 
    xym (different signatures for get_extracted_models()).

  * Removed the 'apply to all sessions' checkbox from the 
    agenda/minutes/slides upload pages for non-session timeslots, such as 
    plenaries etc. as it is rarely if ever correct to have it checked then.

  * Additional tweaks to the mailman listinfo importer.

  * Code reorganization, doing away with multiple urls_* and views_* files 
    in ietf.group.  No intentional functionality changes.

  * Made the import_mailman_listinfo management command somewhat more 
    robust.

  * Return a checker None result with exception message on xym exceptions.

  * Changed the url coverage code to handle deeper chains of url includes, 
    and to handle url includes through url lists in addition to url modules. 
    Added information in the release coverage dictionaries about the view 
    functions coupled to the urls.

  * Fixed a wrong virtualenv path in bin/mm_hourly

  * Updated PLAN

  * Updated docker/settings_local.py with new needed settings.  Added a lot 
    of quotes to docker/run in order to work better with paths containsing 
    spaces.  Touched a file during setup to be more debian compatible.

  * Variable naming tweak

  * Catch bad module names in the Yang checker (they are not currently 
    flagged by xym).

  * Changed the implementation of Submission.latest_checks() to also return 
    None checks, so it's possible to update a Passed due to no yang modules to 
    a None (no modules to check).

  * Corrected the settings names used in the yang extraction command.

 -- Henrik Levkowetz   01 Jul 2017 10:49:33 +0000


ietfdb (6.55.1) ietf; urgency=medium

  This is a bugfix release, with some smaller enhancements.  From the commit
  log:

  * Don't deliver spurious yang extraction errors for drafts where no yang 
    modules were found.

  * Added circular parent relationship detection and logging in the
    Group.is_decendant_of() method, and form validation error on loop in the
    group edit form data cleaning.

  * Increased the test crawlers verbose output.

  * Added a guard around rendering of group.ad_role, which isn't always set.

  * Refined the appearance and wording of the 'Manage document's adoption' 
    button, to make it possible for chairs to correct an adoption in the
    wrong group.

  * Replaced the use of unaccent.asciify(), which has similar functionality 
    as unidecode.unidecode().  Changed the draft parser to work exclusively 
    with unicode text, which both makes the removal of unaccent easier, and 
    takes us closer to Py35 compatibility.  Adjusted callers of the draft 
    parser to send in unicode.

  * Removed code which has been marked as unreachable since February/March 
    2017 and has not triggering any usage indications.

  * Changed the display of people with roles on the various group pages to 
    link to both their profile page and their email address.

  * Improved the handling of surname particles, (prompted by failure to 
    handle the name of Niels ten Oever correctly).

  * Made changes to the can_adopt_draft() logic, to make it possible for a 
    chair of multiple groups to correct the mistake if adoption was made for 
    the wrong group.

  * Merged in [13615] and [13627]from rcross@amsl.com:
    Changed views that use GET requests to delete objects to use POST.
    Fixes #1796.

  * Make sure wordwrap() and friend works as intended if they are used as 
    template filters and given string arguments.

 -- Henrik Levkowetz   20 Jun 2017 13:43:31 +0000


ietfdb (6.55.0) ietf; urgency=medium

  **Improved Yang validation support**

  This release updates and expands the Yang support in the datatracker.  In
  addition to checking yang modules in submitted drafts using pyang, it now
  also does a yanglint check.  The yang validation results are available by
  clicking on the red or green yin/yang symbols which show for drafts that
  contain yang models.

  For drafts where one or more models were found at submission time, the pyang
  and yanglint checks are re-run once per day, to catch newly arrived models
  in the library directories (both rfc and draft models).

  Additional details, from the commit log:

  * Added a new yang checker, 'yanglint', to the existing Yang checker class,
    in addition to the existing 'pyang' checker.

  * Added modal overlay displays showing the yang check results every place
    the yin/yang symbol is shown (red or green) to indicate the presencee and
    result of yang checks.  Added a Yang Validation: line in the document
    meta-information section on the document's page in the datatracker.

  * Added the result of the xym extaction to the yang check results, to make
    extration failures visible.

  * Added the version of the used xym, pyang, and yanglint commands to the
    check results.

  * Added an action to move successfully extracted and validated modules to
    the module library directories immediately on submission.

  * Added the xym repository as an svn:external component, rather than listing
    it in requirements.txt, as there has been delays of many months between
    essential features appearing in the repository, and an actual release of
    same.  We may get occasional buildbot failures if broken code is pulled in
    from the repository, but better that than the functionality failure of
    severely outdated componets.

  * Added a new management command to re-run yang validation for active drafts
    for which yang modules were found at submission time, in order to pick up
    imported models which may have arrived in the model libraries after the
    draft's submission.  Run daily from bin/daily.

  * Added a table to hold version information for external commands.  The yang
    checker output should include the version information of the used
    checkers, but seems unnecessary to run each command with its --version
    switch every time we check a module...

  * Added a new management command to collect version information for external
    commands on demand.  To be run daily from bin/daily.

  * Added tests to verify that xym, pyang and yanglint information is
    available on the submission confirmation page, and updated the yang module
    contained in the test document to validate under both pyang and yanglint.

  * Updated admin.py and resource.py files as needed.

 -- Henrik Levkowetz   16 Jun 2017 09:38:25 +0000


ietfdb (6.54.1) ietf; urgency=medium

  **Bugfixes, floor indications on the agenda**

  This is a bugfix release, with a number of smaller fixes.  It also
  introduces floor indications on the IETF meeting agenda page.  From the
  commit log:

  * Added a guard against trying to get the room ID from a timeslot without 
    location in the secretariat schedule view.

  * Merged in [13588] from rcross@amsl.com:
    Initialize Empty-Schedule with special sessions from previous meeting on
    creation.  Fixes issue #1500.

  * Merged in [13586] from rjsparks@nostrum.com:
    Workaround for an issue with the schedule editor by ensuring no sessions
    remain scheduled in a room whose purpose has changed to something other
    than holding sessions (such as becoming unavailable).  

  * A first go at adding floor labels to the agenda pages.  The placement 
    of the labels are complicated by available whitespace beeing in different 
    horizontal positions for different types of lines.  Adding another column 
    will push the session title out of the screen on small devices.

  * Fixed a bug with missing operations on the /group/chartering/ 'Chartering
    or re-chartering' page, so that not only operations on groups in a
    chartering state is shown, but also the options to start chartering.
    Fixes issue #2312.

  * Merged in [13575] from rcross@amsl.com:
    Create new script ietf/bin/set_admin_permissions to configure Django Admin
    group permissions.  Fixes #2008.  

  * Merged in [13567] from rcross@amsl.com:
    Refactor ietf/bin/merge-person-records to facilitate testing.  Add tests.
    Fixes #2162.  

  * Merged in [13554] from rcross@amsl.com:
    Several widgets in session request form require javascript.  Prevent usage
    of page without javascript. Fixes #1767.  

  * Merged in [13559] from rcross@amsl.com:
    When changing a TelechatDate in the admin interface, retain all document
    associations.  Fixes #1349.  

  * Added a test to the test suite which checks if there are interleaved 
    schema and data migrations that have not been released yet.  Having split 
    migrations, first all schema and then all data, will permit doing 2 
    sequential releases; but if the data and schema migrations are interleaved 
    (beyond this) it is problematic to arrange for release without ending up 
    with a prolonged period when running code and table structure is out of 
    sync (while the normally more time-consuming data migrations run).

  * Narrowed a too wide try/except region in order to give more correct error
    messages on failed conversion of submitted xml drafts .  Changed the the
    strip() application to happen only on extracted author elements that
    actually have content.  Fixes an inability to upload xml-only drafts with
    missing author country information.

  * Fixed another place where None author email needed an extra guard.

  * Added blank lines between milestones, so they don't get run together if 
    they are long enough to cause line wrapping.  Fixes issue #2311.

  * Fixed a problem with a formset, they don't have self.cleaned_data, so 
    cannot return it.  Fixes issue #2310.

  * Fixed a place where a missing document author email address could cause 
    a server 500.  There may be additional places needing attention, now that 
    we're not inserting dummy addresses.

 -- Henrik Levkowetz   13 Jun 2017 10:33:08 +0000


ietfdb (6.54.0) ietf; urgency=medium

  **Author and Meeting Statistics**

  This release provides the author and meeting statistics described by
  RFC7760: "Statement of Work for Extensions to the IETF Datatracker for
  Author Statistics".

  "The enhancements to the IETF Datatracker shall provide statistics and
  graphs about documents, document authors, author affiliation, author
  country, and author continent."

  "The statistics should also include trends relating to IETF meeting
  attendees, which the current tools do not track."

  The statistics are available from the top menu under Other >> Statistics,
  or by following links from https://tracker.tools.ietf.org/stats/ .

  As part of the release, there will be a one-time backfill extraction of
  author information about country, affiliation etc. from drafts; this
  is expected to take about 1 to 2 hours.  Statistics information will be
  incomplete until the backfill script has finished running.

  This work has been done under contract by olau@iola.dk, with caching to
  speed up page load by henrik@levkowetz.com.

  Full commits log are available at:
  https://trac.tools.ietf.org/tools/ietfdb/log/branch/iola/author-stats-r12628
  https://trac.tools.ietf.org/tools/ietfdb/log/branch/iola/author-stats-r13145
  https://trac.tools.ietf.org/tools/ietfdb/log/personal/henrik/6.52.1-authorstats

 -- Henrik Levkowetz   08 Jun 2017 11:16:57 +0000


ietfdb (6.53.1) ietf; urgency=medium

  This is a small patch release to clear the board for the upcoming
  authorstats merge.

  * Fixed a bug in wordwrap() where an URL (or any word) longer than width 
    could prevent line breaking in following text.

  * Merged in [13532] from rjsparks@nostrum.com:
    Add an expertise field to reviewer settings. Fixes #2308. , 

  * Added dates to unreachable() calls, to make it easier to decide when to 
    remove marked code.

 -- Henrik Levkowetz   06 Jun 2017 17:40:15 +0000


ietfdb (6.53.0) ietf; urgency=medium

  **Nomcom features, YouTube import, Better text wrapping in emails**

  This release provides the ability for NomComs to collect feedback on
  arbitrary topics, and fixes some warts on the nomcom pages.  It adds
  automated import of session recording data from YouTube, and a number of
  other secretariat tool refinements.  Review team pages now show both date of
  assignment and deadline, and reviews sent in email should not be mangled by
  unnecesary line wrapping any more.  There are also a some internal
  improvements.  From the commit log:

  * Merged in [13503] from rjsparks@nostrum.com:
    Added usernames to the email sent to the secretariat when a possible 
    duplicate person has been detected. Fixes #2307.  

  * Merged in [13501] from rjsparks@nostrum.com:
    Used a simpler widget for the public key file when editing a nomcom to
    remove confusion between clearing keys and clearing the form control.
    Fixes #2299.  

  * Merged in [13500] from rjsparks@nostrum.com:
    Provide assigned dates on review team reviewers page. Fixes #2304.
    Related to #2305.  

  * Changed all instances of the deprecated self.failUnless() unittest method 
    to self.assertTrue().

  * Merged in [13499] from rcross@amsl.com:
    Add non WG Area choices to Parent field of secretariat groups edit form.
    Fixes #1344.  

  * Improved review linebreaking tests, based on [13495] from olau@iola.dk.

  * Merged in [13492] from rcross@amsl.com:
    Removed old proceedings generation code.  Fixes #2234.   

  * Merged in [13485] from rcross@amsl.com:
    Added import of YouTube session videos, using the YouTube Data API.
    Fixes #2249.

  * Added a middleware exception handler for the case of people submitting 
    unicode outside the Basic Multilingual Plane, which cannot currently be 
    saved to the database.

  * Added a test for no-agenda templates being used for future meetings 
    without agenda. Aligned the wording in the txt and html templates.

  * Merged in [13474] from rjsparks@nostrum.com:
    Allow the nomcom to collect feedback on arbitrary topics. Fixes #2256 
    and #1846.  

  * Eliminated several variations on word wrapping, keeping only what used to
    be wrap_text(), but renamed as ietf.utils.text.wordwrap().  This performs
    better than django.utils.text.wrap() when there are indented text parts.
    Replaced django's default wordwrap filter with one calling
    ietf.utils.text.wordwrap in all templates.  Changed to triggered wrapping
    in some cases, with the maybewordwrap filter, which triggers on lines
    longer than 100 characters.  This fixes the issue with undesired wrapping
    of reviews.

  * Fixed a date arithmetic bug.

  * xml2rfc 2.6.0 does not have parser parameters which are compatible with 
    our usage.  Will be fixed in 2.6.1.  Disallow 2.6.0.

  * Added a guard against trying to list locations which are None in 
    agenda.json (there are socials with a timeslot but no location)

  * Fixed the DOI information for doc/rfc*/bibtex/ temporarily; for a 
    better fix we need to import the DOI values in ietf/sync/rfceditor.py

  * Removed the table-list.json file and support for it; there are better 
    ways of cleaning out extra local tables (see bin/drop-new-tables for a 
    starting point)

 -- Henrik Levkowetz   05 Jun 2017 13:41:48 +0000

ietfdb (6.52.0) ietf; urgency=medium

  **Nomcom page improvements, and more**	

  This release adds nomcom and secretariat functionality, and improves the
  machine-readable json export of agenda information for the IETFers app.

  The nomcom chair now has the ability to open and close nominations,
  feedback, and nomcom processing for a position separately.  It has been made
  easier to add new positions to be filled out of the regular schedule, and
  the nomcom chair now can enable display of nominee photos on the feedback
  pages.  An issue with statistics calculation on the internal nomcom pages
  has been fixed, as well as some other annoyances.

  The secretariat now has full edit capability also for non-session meetings,
  chairs can now upload bluesheets for interim meetings, and the json export
  of agenda information now has better information about session presentation
  materials.

  As usual, a few bugs have been fixed, too, improving author information
  extraction from uploaded .xml files, and more:

  * Merged in [13418] from rcross@amsl.com:
    Add full edit capability for non-sessions.  Fixes #2235.   

  * Merged in [13417] from rjsparks@nostrum.com:
    Minor tweak to instructions for removing nomcom positions.  

  * Merged in [13413] from rjsparks@nostrum.com:
    Allow nomcoms to configure the feedback page to show nominee pictures. 
    Fixes #2252. , 

  * Merged in [13412] from rcross@amsl.com:
    Allow chairs to upload bluesheets for interim meetings.  Fixes #2165.   

  * Fixed a bug for /meeting/.../agenda.json where multiple entries for a 
    room name could occur, even if only one of them were referenced by sessions.

  * Added stripping of leading and trailing whitespace from submission data 
    (including email addresses) gleaned from submitted xml.  Changed email line 
    parsing to use email.utils.parseaddr() instead of a regex which only would 
    handle unwuoted names (and possibly not utf-8 names) correctly.

  * Merged in [13409] from rjsparks@nostrum.com:
    Add some help for the nomcom chair for when new positions are needed 
    later in a nomcom cycle. Fixes #2253.  

  * Merged in [13400] from rjsparks@nostrum.com:
    Correctly calculate statistics on the nomcom private index page. Fixes 
    #2254.  

  * Merged in [13399] from rjsparks@nostrum.com:
    Make it possible to close nominations without closing feedback. Fixes 
    #2255.  

  * Merged in [13390] from rjsparks@nostrum.com:
    Avoid confusing messages saying a key has not been entered when it has. 
    Fixes #2250.  

  * Merged in [13388] from rjsparks@nostrum.com:
    Update the feedback count badge when new feedback is provided. Fixes 
    #2260.  

  * Merged in [13383] from rjsparks@nostrum.com:
    Don't double-escape when showing feedback. Fixes #2297.  

  * Added more information about session presentations to the agenda.json 
    output, on request from pusateri@bangj.com.

  * Added raw_id_fields on DocumentAuthorAdmin to speed up form loading, 
    and added SessionPresentationAdmin to the meeting admin.py

 -- Henrik Levkowetz   29 May 2017 23:21:29 +0000


ietfdb (6.51.0) ietf; urgency=medium

  **Improved RFC Author Information**

  This release provides the second part of the RFC Author information work
  done by rjsparks@nostrum.com, the data migrations.  Based on manual and
  automated consolidation of author information from the RFC Editor database,
  the output from the ietf/utils/draft.py parser, the existing datatracker
  data, and eyeballing the RFCs, this provides a dramatic increase of the
  quality of the RFC author information data in the datatracker.

  There are also some bugfixes:

  * Merged in [13337] from rcross@amsl.com:
    When editing interim meeting request show duration as HH:MM instead of
    HH:MM:SS.  Fixes #2226.  

  * Merged in [13290] from rjsparks@nostrum.com:
    This provides the utility used to reconcile the RFC Editor database
    against what the draft parser returns for document authors.

  * Merged in [13336] from rcross@amsl.com:
    Fix issue where deferring a ballot causes 500 error in Telechat app.  
    Fixes #1342.   

  * Merged in the data migrations from [13289] from rjsparks@nostrum.com:
    Mapped a large number of email addresses found from the RFC Editor
    database and from parsing RFCs to the right Person objects, and creating
    Person objects as necessary. Updated the documentauthors set for RFCs
    based on reconciling what the tracker already knew with the RFC Editor
    database and the parsing the RFCs. Manually inspected the Updates to
    ensure no author was inappropriately removed from the set.

 -- Henrik Levkowetz   16 May 2017 15:34:37 +0000


ietfdb (6.50.1) ietf; urgency=medium

  This is a bugfix release, which also introduces some schema changes,
  in preparation for later data migrations.  From the commit log:

  * Merged in [13336] from rcross@amsl.com:
    Fixed an issue where deferring a ballot causes 500 error in Telechat app.
    Fixes #1342.  

  * Merged in [13333] from rcross@amsl.com:
    Corrected the Management Item Details link in telechat agenda_package.txt.
    Fixes #2158.  

  * Merged in [13328] from rcross@amsl.com:
    Set parent of new areas to IESG.  Fixes #2011.

  * Updated the utils.DumpInfo model to match the database.

  * Merged in [13324] from rcross@amsl.com:
    Disallow multi-day interim meetings with non-consecutive dates.  
    Fixes #2193.   

  * Merged in [13309] from rcross@amsl.com:
    Fixed the Edit button of session request view.  Fixes #2285.   

  * Merged in [13308] from rcross@amsl.com: Add ability for secretariat to
    skip announcement of regular interim meetings.  Fixes #2210.  

  * Merged in [13303] from rcross@amsl.com:
    Session admin edit fails if no resources selected.  Fixes #2211.

  * Added a guard to prevent problems with legacy drafts without any draft 
    state.

  * Tweaked the DRAFT_NAMES_WITH_DOT setting for another draft name 
    exception.

  * Merged in [13293] from rcross@amsl.com:
    Improve help messages for multi-day and series interim meeting types.  
    Fixes #2194.   

  * Merged in [13292] from rcross@amsl.com:
    Fixes #2002.  Trailing comma in Liaison cc_contacts field causes 
    invalid email address error.   

  * Merged in [13291] from rcross@amsl.com:
    Change From address of session request notifications from 
    session_request_developers@ietf.org to session-request@ietf.org.  Fix 
    requester information in session request cancellation email.  Fixes #1621.  

  * Updated doc resources.py with EditedAuthorsDocEventResource

  * Updated the makeresources command to use the current 
    AppCommand.handle_app_config() interface.

  * Merged in [13276] from rcross@amsl.com:
    Add group field to Roles add form validation.  Fixes #2292.   

  * Merged in [13275] from rcross@amsl.com:
    Refactor to prevent secretariat recordings entry page from timing out.  
    Fixes #2287.   

  * Merged in [13274] from rcross@amsl.com:
    Indicate which schedule is the official schedule in Select a Schedule
    drop-down.  Fixes #1456.  

  * Aligned the availability of roles edit buttons on a group's about page
    with the roles that the group edit GroupForm will accept.  Avoids
    presentin edit forms without any fields and some server 500 errors. 

  * Changed the alignment for the RFC 'Errata' label within the document name
    and title column to consistently put it at the right side of the column,
    for a tidier appearance.

  * Fixed an issue with the author extraction code.

  * Fixed a place where the LastCallDocEvent expiry value was set as a date 
    instead of a datetime.

  * Merged in [13246] from rjsparks@nostrum.com:
    Distinguish group that have session requests from those that do not on 
    the materials/editable-groups page. Fixes #2284.  

  * Tweaked the test coverage percentage numbers shown in the release test
    coverage chart to use only 3 decimal digits, not 12 ...

  * Return a person search string instead of bombing out if there are 
    multiple identical names where one don't have an active email address.

 -- Henrik Levkowetz   14 May 2017 10:00:50 +0000


ietfdb (6.50.0) ietf; urgency=medium

  This is a small feature release which provides a management command to
  create / delete a set of related test and development data for a dummy
  nomcom ('ietf/manage.py create_dummy_nomcom'), and adds statistics charts
  for release coverage and frequency.  Room resources can now be marked as in
  use or not, to control which resources are shown on the session request
  form.  A few bugs have also been addressed, as indicated in the commit log:

  * Merged in [13230] from rjsparks@nostrum.com:
    Added scripts to create/delete a dummy nomcom to use in development
    environments.  Fixes #2283. 

  * Added charts for test coverage and release frequency.

  * Fixed an if-statement which incorrectly disabled coverage testing when 
    the parallel testing count was set to 1.

  * Removed the 'Document' tab introduced in 6.48.0

  * Moved the caching of htmlized documents into Document.htmlized() in 
    order to avoid caching failed htmliztions (usually because of a missing 
    .txt file).

  * Added filtering of room resources in the session request form based on 
    the 'used' flag of the room resource name.  Tweaked admin to show 'used' 
    for ResourceAssociations.  Added Flipchart and U-shape-layout resources 
    through a data migration, and added/modified resource icons.

  * Replaced an old unworkable email addesss in the 404 page with the current
    bugreport address, now configured in settings.py.

  * Tweaked the use of the -p option of bin/mkrelease.  Added
    sbirkholz@amsl.com to the release email addressees.

 -- Henrik Levkowetz   19 Apr 2017 12:11:10 +0000

ietfdb (6.49.1) ietf; urgency=medium

  **IETF 98 code sprint release 2**

  This release collects the remaining sprint contributions, and in particular
  contains the move of the downref registry to the datatracker which has been
  requested by the IESG.  This release also reverts some of the changes made in
  6.48.0 with respect to presentation of htmlized drafts and RFCs.

  Excerpts from the commit log:

  * Merged in [13181] and [13205] from housley@vigilsec.com:
    This provides the downref registry work requested in ticket #2069. The
    registry has been imported to the database and can be shown, and entries
    can be added to the registry.  Dowref registry tests have been added to
    the last call test case.  Fixes issue #2069.

  * Merged in [13212] from rcross@amsl.com:
    Fixed an issue in telechat app where ballot positions for WG actions are
    incorrect.  Fixes #1336.  

  * Merged in [13197] from rcross@amsl.com:
    Fixed an issue with bin/merge-person-records when User.last_login == None.  
    Fixes #2274.   

  * Merged in [13183] from rcross@amsl.com:
    Fixed error when selecting a document on the Telechat agenda that does 
    not have a writeup.  Fixes #2262.   

  * Changed the signature of ietf.utils.aliases.dump_sublist() to include a 
    list of the alias domains, in order to be able to generate IRTF group 
    aliases @irtf.org.  Updated ietf/bin/generate-...-aliases accordingly.

  * Trying to re-apply already run migrations after loading a new databases 
    dump runs into the problem that new tables created by the migrations 
    linger, even if the tables loaded from the dump match the non-migrated 
    state.  Having lists of the tables matching the latest release available 
    makes it easy to construct an sql command to dump the extra tables, so the 
    migrations can be run.  Adding generation and saving of a table list to 
    bin/mkrelease.

  * Reverted the search result rows to the pre-6.48.0 state.

  * Changed some tests to use unicontent(r) instead of r.content, which 
    decodes non-ascii content according to the response charset.

  * Added some debug functionality which makes it possible to see from 
    where (python source file and line) an SQL query comes when looking at the 
    sql query summary available at the bottom of pages in debug mode, on 
    INTERNAL_IPS.

  * Extended the DRAFT_NAMES_WITH_DOT regexp.

  * Expand the milestone information on the document metainfo tab a bit.

  * Fixed a bug in the json_agenda data, now calculating room midpoints 
    correctly.

  * Changed a test case to look at the html being verified, rather than the 
    whole page, to avoid test failures due to for instance new menu entries.

  * Getting to the floorplans for a meeting venue required going via the
    agenda, which can take time to load.  Escpecially on a handheld device,
    when you want to see where the room of your next session is, it would be
    useful to have a menu entry to go directly to the meeting floor-plans.
    Adding one.

 -- Henrik Levkowetz   14 Apr 2017 12:50:00 +0000


ietfdb (6.49.0) ietf; urgency=medium

  **IETF 98 code sprint release 1**

  This release contains datatracker bugfixes and enhancements from the IETF-98
  Code Sprint, where we had a record number of commits :-) The release brings
  in many useful bugfixes and enhancements, as described below. Many thanks to
  everyone who contributed!

  * Changed to use doc.canonical_name instead of doc.name when computing 
    the cache key for htmlized documents in order to trigger a new generation 
    when a draft goes to RFC.

  * Merged in [13137] from rcross@amsl.com:
    Added CANCELLED message to agenda for 'other' session types.

  * Merged in [13135] from peter@akayla.com:
    Added document titles to HTML titles.  Fixes #1957.  

  * Upgraded phantomjs in the docker image to 1.9.8.

  * Merged in [13134] from lars@netapp.com:
    Shrink all images with image_optim.  

  * Merged in [13129] from lars@netapp.com:
    Replaced a table with div.  

  * Merged in [13125] from rcross@amsl.com:

    Added a REST API endpoint to notify Datatracker that new session recording
    files are available, triggering an import.  For use by the Meetech crew.

  * Changed the creation of temporary test dirs to use names which include 
    the test class name, in order to make it possible to run test cases in 
    parallel.  Disabled coverage testing when running in parallel (those 
    classes cannot be pickled and distributed to the test runner threads, and 
    also won't pass coverage data back).  Tweaked the TestCase.tempdir() method.

  * Modified an API test to make it pickleable (for parallel test runs).

  * Merged in [13120] from rjsparks@nostrum.com:
    Be more explicit on review message subject lines. Fixes #2103.  

  * Merged in [13118] from lars@netapp.com:
    Updated vnu.jar and fixed various HTML5 nits it found during a test crawl. 

  * Merged in [13115] from mahoney@nostrum.com:
    Added draftname to email subject for review request (addresses #2144).  

  * Made relative paths work for the create_group_wikis commnand.  Added 
    wiki and svn dir patterns to docker/settings_local.py.

  * Merged in [13114] from rcross@amsl.com:
    Added the meetecho address to settings.AUDIO_IMPORT_EMAIL.   

  * Merged in [13113] from rcross@amsl.com:
    Added a Country column to meeting/NN/proceedings/attendees.  Fixes #2228.   

  * Merged in [13112] from lars@netapp.com:
    Fixed various RemovedInDjango20Warning warnings.  

  * Merged in [13109] from lars@netapp.com:
    Renamed crawl_history to make_rev_history, which is more descriptive.
    Fixes #2224 (thanks, Robert!) by generating graphs for the entire revision
    history of a doc, both forward and backward in time.  

  * Tweaked docker/run slightly.  Added 2 utility scripts docker/mailserver 
    and docker/devserver, to start a debug smtp server and a development 
    webserver in separate terminal windws.  These assume that the docker image 
    already is running.  Tweaked the settings_local in docker/ to send email to 
    the debug smtp server.

  * Changed docker/run in order to more easily be able to run multiple 
    terminals against the docker enviroment, and also start the dev server and 
    a debug smtp server in separate terminal windows.

  * Merged in [13108] from lars@netapp.com:
    Changed 'ID Tracker' to 'Datatracker' in various places. Addresses #2100. 

  * Merged in [13107] from lars@netapp.com:
    Changes to bower.json to correctly pick up assets for some new versions of
    various packages we use.  

  * Merged in [13102] from lars@netapp.com:
    Updated bootstrap-datepicker3 to 1.6.4.  

  * Merged in [13101] from lars@netapp.com:
    Updated jquery.tablesorter to v2.28.5.  

  * Merged in [13100] from lars@netapp.com:
    Removed empty template directory.  

  * Merged in [13099] from lars@netapp.com:
    Removed outdated (and unused) bootstrap version. 

  * Refined the selection of commit log info lines.

  * Merged in [13098] from lars@netapp.com:
    Updated bootstrap to 3.3.7.  

  * Updated DRAFT_NAMES_WITH_DOT for another dot draft.

  * Improved traceback for a logger.error() message.

 -- Henrik Levkowetz   29 Mar 2017 20:01:18 +0000


ietfdb (6.48.2) ietf; urgency=medium

  Another small patch release to fix internal issues and annoyances
  users have expressed with some changes from 6.48.0:

  * Reverted some links to htmlized draft versions, on request.

  * Added an ALLOWED_HOSTS setting to settings_testcrawl.

  * Removed list emails from the ADMINS setting, and added localhost to 
    ALLOWED_HOSTS.

  * Another fix for get_file_path().

 -- Henrik Levkowetz   23 Mar 2017 04:01:01 -0700


ietfdb (6.48.1) ietf; urgency=medium

  This is a small patch release to catch up with patches for 6.48.0 before
  generating the IETF-98 sprint participant branches.

  * Added better handling of missing documents (such as rfc575, which was
    never issued, but is still requested.)

  * Improved Document.get_file_path() to return even more correct draft
    paths.

  * Changed some test assertions so they provide more information on failure.

  * Tweaked the 'rev' pattern, and added handling of revision number format
    exceptios when breaking apart name and rev for documents which don't use
    the charter rev model.

  * Tweaks to docker/copydb.

  * On request, reverted the document rendering on the document status page 
    to the old look.

  * Changed where to look for the text version of drafts, to always look in
    the comprehensive ID archive

  * Reverted a bad css change from the rfcmarkup work.

  * Made Document.htmlized() be a bit smarter about handling documents 
    which have not been provided in .txt format.

 -- Henrik Levkowetz   22 Mar 2017 12:37:06 +0000


ietfdb (6.48.0) ietf; urgency=medium

  **HTMLized drafts and RFCs**

  This introduces improved htmlization of drafts and RFCs in the datatracker,
  using the code originally developed for tools.ietf.org.  This initial
  changeset does not update all internal links to point at the htmlized
  document instead of at the document meta-information tab; it is expected
  that further work will change some, but certainly not all, of the internal
  document links to do so.

  Document search-result lines (and lines in document lists which use the same
  format) now link to the document meta-information tab using a circled 'i'
  information symbol, while the text link points at the htmlized text.  This
  may also change, pending feedback from users.

  Here's the changeset: https://tools.ietf.org/tools/ietfdb/changeset/13041

 -- Henrik Levkowetz   21 Mar 2017 13:02:37 +0000


ietfdb (6.47.2) ietf; urgency=medium

  This is a patch release with bug fixes related to ballot grids and
  secretariat meeting functionality, and internal enhancements.  It also
  clears the way for the upcoming merge in of new draft htmlization code from
  tools.ietf.org.

  From the commit log:

  * Added a check to bin/mkrelease, preventing releases with both schema 
    change migrations and data migrations.  Data migrations often take some 
    time, which will delay the time between the schema changes and deployment 
    of the matching new code.

  * Refined the test crawler a bit, to avoid extracting URLs from html which
    is outside the datatracker's control, such as uploaded WG agendas.  (These
    could lead to false warnings about problems with the datatracker's links).
    Also exempted some pages with known-bad character issues from html
    validation, and refined the error reporting for html validation failures.

  * Added a utility function to create temporary directories with distinct
    name based on test-class name and given labels.  This will help in
    parallelizing the runs.

  * Silenced an unnecessary error which could occur when looking for charter
    documents for groups (such as bofs) without them, when asking the REST API
    for group descriptions.

  * Merged in [13022] from rcross@amsl.com:
    Fixed the interim meeting edit form returning 500 when the duration field
    is empty.  Fixes #2206.  

  * Merged in [13021] from rcross@amsl.com:
    Fixed an issue where editing an interim meeting duration does not update
    underlying timeslot duration.  Fixes #2203.  

  * Merged in [13018] from rcross@amsl.com:
    Fixed an issue with interim meeting time-zone getting reset on edit.
    Fixes issue #2204.  

  * Merged in [13017] from rcross@amsl.com:
    Added placeholders and validations to secretariat non-session time input 
    fields.  Fixes #2208.   

  * Applied a patch from rjsparks@nostrum.com to make ballot grids show for 
    statchg documents in ietf last call.

  * Added more email validation for draft submission author emails, and 
    blocked some paths that could lead to bad email addresses ('none') being 
    set as document author email addresses.

 -- Henrik Levkowetz   20 Mar 2017 12:02:49 +0000


ietfdb (6.47.1) ietf; urgency=medium

  This is a small patch release which provides a few bug fixes and
  enhancements:  If no description is available for a group in the database,
  the first paragraph of the charter (if available) is provided in the REST
  API, in order to better support the new www.ietf.org website.  For cases
  where email issue reports is wanted, there is now an email address provided
  in the page footer, in addition to the issue tracker address.  Bugfixes
  as shown in the commit log:

  * Improved the log.assertion() and unreachable() functions to send a 
    deeper traceback when reporting by email, rather than just the last stack 
    frame.

  * Merged in [12990] and [12991] from rcross@amsl.com:
    Refactor session audio file import.  Add informative email.  Fixes #2164.

  * Made the default navbar colour match the production navbar, rather than 
    the dev navbar.  Gives 500 errors in production a regular navbar, rather 
    than a dev navbar.

  * Require bleach<2.0.0.  Bleach 2 requires html5lib 1.x, which requires a 
    rewrite of ietf.utils.html.

  * Modified the REST API to provide group descriptions taken from the 
    group charters if group.description is blank.

  * Added a text() methods on Document, to help with display of htmlized text.

  * Added a guard against trying to fetch milestones for a group value of 
    None.

  * Added a link to report bugs by email to the page footer.

  * Fixed a reverse url lookup issue in a template.

 -- Henrik Levkowetz   13 Mar 2017 17:09:40 +0000


ietfdb (6.47.0) ietf; urgency=medium

  **New document WG states: Waiting for Implementation, and Held by WG**

  This is a mixed feature and bugfix release.  It adds two new document WG
  States, provides several internal enhancements, and removes a bunch of dead
  code.  Bugfixes are as indicated in this excerpt from the commit log:

  * Added a data migration which adds 2 new document WG states: 'Waiting for
    Implementation' and 'Held by WG'.

  * Added a 'rev' field to DocEvent, and removed the corresponding field from
    NewRevisionDocEvent and SubmissionDocEvent.  Added a migration for an
    initial schema change, one data migration to copy and infer revision
    information, another schema migration to remove extraneous revision field,
    and another data migration to fix up bad timestamps and bad revision info
    from the period 2016-09-10 to 2016-10-04.  Updated more than 200 instances
    of DocEvent creation to supply a 'rev' value.

  * Fixed a problem with assertion() and unreachable(), which could break if
    certain names (like 'args') were set in the calling frame.

  * Removed dead code marked as unreachable in the previous release, and added
    unreachable marks for newly identified probable dead code.

  * Added a msgid (Message-ID) field to the Message model, and added needed
    migrations for the field.  The first migration creates the new column with
    NULL values for existing rows, the second adds creation of msgid values by
    default for new rows.

  * Added a data migration to add author information to existing reviews.

  * Added code to create all appropriate aliases when a Person record is
    created, both in ietfauth and in PersonFactory.  This was not consistently
    done earlier, leading to test-suite failures for test factory persons with
    more than one given name.

  * Added document author information for review document objects.

  * Improved handling of a case where a meeting floor have been defined, but
    no floor image uploaded yet.

  * Changed email notification code for reviews done, in order to save the
    message as a Message instance before sending it.  Added test code to check
    that a Message instance is created and matches what goes out.

  * Merged in [12917] from rcross@amsl.com: Fixes #2207.
    bin/merge-person-records remove _meta.get_all_related_objects() deprecated
    in Django 1.10.  

  * Merged in [12950] from rcross@amsl.com: Provide material management access
    to Area Group chairs.  Fixes #2219.

  * Changed the state choices in the document adoption form to exclude the few
    that should not be available, rather than explicitly list all others.
    This makes it possible to add new document WG states without editing the
    code, in many cases.

 -- Henrik Levkowetz   07 Mar 2017 10:38:08 +0000

ietfdb (6.46.1) ietf; urgency=medium

  This is a bugfix release with some minor enhancements.  From the commit
  log:

  * Merged in [12932] from rjsparks@nostrum.com:
    Changed primary but inactive email addresses to the most recently touched
    active email for a Person. If a person has more than one primary email,
    make all but the first be not primary. Fixes #2214.  

  * Merged in [12930] from rjsparks@nostrum.com:
    Use the Role email associated with a reviewer as the From when emailing 
    a review. Fixes #2201.  

  * Created a special function, log.unreachable(), to mark code unreachable, 
    and changed a function name from log.affirm() to log.assertion().

  * Added ordering to Role, and a roles section at the top of the personal 
    profile page.

  * Added svn symlink check and creation to the test suite setup.  Forced test
    settings to use an empty INTERNAL_IPS list for improved consistency in
    code coverage figures.

  * Preparation for dead code removal: Marked probable dead code with 
    affirm() statements which will signal if we ever reach that point in the 
    code.  If no signals seen, the marked functions/methods will be removed 
    after one release cycle.

  * Removed a big chunk of dead code: placement.py and related.

  * Cleaned up the remaining explicit url names, using dotted-paths to view
    functions instead.  In total almost 700 changes.

  * Tweaked an import to make Python 2to3 able to handle it, while testing
    conversion to Python 3 by means of the 2to3 tool.

  * Fixed an issue that left html meta-characters unescaped in the
    release-notes shown under /release/

  * Added an alert on the login form, to be shown if a user's password has 
    been cleared.  Adjusted url reverse strings to match the changed view 
    function.

  * Tweaked the wording on the account creation whitelisting page to 
    emphasise the wording to be asked then emailing a querent.

  * Personal profile pages already show the primary (unicode) name of a 
    person.  Added the asciified name in parentheses, if different from the 
    primary name, in the page header.

  * Tweaked the release script's bower update part.

 -- Henrik Levkowetz   01 Mar 2017 12:27:16 +0000


ietfdb (6.46.0) ietf; urgency=medium

  **Name i18n improvements, tweaks to Group Pages and Account Setup**

  This release introduces use of non-ascii names in the name parts of outgoing
  emails instead of always using asciified names.  It improves the account
  setup workflow, improves the ease of editing group attributes and makes it
  more apparent which attributes can be edited.  It also adds a code quality
  assurance tool which makes easy notification on unexpected states available,
  and applies it to one difficult-to-debug issue.  There are also a number of
  bugfixes, as usual.  From the commit log:

  * Changes to address ease of editing various group attributes, in particular
    intended to make it easier to see that you can edit things like the
    external/additional URLs:

    - Added the ability to edit individual fields in a group's about page, and
      added edit buttons for editable fields on the about page, just as for
      documents (the ability to edit all editable fields already was available
      from the 'Edit group' button on the /group//about/ page).

    - Made the tab label for the group-about tab consistently say 'About',
      instead of 'Charter' for some groups.

    - Shifted the position of the about tab to the start of the tab line.

    - Removed the datatracker account requirement information at the top of the
      group edit page for users logged in to their account.

    - Tweaked the 'Show update' link on the 'Status Update' line.

    - Changed the label for the external URLs from 'More Info' to 'Additional
      URLs', which was already in use on the edit form.

  * Fixed a html issue on the review request page.

  * Made some changes to the missing-email submission handling.  This may have
    fixed the creation of author records containing 'none' email entries, but
    as I've not been able to reproduce the issue, this is uncertain.

  * Made the logging settings explicit in ietf/settings.py (instead of copying
    default then modifying), and added enough surrounding information to make
    it possible to read also for people not very familiar with Python's
    intricate logging infrastructure.  To a large extent to understand myself
    how the logging is set up in Django, and where to hook in the affirm()
    function.

  * Added an affirm($statement) function, which acts like an assert, and
    lets us trigger an email message with traceback when the statement to
    affirm is False.  Use instead of assert if we still want the server to
    produce a response, even if something is wrong with the internal state.

  * Added a log.affirm() call at the point where we may discover new flawed
    document author records.  Fixed a place where the generation of
    Person.ascii from Person.name wasn't done well.

  * Changed the AD email list results from get_group_ad_emails() to make more
    sense when the group is an area, not a wg.

  * Fixed url lookups for doc.views_doc.document_main() to only use
    dotted-path, and removed the doc_view explicit url name.  Fixes a 500
    error in /submit/status/NNNN/.

  * Added explicit charset setting and consistent encoding to several email
    paths through the datatracker.  After introducing support for non-ascii
    names in email addresses, using role.formatted_email() to insert names
    into email content doesn't work any more, since uncode names will now be
    rfc2047-encoded in formatted_email().  Added another method
    role.name_and_email() for this case.  Replaced another case of '%s <%s>'
    name-and-email formatting with formataddr().  Fixed some tests which did
    not send unicode email bodies to the email functions.  Fixes issue #2017.

  * Added a validator to Document.title to prevent control chars in the title
    (this complements a recent cleanup of more than 120 instances of document
    titles containing vertical tabs).

  * Changed the New Account creation to require a proper name at the same time
    as the account password is set, before actually creating the account.
    Also tweaked the password strength and confirmation code.

 -- Henrik Levkowetz   24 Feb 2017 10:38:17 +0000


ietfdb (6.45.0) ietf; urgency=medium

  **Django 1.10**

  This release upgrades the datatracker to use version 1.10 of the Django
  framework.  Django 1.10 provides support for unicode login names, the new
  Argon2 password hasher, and makes available a number of minor conveniences.

  This release also removed support for automatic generation of dotted-path
  names for the view function in urlpatterns, which seems to violate the DRY
  (Don't Repeat Yourself) principle in programming.  I plan to have words with
  the Django developers about this during DjangoCon Europe in May.  That
  change necessitated a workaround url() function and a lot of clean-up and
  conversion.  The conversion work is not finished, but we're getting there,
  and meanwhile everything is functional with Django 1.10.  For the Django
  1.10 release notes, see [a].

  A full diff of the upgrade changes is available in changeset [12881].

  The next Django release, 1.11, will be the last version which will run on
  Python 2.7; the following release, 2.0, will require Python 3; probably
  python 3.4 or higher.  The Django 1.11 release will be a LTS (Long Term
  Support) release which will get security upgrades for 3 years after its
  release.  We should upgrade to 1.11 when it's released later this year, and
  then plan on converting the datatracker code base to Python 3, in order to
  be ready for Django 2.x before LTS ends some time in 2020.

  [a] https://docs.djangoproject.com/en/1.10/releases/1.10/

 -- Henrik Levkowetz   20 Feb 2017 11:45:05 +0000

ietfdb (6.44.1) ietf; urgency=medium

  **Non-ASCII name support for email address fields**

  This is a bugfix relelease which provides a reworked email address handling
  in order to be able to support non-ascii names as part of email address
  fields.  It also provides reworked generation of user names in the test
  suite in order to generate names from multiple non-ascii locales.  This
  fixes issue #2080.  The release also cleans the slate for the upcoming merge
  in of the Django 1.10 branch.

 -- Henrik Levkowetz   19 Feb 2017 11:42:27 +0000

ietfdb (6.44.0) ietf; urgency=medium

  **Improved account editing**

  This is a small feature release with some bugfixes.  It introduces the
  ability for datatracker users to change their username from the current
  one to one of the (other) active email addresses of their account, and
  the ability to indicate which of the active email addresses should be
  considered the primary email address.  It adds a menu endtry for document
  search, which was not easy to navigate to internally if you didn't know how.
  Other minor fixes are mentioned in the commit log:

  * Added the ability for logged-in users to change their login (username) 
    to any of the active email addresses of the account.  Fixes ticket #2052.

  * Tweaked the company name extraction code in class Draft.

  * Added support for indicating the primary email address of one's 
    datatracker account.  Fixes issue #2106.

  * Merged in [12835] from rcross@amsl.com:
    Fixes #2202.  Interim sessions appear unordered.  Switch templates to 
    use ordered assignments() related object manager.  Also removed now unused 
    template filters.   

  * Added a menu entry for Document Search

  * Fixed an issue with the test-crawler which could cause false positives 
    for urls containing apostrophe.

  * Fixed a html entity issue.

  * Tweaked the author extraction to recognize short lines as paragraph 
    ends, not only lines ending in '.' or ':'

  * Stabilized a number of nomcom tests by enforcing queryset ordering.

  * Added more information about submission errors and a full idnits run to 
    the manual post email sent to the secretariat.

  * Added some updates to /release/about

  * Added ordering by name to group personnel lists in edit and about 
    views.  This ordering is by the person's profile name, without attempting 
    to determine which name part is family name or given name.  Fixes #2184.

  * Extended the name_parts() method to consider military rank prefixes.

 -- Henrik Levkowetz   16 Feb 2017 10:14:00 +0000


ietfdb (6.43.0) ietf; urgency=medium

  **Password strength meter**

  This release provides a zxcvbn-based password strenght meter when setting
  or changing a datatracker user password, and changes the default password
  hasher from PBKDF2 to BCrypt.  It adds support for datatracker management
  of additional wikis,  and changes the management of bower-packaged web
  assets to updating them to the latest minor release on each new datatracker
  release.  It also fixes a few bugs, and tweaks the IPR declaration pages to
  provide more complete information for declarations which indicate that 
  licensing conditions will be provided later.

  From the commit log:

  * Added a change password page, and linked to it from the account profile 
    page and user menu.  Added zxcvbn-based browser-side password strength 
    estimation on the various password setting, re-setting, and changing forms. 
    Added a change password test.  Changed ietfauth/urls.py to not use the 
    deprecated string form for views in urlpatterns.

  * Re-styled some auth-related forms to use a narrower form body on large 
    screens, for aesthethic reasons.

  * Added an explicit setting for the password hashers to use, in order to 
    place the bcrypt hasher first.  This makes BCrypt the default hasher.  
    Added the django_password_strength app to installed apps.

  * Added the zxcvbn bower component, for use in client-side password 
    strength estimation.

  * Added django-bcrypt (for bcrypt password hashing) and 
    django-password-strength (for browser-side zxcvbn password strength 
    estimation) to the requirements.

  * Added ordering for nomcom  Nominee objects.

  * Expanded the Nominee __unicode__() method to provide unique results by 
    including the nomcom year.

  * Tweaked the IPR Details page to show the possible a), b), and c) 
    choices under section 'V' when licensing declaration to be provided later 
    has been chosen.

  * Added a guard to prevent trying to get a document path for a meeting 
    document when the document is not associated with a meeting session.

  * Added support for management of trac wikis for explicitly named groups, 
    such as the IESG and IAOC.  Tweaked the dummy-run handling of the 
    create_group_wikis management command.

  * Added updating of static web assets to the release script.

  * Fixed a bug in a queryset argument in all_id_text(); __in was not used, 
    but the value given was a multi-row queryset.

  * @register.simple_tag now (in Django 1.9) needs explicit mark_safe() (or 
    format_html() which invokes mark_safe()).  Fixed one case which needed this.

 -- Henrik Levkowetz   10 Feb 2017 10:52:10 +0000


ietfdb (6.42.0) ietf; urgency=medium

  **Django 1.9**

  This release upgrades the datatracker to use version 1.9 of the Django
  framework.  Django 1.9 provides pluggable password validation support,
  stricter template syntax (which prevents some common mistakes), simplified
  call syntax for some common API calls, better database consistency checks
  when creating many-to-many key relationship (preventing references to
  nonexistent entries), and more [a].  A full diff of the upgrade changes is
  available in changeset [12764].

  [a] https://docs.djangoproject.com/en/1.9/releases/1.9/

 -- Henrik Levkowetz   01 Feb 2017 18:12:13 +0000

ietfdb (6.41.1) ietf; urgency=medium

  This is a minor bugfix release in preparation for merging in the Django 1.9
  upgrade work.  From the commit log:

  * Merged in [12748] from rcross@amsl.com:
    Added requested resources and people who must be there to email
    notifications of session requests.  Fixes #2172.  

  * Added notes to PLAN on features of the new django releases we might want
    to put to use.

  * Fixed an issue with building links from URLs which are already part of a
    link.  Fixes issue #2175.

  * Fixed a place where missing queryargument data could cause a 500 error.

  * Updated the installation instructions based on feedback from
    mlarson@amsl.com.

 -- Henrik Levkowetz   31 Jan 2017 14:08:58 +0000

ietfdb (6.41.0) ietf; urgency=medium

  **IAB programs support and wiki support for teams and directorates**

  This release introduces support for IAB programs, and also extends the
  creation and permissions management support for Trac wikis to teams and
  directorates.  There are also some bugfixes.  From the commit log:

  * Changed the title of Section 7 of the IESG agenda as requested.  Fixes 
    issue #2167.

  * Fixed up the div tree to bring back the section navigation on the IESG
    agenda page, and fixed the div level and width for the footer.

  * Merged in [12724] from rcross@amsl.com:
    Resolved an issue with merge_person_records caused by Django 1.8 upgrade.
    Fixes issue #2141.  

  * Merged in [12722] from rjsparks@nostrum.com:
    Added programs to the datatracker. Added use of restructuredtext for group
    about pages. Generalized several places where code handles different group
    types. Improved testing of group about.  

  * Changed settings_sqlitetest so that local developer additions to context
    processors and middleware classes are avoided.

  * Added a trac-admin role name, for help in assigning trac-admin rights to
    trac instances.  Extended the create_group_wikis management command to
    create and update wikis for groups of type 'team','ag' and 'dir', in
    addition to 'wg','rg' and 'area'; and also add people with role trac-admin
    in the group or in the secretariat to those given TRAC_ADMIN permissions
    in a Trac instance.

  * Changed semantics for can_manage_group() to include chairs etc, and
    changed calls with the old semantics to use can_manage_group_type().
    Rewrote can_manage_group() in terms of can_manage_group_type() and
    additional checks.  Fixes issue #2155.

  * Merged in [12706] from rjsparks@nostrum.com:
    Restrict editing ReviewSettings.skip_next to team secretaries and the 
    secretariat. Improve validation of skip_next value. Fixes #2149.  

  * Changed the failure leeway of the code coverage test percentage from 
    0.005% back to 0.02%.

 -- Henrik Levkowetz   26 Jan 2017 12:19:19 +0000


ietfdb (6.40.4) ietf; urgency=medium

  This is a bugfix release, with some enhancements, mostly related to the
  review tool.  From the commit log:

  * Merged in [12670]  and [12675] from rjsparks@nostrum.com:
    Make changing skip_next on a review assignment an explicit decision of the
    assigner. Commit ready for merge. Fixes #2148.

  * Enabled correct time sorting and reporting for interim meetings on 
    /group/{{acronym}}/meetings/, and tweaked the date format.  Fixes issue 
    #2145.

  * Merged in [12665] from rjsparks@nostrum.com:
    Make it easier to see who's really next in reviewer rotation.  

  * Merged in [12627] from rjsparks@nostrum.com:
    Added some convenience navigation for review team secretaries to the menu.
    Restructured the menu lightly around Documents and Role-related links.
    Added navigation from a reviewers \'My Reviews\' page back to the review
    team pages. Fixes #2079.  

  * Added a link to the group datatracker page to the new group 
    announcement (and review) emails.  Fixes issue #2140.

  * Aligned some Group edit form field limits with those of the Group 
    model.  Fixes issue #2137.

  * Excluded some non-testable files from code coverage measurements.

  * Removed an inadvertently duplicated template for-loop.  Fixes issue 
    #2136.

  * Added guards against instances of queryset filtering using an object 
    without primary key.

  * Added password reset links in 2 places; on the login form and in the User
    menu -- it's not been really easy to find the password reset page.

  * Added a variation on the manage.py script which will pick up our local 
    python virtualenv under env/.  This is for use when invoking django 
    management commands externally, for instance in email pipelines from 
    /etc/aliases.

 -- Henrik Levkowetz   19 Jan 2017 17:40:57 +0000


ietfdb (6.40.3) ietf; urgency=medium

  **Review tool enhancements and Django 1.8 adaptations**

  This is a bugfix/enhancement release focused on addressing feedback on the
  recently introduced review management functionality and doing further
  adaptations to the Django 1.8 framework.

  From the commit log:

  * Merged in [12606] from rjsparks@nostrum.com:
    Tweaked the docevent description for the event noting that a chartering
    effort has been abandoned. Fixes #2099.

  * Merged in [12596] from rjsparks@nostrum.com:
    Show other completed reviews of a document on page showing the status of a
    review request. Fixes #2083.  

  * Merged in [12595] from rjsparks@nostrum.com:
    Improved the team review content templates. Related to #2075.  

  * Merged in [12594] from rjsparks@nostrum.com:
    Provided templates for directly entered review contents for those
    teams/review-types that have them. Fixes #2075.  

  * Merged in [12593] from rjsparks@nostrum.com:
    Send mail to team secretaries when a review is explicitly requested.
    Changed the From and Subject for assignment emails to reviewers to make it
    clearer what the review is for and who assigned it. Fixes #2053 and #2114.

  * Merged in [12589] from rjsparks@nostrum.com:
    Show additional details about a review request when completing it. 
    Fixes #2112.  

  * Merged in [12588] from rjsparks@nostrum.com:
    Changed how we display review text to follow the tecnique used with other
    large blocks of pasted or imported text (shepherds writeups for instance).
    Fixes #2104.  

  * Fixed some pyflakes and form initialization issues with the upgrade to
    DurationField.

  * Extended the form fields used for duration to accept additional formats,
    including formats the secretariat are currently using, in order to avoid
    UI trouble with the TimedeltaField --> DurationField transition.

  * Upgraded custom TimedeltaFields to use the builtin DurationField from
    Django 1.8, and adjusted forms and initialization values accordingly.

  * Merged in [12521] and [12540] from rjsparks@nostrum.com:
    Removed classes obviated in r12520.

 -- Henrik Levkowetz   22 Dec 2016 10:08:29 +0000


ietfdb (6.40.2) ietf; urgency=medium

  **Docker image based on Debian:jessie and MySQL 5.6**

  This release doesn't provide any new datatracker functionality, but upgrades
  the Dockerfile used to build the datatracker-environment docker image to use
  the Debian Jessie release as a base, and MySQL 5.6 as the database engine.
  (Image at https://hub.docker.com/r/ietf/datatracker-environment/).  There
  are also some other fixes.

  From the commit log:

  * Upgraded the Dockerfile to use debian:jessie as a base, and use
    mysql-server 5.6.

  * Made the docker/build script behave better when trying to remove
    non-existent previous builds of the datatracker-environment docker image.

  * Made docker/updatedb less verbose when downloading a new database dump.

  * Added a tiny script to be run from within docker, to install the extra
    packages needed to run the dependency-graph and htpasswd tests.

  * Added a script which creates a tarball of binary mysql database files, and
    uploads the tarball to the developer area at www.ietf.org, for use with the
    datatracker environment docker image.

  * Simplified the release-coverage script.

  * Enabled invocation of 3 additional scripts from bin/daily (instead of 
    ../scripts/Night-runner)

  * Updated scripts in ietf/bin/ to look in env/bin/ for the virtualenv
    activation script.

  * Changed the handling of skip tests and messages in order to show which 
    tests will be skipped, and why, at the start of a test run.

 -- Henrik Levkowetz   18 Dec 2016 15:00:54 +0000


ietfdb (6.40.1) ietf; urgency=medium

  This is a mixed bugfix and enhancements release with a lot of attention on
  the new document review support.  A number of cases of deprecated
  functionality from earlier Django version has also be fixed up to use newer
  idioms.

  From the commit log:

  * Fixed a html nit (nbsp without semicolon).

  * Merged in [12545] and [12549] from rjsparks@nostrum.com:
    Allow ads and secretaries to edit the review request comment.  Allow a
    review request to include a comment to show to the review team secretary
    at assignment time and the reviewer at review time. Fixes #2096.  

  * Merged in [12543] from rjsparks@nostrum.com:
    Provide defaults on the Request review form. Fixes #2108.  

  * Merged in [12541] from rjsparks@nostrum.com:
    Provide default filters for reviewer settings. Fixes #2093.  

  * Merged in [12520] from rjsparks@nostrum.com:
    Slight refactor of the review models to capture review team settings. 
    Allows configuring review teams to get automatic suggestions for reviews or 
    not. Provides a better admin for creating/managing review teams. Fixes 
    #2048 and #2072.  

  * Merged in [12518] from rjsparks@nostrum.com:
    Fixes href() for bluesheets. Fixes #2107.

  * Merged in [12506] from rjsparks@nostrum.com:
    Show the review requester on review team summary pages. Fixes #2095.  

  * Merged in [12505] from rjsparks@nostrum.com:
    Disallow requesting directorate reviews of RFCs (such things would better
    be done with reviews of status change documents). Fixes #2065.  

  * Tweaked mergeready to use modules in working dir, and be slightly more 
    verbose when building the mergeinfo cache.

  * Moved warnings settings from manage.py and test_runner.py to one single
    place, settings.py.  Decreased the verbosity level when invoking
    'loaddata' from the test runner.

  * Deprecation fix: Pass the result of active_review_teams() to a
    Role.objects query, instead of passing the function.

  * Deprecation fixes: Use request.GET or request.POST as appropriate, instead
    of request.REQUEST.

  * Deprecation fixes: Explicitly say that redirects are permanent.

  * Deprecation fix: Changed method of retrieving an app's models.  Also now
    importing import_module from importlib instead of from django.

  * Deprecation fixes: Removed instances of 'load future' from templates that
    don't need it any more.

  * Changed the state shown in all_id.txt for drafts which have entered IESG
    processing, but then been replaced, to show as 'Replaced' instead of 'In
    IESG Processing'.  This is consistent with how they are shown in
    all_id2.txt.

  * Added a script to list role holder emails, for use in building
    postconfirmd's whitelist.

 -- Henrik Levkowetz   16 Dec 2016 12:59:15 +0000


ietfdb (6.40.0) ietf; urgency=medium

  **Django 1.8**

  This release upgrades the datatracker to use version 1.8 of the Django
  framework.  Django 1.8 introduces security enhancements, type checking of
  foreign-key and many-to-many-key arguments when doing database queries, and
  a number of other features [a].  The type checking in particular brought to
  light a number of places where we provided the wrong argument types (or
  multiple inconsistent argument types) to queries.  These have all been
  fixed.  The full set of changes are shown in changeset [12507].

  [a] https://docs.djangoproject.com/en/1.8/releases/1.8/

 -- Henrik Levkowetz   13 Dec 2016 11:43:37 +0000

ietfdb (6.39.1) ietf; urgency=medium

  **Historical review data. Enhanced person profile page.  Review page enhancements.**

  This is a mixed bugfix and feature release.  From the commitlog:

  * Merged in [12489] from rjsparks@nostrum.com:
    Save a new reviewrequest for each team requested in the request form.
    Fixes #2094.  

  * Merged in [12487] from rjsparks@nostrum.com:
    Make it clearer what version was requested and what version was 
    reviewed on a reveiwers overview page. Fixes #2101.  

  * Check event type only when an event is available.

  * Merged in [12482] from rjsparks@nostrum.com:
    Improves control of email headers for review summary messages. Provides 
    team-specific templates for review summary messages. Fixes #2092 and #2082. 

  * Merged in [12479] from olau@iola.dk:
    Add missing team constraint in the check for previous reviews by a
    reviewer.  

  * Moved optional text wrapping before html escaping in markup_unicode(),
    used by get_unicode_document_content().  Fixes a problem with some
    document lines being wrapped when they should not be.

  * Fixed the manage assigned reviews template to handle the case when 
    reviewed rev is blank.  Fixes issue #2086.

  * Changed to using TestCase from ietf.utils in some places, for consistent
    test-suite failure messages.

  * Updated installation instructions.  Run migrations as the web server user;
    migrations may create files which the datatracker should be able to write.

  * Don't count the template loading done in TemplateChecksTestCase towards
    template coverage numbers.  Updated coverage numbers to match.

  * Merged in [12461] from rjsparks@nostrum.com:
    Added a migration to fetch text from reviews in the mail archives and
    populate the review documents. Fixes #2064.  Will patch into production. 

  * Added more document information to the personal profile pages at
    /person/$FULL_NAME, after a suggestion from Benoit Claise.  Fixes issue
    #2066.

  * Added new display columns to the reviewer settings admin page.

  * Merged in [12438] from rjsparks@nostrum.com:
    Don't show teams with only 'No response' reviews in the search result 
    rows, using the same logic as used for the document main page. Fixes #2070. 

  * Fixed a typo.  Fixes issue #2073.

  * Added a validator for the reviewer settings' Filter Regexp field, to 
    make sure that we don't later hit exceptions when trying to compile and use 
    the regexp entered.

  * Tweaked the admin for doc.models.Document to capture a comment about 
    changes made, and save those in the document history, using 
    .save_with_history().  This makes the admin useful again for doing document 
    changes.  See issue #2067.

  * Changed the handling of DocEvent 'rev' fields in document history.  We 
    should give DocEvent a 'rev' field which is always filled in; the current 
    handling is error prone and much to complicated.

  * Fixed errors in the test_interim_request_series() test.

  * Added a link to the meetecho session recording (not the youtube 
    conversion) on the IETF agenda page.

  * Added guards against picking up non-ascii characters in draft title and
    abstract from drafts submitted in xml form.

 -- Henrik Levkowetz   09 Dec 2016 12:56:16 +0000


ietfdb (6.39.0) ietf; urgency=medium

  **Review tracking**

  This release adds review tracking to the datatracker.

  The functionality added satisfies the requirements captured in RFC7735 
  and is an evolution of the widely-used standalone review tracking tool 
  developed and maintained by Tero Kivinen. This release includes 
  importing the existing review data from each review team.

  Highlights of the new functionality include:

  - review team members can easily see and manage their review 
    assignments, and can complete their reviews on- or off-line, with direct 
    integration into the mailarchive tool.

  - all reviews for a document are captured in the datatracker and linked 
    from the document's main page.

  - integrated review queue management for review team secretaries, 
    automatically suggesting IETF last-call and telechat reviews.

  - ADs and working group chairs can explicitly request reviews.

  From the commit log:

  * Merged in ^/branch/iola/review-tracker-r12128@12397, bringing in the 
    review tool functionality described in RFC7735.

 -- Henrik Levkowetz   30 Nov 2016 14:44:48 +0000

ietfdb (6.38.2) ietf; urgency=medium

  This is a bugfix release which also cleans the slate for the coming merge
  in of review tool functionality.

  * Added new clarifying text to 3 IPR-related pages, based on direction 
    from the IESG.

  * Added a migration to fix the mext meeting materials names and external 
    links, which incorrectly pointed at dmm-named objects and files.

  * Made session minutes available with the same kind of url as session
    minutes: /meeting/$num/minutes/$acronym.  (Both of these need to be
    refined to handle multiple agendas and minutes, for groups having multiple
    sessions in a meeting.)

  * Merged in [12393] from rjsparks@nostrum.com:
    Fixed bug where slides from multiple sessions for a group were not 
    all showing. Improved handling of multiple minutes and agendas for groups. 
    Fixes #2058.  Commit should be patched into production. 

  * Merged in [12392] from rcross@amsl.com:
    Add autoconversion (Powerpoint to PDF) or meeting materials files on 
    upload to new materials pages.   

  * Excluded requests 2.12.* as it has an incompatibility issue with 
    urllib3.

  * Added support for Docker for Mac, which uses hypervisor virtualisation. 
    The older VirtualBox based docker-machine should still work.

  * Merged in [12385] from rjsparks@nostrum.com:
    Added an extra highlight to the ballot_icon box when the viewer holds a 
    blocking position in that ballot. Fixes #2046.  

  * Merged in [12384] from rjsparks@nostrum.com:
    Adjust when materials links on the materials page show for the 
    secretariat.  

  * Merged in [12378] from rjsparks@nostrum.com:
    Change the lines saying that a test has failed to make it easier to 
    cut-paste to run the failed test again.  

  * Order materials on the agenda session materials popup according to the 
    sessionpresentation order.  Fixes issue #2049

 -- Henrik Levkowetz   29 Nov 2016 13:07:38 +0000


ietfdb (6.38.1) ietf; urgency=medium

  **IETF 97 code sprint release 2**

  This release contains a further datatracker enhancement from the IETF-97
  Code Sprint:

  * Merged in [12326] from housley@vigilsec.com:
    Allow WG Chairs to manage the meeting materials when starting from 
    the old WG Chair Dashboard in ietf.secr.proceedings 

 -- Henrik Levkowetz   17 Nov 2016 00:40:24 +0000


ietfdb (6.38.0) ietf; urgency=medium

  **IETF 97 code sprint**

  This release contains datatracker bugfixes and enhancements from the IETF-97
  Code Sprint.  This brings in many useful bugfixes and enhancements, as
  described below. Many thanks to everyone who contributed!

  * Merged in [12353] from rjsparks@nostrum.com:
    A second performance improvement for the proceedings pages.  

  * Merged in [12352] from rjsparks@nostrum.com:
    Add links to session materials pages to the rows on the by-type view of
    the agenda.  

  * Merged in [12351] from rjsparks@nostrum.com:
    Tweaked button color and position on the last call form for status-change
    documents at the secretariat's request.  

  * Merged in [12348] from rjsparks@nostrum.com:
    Performance improvements for the proceedings page.  

  * Merged in [12347] from rjsparks@nostrum.com:
    Repaired broken links on the proceedings page.  

  * Merged in [12340] and [12341] from adam@nostrum.com:
    Incorporated Robert's \'swim lane\' code to eliminate slot overlaps that
    made weekend effectively unusable.  Reworked animation code to use CSS
    animations for smoother performance.  Calendar redraw is now completely
    event driven rather than refreshed once per second.  Expanded meetings can
    now be closed with escape key.  Refactored code to make it more idomatic.
    Eliminated many globals.  Reformatted to reflect a more consistent coding
    style. 

  * Added common patterns for template file names to ignore when testing 
    template parsing and template test coverage.

  * Fixed another duplicate entry issue with materials uploads.

  * Merged in [12338] from rjsparks@nostrum.com:
    Modified the RFC feed to better support digital preservation.  Fixed an
    issue with the agenda linking to group type \'other\' slides.

  * Merged in [12334] from rcross@amsl.com:
    Fixed parameter validations in meeting.views.ajax_get_utc().  Fixes #2023.
    Also fixes a pyflakes error.

  * Merged in [12330] and [12331] from rcross@amsl.com:
    Add the ability for the Secretariat to skip the announcement when
    scheduling an IRTF interim meeting. Fixes #2015.  

  * Fixed another case where pre-existing database objects related to 
    meeting materials would cause exceptions when trying to upload updates.

  * Merged in [12329] from rjsparks@nostrum.com:
    Added groups that did not meet to the proceedings.  

  * Updated installation instructions.

  * Merged in [12320] from rcross@amsl.com:
    Change non-working-group-session edit view to use same group options 
    available when creating the non-working-group-sessions.   

  * Merged in [12318] from rjsparks@nostrum.com:
    Change the edit buttons on the materials page to be links. Move where 
    the link appears.  

  * Merged in [12317] from rjsparks@nostrum.com:
    Add links to group meetings tabs from the navbar for 
    chairs/secretaries.  

  * Merged in [12316] from rjsparks@nostrum.com:
    Guard against sessions that have no timeslot (such as for groups that 
    are not officially not meeting at an IETF meeting) in the materials upload 
    views.  

  * Merged in [12315] from rjsparks@nostrum.com:
    Add a view of past meetings.  

  * Added admin entries for a bunch of name models lacking them.

  * Added the man viewer to the Dockerfile, hence the docker image.

  * Added a --no-download option to docker/updatedb

  * Added a utf-8 encoding setting, in case the autogenerated datetime 
    string from the $ keyword uses a non-ascii locale.

  * Use rsync instead of wget to pull down the datatracker database image, 
    since wget isn't available on macs by default.

  * Fixed some issues with mkdevbranch; giving better normalization of the 
    input to uniq, and correctly using the alias list to provide the correct 
    alias for email addresses where localpart should not be used to derive the 
    svn branch name.

 -- Henrik Levkowetz   16 Nov 2016 23:59:35 +0000


ietfdb (6.37.1) ietf; urgency=medium

  This is a bugfix release without any particular focus.  From the
  commit log:

  * Tweaked and enhanced the django admin for DocEvents.

  * Replaced the use of plain DocEvent for submission doc events with a 
    SubmissionDocEvent that carries rev and a FK to submission.

  * Restricted the permitted revisions for Trac -- the most recent revision of
    Trac (1.2.x) has a different API than 1.0.x.

  * Pip 9.0.1 does not obey requirements which lead to downgrading an 
    installed package.  Useless for our purpose.  Requiring pip<9.0 in 
    requirements.txt .

  * If a session agenda for a meeting exists, but is not bound to the 
    session, the Document.objects.create() in upload_session_agenda() will 
    fail.  Using get_or_create() instead.

  * Made the svn and libsvn symlinking code more robust against bad 
    settings.

  * Made doc.views_stat.make_title() more robust against inconsistent query 
    arguments.

  * Updated the create_group_wikis management command with additional 
    switches to make it easier to do test deployment of individual wikis.

  * Don't run ietf.checks.* more than once per invocation (under Django 
    1.7, these can be run more times than there are apps with migrations, 
    posibly as many times as twice that number).

  * Tweaked debug.py

 -- Henrik Levkowetz   08 Nov 2016 18:01:35 +0000


ietfdb (6.37.0) ietf; urgency=medium

  **YouTube links, Fixed bibtex and tweaked meeting materials pages**

  This release brings some new small features, and a bunch of bugfixes.  The
  IETF meeting agenda now provides links to the YouTube videos generated from
  the Meetecho video stream as soon as they have been uploaded and the URL has
  been added to the datatracker.  It improves both content and rendering time
  for the new meeting materials page, and it fixes a problem with the bibxml
  entries provided by the datatracker.  It also contains enhancements to the
  development view of sql queries executed as part of generating the current
  page, the addition of function call duration to the @debug.trace decorator,
  and code refacturing which should speed up meeting-related pages in general.

  Details from the commit log:

  * Merged in [12213] from rcross@amsl.com: Fixed a bug where interim
    announcement form was initialized with lists instead of strings.  

  * Rewrote Document.href() to not do database queries when possible, as that
    has a big performance impact.  Fixed a number of tests which relied on
    href() not doing the right thing for simplified test data.  Added caching
    of canonical_name(), which can be quite heavy.  Additional refactoring in
    a number of places, to use better test data and avoid test failures for
    good code.

  * Updated the installation instructions file.

  * Added caching to avoid calling the meat of each of the Session minutes(),
    recordings(), bluesheets(), slides(), drafts() methods more than once per
    session instance.  This removes another 3*#sessions sql queries from the
    meeting materials page when the materials are all in place (less when the
    first invocation reurns nothing).

  * Removed caching of the materials page from the template (edit buttons are
    different for different users), and used select_related() and code
    re-write to reduce the sql query count from ~1900 to ~600, query time from
    ~2s to ~0.5s.  More can be done, but the page response time is more
    acceptable now.

  * Refined the sql debug view at the bottom of each page.  Added a column
    showing the WHERE clause, as that is quite helpful in working out where a
    given query is coming from.  Also added a column that indicates whether a
    query originated in view code or template rendering.  Added an sql_debug
    template variable to make it easier to switch between the sql debug view
    and using the django-debug-toolbar.

  * Added call duration information to the @debug.trace decorator.

  * Fixed a bad link to uploaded session agendas.

  * Added a Document.pub_date() method which returns the RFC publication
    datetime or other documents' new-revision datetime.  Changed the generated
    bibtex entries to use pub_date().  Added tests for the bibtex entries, and
    added 'bibtexparser' to requirements.txt, for use in testing.  Fixes issue
    #2032.

  * Added caching of Document.href() values.

  * Changed the agenda template to provide links to video recordings on
    youtube if available, instead of pointing at meetecho's archive.

  * To minimize what seems to be an increased risk of segfaults when using
    virtualenv with system packages, this commit introduces an alternative,
    which does away with the general system package availability, but adds
    symlinks to two svn related system packages when running checks.

  * Updated the INSTALL file with the changes from 6.36.0.

  * Added a note on better handling of the meeting break areas to the PLAN
    file.

 -- Henrik Levkowetz   30 Oct 2016 12:15:26 +0000



ietfdb (6.36.0) ietf; urgency=medium

  **Trac wiki and issue tracker support**

  This release introduces a management command which will create new instances
  of Trac pages when new WGs, RGs, and Area groups are created, and also keep
  the admin permissions and issue tracker component updated with the group
  chair/secretaries and the groups documents.  Once existing wikis have been
  moved from tools.ietf.org, the management will be added to cron to be run
  regularly.

  The installation procedure changes slightly with this release, because we
  need to be able to use the system-installed subversion bindings for python.
  When running under virtualenv, it now has to be created like this::

	6.36.0 $ virtualenv --system-site-packages env

  There are also some bugfixes.  From the commit log:

  * Fixed a bug in the API cache key construction which could make the key 
    longer than necessary.

  * Added a test for meeting agenda in UTC

  * Removed some dead code.

  * Fixed the javascript code in the floor-plan template that adds room 
    links.  It didn't handle rooms without assinged floor-plans well.

  * Merged in a management command which provides glue code for creation 
    and maintenance of Trac issue tracker and wiki installations per group.  
    New groups of type wg, rg, and area will autmatically receive a Trac 
    instance.

  * Fixed a bug in testing for directory existence in the test setup.

  * Make sure that the svn component is enabled in the Trac config file, even
    if we can't find the Trac inherit-from settings file.

  * Made the wiki glue test skippable, in case the python subversion bindings
    are unavailable.  Added creation of temporary directories also for the svn
    repositores created for wikis during testing.

  * Make sure to not include draft name in the title extracted from draft 
    text.  Fixes a problem with bad info in 1id-abstracts.txt

 -- Henrik Levkowetz   21 Oct 2016 15:14:53 +0000


ietfdb (6.35.0) ietf; urgency=medium

  **New proceedings page improvements**

  This release brings incremental improvements to the new proceedings pages;
  in particular it adds proceeding introductionary pages: Progress Report and
  Attendees.  It also fixes a large number of bugs and issues, and adds some
  performance improvements for the secretariat's schedule layout view, and for
  the IETFers app support view.

  Details from the commit log:

  * Modified a test in upcoming_ical() to not break if a group does not 
    have a parent.  Fixes a server 500 error.

  * Merged in ^/branch/proceedings/6.33.1.dev0@12141 from rcross@amsl.com:
    Added meeting proceedings introduction pages: Progress Report and 
    Attendees.  Added a data migration to provide proceedings introduction 
    information for IETF 95 and 96.

  * Merged in [12132] from rcross@amsl.com:
    Extended Liaison to_contacts field to 2000 characters.  Fixes #2024.   

  * Reverted one instance of caching, as it seems schedules can change 
    owners.

  * Fixed a schedule save-as redirect which could not match any URL, 
    leading to a 500 error.

  * Added some caching to methods which are called very often when showing 
    the meeting schedule edit view.

  * Merged in [12104] from rjsparks@nostrum.com:
    Don't show the request publication button for ise,irtf, and iab drafts 
    after publication has already been requested. Fixes #2019.  

  * The db api prefers resource URIs ending in slash -- make it so in 
    json_agenda().

  * Changed another class name that might trigger adblock.  Related to 
    issues #2016 and #2027.

  * Changed an unfortunate html class name 'adname' (Area Director name) 
    which triggered adblock.  Fixes issues #2016 and #2027.

  * Fixed room_name() to not fail when a timeslot has no location.  Fixes a 
    server 500 for agenda.json

  * Updated the requirements to exclude PyQuery 1.2.14.  PyQuery 1.2.14 fails
    on some selectors we use (in particular, line 1370 (action = ...) in
    submit.tests.do_submission_email() fails).  

  * Added the first stab at a helper script for setting up a minimal test
    environment on a new host.

  * Merged in [12099] from rjsparks@nostrum.com:
    Changed interim announcements and interim cancellation announcements to
    use mailtriggers. Added irtf-announce to announcements for IRTF groups.
    Fixes #2018.  

  * Added a migration to remove most of the duplicate 'Upload' doc events.

  * When converting submission events to doc events, post them in 
    chronological order.  Don't add upload doc events until we're past the 
    possibility of submission cancellation.

  * Merged in [12082] from rcross@amsl.com:
    Fixed an issue where interim meeting request form didn't list research
    groups when the logged-in user was both a working group chair and a
    research group chair.  

  * Made it possible to merge nominations with inactive email addresses.
    By default the SearchableEmail form field only displays active email
    addresses, but this use case needs all known email addresses.

  * Fixed inclusion of tablesorter css and js for use when displaying the
    SQL query list in development mode.

  * Added admin support for the DocumentAuthor model.

  * Fixed a place where email addresses which were not all lowercase could
    slip in, which messed up some reverse table relationships.  (This was
    found by running our check_referential_integrity management command.)

  * Fixed a problem with the error message text for the nominee email edit 
    form.

 -- Henrik Levkowetz   17 Oct 2016 18:17:47 +0000


ietfdb (6.34.2) ietf; urgency=medium

  **Draft submission and document DOI fixes**

  This is a bugfix release which addresses several issues related to draft
  submission: incorrect timestamps and duplicate history events, a corner case
  where non-ascii draft content would cause an exception before the idnits
  message about non-ascii content was shown, and better handling of draft
  submissions where email address information is missing for some authors.
  The DOI information in the RFC feed is now represented better, and some
  pages which had invalid html has been corrected.

  Details from the commit log:

  * Added a data migration to fix up incorrect submission doc events.

  * Removed the code which created duplicate new revision doc events.
    Corrected the timestamp on approval docevents.  Changed where the
    submission upload docevent is created, to avoid spurious events for
    cancelled uploads.  Adjusted the person associated with some events from
    submitter to (System).  Added tests for the sequence of events associated
    with a submission.

  * Tweaked the admin models for submission events to show more relevant info.

  * Moved some code and tweaked the settings to ignore sql debugging functions
    when calculating code coverage.

  * Refined the sql debug info, making the table of queries sortable and
    adding duplication counts and accumulated query time.

  * Fixed some invalid html, and tweaked the html validation settings in the
    test crawler.

  * Merged in [12055] from rjsparks@nostrum.com:
    Modified the rfc feed to better represent dois. Fixes issue #2014.

  * Fixed 2 testing bugs.  Added tests for handling of submitters without 
    email and drafts with non-ascii names in the author section.

  * Code changes to handle draft submission authors without email addresses 
    better.

  * Changed to use plain_ascii() name for formatted_email() address.

  * Tweaked the text of a main menu item.

  * Added code to try various ways of handling non-ascii names/emails in draft
    submissions, in order to get past the early processing to the point where
    we run idnits and can flag non-ascii content, instead of failing with a
    server 500 error.

 -- Henrik Levkowetz   02 Oct 2016 16:37:58 +0000


ietfdb (6.34.1) ietf; urgency=medium

  This is a bugfix release, with the most interesting fixes being to allow
  meeting materials upload before sessions have been scheduled, and to direct
  new release notifications for area drafts to the ADs, instead of to all the
  area WG chairs.  The release also contains some test suite improvements.
  Details:

  * Merged in [12038] from rjsparks@nostrum.com:
    Changed how document names are generated for agendas and slides to allow
    uploads before meetings are scheduled.  

  * Merged in [12014] from rjsparks@nostrum.com:
    Improved who to copy when sending submission confirmation mail when
    authors change.  

  * Tweaked test data to make test data sessions actually fall within their 
    meeting, and to make sure that the test_agenda_current_audio sessions are 
    in the near future.

  * Added interpolation of values from the session object when rendering 
    audio_stream_url.

  * Added a test which specifies a meeting currently under way, in order to
    make sure that code paths which are used only for current meetings are
    excercises, this reduces coverage variation due to random meeting dates.
    Also added a test for the presence of Audio stream, which isn't present on
    agenda pages of past meetings.

  * Made it possible to pass in a meeting instance to make_meeting_test_data,
    and added an audio stream UrlResource for test purposes.

  * Changed things so that the reorder_by setting has an effect on the test 
    ordering.  It didn't before, as CoverageTest was a subclass of the earlier 
    entries in the reorder_by setting.

  * Make pyflakes happier sorting out tastypie.resources.ModelResource.

  * Undid an unintended commit (code change for test purposes)

  * Change the cache key construction to deal with query arguments 
    containing spaces.  Fixes 500 errors which would otherwise occur.

 -- Henrik Levkowetz   27 Sep 2016 07:17:01 +0000


ietfdb (6.34.0) ietf; urgency=medium

  **New proceedings pages**

  This release introduces the new proceedings pages, as an integral part of
  the datatracker.  This is the work of rjsparks@nostrum.com, with
  contributions from rcross@amsl.com.  The new proceedings pages use live data
  from the datatracker database up to the point in time when they are
  finalized; from that point on they are fixed.  They provide proceedings
  pages using the same responsive design as the rest of the datatracker, and
  since they pull agendas, slides, minutes, etc. from the database directly,
  they will be available and should be useful also during a meeting.  Feel
  welcome to inspect the IETF 96 version of the new proceedings pages at
  https://datatracker.ietf.org/meeting/96/proceedings .

  As part of this work, it is now possible to have separate session agendas
  when a group has more than one session during a meeting.  This made it
  necessary to change the upload pages for meeting materials.  They used to be
  available under /secr/proceedings/, but are now under /meeting/NN/session,
  for instance https://datatracker.ietf.org/meeting/97/session/avtext.  On the
  'meetings' tab for each group (WG, RG, etc.) there is a link to the details
  page for each session, with upload buttons available for logged-in chairs
  and group secretaries. The session details can also be reached from the
  meeting materials page.

 -- Henrik Levkowetz   24 Sep 2016 09:31:06 +0000


ietfdb (6.33.1) ietf; urgency=high

  **Nomcom nominee merging, agenda.json enhancements**

  This release brings back merging of duplicate nominee records in the nomcom
  tool, to complement the merging of duplicate person records.  It brings a
  number of enhancements to the agenda.json output provided for the IETFers
  iOS app, and a number of bugfixes as mentioned in this changelog excerpt:

  * Merged in [11988] from rcross@amsl.com: Fix issue with proceedings for
    training sessions.  

  * Brought back the nomcom nominee merge functionality which was
    inadvertently removed in January.  There is now both a Merge Nominee and a
    Merge Person form, with additional instructions which should make it
    easier to choose the right one for the task.

  * Don't use EmptyQuerySet directly; return Class.objects.none() instead.

  * Clarified the differences between Document.href() and
    Document.get_absolute_url().  Updated PLAN.

  * On request, changed the agenda and minutes links in json_agenda to point
    at the document text instead of the document API endpoint.

  * Added an is_bof flag to json_agenda.  Also added group state information.
    Changed the group information to use historic information instead of
    current.

  * Added a link to the minutes api to json_agenda().  Changed the output json
    to use sorted keys.

  * Made retrieve_search_results() always return a queryset, which lets us use
    .exists() on the returned value as needed.

  * Made 'group' a json object in the json_agenda, and added
    session.group.type information.

  * Fixed a merge error which replaced the group group state with a duplicate
    group charter line on the group_about page.  Fixes issue #2009.

  * Changed the 1id_index generation to use a new Person method
    .plain_ascii().  Added tests for some Person name methods.

  * Changed 1id_index back to using plain names, undoing an inadvertent change
    to names with title.

  * Added object IDs to /meeting//agenda.json.

  * Datatracker buildbot (http://buildbot.tools.ietf.org:8010/waterfall)
    enhancements, tracking additional Test-Crawler measurables.

 -- Henrik Levkowetz   23 Sep 2016 06:22:56 +0000

ietfdb (6.33.0) ietf; urgency=medium

  **Manual draft submission management**

  This release provides secretariat support for managing draft submissions
  outside of the automated datatracker draft submission tool.  In addition to
  making the secreatiat handling of draft submissions that come in by email or
  other paths easier, it also improves the datatracker submission and document
  history for these documents.

  From the commit log:

  * Merged in ^/branch/scow/track-manual-id-posts-6.31.1.dev0, which 
    provides secretariat support for managing draft submissions outside of the 
    automated datatracker draft submission tool.

  * Fixed an issue where button badges would be positioned differently on 
    firefox and webkit-based browsers.

 -- Henrik Levkowetz   11 Sep 2016 12:39:41 +0000


ietfdb (6.32.1) ietf; urgency=low

  This is a minor bugfix release, in preparation for merging in the manual
  draft posting management code.

  * Updated the PLAN file.

  * Changed the export options and resources for charts so as to not involve a
    third-party server for image exports.

  * Started refacturing of the by now very large monolithic settings file.

  * Fixed a situation where the Change IETF WG State form gave an exception
    when the form was submitted empty, instead of informing the user.

  * Added a pylint rc-file, and fixed or silenced a number of issues found by
    pylint using the settings .pylintrc (which enable only error checking).

  * Added a missing return value used by
    ietf.middleware.SMTPExceptionMiddleware.process_exception().

  * Added a set of chart options for small activity indication graphs.  Fixed
    a pylint nit.

 -- Henrik Levkowetz   09 Sep 2016 12:23:13 +0000


ietfdb (6.32.0) ietf; urgency=low

  **Initial charting support**

  This release brings in basic charting support, and a set of initial charts
  showing new-revision timelines for document search results and authors.
  There are also a few bugfixes:

  * Fixed a blowup which could happen if an rfc doesn't have the standards
    level set.

  * Fixed a bug in the rfceditor index sync introduced by the event saving
    refactoring.

  * Fixed document methods .get_file_path() and .href() for historic meeting
    documents, to make urls like /doc/minutes-96-detnet/1/ work.

  * Fixed a bug in bin/mkrelease.

 -- Henrik Levkowetz   08 Sep 2016 09:05:12 +0000


ietfdb (6.31.1) ietf; urgency=low

  This release adds more proceedings generation functionality, adds slide
  ordering for session materials, adds caching for the json export for the
  'IETFers' iOS app, tweaks some fonts, and fixes a number of bugs:

  * Fixed a number of places where events were given the document time, but
    the document had not been given a new time yet, after the eventsave
    refactoring code changes of [11841].  Fixes issue #2004.

  * Updated the zone information files used by the datatracker when generating
    iCalendar content.

  * Merged in [11891] from rjsparks@nostrum.com: Modified agenda.json to
    properly handle meetings that do not have an agenda yet. Fixes #2003.  

  * Merged in [11890] from rcross@amsl.com: Modified the monthly progress
    report script to deal with unicode characters in document titles.  

  * Merged in [11889] from rcross@amsl.com: Strip .py extension of report
    scripts to match the rest.  Add svn:executable to scripts that were
    missing it.  

  * Added page caching for json_agenda().  Changed localization of naive time
    from database in json_agenda to use settings.PRODUCTION_TIMEZONE.

  * Merged in [11888] from rjsparks@nostrum.com: Added an order field to
    sessionpresentation to allow ordering slides.  Reworked the session
    details page to break slides and drafts into their own sections.  

  * Added handling for an exception which could occur for charter documents
    which does not have a matching chartered group.

  * Merged in [11877] from rjsparks@nostrum.com: Copy group chairs on
    confirmation email when a new group document revision is submitted that
    changes the author set. Fixes #1998.  

  * Styled the textarea of the charter form to use a monospaced font.
    Corrected the monospace font selection for the dbtemplate textarea.

  * Merged in [11859] from rjsparks@nostrum.com: Put WG summary information on
    the rechartering page. Fixes #2000.  

  * Merged in [11856] from rcross@amslcom: Added a missing meeting fixture.

  * Merged in [11850] from rcross@amslcom: Added support for the IETF Overview
    for the proceedings, including an editable database-stored template;
    completed tests and migrations.

  * Merged in [11855] from rjsparks@nostrum.com: Updated the instructions page
    for the submit tool to reflect what currently happens.  

  * Merged in [11849] from rcross@amsl.com: Fixed a bug with main
    secr/proceedings page and added a test.

 -- Henrik Levkowetz   31 Aug 2016 14:20:19 +0000


ietfdb (6.31.0) ietf; urgency=low

  **Refactoring of saving document state and events**

  This release contains a major refactoring of the way document state changes
  are saved.  It contains a migration which takes a long time to run, but can
  safely run at the same time as the system is in production.

  Extract from the commit log:

  * Merged in ^/branch/iola/event-saving-refactor-r10291 (via
    ^/personal/henrik/6.30.1-eventsave), which refactors document saving to
    always use doc.save_with_history(events), and requires at least one
    accompanying event.  This branch also provides refactoring of recurring
    regexes in url patterns into a dictionary.  As part of the merge, also did
    refactoring of newer code which didn't use the save_with_history() method.

 -- Henrik Levkowetz   25 Aug 2016 06:04:47 +0000


ietfdb (6.30.0) ietf; urgency=medium

  **Proceedings page work and improved meeting support**

  This release brings in new code to generate meeting proceedings pages,
  available only to the secretariat at this time; it adds slide links to the
  agenda for the Sunday sessions, provides a new json export of meeting data
  optimised for the iPhone IETFers app, and improves the error checking of
  form data for account creation.  It also fixes a number of bugs, as detailed
  in the changelog extract below: 

  * Merged in [11810] from rjsparks@nostrum.com:
    Corrected some missed base template references in dbtemplate from 
    the facelift effort.  

  * Merged in [11792] from rcross@amsl.com:
    Requests for virtual interim meeting should go directly Scheduled - 
    Waiting for announcement state and an email notification sent to the 
    secretariat.  Fixes issue #1994.

  * Merged in [11789] from rcross@amsl.com:
    Show timezone with interim meeting request information.  Fixes #1995.

  * Merged in [11781] from rcross@amsl.com:
    Fixed an issue with interim meeting series of more than two meetings.
    Changed to not send meeting change notifications for meetings not yet
    announced.  

  * Merged in [11756] from rjsparks@nostrum.com:
    Provides a custom json view of meetings optimized for the iphone app.  

  * Merged in ^/branch/iola/account-ascii-fixes-r11748 from olau@iola.dk:

    - Added a check for a reserved name in account registration
    - Handle Person.ascii in edit profile better to try to ensure that
      people fill it in correctly. Blank it out if it's unchanged from name
      and use unidecode to set it automatically (with a warning if it
      actually converts something).
    - Throw a validation error if a profile name contains an @ sign upon
      edit so that people do not forget to enter their name.

  * Fixed the plenary etherpad name

  * Added slide links to the Saturday/Sunday 'other' sessions.

  * Fixed the plenary jabber room name

  * Tweaked the help text for the nomcom member entry form.

  * Merged in [11780] from rjsparks@nostrum.com:
    Removed bluesheet upload from the secr/ bluesheets generation page.  Added
    navigation to session details from the meeting materials view rows.  

  * Merged in [11779] from rjsparks@nostrum.com:
    Robustness improvements for the bluesheet migrations.  

  * Merged in [11778] from rjsparks@nostrum.com:

    - Enabled and refined document_main view for bluesheets.
    - Improved migration for 95 and 96 bluesheets, adding DocAlias and DocEvent 
      creation.
    - Added bluesheet upload to the session details view.
    - Moved a function out of secr/proceedings/views into its own util.py file to 
      allow reusing it in other modules without introducing circular imports. 

  * Merged in [11770] from rjsparks@nostrum.com:
    Merged from rcross: Added Introduction header to proceedings. Added
    Acknowlegements to the meeting model. Added a view for acknowlegements.  

  * Merged in [11767] from rjsparks@nostrum.com:
    Improved some test coverage.  

  * Merged in [11766] from rjsparks@nostrum.com:
    Added status reports to proceedings. added a view for the applicable
    status report for a given meeting.  

  * Merged in [11764] from rjsparks@nostrum.com:

    - Moved the materials start, cutoff, and revision dates into the Meeting 
      object
    - Added a bit to meeting to note whether proceedings are final. 
    - Updated the proceedings view to reflect the status of that bit. 
    - Added a function that finalizes a meetings proceedings.
    - Straightened out a migration numbering collision introduced in an earlier 
      merge. 

  * Merged in [11758] from rjsparks@nostrum.com:
    Continued iterative-improvements to auto-generated proceedings:

    - Migration to create documents and sessionpresentations for ietf95 and 96
      bluesheets. Add bluesheets to proceedings.
    - Refactored columns for proceedings to group agenda, minutes, and
      bluesheets into one column.
    - Added a column for recordings. Show the recordings for all sessions for
      a group.
    - Refactored all_meeting_* functions on session. Improved (with a hack) how
      recordings are displayed.
    - Added guards against very old meetings. For more modern, past, meetings,
      added a warning that these are not the official proceedings and provide
      a link to the official proceedings. 

  * Merged in [11711] from rjsparks@nostrum.com:
    Starting a page for direct rendering of proceedings.  

 -- Henrik Levkowetz   20 Aug 2016 11:46:27 +0000


ietfdb (6.29.0) ietf; urgency=high

  **IETF 96 Code Sprint**

  This release contains datatracker bugfixes and enhancements from the IETF-96
  Code Sprint.  This brings in many useful bugfixes and enhancements, as
  described below. Many thanks to everyone who contributed!

  * Merged in [11702], [11712], and  [11713] from rjsparks@nostrum.com:
    Repairs the javascript that renders the week-view calendar on the
    agenda page. Fixes #1984.

  * Merged in [11708] from rcross@amsl.com:
    Restricted the session request options to groups of type WG,RG or AG.
    Added a new mailtrigger to names fixture.  

  * Merged in [11699] from rcross@amsl.com:
    Changed blue_sheet_generate() to only generate blue sheets for WG and RG
    group types that have sessions on the official schedule.  

  * Merged in [11687] and [11710] from presnick@qti.qualcomm.com:
    Generate a message to Secretariat and IESG when AD changes a draft state
    to 'Approved'.  Fixes issue #796.

  * Merged in [11697] from rcross@amsl.com:
    Changed check_audio_files() to only consider sessions on the official
    schedule.  Fixes some 500 errors.   

  * Merged in [11690] from housley@vigilsec.com:
    When the Secretariat marks a session as cancelled, the HTML agenda
    shows a red CANCELLED box, the text shows *** CANCELLED ***, and (as
    before) the .ics file includes STATUS:CANCELLED.  Fixes issue #1639. 

  * Show only 'session' and 'other' type meetings on the materials page, 
    especially do not show leadership meetings.

  * Merged in [11686] from rcross@amsl.com:
    A refactor to give the secretariat a broader selection of groups to choose
    from when scheduling non-working group sessions.  

  * Merged in [11681] from suresh.krishnan@ericsson.com:
    Allow ADs to manage out of area working groups and upload proceedings for
    them. Fixes issue #1648.  

  * Merged in [11668] from suresh.krishnan@ericsson.com:
    Fixed validation of submitter name and email when they are same as the 
    holder's info. Fixes issue #1971.  

  * Tweaked meetecho URLs, and added a new template filter for string
    formatting.

  * Merged in [11666] from housley@vigilsec.com:
    Do not show updates related to a removed IPR disclosure.  Fixes #1983. 

  * Merged in [11664] from rcross@amsl.com:
    Send email to the secretariat when an interim meeting has been approved
    and is waiting for announcement.  Uses a new mailtrigger: interim_approved.  

  * Merged in [11663] from housley@vigilsec.com:
    Clarify that the consensus field is talking about whether the doument will
    include the consensus boilerplate when it is published as an RFC.  
    Fixes issue #1955. 

  * Merged in [11662] from rcross@amsl.com:
    Fixed duplicate help-block issue on Interim Meeting Request Page.   

  * Merged in [11656] from rjsparks@nostrum.com:
    Enhanced factories to simplify test writing.  

 -- Henrik Levkowetz   20 Jul 2016 09:33:57 +0000


ietfdb (6.28.0) ietf; urgency=medium

  **Jabber, Etherpad, Audio and Meetecho links on the agenda page**

  This is a minor feature release with some bugfixes, in preparation for the
  code sprint release.  This adds links to Jabber room, Etherpad, Audio
  stream, and Meetecho video participation to the IETF meeting agenda page.

  Excerpt from the commit log:

  * Added a buildbot build to check that the minimum library version 
    required in requirements.txt works.

  * Updated requirements.txt to prevent installation of incompatible html5lib
    versions.  Increaced the requirement on setuptools to 18.5 to avoid later
    problems when downgrading to minimum required versions, then upgrading
    again.

  * Fixed a typo in the Dockerfile, and added the vim editor in the docker
    image, for vi people.

  * Merged in [11654] from rjsparks@nostrum.com:
    Call out downreferences in autogenerated last call text. Fixes #1982.  

  * Updated the version requirement for pyquery.

  * Added a test case for group home.

  * There were multiple different regex patterns in different urlpattern
    declarations, with some of them permitting characters which should not
    occur in group acronym.  Changed them to consistently use [-a-z0-9]+ .

  * If an external RfcEd/IANA command fails, capture stderr and raise an
    Exception.

  * Added links to Jabber room, Etherpad, Audio stream, and Meetecho video
    participation, up to the time a session ends; switching out Jabber,
    Meetecho and Audio streams with links to logs or recordings after the
    end of a session.

  * Made all the scripts under ietf/bin/ set up the environment the same 
    way.

 -- Henrik Levkowetz   16 Jul 2016 13:43:47 +0000


ietfdb (6.27.0) ietf; urgency=high

  **Floor plan enhancements**

  This release builds on 6.26.0 to provide enhanced floor plan and room
  location functionality.  The room names on the agenda now link to the
  datatracker floor plan with a blinking arrow showing the room location on
  the floor plan, just as on Tony Hansen's floor plans on tools.ietf.org.  The
  floor plan page shifts to the correct floor when showing a room location.
  The floor plan page now lists functional names, in addition to room names.
  Both floor plans and blinking arrows now adapt to various screen sizes, and
  should be functional on smartphones, tablets, and laptops.

  There are also some bug fixes and enhancements unrelated to the floor plans:

  * Fixed various issues with the interim approval request email text when 
    used for non-WG groups (RGs, for instance).  Added supporting template 
    filter functions. Related to issues #1979 and #1980.

  * Modified the Alias test-data factory to work around a problem with the
    backend collapsing aliases with accented and unaccented versions of the
    same name.

  * Added a 'verbose_name' attribute to the GroupTypeName table, with 
    updated admin and a data migration to provide verbose group names.

  * Added support in the interim meeting request form for taking a group id 
    parameter as query arg.

  * Replaced the hardcoded 'Area Director' approval role in the interim
    approval notification email text with a group-dependent list of approval
    roles.  Fixes issue #1980.

  * Pre-filled the group choice in the interim meeting request form when
    linked from a button in the group's meeting tab.

  * Split up the action buttons on the group meeing tab to put buttons after
    the 'close group' button on a new line.  Added an interim meeting request
    button.

  * Modified the interim announcement text to be less rude if remote
    participation isn't supported.  Fixes issue #1979.

  * Merged in [11530] from rjsparks@nostrum.com:
    Adds a publisher to the digital preservation feed.  

 -- Henrik Levkowetz   10 Jul 2016 16:07:07 +0000


ietfdb (6.26.0) ietf; urgency=high

  **Meeting floor plans**

  This release adds basic support for meeting venue floorplans and room
  location, including JSON API access to floorplan images and room
  coordinates.  Floorplan data for IETF 96 in Berlin is also provided in a
  data migration.  Not part of this release, but planned for a later release,
  is support for arrows pointing out rooms, and secretariat support for room
  location input.  Merged in from ^/personal/henrik/6.25.2-floorplans.

  There are also a few bugfixes included:

  * Brought back, by popular demand, a tab with the link to a group's tools 
    pages (which was removed in release 6.25.0).

  * Save submitted session agendas as UTF-8, not as ascii.  Should fix a few
    server 500 errors on session agenda uploads.

  * Added an explicit PhantomJS(port=0) as a workaround for old phantomjs 
    instances staying around and blocking the port needed to run tests.

 -- Henrik Levkowetz   08 Jul 2016 11:32:06 +0000


ietfdb (6.25.1) ietf; urgency=low

  This is a patch release, in preparation for an upcoming feature release.
  Excerpt from the commitlog:

  * Configured the plural form of 2 models.

  * Merged in [11512] from rjsparks@nostrum.com:
    Allow RG secretaries to manipulate meeting materials. Fixes #1836.  

  * In the internet-draft submission status page, point at the datatracker 
    page for the document, rather than the repository copy of the document.

  * Added a method Person.ascii_name() for use when generating 1id-*.txt 
    files.  Added caching for Person.plain_name(). Fixes a problem with 
    non-ascii names in 1id-*.txt which lead to non-ascii names in xml2rfc 
    reference files.

  * Merged in [11504] from rcross@amsl.com:
    Removed old interim proceedings location reference.

  * Merged in [11501] from rjsparks@nostrum.com:
    Changed the search results for recordings to link to the actual recording.
    Fixes #1895.  

  * Merged in [11500] from rjsparks@nostrum.com:
    Allow non-official schedules to be viewed in the same ways the official 
    schedule for a meeting can be viewed. Fixes #1959.  

  * Merged in [11498] from rcross@amsl.com:
    Fixed interim meeting get_proceedings_url() functions.   

 -- Henrik Levkowetz   06 Jul 2016 06:52:43 +0000


ietfdb (6.25.0) ietf; urgency=high

  **Enhanced testing**

  This release brings in added tests for template parsing and checking the
  correspondence between the dynamic and static resources that templates
  reference, and the url patterns and static resources that are actually
  available.  It makes the test coverage figures more consistent across test
  runs, checks for proper cache functioning, and adds functionality to the
  coverage_changes management command.  It also fixes a number of bugs for
  issues found as a result of the improved testing.  Finally, it changes to
  memory-based session storage, instead of database-based.

  Excerpt from the commit log:

  * Added 3 tests which checks 1) that all templates can be parsed and 
    loaded, 2) that url template-tags refer to an urlconf callback that exists, 
    and 3) that static template-tags resolve to urls that work.  This was 
    prompted by some 500 errors earlier which weren't caught by existing texts.

  * Cached the list of template paths in test_runner.py so we can call it 
    multiple times cheaply.

  * Merged in [11479] from rcross@amsl.com:
    Remove references to non-existent views from templates.

  * Fixed some missing and mistyped web assets found with 
    test_template_statics_exists().

  * Fixed a place where a logged-in user without associcated Person would 
    cause a 500 instead of 403.

  * Added settings to use the cache back-end for sessions.  Separated out 
    the preference cookie age from the session age.  Made the session age 
    refresh on each access, and set the session timeout to 4 weeks of no access.

  * Refactored the code to skip coverage testing a bit, and added skipping 
    of template and url coverage.

  * Added a production-mode check to verify that the cache is functioning 
    as expected.

  * Added missing right-angle for a div.  Made some form elements initially 
    display: none in order to avoid elements jumping around on initial form 
    rendering.  Fixed alignment of Submit and Back buttons, by proper nesting 
    and col-md- class.

  * Added a banner on top of the agenda view of unofficial agendas (which 
    now work) indicating that it's not the official agenda.

  * Added an optional parameter 'owner' to meeting.views.agenda().  Fixed 
    issues #1959 and #1615

  * Fixed a buggy urlpattern regexp which would eat up the last character 
    in an url if not given an extension.

  * Added the ability to list absolute coverage data, not only show 
    relative differences, to the coverage_changes management command.

  * Added to PLAN: lift in draft htmlization lib from tools.ietf.org

  * Added a check for the phantomjs binary to the skip-selenium tests in 
    ietf/meeting/tests_js.py, in order to be able to add selenium to 
    requirements.txt.  This will make the selenium tests run if phantomjs is 
    available on the system, without manually having to install the selenium 
    module.  This should make the buildbot run the selenium tests, too.

  * Tweaked the release page a bit, fixing vertical alignment of revision 
    comments when breaking across lines, comment appearance on iPads, and 
    introducing striped tables.

  * Changed the code test coverage checking to never register coverage 
    counts for tests that are sometimes skipped.  Removed now unwanted skip 
    settings from the releasetest settings.

  * Removed dead templates.

  * Removed dead code.

  * Language tweaks


 -- Henrik Levkowetz   28 Jun 2016 20:50:44 +0000



ietfdb (6.24.0) ietf; urgency=high

  **Interim meeting management**

  This release adds support for management of Interim Meetings by merging in
  ^/branch/amsl/interim/6.21.0 from rcross@amsl.com.  ADs and chairs can
  request virtual or in person meetings.  Authorized users have access to
  views for approval, scheduling and notification of interim meetings.  Users
  can view a sortable / filterable list of upcoming meetings and download
  iCalendar files.  For complete details see here the statement of work:
  https://datatracker.ietf.org/doc/draft-sparks-genarea-interim-management/ 

  There are also some unrelated minor tweaks, as part of this release:

  * Added a score of setting save/restores to test setup/teardown actions.

  * Tweaked the test crawler a bit to skip some slow and meaningless checks.

  * Updated docker/settings_local.py

  * Avoid multiple doctype declarations and other html errors by parsing 
    sesion agenda html files and inserting our title and doctype.

  * Added caching to some meeting methods which are called multiple times 
    when generating the IETF agenda.

  * Fixed a bug in find-history-replacement-active-at() where multiple 
    history entries with the same timestamp would be unordered.  This led to 
    the wrong historic group info being shown in some cases (e.g.,  
    meeting/86/agenda would show dmmnew instead of dmm, leading to wrong agenda 
    links)

  * Tweaked the styling of meeting rows to avoid wrapping the interim 
    meeting names, and added meeting links for the IETF meetings.

  * Moved a check for session data being present up to before we try to use it
    in announcement.views.confirm(), fixing a server 500 error.

 -- Henrik Levkowetz   21 Jun 2016 19:15:08 +0000


ietfdb (6.23.0) ietf; urgency=low

  **Additional account creation safeguards**

  This release provides additional safeguards against malicious account
  creation, and support functions to let the secretariat manually bypass the
  safeguards when needed.

  * Merged in ^/personal/henrik/6.22.1-acctdeps which provides additional
    account creation requirements.

  * Changed the IESG photo page to show full area name instead of area acronym
    in each box heading.  Linked the area name to the area page.  Removed the
    area acronym under each picture.  Tweaked the vertical alignment of photo
    wells.  Fixes an issue raised by housley@vigilsec.com

  * Fixed some tests.

  * Added a clean() method to the Group creation form which requires a BoF to
    have a parent group.  Fixes issue #1970.

 -- Henrik Levkowetz   17 Jun 2016 13:20:18 +0000


ietfdb (6.22.2) ietf; urgency=low

  This is a patch release which updates various web assets (json libs
  and such).  From the commit log:

  * Merged in [11358] from lars@netapp.com:
    Updated vnu to 16.6.14.  

  * Merged in [11357] from lars@netapp.com:
    Updated various web assets.  

 -- Henrik Levkowetz   15 Jun 2016 15:09:35 +0000


ietfdb (6.22.1) ietf; urgency=low

  This is a small bugfix release which fixes a number of issues which made
  some manual actions necessary in order to use the 6.22.0 release in
  development mode.

  * Added a missing __init__.py file.

  * Added default media and photo directories for use in development.  
    Changed settings to point to the media dir in development.

  * Fixed a bug in the default alias-file settings.

  * Improved data migration for plain_name aliases.

  * Tweaked indentation of inline python in the mkdevbranch bash script.

  * Tweaked bin/mkrelease to be more quiet.

 -- Henrik Levkowetz   13 Jun 2016 15:13:48 +0000



ietfdb (6.22.0) ietf; urgency=medium

  **Support for profile photo and biograpy**

  This release brings in basic support for having a biography and a photo
  associated with a person's profile in the datatracker.  This makes it
  possible to provide photo presentation pages for the IESG
  [https://dt.ietf.org/iesg/photos], the IAB [https://dt.ietf.org/group/iab],
  WG chairs, [https://dt.ietf.org/wg], etc.

  It is of course possible to extend this to displaying photos as part of many
  other regular datracker pages, but this first release only aims at making
  photos available for use cases such as the IESG, IAB, and WG Chair pages
  already present (and manually maintained) at www.ietf.org.  Since the
  datatracker already has the information on who the sitting ADs, WG Chairs,
  etc. are, this release makes it feasible to automatically keep pages such as
  https://www.ietf.org/iesg/members.html up-to-date by pulling role, photo,
  and bio information from the datatracker.

 -- Henrik Levkowetz   12 Jun 2016 10:44:03 +0000


ietfdb (6.21.1) ietf; urgency=medium

  This is a bugfix patch release, in preparation for an upcoming feature
  release.  Excerpt from the commitlog:

  * Fixed a problem with accessing a group's workflow customisation page 
    from /group/{{acronym}} instead of /wg/{{acronym}}/.

  * Changed the acceptable mime type for uploaded xml files to be either 
    text/xml or application/xml.

  * Fixed a bug found by rjsparks@nostrum.com in the submission test text 
    output.

  * Fixed a problem with person alias updates where get_or_create() could 
    find two results for one alias name because utf8_general_ci collation would 
    match multiple different utf8 forms to the same name.

  * Added an initial migration for messages.

  * Added a tiny script which extracts test coverage figures from the 
    release-coverage.json data.

  * Updated maximum file-sizes for draft submissions.  Added some 
    Trac-glue-related settings.

  * Changed some instances of error strings from ascii to unicode in order 
    to avoid problems with unicode error messages, such as the file size 
    indications generated by django.template.defaultfilters.filesizeformat().

  * Prevented people from adding ietf list-addresses to their personal 
    accounts.

 -- Henrik Levkowetz   10 Jun 2016 09:45:36 +0000


ietfdb (6.21.0) ietf; urgency=medium

  **Rewritten document tracking support**

  The part of the datatracker that lets community members set up personal
  document tracking lists and notifications has been in need of refactoring
  for quite some time.  This release brings in a thorough refactoring and
  simplification of that code, with improved management of both personal
  and group lists.

  Here is an excerpt from the changelog:

  * Merged in ^/branch/iola/community-list-cleanup-r11172@11175 from
    olau@iola.dk, which provides rewritten community document tracking and
    notification.

  * Merged in ^/branch/iola/account-registration-fixes-r11167@11179 from 
    olau@iola.dk, which contains fixes and refactoring for the account 
    registration code, in order to better support the coming community app 
    refactoring.

  * Modified a few tests to handle the improved handling of error messages 
    (not conflating them with help text any more).

  * Improved the crontab support. 

  * Improved the help info for the coverage_changes management command.

 -- Henrik Levkowetz   20 May 2016 10:21:30 +0000


ietfdb (6.20.0) ietf; urgency=high

  **Better yang support, reworked schedule management, cronjob release management**

  This is a mixed feature and bugfix release.  It provides additional
  support for Yang models, reworked pages for meeting schedule
  management, adds a crontab file as part of the release managed files,
  and provides a whole bunch of bugfixes.  Details below:

  * Merged in [11137] from rjsparks@nostrum.com:
    Reworked the pages that manage all the possible schedules for a 
    meeting. Removed a lot of custom javascript. Fixes issue #1921.  

  * Merged in [11133] from rjsparks@nostrum.com:
    Cleanup: Remove hooks for TowTruck.  

  * Merged in [11132] from rjsparks@nostrum.com:
    Minor template typo correction.  

  * Merged in [11129] from rjsparks@nostrum.com:
    Have person.formatted_email() return the primary address if one is so 
    marked. Fixes issue #1928.  

  * Merged in [11128] from rjsparks@nostrum.com:
    Leave out the sentence about consensus when requesting publication as 
    the ISE. Fixes issue #1952.  

  * Merged in [11122] from rjsparks@nostrum.com:
    Add page counts to doc.json. Fixes issue #1936.  

  * Merged in [11120] from rcross@amsl.com:
    Update announcement tool permissions for new IAOC chair.   

  * Merged in [11118] from rcross@amsl.com:
    Move standalone monthly report scripts to bin directory.   

  * Merged in [11116] from rjsparks@nostrum.com:
    Add an entry to GROUP_EVENT_CHOICES for status updates. Fixes issue #1948.  

  * Excluded management commands from code coverage figures -- testing is 
    possible but in many cases would be so slow that the test suite would 
    become much more painful to run.

  * Merged in [11112] and [11113] from rjsparks@nostrum.com:
    Add a page to show the active status reports all in one place. Fixes 
    issue #1951.

  * Tweaked the field names of Person name fields to make the intended use 
    clearer.

  * Fixed the function has_rfc_editor_note() to return boolean -- datetime 
    cannot be serialized as JSON, so /iesg/agenda/agenda.json was broken when 
    there was an rfc-editor-note.

  * Added a crontab file to be symlinked from /etc/cron.d/, and related 
    scripts to be run from cron.  Requires refactoring of CronRunner and 
    NightRunner scripts before activation, to avoid duplicate runs.

  * Added a django management command to populate yang model libraries from 
    RFCs and drafts.

  * Add support for legacy IPR search arguments, for compatibility with old 
    ipr search URLs.

  * Added a missing '?join' to each group's xmpp link on the charter pages,
    and removed an unwanted double slash.  Fixes issue #1950

  * Fixed the multiple (incorrect) extension problem for some materials 
    links.  Fixes issue #1947.

 -- Henrik Levkowetz   05 May 2016 12:37:18 +0000


ietfdb (6.19.0) ietf; urgency=high

  **IETF 95 Code Sprint**

  This release contains datatracker bugfixes and enhancements from the IETF-95
  Code Sprint.  This brings many small but useful bugfixes and enhancements,
  as described below. Many thanks to everyone who contributed!

  Some additional contribution which have been received after the code sprint
  will be released later in the week.  Keep the fixes coming :-)

  * Merged in [11085] from bartosz.balazinski@interdigital.com:
    Added validation for the dependency graph output type (one of 'dot',
    'pdf', 'svg').  Added an area column to the directorate summary page.
    Commit fixes bug #1887, fixes bug #1940.  

  * Merged in [11080] from rjsparks@nostrum.com:
    Show the link for editing what agendas a document appears on more
    liberally. Fixes #1935.  

  * Merged in [11079] from kivinen@iki.fi:
    Fixed ICS UIDs so they are unique, even if the timeslot is same.
    Fixes issue #1522.  

  * Merged in [11064] [11082] from housley@vigilsec.com:
    The secretariat and the Team Chair can now edit team groups. In addition,
    if the team in within the IETF, Area Directors can edit it. And, if the
    team is within the IRTF, the IRTF Chair can edit it.  Cleaned up the
    checking permission for a user to manage a group. Also, cleanly handle a
    set of group parent links did for a loop. Fixes issue #1915.

  * Added links back to the group pages from the group names on the meeting 
    materials page.

  * Merged in [11083] from stephen.farrell@cs.tcd.ie, with some tweaks:
    Assigned default consensus for IETF stream documents, partly fixing #1403
    - IRTF/IAB may want more, this just does IETF stream.

  * Merged in [11070] from housley@vigilsec.com:
    Only the Secretariat can see the history for parked IPR statements. 
    Fixes issue #1922. 

  * Merged in [11075] from ben@nostrum.com:
    Allow meetings/materials to be queried without an explicit meeting number.
    Fixes issue #1934.  

  * Merged in [11072] from rcross@amsl.com:
    Add ability to enter recording URLs for non working group sessions. 
    Fixes issue #1885.  

  * Merged in [11058] from rjsparks@nostrum.com:
    Allow WG/RG Chairs and secretaries to edit the replaces relationship for
    any document, not just the documents in their groups. Fixes issue #1939.


 -- Henrik Levkowetz   05 Apr 2016 17:54:10 +0000



ietfdb (6.18.1) ietf; urgency=low

  This is a small bugfix release.

  * Added (belatedly) progress bars to some long-running migrations.

  * Fixed a few issues with the docker/run script.

  * Added some debian modules to the docker/Docker file used to generate
    the docker image

 -- Henrik Levkowetz   30 Mar 2016 11:54:31 +0000

ietfdb (6.18.0) ietf; urgency=medium

  **Status update summaries for groups, and yang symbols in yang draft listings**

  This release brings in 2 new features, as follows:

  * Merged in [10969] from rjsparks@nostrum.com:
    Capture 'Status update' summaries for groups that want to provide 
    them. These updates show on the groups charter (or about) page, and in the 
    group history. The most recent update provided before proceedings 
    corrections closing date is included in the group's page in the meeting 
    proceedings. This addresses the majority of #1773 (a ticket entered on 
    behalf of the IESG).  

  * Merged in henrik/6.16.1-pyang-work@10995:
    Added in support for displaying results from selected submission checks 
    as symbols on draft pages and in draft lists.  For now, that means that 
    drafts with yang modules will show either a green or orange yang symbol, 
    depending on the result of the submission yang validation check.

 -- Henrik Levkowetz   28 Mar 2016 20:10:07 +0000

ietfdb (6.17.1) ietf; urgency=medium

  This is a patch release, cleaning the slate before the group status update
  feature.

  * Merged in [10974] from rjsparks@nostrum.com:
    Turn the shepherd management buttons back on for the ISE. Fixes #1925.  

  * Merged in [10973] from rjsparks@nostrum.com:
    Show the drafts from all of a groups sessions on the materials page.
    Fixes #1933.  

  * Merged in [10954] from rjsparks@nostrum.com:
    Remove the stream from the 'howpublished' component of the bibtex
    reference for an rfc. Fixes #1927.  

  * Merged in [10953] from rjsparks@nostrum.com:
    Use the same pattern for extending installed apps with middleware classes.

  * Updated docker-related files based on 6.17.0

  * Put a guard in the yang validator against trying to read a draft which 
    is absent from the staging area, and against unexpecte pyang output.

  * Fixed a problem with paging of api lists, which requires that the 
    ordering keys define a fully deterministic ordering (i.e., there may be no 
    entries with the same sort position in order to make the api paging work).  
    (The admin interface's paging does not seem to have this problem.)  Fixes 
    issue #1930.

  * Added object pk to the cache key.  Fixes issue #1929.

  * Fixed a possible index error in the yang validator checker plugin.

 -- Henrik Levkowetz   28 Mar 2016 15:00:09 +0000


ietfdb (6.17.0) ietf; urgency=medium

  **Speedier REST API and Newest-First Search Result Ordering**

  This is a small combined feature and bugfix release. 

  It introduces better sort capability for document search results which are
  too large to present all search result items on one page.  Since 6.12.0 it
  has been possible to do both reverse and regular client-side sorts on the
  various search result columns when all the search results did fit on one
  page, but for truncated results only ascending sorts has been possible.  For
  the date column in particular, this was mostly less than useful, as it would
  present the oldest results first, rather than the most recent.  This has now
  been remedied; sorting in both directions is available also for large
  document search results.

  This release also contains various speed-related fixes.  Of particular note
  is speed imporvements of heavy REST API queries on the order of a factor 4,
  by adding caching, and speed improvements of a factor 20 for some heavy
  legacy pages, by limiting the rendered content to what is actually needed.

  Details:

  * Tweaked the test-crawler to give the same log line format for exception 
    failures as for regular log lines.

  * Merged in [10932] from rjsparks@nostrum.com:
    Restrict related documents included in the 1wg-charter* views to those
    that update or obsolete WG produced RFCs.  

  * Fixed some typos.

  * Introduced caching for the REST API resources by subclassed tastypie's
    ToOneField in order to provide caching for FK entries.

  * Removed obsolete Submission.idnits_message field.

  * Added an admin model class for SubmissionEvent.

  * Tweaked the mkdevbranch utility script to be able to make a branch for 
    one specific developer on request.

  * Corrected the path to the wrapper for postconfirm used by the draft- 
    and wg-aliases.

  * Added a workaround for thread import lock problem,
    http://bugs.python.org/issue7980.

  * Renamed a bunch of identically named MainTestCase classes.

  * Removed unused idnits_message field on Submission model.

  * Added reverse sort capability to truncated document search views.  Aligned
    the sort direction arrow with that used for the client-side tablesorter
    for untruncated results.

 -- Henrik Levkowetz   16 Mar 2016 15:11:45 +0000


ietfdb (6.16.0) ietf; urgency=medium

  **Yang Validation of Draft Submissions**

  This release adds Yang validation of submitted drafts which contain
  Yang code, through a new plug-in architecture which makes it easy to 
  addo other submission-time checkers and validators in the future.

  It also contains a few unrelated fixes and tweaks, as follows:

  * Fixed pyflakes complaints introduced with pyflakes 1.1.0

  * Refactored draft submission checks so that new checkers can be slotted 
    in through a configuration in settings.py.  Refactored the calling of 
    idnits to use the new API, and added a pyang validation check.

  * Added new entries to requirements.txt: pyang, xym, and jsonfield.  Sorted
    the list.

  * Merged in [10880] from rjsparks@nostrum.com:
    Only show the 'Upload new revision' button when the view will actually
    let you upload a new revision.  

  * Merged in [10862] from rjsparks@nostrum.com:
    Group concluded working groups by area. Fixes #1670.  

  * Merged in [10839] from housley@vigilsec.com:
    Added test for proper eneration of the approval message with and without
    an RFC Editor Note.  Tweaked RFC Editor note display template.

 -- Henrik Levkowetz   05 Mar 2016 15:01:38 +0000


ietfdb (6.15.0) ietf; urgency=medium

  **Session Docs, WG List Archive Tab, RFC Note enhancements**

  This release provides a number of nice enhancements:

  - Documents can now be associated with meeting sessions from the document
    information page by group chairs, secretariat, etc., through an edit button
    by the 'On Agenda' entry in the Stream info section.

  - The group pages now provide links to both the new Mailarchive and the old
    MHonArc list archives (if both exist).

  - The ability to add RFC Editor notes which will be called out on the IESG
    agenda which was introduced in release 6.14.0 has now been made available
    to the IAB, IRTF and Independent streams.

  Detailed changelog information:

  * Merged in [10861] from rjsparks@nostrum.com:
    Data cleanup: place old groups in better states and better areas.  Remove
    a few groups that appear to have never existed (as groups).  

  * Merged in [10857] from rjsparks@nostrum.com:
    Preserve the assumptions in the secr/proceedings code by isolating it from
    drafts now appearing in sessionpresentations.  

  * Merged in [10856] from rjsparks@nostrum.com:
    - Show all sessions associated with a document.
    - Remove the day/seq urls from the materials tree.
    - Allow sessionpresentation.rev to be None, meaning 'current version'.
    - Streamlined workflows to focus on current versions of a draft as a default.
    - Allow adding and editing sessionpresentations when looking at a specific document.
    - Allow adding drafts when looking at a specific session.
    - Add the meeting tab to 'team' groups.
    - Refactored several utility classes and expanded on factories.

    Fixes #1908 and #1910. 

  * Since the list-archive tab on group pages can sometimes be a tab and 
    sometimes a link out, positioning it between the always-tab and always 
    link-out entries seems reasonable.

  * Column text on the archives tab could overlap for some screen sizes.  
    Tweaked the use of bootstrap cell width styles.

  * Merged in [10848] from rjsparks@nostrum.com:
    Correct typo in template. Fixes #1914.  

  * Restricted django-bootstrap3 to versions which work with django 1.7.

  * Merged in [10718] from olau@iola.dk:
    Set daemon = True on the thread in the SMTP test server running while
    running tests. This fixes the annoying problem of the python process
    staying alive after certain bugs in the test invocation or after a
    plain Ctrl + c. 

  * Merged in [10840] from rjsparks@nostrum.com:
    Fill in the list archive tab, showing both mailarchive and mhonarc links
    when they exists. Preserve the immediate link-to-archive behavior for the
    group pages for lists that are not in mailarchive/mhonarc. Provides a url
    at the datatracker for the mailman listinfo pages to use that will show
    both types of archive.  

  * Tweaked the output of the check_referential_integrity script to specify 
    the through table name for m2m relationships.

  * Merged in [10834] from housley@vigilsec.com:
    Allow IAB, IRTF, and Independent streams to use new capability for RFC
    Editor Notes.  Do not display of document shepherd and shepherd writeup
    for non-IETF stream documents.  Do not display IESG information for IAB
    stream documents. 

  * Merged in [10828] from lars@netapp.com:
    IRTF RGs do not have a review period, the email is generated as a courtesy
    to the IAB and IESG.  

 -- Henrik Levkowetz   29 Feb 2016 17:00:45 +0000


ietfdb (6.14.1) ietf; urgency=medium

  This is a small bugfix release.

  * Merged in [10811] from rjsparks@nostrum.com:
    Handle expiring the last call of status change documents. Be more robust
    about errors when expiring last calls. Fixes #1911.  

  * Merged in [10810] from rjsparks@nostrum.com:
    Removed a bunch of redundant displays of the django messages framework
    messages from forms.  

  * Merged in [10809] from rjsparks@nostrum.com:
    Further tweaks to rendering messages from the messaging framework.  

  * Merged in [10806] from rjsparks@nostrum.com:
    Fix a minor typo in the new rfc_editor_note code.

  * Merged in [10804] from rjsparks@nostrum.com:
    Some tweaks to handle rendering django messaging framework messages a
    little better.  

  * Merged in [10803] from rjsparks@nostrum.com:
    Create the approval ballot for charters when the charter enters external
    review (or iesg review if external review is skipped). Fixes #1792.  

  * Moved some production-path checks to the checks module, and fixed up 
    tests which changed some settings without restoring them.

  * Added caching to the smart document lookup view.

 -- Henrik Levkowetz   11 Feb 2016 09:33:25 +0000


ietfdb (6.14.0) ietf; urgency=medium

  **Meetings Tabs on Group Pages**

  This is a mixed bugfix and feature release.  The most notable new features
  are: 

  - The WG and RG pages now have 'Meetings' tabs, which lists regular and
    interim meetings with links to agenda, minutes, and materials.

  - The IESG Telechat Agenda now shows "(Has RFC Editor Note)" after the I-D
    filename if there is an RFC Editor Note associated with the document.

  - Improved calculation of 'modified' timestamps for meetings, to make it
    possible for meeting apps like 'IETFers' to know when to fetch updated
    meeting data without having to poll all sessions and timeslots regularly
    in order to catch changes.

  Here's the full list of fixes and features:

  * Merged in [10780] from rjsparks@nostrum.com:
    Stop making active unknown-email- objects. Mark existing such objects 
    as inactive. Tweak exception handling in submit/utils to make it obvious 
    that the utilities will not change the person an existing Email record is 
    pointing to.  

  * Removed previously mandatory but unwanted '.html' suffixes on meeting views.

  * Merged in [10779] from rjsparks@nostrum.com:
    Added the ability to associate documents with sessions from the document
    main page.  Integrated the group meetings tab with the secretariat meeting
    request and meeting materials pages.  Made better use of bootstrap styling
    for the meetings tab and session details view. 

  * Consolidated multiple group contextmenu buttonlist elements into one.  
    Changed button links into plain links for agenda/minutes/materials -- makes 
    the bage less busy, takes up less room, and lessens the conflation between 
    action buttons and links.

  * Merged in [10770], [10771], [10772], and [10773] from housley@vigilsec.com:

    The IESG Telechat Agenda now shows "(Has RFC Editor Note)" after the I-D
    filename if there is an RFC Editor Note associated with the document.
    This was added to the html and txt versions of the agenda.  It was not
    added to the Secretariat view or the Scribe view of the agenda.

    For transition, when an AD edits the RFC Editor Note, they need to move
    the text from the current writeup into the new field.  Returning documents
    on the telechat agenda seems to be the biggest opportunity for something
    to fall between the cracks.  If an event of type "changed_rfc_editor_note'
    exists, and the string "RFC Editor Note" appears in the text of the most
    recent 'changed_ballot_writeup_text' event, then a message is shown that
    tells the AD to remove the RFC Editor Note from the writeup.

  * Merged in [10765] from lars@netapp.com:
    Correctly identify group work items in announce_to_lists.txt. Fixes #1901.

  * Merged in [10764] from lars@netapp.com:
    Fixed a RemovedInDjango19Warning: The django.forms.util module has been
    renamed.  Use django.forms.utils instead.

  * Merged in [10763] from lars@netapp.com:
    Updated some web assets. Also change bower.json so bower can automatically
    fetch newer minor or patch releases for the assets.  

  * Merged in [10758] from rjsparks@nostrum.com:
    Provide help-text for the new-status field when editing status change
    document relations. Fixes #1898.  

  * Merged in [10757] from rjsparks@nostrum.com:
    Fix from Ole Laursen for the javascript managing status-change document
    relationships. Fixes #1899. 

  * Merged in [10756] from rjsparks@nostrum.com:
    Tweak factories to not randomly create keys that violate constraints.  

  * Merged in [10755] from rcross@amsl.com:
    Change merge-person-records, don't delete User until we handle related 
    objects.   

  * Added a script to disambiguate document timestamps for the last 3 years,
    in order to avoid AmbiguousTimestamp exceptions and HTTP 500 errors for
    certain documents and document envents which fell in the autumn PDT-PST
    duplicate hour.

  * Changed draft submission confirmation to not fail if the login used is
    missing an associated person record.

  * Merged in [10734] from rjsparks@nostrum.com:
    Excluded concluded bofs from the set of groups for which a person can
    pre-approve drafts. Restore AD access to preapproval. (Need to consider
    adding delegate and group secretary access). Fixes #1896.  

  * Merged in [10733] from rjsparks@nostrum.com:
    Show session details for interims as well as ietf meetings.  

  * Merged in [10732] from rjsparks@nostrum.com:
    Filter unused document types from the search form. Fixes #1890.  

  * Merged in [10731] from rjsparks@nostrum.com:
    Addresses issues uncovered by the test-crawler. Adds missing DocAlias
    records for several document types. Creates DocAlias objects when
    createing Document objects for those document types. Identifies places in
    code to touch when we are ready to expose the bluesheets and recording
    document types at /doc/. (The data rows and the content store need work
    before doing so). 

  * Merged in [10728] from rjsparks@nostrum.com:
    Refactored meeting urls file without changing functionality in prepation
    for extending some views to handle interims. Reduced the level of
    redundancy in the way the urls lists were constructed.  

  * Merged in [10726] from rjsparks@nostrum.com:
    Added listing all the area directors back. Related to #1889.  

  * Merged in [10725] from rcross@amsl.com:
    Modified notification text for merges of multiple Person records for the
    same person.

  * Merged in [10723] from rjsparks@nostrum.com:
    Tweaked the rendering of Area Directors in the charter text used in
    new-work, internal review, external review, and group action messages to
    display. Fixes #1889.  

  * Merged [10721] and [10724] from rcross@amsl.com:
    Removed Test watermark from interim meeting index background.  Rewrote
    merge-person-records utility script to handle all related objects in a
    generic manner, remove old User records and handle email primary
    attribute.  Fixes #1627.

  * Merged in [10719] from rjsparks@nostrum.com:
    Added a meetings tab to the group information page. Links to minutes,
    agendas, and materials for each session at each meeting. Improves the UI
    for the session materials page.  

  * Merged in [10701] from rjsparks@nostrum.com:
    Simplified meeting.session_details. Shows all sessions for a meeting on 
    one page instead of having a page per session. Removes the by-date, 
    by-weekday, by-sequence mechanic. 

  * Changed the calculation of 'modified' time for a meeting, and also changed
    the 'updated' field for Session, TimeSlot, and SchedTimeSessAssignments to
    auto-update on any changes to the objects.

  * Enabled resource sorting by modification time for Sessions, Timeslots, and
    Assignments.  Fixed a bug which left Timeslot.duration null in the
    resources.

 -- Henrik Levkowetz   07 Feb 2016 15:42:41 +0000


ietfdb (6.13.0) ietf; urgency=medium

  **Improved NomCom Support**

  This release provides a massive refactoring of the NomCom app, fixing
  a large number of known issues, and adding a long list of refinements,
  improvements and new features.  This whole release is the work of
  rjsparks@nostrum.com.  From the commit log:

  * Merged in [10629] from rjsparks@nostrum.com:
    This set of changes focuses on improvements to the nomcom portion of
    the datatracker. 

    These changes:

    - Simplify the nomcom form for comments. Make it more obvious who
      receives mail when a comment is supplied. Fixes #1849.

    - Simplify the nomcom form for nominations. Provide a primary workflow
      where nominations choose an existing Person, and a secondary
      workflow for nominating new people. 

    - Allow nominees to add a comment when accepting or declining a
      nomination. Fixes #1845.

    - Organize the list of nominees on the feedback page. Fixes #1786 and
      #1809.

    - Simplify the mechanisms used to display feedback message counts.

    - Regroup the feedback view to make it easier to see where to spend
      review effort. Fixes #1866.

    - Capture when nomcom members last reviewed feedback for a given
      nominee. Add badges when new feedback is avaliable. Improve the
      layout of the feedback index page. Fixes #1850.

    - Reorganize the tab navigation on the nomcom private pages. Made it
      more obvious when the chair is doing something that only the chair
      gets to see. Fixes #1788 and #1795.

    - Regroup multiselect options to make classifying pending feedback
      simpler. Make the control larger and resizable. Fixes #1495.

    - Simplify the chair's views for editing nominee records. Replace the
      merge nominee form with a request to the secretariat to merge Person
      records. Fixes #1847. 

    - Added merging nominees to the secretariat's persson merging script. 

    - Show information for concluded nomcoms. Close feedback and
      nomination for concluded nomcoms. Fixes #1856.

    - Improve the questionnaire templates, reminding the nominee that
      receiving the questionnaire does not imply they have accepted a
      nomination. Fixes #1807.

    - Remove the description field from Postion. Simplify the Position
      list and the Position edit form. Make the nomcom pages more self
      documenting. Add a page to help nomcom chiars through setting up a
      new nomcom. Fixes #1867 and #1768.

    - Remove the type from the template pathname for the requirements
      templates. Make the requirements views work for both types plain and
      rst. Changed the default type for new nomcom requirement templates
      to rst.

    - Remove 'incumbent' from the models. Fixes #1771.

    - Adjust the models for Nominee and Nomination to better associate
      Nominee objects with Person objects.

    - Remove BaseNomcomForm and the implementation of custom fieldsets.

    - Replace the custom message framework with the django provided
      messages framework.

    - Improve SearchablePersonField to show the primary email address for
      any search result where a name appears more than once.

    - Add the use of factory-boy for generating test data. Normalize
      management of a test directory for test nomcom public keys.
      Significantly improve test coverage of the nomcom related code.

 -- Henrik Levkowetz   18 Jan 2016 09:05:42 +0000

ietfdb (6.12.1) ietf; urgency=medium

  This is a bugfix release, in preparation for the next feature release.

  * Merged in [10686] from lars@netapp.com:
    Load the js for the timeline as part of the page header, in order to
    (hopefully) avoid page re-render after the json loads. Only apply the
    gradient that signifies document expiration to I-Ds. Suppress duplicate
    x-axis labels (same month).  

  * Merged in [10685] from lars@netapp.com:
    Commit r10578 broke search result table display due to the added column.
    Fixed this.  (Also updated vnu.jar. Unrelated, but wasn't careful when
    committing.) 

  * Merged in [10684] from lars@netapp.com:
    Added a warning about the accuracy of bibliographic information for Legacy
    RFCs. 

  * Added listing of Area Directors and TBD indications which was
    inadvertently dropped from some chartering related emails during
    refactoring.  Also added testing code to verify the email body content of
    some chartering emails a bit more thoroughly.

  * Merged in [10674] from lars@netapp.com:
    More fixes to charter-related emails and some related web templates.
    Mostly focused on supporting the IRTF better, but also removing some
    redundancies (i.e., including group_info.txt instead of duplicating
    something similar.) 

  * Merged in [10673] from lars@netapp.com:
    Fixed the internal review email template and related code to handle IRTF
    RGs better.  

  * Merged in [10672] from lars@netapp.com:
    Fixed a bug that prevented the IRSG from being CC'ed, and correct its
    email address.  

  * Merged in [10671] from lars@netapp.com:
    Fixed a 'RemovedInDjango19Warning' warning.  

 -- Henrik Levkowetz   15 Jan 2016 08:46:18 +0000


ietfdb (6.12.0) ietf; urgency=medium

  **Document timelines, table sorting, iesg agenda page counts, AD position colours**

  This is a combined feature and bugfix release.

  New features from lars@netapp.com:

  - Graphical document timelines at the top of each draft and RFC document
    page, giving an overall graphical view of the history timeline of the
    document and its ancestors.

  - Swift client-side sorting of tables, wherever it makes sense.

  - Document dependency graphs are now provided in svg format by default.
    The old pdf format is still available if desired.

  New features from rjsparks@nostrum.com:

  - Page counts on the IESG agenda and documents pages

  New features from henrik@levkowetz.com:

  - Substantially reworked AD position signal colours, with sidebars, on
    the AD view of the IESG agenda and document pages.

  There is also a long list of bugfixes, provided by rjsparks@nostrum.com,
  lars@netapp.com, housley@vigilsec.com, rcross@amsl.com, and
  henrik@levkowetz.com.  Here are details, extracted from the commit log:
  
  * Don't redirect to proceedings for future meetings which exist in the
    database but don't have a schedule yet.  We want to show tne agenda (even
    if empty) for those.

  * Merged in [10636] from rjsparks@nostrum.com:
    Refactored counting telechat pages to do it only in one place.  Count more
    accurately and make it possible to report more granularly. Added page
    counts to agenda.json.

  * Merged in [10634] from rjsparks@nostrum.com:
    Change the text used in conflict review approval messages. Fixes #1877.  

  * Merged in [10633] from housley@vigilsec.com:
    If the Internet-Draft is not the current revision, set the URLs to 
    settings.IETF_ID_ARCHIVE_URL.  Fixes #1876. 

  * Merged in [10632] from housley@vigilsec.com:
    For documents in the IETF stream, display consensus in the IESG portion 
    of the page.  For documents in other streams, disply consensis in the 
    Stream portion of the page.  Fixes #1560. 

  * Merged in [10631] from rjsparks@nostrum.com:
    Added page counts to iesg/agenda/documents and to the edit telechat date 
    form. Fixes #1772.  

  * Merged in [10630] from housley@vigilsec.com:
    Better handling of consensus for BCPs and  standards track documents.  
    Partial fix for ticket 1560. 

  * Merged in [10624] from rcross@amsl.com:
    ValueError at /ipr/new-specific.  Fixes #1873.

  * Merged in [10623] from lars@netapp.com:
    Simplify the dependency graph generation, by relying on dot to generate
    PDF (and now also SVG) directly. Default to showing SVG from the link on a
    group's page.

  * Merged in [10621] from lars@netapp.com:
    Use js tablesort almost everywhere I thought it would make sense. While I
    touched the pages, I also corrected a few minor HTML nits, capitalization
    inconsistencies and some other minor things.

  * Merged in [10605] from lars@netapp.com:
    Show IDs that expired with a fading gradient and don't extend their box
    after 185 days. Plus a bunch of cosmetic changes. 

  * Rewrote crawl_history() to be easier to read (renaming multiple 
    'retval' variables and other naming tweaks) and made it return distinct 
    revisions without the added uniqueness filtering round from 
    /personal/lars/6.11.1.dev0@10604.

  * Merged in [10591] from housley@vigilsec.com:
    Added a negative test to ensure the RFC Editor is not included on 
    notifications of manual posts by the Secretariat unless the document is in 
    the RFC Editor Queue.

  * Added a directory for staging of manually submitted drafts, instead of
    using hardcoded /tmp/, and added creation and removal of a test directory
    for this.

  * Merged in [10586] from housley@vigilsec.com:
    Added automated tests for the fix for ticket #1751. 

  * Merged in [10569] from housley@vigilsec.com:
    For manual posting of an I-D by the Secretariat, include the RFC Editor 
    on the email message if the I-D is in the RFC Editor Queue. Fixes #1751. 

  * Changed a helper function meeting_updated() to a method on Meeting, and 
    provided it as a synthetic attribute on the /api/v1/meeting/meeting/ 
    endpoints of the JSON API.

  * Merged in [10567] from housley@vigilsec.com:
    For Charters, display the Responsible AD as well as the Charter Edit AD.
    Fixes #1829. 

  * Moved the timeline colouring css to ietf.less, to pick up the brand
    colours directly.

  * Merged in /personal/lars/6.11.1.dev0@10590 from lars@netapp.com,  which 
    brings in a timeline view at the top of document pages.

  * Merged in [10551] and [10553] from lars@netapp.com:
    Added an .editorconfig file, so we can have some consistency in the project.
    (I don't care what settings we use, as long as we all use the same.)  Use
    four spaces as default (Python default, as suggested by Henrik).

  * Tweaked the colours a bit in order to make it easier for ADs to 
    distinguish between the position colours on their personalised versions of 
    iesg/agenda/documents/.

  * Added a coloured bar at the right-hand side of the ADs' view of 
    iesg/agenda/documents/, in order to make it easier to distinguish between 
    the 'yes' and 'no-objection' colour codes.

  * Moved definitions for the AD ballot position's background colours 
    (which shows each AD his own positions by colour coding) from ietf.css to 
    ietf.less, to make it easier to adjust the colours while keeping to the 
    hues of the colour palette.

  * Updated and corrected the description in the README file of of how the 
    contents of the bootstrap/dist/ directory end up in the right place for 
    static serving.

  * Merged in [10540] from lars@netapp.com:
    Update vnu HTML5 validator, and fix an HTML nit it found. 

  * Merged in [10539] from lars@netapp.com:
    Fix CSS/js inclusion of select2 from new static location. (Looks like this
    file was forgotten when we began to use bower.)  

  * Merged in [10538] from lars@netapp.com:
    Fixes for displaying IRTF RGs (call them RGs, and don't show IESG state.) 

  * Merged in [10536] from lars@netapp.com:
    Manage html5shiv and respond.js locally via bower, rather than relying on
    the CDN.  

  * Merged in [10532] from lars@netapp.com:
    Move to bootstrap 3.3.6, with a simpler way to maintain our customized
    version in the future (described in bootstrap/README-DATATRACKER.rst). 

 -- Henrik Levkowetz   13 Jan 2016 10:28:56 +0000


ietfdb (6.11.0) ietf; urgency=medium

  **Liaison Tool Enhancement**

  This release introduces a number of requested changes and enhancements
  to the liaison tool, and a few other fixed:

  * Merged in^/personal/rcross/v6.7.3.dev0@10465, which included 
    [10382],[10464],[10465], introducing a number of usability fixes to the 
    liaison tool, including a new tab for action needed statements and the 
    ability to add comments to liaison statements' history.

  * Merged in [10503] from rjsparks@nostrum.com:
    Allow setting the stream state of a document that has not yet had any 
    stream state set. Fixes #1859.  Candidate for patch. 

  * Updated the docker README.

  * Updated the mkrelease script to send svn checkout links which specify 
    https://, not http.

 -- Henrik Levkowetz   20 Nov 2015 20:25:07 +0000

ietfdb (6.10.0) ietf; urgency=medium

  **Prepackaged Development Environment with Docker; Test Speed-Ups**

  This release provides what is hoped to be a dramatic improvement in the time
  needed to set up an environment for datatracker development, by providing
  scripts to use prebuilt docker images and mysql database tarballs.
  The setup process should now be as easy as:

  1. Install Docker: https://docs.docker.com/engine/installation/
  2. Check out datatracker code: svn co https://svn.tools.ietf.org/svn/ietfdb/...
  3. In your working copy, pull down the database image: docker/setupdb
  4. In your working copy, start the docker container: docker/run

  A more comprehensive setup description is available on the datatracker
  development wiki:  https://wiki.tools.ietf.org/tools/ietfdb/wiki/Docker

  This release also introduces two tweaks to the test suite runner, which should
  reduce the time it takes to run the test suite by around 50%.

  Commit log details:

  * Added a utility script docker/updatedb to download and load a new dump
    into the local database, using 'manage.py dbshell'.

  * Added a utility model to hold information on when a given database dump 
    has been done.

  * Applied test speedup fixes to the testcrawler config, too.  Looks like
    ~15% speed-up of the test-crawler.

  * Added handling for an exception which can occur in bin/mergeready if a 
    branch with merge flags is moved, for example moving it to an attic after 
    merge.

  * Added support for running different containers mapping internal port 
    8000 to different external ports.  Added additional text explaining why we 
    won't run multiple containers from the same svn branch.  Did som default 
    value code refactoring.

  * Added little script to pull down and unpack a copy of the datatracker's 
    mysql database files.

  * Added tweaks to the docker setup to make it work nicely to run different 
    docker containers for different SVN branches.

  * Updated the docker init-script to not re-install MySQL; it can cause 
    more trouble than it might save; added a guard against trying to set up the 
    ietf database if MySQL isn't running; and changed the final working 
    directory to be the same as where the user invoked the 'docker/run' 
    command.  If not started via docker/run, drop into the home directory.

  * Updated docker/run with options to select a non-default 
    docker-repository and docker image tag (which now defaults to the svn 
    branch basename); added handling for missing docker environment variables, 
    and for the docker virtual machine not running.

  * Disallowed Coverage 4.0.2 in requirements.txt, as it is buggy.

  * Removed logging through ietf.utils.log.log when running tests -- should 
    shave another 15% off the test suite run time, cutting the testsuite
    running time in about half compared to earlier.

  * Merged in [10097] from olau@iola.dk, in order to speed up the test 
    suite.

 -- Henrik Levkowetz   14 Nov 2015 00:11:45 -0800

ietfdb (6.9.0) ietf; urgency=medium

  **More IETF-94 Code**

  The release contains additional code from IETF-94 -- I think this is the
  first time we have done two substantial releases based on IETF week
  contributions.  This introduces enhancements and bug-fixes in a number of
  areas, reducing confusion in draft publication-request handling and on
  several web pages, clarifying a number of email notifications, making
  unicode names work in more places, and giving improved secretariat pages:

  * Added a first version of docker image support, with Dockerfile, docker
    init scripts, a 'docker run' wrapper, and database image generation.

  * Merged in [10431] from rjsparks@nostrum.com:
    Reduce confusion around how to send a document from a WG to the IESG
    through additional, restrictive, validation on the stream state editing
    form. Fixes bug #1418.  

  * Merged in [10430] from rjsparks@nostrum.com:
    Reflect the right group type in personnel change messages. Fixes #1746. 

  * Merged in [10429] from rjsparks@nostrum.com:
    Display the To and (if it exists) Cc correctly on the publication request
    form. Fixes #1819.  

  * Merged in [10426] from rjsparks@nostrum.com:
    Fix the links on the state help index page. Fixes #1775.  

  * Merged in [10425] from bartosz.balazinski@interdigital.com:
    Provide information about who has suggested document replaced-by 
    information in the notification email.  Fixes bug #1817.

  * Added some default aliases files to the repository, and updated the 
    aliases settings accordingly.  Appropriate production settings have been 
    added to setting_locals in production.

  * Merged in [10418] from henrik@levkowetz.com:
    Modified the test data to use some AD and WG chair names that contain 
    non-ascii characters, and fixed test issues found.

  * Merged in [10414] from rjsparks@nostrum.com:
    Put possibly replaces sections in the right columns. Fixes #1802.  

  * Keep draft aliases for 2 years rather than 1 year from posting.

  * Merged in [10405] from rjsparks@nostrum.com:
    Addresses an issue where the WG document page would show the same document
    in more than one section. Fixes #1827.  

  * Merged in [10384] from rjsparks@nostrum.com:
    When a group gives a document a new group state (particularly for the
    first time), send a message that says what happened instead of simply
    'Adopted'. Fixes #1830.  

  * Merged in [10383] and [10413] from rcross@amsl.com:
    Updated proceedings permissions.   

  * Merged in [10379] from rjsparks@nostrum.com:
    Change the acronym link on the html agenda page to go to the group's 
    charter page rather than the charter's document page.  

  * Merged in [10378] from rjsparks@nostrum.com:
    Make the internal review message reflect whether this is a new chartering
    effort or a recharter. Fixes #1814.  

  * Added testing of non-ascii unicode names of chairs and area directors.
    Fixed a series of issues with rendering of non-ascii names.

 -- Henrik Levkowetz   08 Nov 2015 09:20:24 +0000


ietfdb (6.8.0) ietf; urgency=medium

  **IETF 94 Code Sprint**

  This release contains the datatracker bugfixes and enhancements from the
  IETF-94 Code Sprint.  This brings many small but useful bugfixes and
  enhancements, as described below. Many thanks to everyone who contributed!

  This release also brings a change which is not a code change, but rather a
  packaging change which has made the question of what the licence is for the
  datatracker code more difficult than need be.  Starting with this release,
  we don't handle version control of the Django framework by including it in
  the repository; we instead version control it throug the requirements.txt
  file.  This lets us be very simple and clear in the LICENSE file which
  covers the datatracker code.

  There are additional code sprint changes expected during the week; they will
  get their own release later in the week.

  Here are details about the changes, extracted from the commit log:

  * Added a direct menu link to tutorials under Other.  Tweaked a divider 
    visibility.

  * Merged in [10363] from rjsparks@nostrum.com:
    email_iana needs to leave address generation to mailtrigger and not try 
    to rewrap the address.  This should be patched into production. 

  * Merged in [10349] from rcross@amsl.com:
    Fixes Ticket #1834.  Sorting slides difficult when there are only two 
    of them.   

  * Merged in [10348] from rcross@amsl.com:
    Add more information to Secretariat session recordings view.   

  * Merged in [10347] from rjsparks@nostrum.com:
    Allow entering more than one email address in addtional cc on the send 
    ballot comments form. Fixes #1811.  

  * Merged in [10346] from suresh.krishnan@ericsson.com:
    Changes to unapproved milestones (e.g. attaching a draft) will not 
    trigger a mail to the WG. Fixes #1818.  

  * Fixed an issue with [10344], where the numberless /meeting/agenda/ 
    would redirect to a non-existing proceedings URL.

  * Fixed a weekday numbering problem in a test.

  * Merged in [10345] from rjsparks@nostrum.com:
    Added an RSS feed for RFCs for use with the digital preservation 
    project.

  * Merged in [10344] from rjsparks@nostrum.com:
    Return more sensible results for agendas for old meetings. Fixes #1062.

  * Merged in [10343] from housley@vigilsec.com:
    Add check to addcomment for WG/RG chair or secretary.

  * Merged in [10342] from rcross@amsl.com:
    The session request form validation needs to check that durations have
    been entered for each requested session.  Fixes issue #1794.

  * Merged in [10341] from housley@vigilsec.com:
    WG/RG chairs and secretaries can add comments to document history; get
    non-active I-Ds from www.ietf.org instead of tools.ietf.org. Fixes issues
    #1702, #1801, #1831.

  * Merged in [10340] from rcross@amsl.com:
    Change liaisons ShowAttachmentsWidget to use href().  Fixes issue #1805.  

  * Merged in [10339] from rcross@amsl.com:
    Secretariat locked out of Session Request Tool.  Fixes Ticket #1791.  

  * Merged in [10338] from rcross@amsl.com:
    Legacy session scheduling view broken.  Fixes Ticket #1806.  

  * Removed our local copy of Django, and added it to the requirements 
    instead.  Updated the LICENSE to match, as we're not carrying along 
    external components in the repository any more.

  * Replaced a remaining use of removed function smtp_error_logging().

 -- Henrik Levkowetz   03 Nov 2015 03:15:47 +0000


ietfdb (6.7.2) ietf; urgency=medium

  This is a maintenance release which does a longtime pending model rename,
  and fixes some other small issues:

  * Merged in personal/henrik/6.7.2.dev0-schemafix [10297] from
    henrik@levkowetz.com:  Renamed class ScheduledSession to the more correct
    (but unfortunately also cumbersome) SchedTimeSessAssignment, and renamed
    reverse relationships involving this class appropriately.  Accompanying
    changes in javascript and templates.  Migrations to match.

  * Changed a field in the nomcom models to not care about the value of
    NOMCOM_PUBLIC_KEYS_DIR in the settings, as this may change between
    developers, and will cause warnings when running migrations otherwise.

  * Fixed a bug in meeting.ajax.constraint_json().

 -- Henrik Levkowetz   27 Oct 2015 15:48:14 +0000

ietfdb (6.7.1) ietf; urgency=medium

  This is a small maintenance release with some bug-fixes and one enhancement,
  a new machine-readable list of IPR declarations per draft, recursively.

  Here are details from the commit log:

  * Changed nomcom.models.Nomcom() to use a FileSystemStorage which doesn't
    record the file system location in the migration, in order to avoid having
    model changes detected when switching from one development path to
    another.

  * Merged in [10265] from rcross@amsl.com:
    Fixed IPR notice addresses formatting.   

  * Added a new machine-readable list of IPR declarations per draft, which 
    also searches through related documents.  Extended make_test_data() with a 
    replaced document for the test draft.

  * Added a switch to the 'test' command, to write short test results to 
    file, changing the default which used to be to always write these.

  * Updated the INSTALL instructions to reflect the new way patch numbers 
    are handled in ietf/__init__.py from the 6.0.0 release.

  * Updated bin/mergeready to work with svn 1.9, which seems to return an error 
    for properties which aren't found.

 -- Henrik Levkowetz   24 Oct 2015 20:29:34 +0000


ietfdb (6.7.0) ietf; urgency=low

  **Smart Document URLs**

  This release introduces smart document URLs, which lets you type in partial
  (but unique) document names in the browser url fields, and be taken directly
  to the matching datatracker document page.  As an example, you can type
  https://datatracker.ietf.org/doc/draft-ietf-core-links and be taken to the
  draft-ietf-core-links-json page.  For drafts, you can snip off the document
  type prefix, too:  https://datatracker.ietf.org/doc/ietf-core-links.

  If the partial string supplied matches more than one document, you'll instead
  get a search page for that name string.

  This works for other document types than drafts, too, but then you need to
  have a match at the start of the document name:
  https://datatracker.ietf.org/doc/conflict-review-cheshire does what you'd
  expect, and so does https://datatracker.ietf.org/doc/status-change- .

  Extensions are split off if supplied, and revisions redirect to the
  appropriate historic page.

  Details from the commit-log:

  * Enhanced the partial-match URL feature introduced in [10158], merged in
    [10253], so that it now handles other document types than drafts/rfcs if
    the partial string has the proper prefix, and also handles partial strings
    which don't match at the start of the document name.

  * Added a new field 'prefix' to DocTypeName -- unfortunate, but necessary 
    since the slugs don't match the document prefixes :-(

  * Merged in [10158] from olau@iola.dk:
    Add a view for /doc/foo-bar-baz that tries to redirect helpfully instead
    of just throwing a 404 in case in an inexact match.  Right now, it knows
    how to do prefix matches and handles revisions and extensions. If it can't
    find a unique match, it redirects to the search page.  Branch 

  * Merged in [10111] from olau@iola.dk:
    This fixes Javascript widgets working with DocAliases, such as the
    replaces field in draft submission, to work better with Javascript
    disabled. It also makes sense from a modelling perspective as the name
    really is a unique key for the alias.

 -- Henrik Levkowetz   22 Oct 2015 14:50:25 +0000


ietfdb (6.6.1) ietf; urgency=low

  This is a combined bugfix and feature maintenance release:

  * Updated the code to use version 4.0.1 of coverage.py for code coverage
    measurements.  Moved the code which starts coverage measurements to
    settings_sqlitetest.py to avoid coverage measurements running when not
    doing tests. Did some additional coveage measurement refactoring.

  * Changed to use a gzipped release coverage JSON file, instead of a plain 
    JSON file, if the name given in settings.py ends in .gz.  Reduces the 
    current release coverage file size from ~1.6MB to ~200kB.  This is a 
    preparation for saving more information in the release coverage file than 
    we currently do.

  * Merged in [10220] from rjsparks@nostrum.com:
    Preserve linefeeds (using class pasted) when viewing nomcom feedback
    messages.  

  * Merged in [10219] from rjsparks@nostrum.com:
    Recognize and remove duplicate addresses while gathering. Fixes bug 
    #1815.  

  * Removed support for perma_fixtures, using the global test fixtures 
    instead.

  * Merged in [10218] from rjsparks@nostrum.com:
    Fixed an initialization problem for the new work message for recharters.  

  * Merged in [10206] from rcross@amsl.com:
    Cleaned up bluesheets upload page.  Added display of uploaded files.   

 -- Henrik Levkowetz   19 Oct 2015 16:26:34 +0000


ietfdb (6.6.0) ietf; urgency=low

  **Mail Sending Triggers**

  This release improves visibility into where and when the datatracker
  sends email. It makes where the datatracker sends email for a given
  action data driven, and it shows where email will be sent for actions
  on documents and groups by adding an 'Email Expansions' tab to group
  and document pages, which shows which email sending triggers exist.

  * Merged in [10186] from rjsparks@nostrum.com:
    This release improves visibility into where and when the datatracker
    sends email. It makes where the datatracker sends email for a given
    action data driven, and it shows where email will be sent for actions
    on documents and groups.

 -- Henrik Levkowetz   14 Oct 2015 19:09:29 +0000


ietfdb (6.5.1) ietf; urgency=low

  This is a minor bugfix release to clear the way for the coming email
  triggers release:

  * Merged in [10159] from rcross@amsl.com:
    Improve secretariat rolodex roles section, sort and identify concluded 
    groups.   

  * Merged in [10156] from rcross@amsl.com:
    Adjust audio file glob pattern.   

  * Added custom style to fix a problem with the navbar search field width 
    on iPads.

  * Fixed incorrect case of some urls in the ptsans stylesheet.

  * Tweaked the mkrelease verbose output.

 -- Henrik Levkowetz   13 Oct 2015 16:53:54 +0000

ietfdb (6.5.0) ietf; urgency=medium

  **Liaison tool rewrite**

  This release merges in work from rcross@amsl.com and esanchez@yaco.es which
  provides a major rewrite of the IETF datatracker liaison support.  It
  introduces a simplified user interface, new improved and reworked data
  models, liaison statement history, improved handling of liaison-related
  emails in many ways, generalisations of liaison sender and recipient
  handling, making the tool much more flexible, improved search, status
  overview and attachment handling, and a greatly expanded test coverage.

  This work was funded by the IAOC.  The statement of work is available here:
  http://iaoc.ietf.org/documents/liaison-sow-04.pdf

 -- Henrik Levkowetz   10 Oct 2015 09:54:56 +0000


ietfdb (6.4.2) ietf; urgency=medium

  This is a bugfix release, with details as follows:

  * Merged in [10144] from rcross@amsl.com:
    Make email address formatting consistent.   

  * Adjusted numerous document action button colours as requested by the 
    secretariat.  Fixes issue #1803

  * Provided a bit more information in rfc-editor sync warnings.

  * Added an eyecatching symbol to indicate bug-reporting, starting out very 
    large, with the intention of reducing the size as people get used to it.

  * Fixed an html issue in the agenda template, and added information to be 
    shown when no WG/RG groups have been scheduled, and the agenda session 
    customization table is empty.

  * Tweaked the anchor ids for agenda timeslots to avoid identical ids for 
    different slots.

  * Added information about which the required submission upload format 
    alternatives are (.txt or .xml).

  * Tweaked the error message for 2 submission form validation errors.

  * Changed the default settings for the test crawler from ietf.settings to 
    ietf.settings_testcrawl.

  * In [10079], the inline template was inadvertently changed from unicode 
    to ascii, which breaks a number of pages.  Fixed this.

  * Merged in [10115] from rjsparks@nostrum.com:
    Remove an extraneous field from the form that lets the nomcom chair paste
    in a questionnaire response.  

  * Merged in [10109] from rjsparks@nostrum.com:
    Make it clearer in search results when one IPR disclosure updates another.
    Fixes #1798.  

  * Fixed a typo in the meeting agenda template.  Fixes issue #1793.

  * Do utf-8 encoding of the fields in the JSON blob for meeting sessions.
    Fixes issue #1790

  * Merged in [10079] from rcross@amsl.com:
    Fixed message formatting in IPR event history.   

  * Merged in [10078] from rcross@amsl.com:
    Resolved issue where partially entered IPR related document info causes
    500 error.  

  * Added a menu item linking to the session request tool.  Fixes issue #1789.

  * Made some submission form validation errors apply to all uploads, not 
    only to .txt uploads.  Tweaked som validation error wordings.

  * Merged in [10062] from olau@iola.dk:
    Fixed a problem with timeslot.location = None in agenda_csv. 

  * Added branch/iola to places checked for 'ready for merge' tags in the 
    commit messages.


 -- Henrik Levkowetz   08 Oct 2015 19:40:04 +0000



ietfdb (6.4.1) ietf; urgency=medium

  This is a minor release with various enhancements and bugfixes:

  * Merged in [10026] from rcross@amsl.com:
    Fixed an issue with the select2-field.js path in templates.   

  * Merged in [10004] from rjsparks@nostrum.com:
    Return new forms instead of validated forms for nomcom nominations and 
    feedback. Fixes #1703.  

  * Merged in [9996] from olau@iola.dk:
    Fixed missing save button when deleting milestones. Fixes #1762. 

  * Merged in [10002] from rjsparks@nostrum.com:
    Added a checkbox to the nomination form to indicate permission to nomcom 
    to share the nominator's name with the nominee.  

  * Added a migration for the Nomination.share_nominator field.

  * Merged in [9989] from rjsparks@nostrum.com:
    Restored the color bands to the email-alias page.  

  * Merged in [9966],[9967],[9968],[9969] from lars@netapp.com:
    Fixed HTML errors.

  * Fixed the day-of-week agenda links to not pull the agenda up so high 
    that the start of the day is obscured by the top navbar.

  * Merged in [9669] from olau@iola.dk:
    Makede the meeting agenda code use the historic info available for groups.
    In the process, added some select_related/prefetch_related code to cut the
    number of database queries in the agenda down from 4000-5000 to about 50.
    Rewritten agenda CSV code to use Python arrays rather than a template for
    improved readability/reuse. Rewritten week view to assemble its data in
    Python. Plus a few other minor cleanups, e.g. lame_description is now
    gone.  Fixes #1088.

  * Added a very simple html version of the json API, to make it easier to 
    explore the api manually.

  * Makede the selenium tests work with statifiles.

  * Improved the verification of submitted file extensions and mimetype.

 -- Henrik Levkowetz   23 Aug 2015 19:41:24 +0000


ietfdb (6.4.0) ietf; urgency=medium

  **Serve static assets via CDN**

  This release adds support for serving static files through a CDN, rather
  than having them served by the datatracker webserver.  This will both
  offload the datatracker webserver and speed up retrieval of static files.

  By default, all external static assets (such as jquery, bootstrap,
  font-awesome, qunit, select2) are served via CDN, while the datatracker's
  own static files are not.  It is expected that the more stable datatracker
  static files will be migrated to be served via CDN also, over time.

  This release also adds support for easy update of external javascript, font,
  and css libraries by means of a new management command "bower_install" which
  makes use of the "bower" package manager.  Use of this management command
  requires that bower be installed on the development platform.  

  When deploying this and following releases, a new action is needed in order
  to make the appropriate static content available for serving via CDN:

  After checking out the release, before creating the symlink to the new release
  in the datatracker deployment directory, it is now also necessary to run
  the "collectstatic" action::

    $ ietf/manage.py collectstatic

  A note about that has been added to the README file in the datatracker
  deployment directory.

 -- Henrik Levkowetz   06 Aug 2015 18:34:36 +0000


ietfdb (6.3.0) ietf; urgency=medium

  **Active area, directorate, team, and area group pages**

  This release provides new group overview pages for active areas, area
  groups, teams, and directorates.  It also improves the error reporting when
  drafts are submitted with invalid XML, providing line numbers and specifics
  for the issues found.  Additionally, there are a few bug fixes.

  * Merged in [9924] from rjsparks@nostrum.com:
    Added views of active areas, area groups, teams, and directorates.  Added
    navigation to those views to the base menus.  Unified the URL patterns
    shared between group/urls and group/urls_info, exposing the same view at,
    e.g., /group/stir and /wg/stir/.  Improved testing, primarily of
    group/info.py 

  * Merged in [9901] from rcross@amsl.com:
    Fixed matching audio file names with rooms.   

  * Provided a document's rfc number (if any) as part of the document fields 
    exposed in the json api.

  * Changed the code for meta-data extraction from xml files to not break 
    if a sought-after element is missing.

  * Updated the meta-data error message to say 'errors ... below' instead of
    'errors ... above', to match the relative placement of text and error
    indications.

  * Improved the error reporting for invalid xml file submissions.

  * Improved the handling of failed xml2rfc conversions when no txt document
    is submitted.

 -- Henrik Levkowetz   01 Aug 2015 14:52:37 +0000


ietfdb (6.2.0) ietf; urgency=medium

  **XML-Only Draft Submission**

  This release adds draft submission metadata extraction from xml files, if
  they are made part of a draft submission, and it permits submission of only
  draft XML files without an accompanying text file, as long as conversion of the
  submitted XML to text format succeeds.  The release also contains numerous
  style, text and bug fixes from Lars Eggert, and improvements to the ability to
  accept draft replacement information at drafts submission time.

  * Merged in [9875] from rjsparks@nostrum.com:
    Improved the form validation for the submission replaces form. Commit
    ready for merge.

  * Merged in [9862] from rjsparks@nostrum.com:
    Ignore suggestions that a draft replaces itself.  

  * Merged in [9849] from lars@netapp.com:
    Made nav title capitalization consistent with other text.  Consistently
    add arrows for tabs that navigate away from the site. Shorten some text. 

  * Merged in [9857] from lars@netapp.com:
    Applied more of the styling from the current meta tables.  

  * Merged in [9856] from lars@netapp.com:
    Styled the metadata tables for groups, documents, etc. like Henrik 
    prefers. 

  * Merged in [9855] from lars@netapp.com:
    Fixed bugs in adding/removing documents to personal ID list. 

  * Merged in [9852] from lars@netapp.com:
    Fixed display of AD and shepherd names, and also fix the respective 
    mailto: links. 

  * Merged in [9851] from lars@netapp.com:
    Fixed the logic, so that if there are no matches and we don't want a warning
    saying that, there is also no empty table being produced. 

  * Merged in [9850] from lars@netapp.com:
    Moved state length notification after RFC Editor status (looks better). 

  * Merged in support of xml-source only drafts submissions from 
    personal/henrik/submitxml/.

  * Merged in [9843] from lars@netapp.com:
    Converted two remaining protocol-relative URLs to https.  

 -- Henrik Levkowetz   25 Jul 2015 16:32:25 +0000


ietfdb (6.1.0) ietf; urgency=medium

  **IETF 93 Code Sprint**

  This release contains the datatracker bugfixes and enhancements from the
  IETF-93 Code Sprint.  It contains a lot of HTML validity fixes which
  makes our HTML even cleaner, fixes a number of issues, and introduces
  support for providing information about draft replacements at draft
  submissions time.  Many thanks to everyone who contributed!

  * Merged in Ole's submit-time draft replacement information work, as 
    tested and updated by Robert and Adam.

  * Added escaping of changelist content for the /release/ pages.

  * Merged in [9821] from rcross@amsl.com:
    Allow Secretariat to submit drafts during blackout period.  Fixes #1755.  

  * Merged in [9813] from rjsparks@nostrum.com:
    Added navigation to the new secretariat agenda tools. Changed the buttons 
    at the top of the agenda.html page to links.

  * Merged in [9812] from suresh.krishnan@ericsson.com:
    Added code to inform ADs, chairs and delegates of WG personnel changes.
    Fixes #1310.

  * Merged in [9809] from lars@netapp.com:
    Added some whitespace to make wrapping AD names in ballots a bit easier to
    read. 

  * Merged in [9806] from lars@netapp.com:
    Fixed a longstanging formatting issue with the ballot popup.  

  * Merged in [9803] from lars@netapp.com:
    Converted a few more URLs from http to https.  

  * Reverted some look-and-feel changes that came in with recent document
    metadata html and python refactoring, which undid fixes related to issues
    #1659 and #1663.

  * Merged in [9802] from bartosz.balazinski@interdigital.com:
    Fixed references (relative to absolute) in template
    ietf/templates/group/active_areas.html, fixed build failure on unused
    import in file 0006_auto_20150718_0509.py, 

  * Merged in [9733], [9735], [9737], [9738], [9766], [9774], [9778], [9781],
    [9783], [9784], [9789] and [9800] from lars@netapp.com: Fixed a bunch of
    HTML validation issues identified by test-crawl --validator-nu. 

  * Merged in [9796] from suresh.krishnan@ericsson.com:
    Don't allow submission for drafts that have been replaced. Fixed #1619. 

  * Merged in [9792] from jmh@joelhalpern.com:
    Removed misleading back buttons from document metadata modification pages.
    Fixes #1671.  

  * Merged in [9788] from rcross@amsl.com:
    Have RFC sync change the IESG state of draft to RFC Ed Queue when draft 
    appears in queue.  Fixes #1750.   

  * Merged in [9782] from lars@netapp.com:
    Made title capitalization consistent with other pages.  

  * Merged in [9779] from lars@netapp.com:
    Removed the code that used to calculate table_rows, now that the HTML
    doesn't use it anymore.  

  * Merged in [9775] from rcross@amsl.com:
    Added proposed groups to Blue Dot Report.  Fixes #1747.   

  * Merged in [9765] from lars@netapp.com:
    Added option to crawl as a logged-in user (--user).
    Add --pedantic option for vnu crawl, which stops the crawl on (most) errors.
    Randomized the order in which URLs are crawled, so that repeated crawls don't
    hit the same URLs in the same order. 

  * Merged in [9736] from lars@netapp.com:
    Updated the README now that the facelift has happened, and removed the
    outdated TODO.  

  * Merged in [9726] from lars@netapp.com:
    Added HTML5 validation based on validator.nu to test-crawl, with the
    --validator-nu option.

 -- Henrik Levkowetz   21 Jul 2015 10:13:10 +0000


ietfdb (6.0.4) ietf; urgency=medium

  This is a minor release which provides some style tweaks, the ability to
  set a user preference to not show the left-hand menu, and a substantial
  number of bugfixes:

  * Merged in [9672] from rjsparks@nostrum.com:
    Restore the hash to the customized ical link.  Fixes #1732.

  * Merged in [9671] from rcross@amsl.com:
    Convert PPT materials to PDF.  Fixes #1724.

  * Merged in [9668] from rjsparks@nostrum.com:
    Draw the right number of days in the secretariats room view.  

  * Merged in [9666] from rcross@amsl.com:
    Area names hardcoded in Proceedings app.   Fixes #1723.

  * Merged in [9663] from rjsparks@nostrum.com:
    Try a different way of wrapping ballot/comment fields and shepherd 
    writeups. Related to #1673.

  * Merged in [9662] from rcross@amsl.com:
    Add Message objects to merge-person-records.   

  * Merged in [9654] from rjsparks@nostrum.com:
    Add searches across the web-based archive tool to the document's page. 
    Collapse all the searches, including ARO for ADs, under a dropdown. 
    Partially addresses #1701.  

  * Merged in [9652] and [9653] from rjsparks@nostrum.com:
    Provide color for ART.

  * Merged in [9651] from rjsparks@nostrum.com:
    Adds a graphical overview of each day by room for the secretariat to 
    assist with scheduling additional meetings.  

  * Added preference editing support for the left_menu preference setting, 
    and refactored the preference handling code substantially.  Related to 
    issues #1659 and #1663.

  * Merged in [9650] from rjsparks@nostrum.com:
    Set the parent for newly created RGs. Be more robust if an RG has no 
    parent. Test creation of an RG. Fixes #1718 and #1719.  

  * Merged in [9649] from rjsparks@nostrum.com:
    Provide a session type for sessions created to say a group is not 
    meeting. Add a test for the no_meeting view. Fixes #1720.  

  * Merged in [9641] from rjsparks@nostrum.com:
    Make parsing IANA mail for comments more flexible.  

  * Merged in [9639] from rjsparks@nostrum.com:
    Only show document versions for positions when the position is on an 
    older version. (Reapplying earlier fix). Fixes #1711.  

  * Merged in [9637] from rjsparks@nostrum.com:
    Color agenda/documents rows with position taken when viewing as an AD. 
    Fixes bug #1679.  

  * Merged in [9626] from rjsparks@nostrum.com:
    Restore the discuss-box hiding feature when a position is not blocking. 
    Fixes bug #1688.  

  * Additional tweaks to document lists, trying to reduce the number of 
    lines consumed by the status column.

  * Reduced the submenu line-height somewhat.  Related to issue #1708.

  * Fixed incorrect output of unmatched 
closing elements, left after [9643]. * Added a preference to not display the left-hand menubar. Addresses issues #1659 and #1663. * Tweaked the document list display slightly, to sqeeze in a little bit more info on a page. Addresses issue # 1663. * Wrap liaison statements on 78 characters rather than 71. -- Henrik Levkowetz 23 Jun 2015 20:03:08 +0000 ietfdb (6.0.3) ietf; urgency=medium This release provides the capability to manage and graphically schedule additional meeting types, including leadership meetings. It also fixes a number of issues, mostly related to the recent facelift. Details: * If the author of a nomcom nomination is unknown, use 'Anonymous' and no email address in outgoing messages, instead of '$author'. * Merged in [9619] from rjsparks@nostrum.com: Copy the RFC Editor on new version messages for drafts in any stream if the RFC Editor is already working on the draft. Fixes bug #1700. * Merged in [9618] from rcross@amsl.com: Make proceedings generation more robust. * Added a missing html doctype element for a popup page. * Don't show the unused 'author' field in the public nomcom feedback form. Fixes issue #1699. * Removed inappropriate group actions and information from external group info pages. Fixes issue #1651. * Removed a number of action buttons which aren't relevant for RFCs. Fixes issue #1698. * Fixed a wrong row count for stream meta-info when displaying RFCs. Also fixed a 'missing columns' html warning. Fixes issue #1697. * Merged in [9608] from rjsparks@nostrum.com: Show leadership when and where mail was sent at the time it is sent. * Fixed a problem with nomcom classification forms showing too many fields. * Tweaked the missing id submission revision message to work also with non-ascii characters in the draft name. Changed the disallowed character error message to be more useful by providing the found document name and byte codes for the disallowed characters. * Updated the api resources file with new meeting model fields. * Merged in [9604] from rcross@amsl.com: Updated the IAOC email address in Announcement app. * Merged in [9603] from rjsparks@nostrum.com: - Added functionality which allows the secretariat to manage more meeting types, including leadership meetings. - Backfilled those types of meetings from IETF91 and IETF92. - Addressed several facelift issues in the meeting application. * Merged in [9595] from rcross@amsl.com: Fixed an issue where an authorized individual was unable to add an incoming liaison. Fixed a problem with the incoming liaison form requiring a deadline date for information only statements. * Fixed an issue where the https: schema inadvertently had been included in RFCDIFF_PREFIX, causing duplicate schema specifications in some places. Changed name to RFCDIFF_BASE_URL and cleaned out the duplicate schema specifiers. * Added a check for model changes which haven't been captured in migrations to the release script. * Added 5 migrations for changes in model field help-text strings which changed in the facelift. Also fixed the expression of the help text for NomCom.reminder_interval so the text itself doesn't contain quite as much whitespace. * Aligned the table header fields with the table columns in the doc history page. Marked the action text safe so as to make embedded links show up as links. * Reduced the max height of submenus to avoid them extending below the screen bottom edge when used from the top navbar (which won't scroll). The new value works on 1024x768 screens for the current areas. -- Henrik Levkowetz 13 May 2015 17:23:41 +0000 ietfdb (6.0.2) ietf; urgency=medium This is a minor release, containing a few new development support features, HTML cleanup, and good number bugfixes from lars@netapp.com, rjsparks@nostrum.com, rcross@amsl.com and henrik@levkowetz.com * Added html validation to the test crawler; it will now report html which fails validation with 'WARN' indications. Reorganized the code somewhat, collecting functions, globals, etc. in groups. * Fixed all cases of invalid html found by the test crawler. * Reduced the padding for compact tables. This hopefully fixes issue #1689. * Addressed another bug related to using SearchablePersonsField to choose Person objects, rather than Email objects. If one uses this for Person objects, then object.address isn't going to be terribly useful in the form ,,:-). Addresses issue #1684, #1685 and #1686. * Provided the IRTF chair with access to the session request tool. Fixes issue #1687. * Removed emtpy items from the must-be-there list before handing the list to Person.objects.filter(pk__in=...). Fixes issues #1684, #1685 * Merged in [9558] from rcross@amsl.com: Eliminated MultipleObjectsReturned when editing draft. Fixes issue #1678. * Merged in [9554] from rcross@amsl.com: Fixes #1692. Drag-and-Drop slide re-ordering no longer works in secr/proceedings. Consolidate / update JQuery-UI. * Merged in [9548] from rjsparks@nostrum.com: Allow IANA to switch to (BEGIN IANA COMMENTS) at their leisure. Make sure the captured events are obviously from IANA. * Merged in [9546] from rcross@amsl.com: Fixes alignment of ballot position headers in IESG agenda moderator package. * Merged in [9541] and [9542] from rjsparks@nostrum.com: Quit putting the group email list address in the initially generated Notify field. Updated the tests accordingly. * Merged in [9527] from rcross@amsl.com: Made it possible to add minutes / agenda after deleting them. Fixes issue #1680. * Updated a bunch of links from http: to https: based on a patch from lars@netapp.com. * Merged in [9525] from lars@netapp.com: Make the menu bar search field appear on slightly smaller screen widths. * Merged in [9524] from lars@netapp.com: Add some shim js libraries for IE8 and earlier (see http://getbootstrap.com/getting-started/#template) Fix HTML structural errors in the template. Wrap some HTML comments into Django comments, so they don't get sent to the client. * Merged in [9519] from rcross@amsl.com: Fixed an issue where RelatedObjectDoesNotExist would be raised when User has no Person. Fixes issue #1676. * Merged in [9518] from rjsparks@nostrum.com: Allow an AD to jump straight to the ballot editing page by right-clicking any ballot grid. Fixes #1669. * Merged in [9516] from rjsparks@nostrum.com: Don't show needed positions for closed ballots. Fixes #1622. * Merged in [9514] from rjsparks@nostrum.com: If the name attached to an additional-info URL for a group is blank, show the URL instead. Fixes #1523 and #1657. * Merged in [9513] from rjsparks@nostrum.com: Don't show concluded groups in the community list section of the navbar. Fixes bug #1652. * Removed local copies of html5lib and tastypie, and updated requirements.txt to include them. Removed typogrify from the requirements list; it isn't used. * Added pip and setuptools, required in virtualenv, to requirements.txt, in order to simplify buildbot testing of package installation and version testing. * Added copyright lines and template origin to the html templates. * Added support for an 'origin' template tag which will insert the name of the template file (within a html comment) into the page content when TEMPLATE_DEBUG is True; with the purpose of more easily being able to identify the templates from which page content comes. -- Henrik Levkowetz 27 Apr 2015 08:56:36 +0000 ietfdb (6.0.1) ietf; urgency=medium This is a bugfix release which irons out some wrinkles discovered after deployment of 6.0.0. * Merged in [9505] from rjsparks@nostrum.com: Added a checkbox to cc the group list address on ballot positions if a document belongs to a group. Add better tests of the checkboxes on that form. * Provided a different shortcut icon for the datatracker when run in development or test mode. Fixes issue #1667. * Added back the development mode header on the frontpage. * Adapted session_draft_list() code to handle the case when there is multiple agendas for a given group acronym. Fixes some server 500 results when trying to get pdf bundles for the plenary sessions for ietf 71. * Put back the schema specifier for IANA and RFC-editor URLs -- they are needed in parts of the code. * Put back the value attribute for the name/value pair of many input and button elements which lost the value attribute in the conversion, in order to let the backing form code determine which button was pressed. Fixes issue #1668. * Shaved off some more vertical space in the document tables. Builds on [9494], addresses #1660, #1663, #1665. * Introduced a couple of changes to the document list row format to make rows take up less vertical space: Moved the page count in under the date, so it won't add vertical space, and made shepherd email addresses break across lines if needed, instead of squashing the column widths of the other columns. * Made it clearer on the document iesg review page and the ballot popup page which ADs mentioned are ex-ADs, by adding parentheses in addition to the dimmed text. Fixes issue #1664 * Removed all subsection horizontal lines from the document meta tables, on suggestion from mnot@pobox.com. Addresses issue #1659. * Added a missing templatetag library load instruction for bootstrap3. Addresses issue #1662. * Replaced google-served fonts with self-hosted ones. After a testing period with the current 'access plus 4 hours' Cache-Control setting, we should probably increase the cache control for external static files. -- Henrik Levkowetz 15 Apr 2015 19:24:15 +0000 ietfdb (6.0.0) ietf; urgency=medium **Facelift using Bootstrap** During more than a year, from July 2013 to late 2014, Lars Eggert, , has worked intensively on a major facelift to the datatracker, porting the GUI to Bootstrap. The work took 287 separate commits , and comprised changes to 1016 different files. This work has turned the IETF Datatracker website into a responsive website which support use on a much larger variety of devices, from small mobile devices to desktops. The work relies heavily on the capabilities of Bootstrap, and continues to use the Django framework which the datatracker has been build on since version 2.00. Additional page conversion work has been done by Ole Laursen, with final style tweaks, bug-fixes and adaptations by Henrik Levkowetz in order to take care of some remaining rough edges and give it a distinct colour palette and a matching selection of fonts. The fonts, PT Serif for body text, PT Sans Caption for headers, PT Sans for menus, and PT Mono for monospaced documents are from ParaType, and are served by Google Fonts. -- Henrik Levkowetz 13 Apr 2015 20:31:48 +0000 ietfdb (5.13.1) ietf; urgency=medium This is a bugfix release, to have a clean slate before merging in the Bootstrap facelift for 6.0.0. Details: * Merged in [9428] from rjsparks@nostrum.com: Properly mark (and test) older ballot comment and discuss text after a new revision is submitted. Fixes bug #1656. * Merged in [9426] from rcross@amsl.com: Add several 'From' options for IAD user of announcement tool. * Merged in [9375] from rjsparks@nostrum.com: Put old style slides directly into archived. Migrate IETF92 materials to match. * Merged in [9351] from rjsparks@nostrum.com: Removed sessonly, replacing the idea with a separate State. Add tests checking how materials show on agenda views. * Fixed style attributes which resulted in red text on red background for some error messages * Buildbot changes: Separated out the schedulers for trunk, personal/\*and branch/\*. Corrected regex patterns which extract unittest details. Added a first tentative email notifier. Added ForceSchedulers, in order to be able to force builds. * Changed all explicitly set HttpResponse content_types to specify charset. Django sets charset if you don't specify a content_type; if you specify one you also must add a charset specification (if you want one). Fixes issue #1647. * Fixed a typo in the sort key generation for the sort on ipr count in document search results. * Updated release data and mkrelease support, which calculates the release coverage snapshot without invoking tests that developers won't ordinarily be able to run on their laptops/work machines. -- Henrik Levkowetz 10 Apr 2015 13:44:05 +0000 ietfdb (5.13.0) ietf; urgency=medium **IETF 92 Code Sprint** This release contains the datatracker bugfixes and enhancements from the IETF-92 Code Sprint. It improves the coverage of the test suite, and also fixes a number of issues. Many thanks to everyone that contributed! * Merged in [9330] from rcross@amsl.com: Cleanup legacy IPR models. Fixes ticket #1626. * Merged in [9326] from rjsparks@nostrum.com: Test coverage improvement for group material management. * Fixed a problem in Document.meeting_related(), and fixed a number of tests which broke when slide objects started to return True to meeting_related() without being related to a session. * Merged in [9319] from kivinen@iki.fi: Added test cases for cookie code. This will test all the cookie setting code, and also adds test for draft for include_text and full_draft cookie checking. * Merged in [9317] from jmh@joelhalpern.com: Added some nomcom test cases. * Changed the MEDIA_URL to use https instead of http, to be in line with other efforts to move to https in general. * Merged in [9316] from willem@nlnetlabs.nl: Test fetching of wg and rg document dependency graphs. Also added conditional running of these tests, as they depend on the availability of the dot, unflatten and ps2pdf binaries, which may not be available on all developers' systems. * Merged in [9309] from tjw.ietf@gmail.com: Fixed #845. Commit read for merge. * Merged in [9305] from willem@nlnetlabs.nl: Callback API test code paths * Merged in [9307] from rcross@amsl.com: Improved test coverage of secr.drafts. * Merged in [9306] from rjsparks@nostrum.com: Added pre-ads to .ad aliases. Keep draft aliases for drafts that have become RFCs for some time. * Merged in [9303] from rjsparks@nostrum.com: Cached the wg-charter*txt pages for a time since they are very heavy to generate. -- Henrik Levkowetz 25 Mar 2015 19:07:16 +0000 ietfdb (5.12.3) ietf; urgency=medium This is a minor bugfix release which also addresses a number of testing issues, in preparation for the IETF-92 sprint on Saturday. * Merged in [9242] from rjsparks@nostrum.com: Restores add-to-community-list functionality to several pages. Fixes #1601. * Added a --logfile switch to the test crawler, in order to be able to control whether a logfile should be used or not. It's not particularly hepful when running on a buildbot slave, which catches stdout anyway. * Updated the nomcom tests to use temporary test directories for data, instead of the regular production settings in settings.py. * Updated the mergeready script to check if the 'test:unittest' property has been set to 'passed' on a changeset marked 'ready for merge'. * Introduced a more correct implementation of the workaround to skip migrations during test, which also points at the code that makes this work at the moment. * Tweaked the settings_sqlitetest.py file, which normally is used during test suite runs, to avoid a minutes-long stepping through migrations for each test run. This makes it much more workable to run individual tests. * Added the buildbot config file to the repository. Deployment path: trac.tools.ietf.org:/home/buildbot/masters/datatracker/master.cfg * Added exception capture and error message output to the coverage_changes management command when the --release switch to specifies a release for which there isn't any data. Also tweaked the diff output for code coverage changes. -- Henrik Levkowetz 19 Mar 2015 23:55:45 +0000 ietfdb (5.12.2) ietf; urgency=medium * Added test coverage data to the release pages if available for the shown release. Added saving of html pages for the code coverage to a directory in the static files area. If a code coverage report is available, a link to it will be shown on the release page of the current release. Renamed some setting variables related to test coverage to be more explicit and precise. * Changed the handling of some test directory creation and removal code, to be more consistent. Fixed a problem with a test that didn't create and remove a test directory which it used. * Merged in [9185] from rcross@amsl.com: Add DocEvent and SubmissionEvent to merge-person-records. * Added tests for the presence of a VTIMEZONE section in generated agenda iCalendar files. * Started the code coverage measurements earlier, in order to make the apparent code coverage of model files less confusing. * Added a fudge factor to the coverage test, in order to make it easier to do minor code changes without slipping under the coverage of the latest release. * Made the test runner try multiple port numbers for the SMTP server, in order to handle the case where multiple test suites are in progress on the same host (which can happen when multiple buildbot slaves are running tests at the same time). * Fixed a small issue with the filter expression to select ADs for active groups. -- Henrik Levkowetz 15 Mar 2015 22:04:14 +0000 ietfdb (5.12.1) ietf; urgency=medium **Extended test coverage support, active email address fixups** This is a minor release which contains a number of bugfixes, and also introduces additional test coverage measurements and support functionality. It further contains two migrations which fixes a set of inactive email addresses which most likely should have been active, and notifies the owners about the change. This means that when running migrations as part of this release, about 1000 notification emails will be sent out from the datatracker. Detailed changes: * Don't set email addresses which are created when a draft is submitted to inactive any more. We now have a 'primary' field to indicate which email address is the primary one when a person has multiple registered addresses, so we don't have to rely on the timestamps on the email address objects to determine the primary address. * Added a migration which changes the active bit from False to True to all email addresses associated with active drafts, and sends out notification emails about this. * Added a managment command to show the difference in coverage data between the latest release and the latest test run, and a test for the same. * Added a login requirement for the full document and group email alias pages, but kept the individual group and document email-alias pages visible without login. Added testing of login redirects for the full email alias lists, and reordered the test sequence within the test methods appropriately. * Made sure that Email.__unicode__() will return a string even if address is None. Fixes an exception on deleting an email address for a Person object in the admin interface. * Added per-app coverage measurements, to make the numbers shown when not running the full tests suite a bit more meaningful. * Changed the nomcom.forms.FullFeedbackFormSet to use modelformsets_factory() instead of direct subclassing, in order to avoid a crash when using the form, caused by a missing instance attribute. * Clarified the meaning of checked/unchecked boxes in front of the email addresses on the account profile management page. * Merged in [9143] from rcross@amsl.com: Add AG Secretary to Proceedings authorized roles. * Merged in [9142] from rjsparks@nostrum.com: Avoid creating blank line before headers on IPR notification email. Fixes #1609. * Merged in [9141] from rjsparks@nostrum.com: Fix ordering issue on agenda.html. * Added a new field 'primary' to the Email model, added a matching migration, and a data migration to set primary fields to match the way a primary address is chosen today. * Added a migration which captures the changed information for the idsubmission-cutoff-related fields of Meeting. * Removed the obsolete field Group._ad, and added a migration for the change. * Added exception handling in tastypie for a case which can occur if one tries to filter by regex on a FK. * Turned the api.py file into a module. Moved the makeresources management command to the api module. Added some api tests. Added crawling of api files to the test-crawler. Adjusted some resource files discovered by the test suite and test-crawler. Removed a bunch of empty model files. -- Henrik Levkowetz 11 Mar 2015 12:22:03 +0000 ietfdb (5.12.0) ietf; urgency=medium **Test coverage tests** This release provides measurement of how much of the code is being exercised by our test suite, by integrating the 'coverage.py' tool in the test suite itself. The percentage of the code excercised by the test suite is compared with the figure from the latest release, and a lower coverage constitutes a test failure. This way it shouldn't be possible to add new code without also adding tests, without getting a test suite failure. This should encourage gradually increasing levels of test suit coverage :-) Additionally, similar measurements and comparisons have been added for template and URL coverage of the test suite; these also have been implemented as tests, and sinking coverage of templates or URLs in the test suite will result in tests failures, in the same way as for code coverage. The results of the test suit coverage of code, templates, and URLs is saved to disk, in order to make the coverage details available for inspection. Coverage data per source file/template/URL is available in json format in a file 'coverage-latest.json' in the working directory, and more detailed per-line code coverage data is available in a file '.coverage', which is readable by the standalone 'coverage' program from 'coverage.py' from http://nedbatchelder.com/code/coverage/. * Merged in personal/henrik/v5.11.1-dev0@9103, which provides new tests for the test suite's code coverage, template coverage, and URL coverage. -- Henrik Levkowetz 26 Feb 2015 10:08:14 +0000 ietfdb (5.11.2) ietf; urgency=medium This is a minor release with a few additional bugfixes: * Merged in [9121] from rcross@amsl.com: Resolved some issues with the proceedings progress repport. * Merged in [9099] from rcross@amsl.com: Added an ietf/bin script, merge-person-records. * Merged in [9097] from rcross@amsl.com: Editing session request causes KeyError. Fixes #1605. * Changed the handling of the group edit form so as to generate a ChangeStateGroupEvent for state changes, instead of a generic GroupEvent of type 'info_changed'. -- Henrik Levkowetz 25 Feb 2015 09:06:43 +0000 ietfdb (5.11.1) ietf; urgency=medium This is a minor release, providing bugfixes and some enhancements. Worth mentioning is pages which lets one view and search the draft- and wg- email alias lists, the ability to control draft submission cutoff individually per meeting, improved presentation of the submission cutoff times, and release content annotations for major releases back to 2010 on the release overview page. Details below: * Added a slightly tweaked version of timedelta, in order to support handling of TimedeltaFields. * Made the selector for Agenda.groups() match that of Agenda.area_list() by adding parent__isnull=False. Without this, the two won't match if split by area. Fixes issue #1607. * Added 4 new fields to the meeting class, to hold draft submission cutoff information for the meeting. On request, changed the presentation of the cutoff times to show the last submission time, rather than the beginning of the cutoff time. Changed the cutoff hour format to support full timedelta information, not just a given hour (this was necessary in order to be able to set the requested 23:59:59 submission stop time). * Merged in [9083] from rjsparks@nostrum.com: Added dealing with /wg/foo/email-aliases, /wg/email-aliases, and similar for /rg. Added an initial test suite for all invocations of the email_alias views. * Merged in [9070] from rjsparks@nostrum.com: Adds pages to view the draft and group email aliases, either as a whole, or per document or group. * Added newly generated .ics timezone snippets, from http://www.ietf.org/timezones/tzdata-latest.tar.gz. This updates the .ics files to use timezone information current as of 13 Feb 2015. * Modified the vzic makefile to generate new zoneinfo data by fetching the latest tzdata file from ietf.org/timezones/tzdata-latest.tar.gz and running vzic to update the .ics files as needed. * Don't create empty Alias records. Fixes issue #1603. * Added a guard against crashing because of missing timeslot location or time in check_audio_files(), which is called by create_proceedings() after changes to meeting materials. Fixes issue 1604. * Added back a functioning get_fieldsets() method, which was removed instead of corrected in the Django 1.7 upgrade. * Added a missing table column to the WG document page for the case when the user isn't logged in. Addresses issue #1601 (but add links in the column are still missing). * Added title annotations to major release entries in the changelog back to 2010, and changelog parsing and release page support for the same. -- Henrik Levkowetz 23 Feb 2015 20:49:11 +0000 ietfdb (5.11.0) ietf; urgency=medium **Django 1.7** This release upgrades Django from 1.6.4 to 1.7.1, and tastypie from 0.11.1 to 0.12.1. It changes the database migrations infrastructure from that provided by "south", to the builtin replacement newly introduced with Django 1.7. There are also a number of changes which are required by the upgrade, in order to make things work as expected, and some fixes to bugs revealed by the improved infrastructure provided by Django 1.7. Deployment note: When deploying this, migrations need some extra care, as the new-style migrations which are part of the release should not actually be run -- they are there to provide a status snapshot as a basis for future migrations. In order to handle this, please use the --fake option when running migrations for this particular release: $ ietf/manage.py migrate --fake -- Henrik Levkowetz 09 Feb 2015 20:17:05 +0000 ietfdb (5.10.3) ietf; urgency=medium This is a minor bugfix release in preparation for the upcoming upgrade from Django 1.6.0 to 1.7.4 * Merged in [9007] from rjsparks@nostrum.com: Add the csrf_token to the form for editing document titles. Fixes #1597. * Merged in [9005] from rcross@amsl.com: - Fixed the group link on the standalone Interim Meeting Proceedings directory page. Also removed some dead code. * Removed the unnecessary get_and_create() of community.model.DisplayConfiguration on community page GET. * Made the cookie handling for the 'new_enough' and 'expires_soon' cookies insensitive to nonnumeric values. -- Henrik Levkowetz 08 Feb 2015 16:40:01 +0000 ietfdb (5.10.2) ietf; urgency=medium * When draft email aliases are generated, the content of the doc.notify field is used to generate the $draft.notify alias, and is also included in the $draft.all alias. If the notify field contains either the .notify alias or the .all alias, this can create a mail loop. Changed the alias generation code to expand (or ignore, for .notify) aliases found in the notify field, and changed the code which fills in the notify field with a default value to insert the author, ad, and shepherd aliases instead of the .all alias. * Merged in [8970] from olau@iola.dk: Enabled support for a custom settings file for the test crawler and added a simple settings file that enables caching to speed up the crawl (shaves ~35% off most pages, it seems) * Merged in [8961] from rjsparks@nostrum.com: Avoid an issue with python.email breaking To header field values that it has to encode in bad places. Fixes #1589. * Merged in [8949] from rjsparks@nostrum.com: Improvements to the fix to #1592. * Merged in [8948] from rjsparks@nostrum.com: Capture out-of-area ADs in draft and group aliases. Fixes #1592. * Merged in [8924] from rjsparks@nostrum.com: Restrict the gathering of ads for past meetings to groups that are areas. * Merged in [8923] from rjsparks@nostrum.com: Improve the approval mail contents concerning IESG contact members. Fixes #1588. * Merged in [8922] from rjsparks@nostrum.com: Fix needed-to-pas calculation to use new representation of area directors. Fixes #1587. * Merged in [8903] from rcross@amsl.com: Fixed a logging problem in IPR mail handling. -- Henrik Levkowetz 05 Feb 2015 18:33:18 +0000 ietfdb (5.10.1) ietf; urgency=medium This is a release containing a large number of small fixes and enhancements, as follows: * Merged in [8879] from rcross@amsl.com: Grant hte IRTF Chair access to proceedings. Fixes #1580. * Merged in [8870] from rjsparks@nostrum.com: Inform the secretariat when a duplicate Alias.name is created that isn't already a duplicate Person.name. Improve the message that's sent when either duplicate Person or Alias names are detected. * Merged in [8861] from rcross@amsl.com: Changes to allow upload of bluesheets in materials upload page. Primarily for use with Interim meetings. * Merged in [8856] from rjsparks@nostrum.com: Show out-of-area ads on /wg/. Fixes #1555. Related to #1557. * Merged in [8855] from rcross@amsl.com: Fixed the Back and Cancel buttons in recording views. Fixes #1577. * Merged in [8854] from rjsparks@nostrum.com: This is the second step towards ADs out of GroupInfo into Role. The use of group.ad has been scrubbed from the code and templates. - Those places that set group.ad have been directly manipulate Role objects instead - Most places that read group.ad now use a new group.ad_role() that returns a Role object, simplifing some views. Related to #1555 and #1557. * Merged in [8853] from rcross@amsl.com: Fixed audio recordings which weren't showing in the proceedings. * Merged in [8852] from rcross@amsl.com: Fixed the ability to replace minutes and agendas. * Merged in [8851] from rjsparks@nostrum.com: This is the first step towards using Role to represent Area directors. It - Migrates the information captured in GroupInfo.ad to Role objects. - Renames GroupInfo.ad to GroupInfo._ad (retaining the current column name) to prepare for deletion of that field. - Provides ad property accessor and setter methods implemented using the group's role_set (so that the existing view code continues to work with minimal changes) - Improved selection in many querysets that assumed only groups of type 'area' would have area directors. Related to #1557 and #1555. * Merged in [8850] from rjsparks@nostrum.com: Changed the permission guards on edit_notify to reflect the policy that #1517 tried to establish. Fixes #1517 and #1575. * Merged in [8849] from rcross@amsl.com: Fixed several issues with IPR references in iesg templates. * Merged in [8848] from rjsparks@nostrum.com: Don't add the group's ad to the list of people who need to be at a meeting if the group doesn't have an ad. Protects the field formatter from occurances of None in passed in lists. Patch applied to production. * Merged in [8846] from rjsparks@nostrum.com: Added tests for document urls that provide a revision for all the document types the view code currently handles. Refactored parts of Document and DocHistory into DocumentInfo to get the tests to pass. (but careful review is probably warranted). * Merged in [8845] from rcross@amsl.com: Allowed editing of legacy disclosures which don't have required fields (set required=False). * Merged in [8843] from rjsparks@nostrum.com: Reworked the definition of future_presentations and last_presented. Fixes #1571. * Merged in [8842] from rcross@amsl.com: Fixed the document search result row and IESG agenda documents row links to IPR. Fixes #1570. * Merged in [8841] from rcross@amsl.com: Fixed the links to the IPR search from the doc pages. Fixes #1569. * Merged in [8840] from rjsparks@nostrum.com: Automatically ensure Alias records exists when Person records are changed, relieving multiple code locations of that responsibility. Fixes bug #1550. * Merged in [8801] from rjsparks@nostrum.com: Verify that add_state_change_event returned something before trying to use attributes of the return value. Fixes bug #1566. * Merged in [8726] from rjsparks@nostrum.com: Send mail to the secretariat when a Person is created with the same name as some other Person objects in case its a duplicate that needs to be merged. Fixes ticket #1553. * Merged in [8733] from olau@iola.dk: Fixed an old bug in liaison tool - WG discussion lists where being CC'ed with their list_subscribe rather than list_email address, and the former is usually a URL, not an email address so cause a validation error when submitting the statement * Merged in [8723] from rcross@amsl.com: Fixed a problem where trying to add duplicate name in Rolodex causes 500 error. Fixes ticket #1469, * Merged in [8718] from rjsparks@nostrum.com: Copy the secretariat on the message sent to the RFC Editor and IANA when a draft is pulled from the RFC Editor queue. Fixes ticket #1549. * Merged in [8716] from rjsparks@nostrum.com: Highlight need for milestone review and approval in messages to leadership when a milestone edit requires approval. Don't bother the group when the only changes are those needing approval. Fixes ticket #1501. * From rjsparks@nostrum.com: Fixed Room.__unicode__() to handle capacity None. * Made the generated postfix alias/virtual files include the AD emails in the -chairs alias. * Added admin support for meeting.models.ResourceAssociation. -- Henrik Levkowetz 25 Jan 2015 19:36:37 +0000 ietfdb (5.10.0) ietf; urgency=medium **Enhanced IPR Support** This release provides work from rcross@amsl.com which refactors and enhances the IPR support in the datatracker. Here is an overview of the changes: * Updated and streamlined the database models representing IPR disclosures, and migrated existing data to the new models. * Added a new admin interface with better support for listing IPR disclosures and searching them. * Improved the Secretariat's navigation between IPR document views/search results and the administrative pages to edit IPR documents. * Introduced the ability for a disclosure submission to indicate it is updating more than one existing disclosure. * Improved the Secretariat's management interface for the 'Waiting for Approval' queue, and added the ability to park disclosures that are waiting for approval. * Added a Secretariat management interface for rejected and removed disclosures. * Implemented simplified forms for Secretariat updates to a disclosure. * Added support for managing the email communication necessary for processing a submission. The streamlined models and related coding decisions has resulted in a reduction in the LOC (lines of code) count by about 2000 lines, at the same time as the functionality has improved. Cool :-) -- Henrik Levkowetz 21 Dec 2014 21:33:54 +0000 ietfdb (5.9.0) ietf; urgency=medium **Enhanced Team Support** * Merged in [8711] from rjsparks@nostrum.com: Added functionality for management of group materials, focusing on groups of type 'team': - Simplifies managing the Abstract for uploaded group materials. Displays the abstract on the groups materials page - Provides SessionPresentation: a binding between Document and Session objects, that tracks doc version. - Adds helpers for finding upcoming sessions, and the most recent SessionPresentations whose sessions have passed - Generalizes the snippet concept (as a templatetage) used in the history tab for use on other pages - Adds a variant of the snippet that can be styled as an edit link - Provides several ways to address sessions, using sequence, dates, group acronyms, and day of week - Adds a 'Materials Manager' Role -- Henrik Levkowetz 18 Dec 2014 21:29:43 +0000 ietfdb (5.8.1) ietf; urgency=medium This is a bugfix release for 5.8.0; it adds one file which was missing from the repository in the 5.8.0 release -- Henrik Levkowetz 18 Dec 2014 18:40:16 +0000 ietfdb (5.8.0) ietf; urgency=medium **JSON Api** This release introduces a machine-readable API to the datatracker database content, based on Tastypie (https://django-tastypie.readthedocs.org/). Currently the API is set to read-only; but Tastypie does support fine-grained control of create, read, update, and delete permissions, so if we find that it makes sense at some point, we can open up for authenticated access to more than just reading database content. The details of which tables and objects from the database that are exposed in the API are controlled by a series of resources.py files; one per Django app. By default, no data is exposed; in order to expose a table, the resources file must contain a resource specification, in the form of a python class which determines which table fields should be exposed, and how. Since we want to expose almost all the database content, rather than only a few selected tables, there is a lot of code which needs to be specified (more than 200 classes, with almost 2000 lines, at this writing) in order to make data available through the API. Rather than manually type out all of the needed classes, a management command (ietf/manage.py makeresources) has been added which will generate the needed resource classes in the resources.py files automatically. Existing classes will be left intact, though, which makes it feasible to hand tune the classes if needed, but still auto-generate resource classes when new tables are added. In addition to read access to the exposed tables and objects, the Tastypie API provides support for automated discovery of the available tables. Starting at the URL https://datatracker.ietf.org/api/v1/, the returned machine-readable data provides URL information for all available API endpoints, which makes it possible to recurse down to all available data. Data is currently provided in JSON and XML format. Adding new formats is fairly easy, if it should be found desriable. -- Henrik Levkowetz 18 Dec 2014 16:06:05 +0000 ietfdb (5.7.4) ietf; urgency=medium **IETF 91 Code Sprint** This release contains the datatracker bugfixes and enhancements from the IETF-91 Code Sprint. Many thanks to everyone that contributed! * Merged in [8634] from rcross@amsl.com: Removed the 'none selected' option from licensing options of the new IPR form. * Merged in [8624] from rcross@amsl.com: Removed the secauth middleware, replacing it with role_required decorators. * Merged in [8623] from suresh.krishnan@ericsson.com: Added code advising the IESG Secretary of personnel changes in WGs. Fixes issue #1357. * Merged in [8609] from tterriberry@mozilla.com, with minor changes: Allow changing the title of a charter document. Fixes #1334 * Reworked the generation of draft aliases and WG aliases, after trying out the output of the previous version for real. * Merged in [8622] from harald@alvestrand.no: Adding a missing column header to the search results page. * Merged in [8617] from liudapeng@chinamobile.com: Added the possibility of choosing RGs in the search page. Fixes issue #1355. * Merged in [8614] from harald@alvestrand.no: Added validation of the names given to saved meeting schedules. Fixes issue #1425. * Merged in [8611] from rjsparks@nostrum.com: Allow chairs to edit the notification field. Fixes bug #1517. * Merged in [8608] from rjsparks@nostrum.com: Allow chosing the initial state when beginning WG processing of a draft. Fixes bug #1406. * Merged in [8602] from suresh.krishnan@ericsson.com: Retain the currently set of tags when document state is edited. Fixes issue #1295. * Merged in [8585] from rjsparks@nostrum.com: Tests that a message is set when a shepherd is not changed. Related to #1508 and r8504. * Merged in [8584] from rjsparks@nostrum.com: Reworked smtp error warning and logging to not use hard-to-read context_managers. Fixes bug #1390. * Merged in [8573] from rcross@amsl.com: Fixed role_required to permit access to proposed RGs. * Added code to require posting confirmation for some particular draft name prefixes such as 'draft-iesg-', 'draft-iana-', 'draft-rfc-', and some more. * Added a requirements.txt file which can be read by pip in order to install the packages needed to make the datatracker work. Set up a virtualenv, and then run pip install -r requirements.txt in it. * Added settings for the PhantomJS ghostdriver.log and the temporary meeting materials and bluesheets directories used during testing, so that it's possible to place them in other places than the working copy. -- Henrik Levkowetz 13 Nov 2014 03:37:10 +0000 ietfdb (5.7.3) ietf; urgency=medium * Merged in [8634] from rcross@amsl.com: Removed the 'none selected' option from licensing options of new IPR form. * Merged in [8624] from rcross@amsl.com: Removed secauth middleware. Replace with role_required decorators. * Merged in [8623] from suresh.krishnan@ericsson.com: Added email notification to the IESG Secretary about personnel changes in WGs. Fixing issue #1357. * Merged in [8609] from tterriberry@mozilla.com, with minor changes: Allow changing the title of a charter document. Fixes #1334 * Reworked the script which generate draft aliases and WG aliases, after trying out the output of the previous version for real. The new code seems to work better, based on testing on mail.ietf.org. * Merged in [8622] from harald@alvestrand.no: Added a missing column header to search result page * Merged in [8617] from liudapeng@chinamobile.com: Added support for RGs in the search popup. Fixes issue #1355. * Merged in [8614] from harald@alvestrand.no: Added validation of the name when saving a schedule under a new name from the Edit Schedule view. It now returns to the schedule view, and gives the user a message. Builds on [8604]. Fixes issue #1425. * Merged in [8611] from rjsparks@nostrum.com: Allow chairs to edit documents' notification field. Fixes bug #1517. * Merged in [8608] from rjsparks@nostrum.com: Made it possible to choose initial document state when beginning WG processing of a draft. Fixes bug #1406. * Merged in [8602] from suresh.krishnan@ericsson.com: Changed the state change form handling for drafts so that annotation tags aren't lost when changing state. Fixes issue #1295. * Merged in [8585] from rjsparks@nostrum.com: Tests that a message is set when a shepherd is not changed. Related to #1508 and [8504]. * Merged in [8584] from rjsparks@nostrum.com: Reworked smtp error warning and logging to not use hard-to-read context_managers. Fixes bug #1390. * Merged in [8573] from rcross@amsl.com: Fixed role_required to permit access for chairs and secretaries of proposed RGs, in addition to current RGs. * Added some missing admin views. * Added a requirement for posting confirmation for some particular draft name prefixes such as draft-rfc-, draft-rfced-, draft-iana-, and some others. -- Henrik Levkowetz 10 Nov 2014 18:05:57 -0800 ietfdb (5.7.2) ietf; urgency=medium Another bugfix release, containing a number of fixes for issues related to extraction of meta-information from draft submissions, and also fixes for some other blemishes not discovered at the time of 5.2.1. This release also enhances the generation of draft author aliases, providing a {draftname}.shepherd alias which points to the shepherd (if set), and adding the shepherd email address to the {draftname}.all alias. The email alias changes will take effect as soon as the aliases are activated for @ietf.org (as opposed to @tools.ietf.org). Details: * Addedd a temporary patch for an unwanted exception which occurred when trying to generate proceedings for a session which didn't have an assigned timeslot in an official schedule. Happens all the time for interims, for example. * Merged in [8506] from rjsparks@nostrum.com: Changed the default notify address for IRTF stream documents. Fixes bug #1489. * Merged in [8505] from rjsparks@nostrum.com: Added code to allow removing a document shepherd, and test that it works. Fixes bug #1509. * Merged in [8504] from rjsparks@nostrum.com: Added tests that would have caught bug #1508. Added message to edit_shepherd_email to match that added in edit_shepherd. * Merged in [8498] from rjsparks@nostrum.com: Reworked logic flow for editing shepherds. Added message to inform the user when the shepherd is not changed. Fixes bug #1508. * Changed the signature line of the generate-wg-aliases script so as to show the script path instead of a manually maintained string (which had become outdated) in the signature string at the top of the generated files. * Added generation of {draftname}.shepherd aliases for drafts when generating draft email aliases, and also added the shepherd's email address to the {draftname}.all alias. Changed the signature line of the script to give the script path instead of a manually maintained string (which had become outdated). * Fixed a bug in setting the can_edit_shepherd_writeup flag, triggered by the change in what Document.shepherd refers to (now, Email, used to be Person). * Added 'Dr.-Ing.' to the recognised honorifics in the author extraction code. * Did a number of changes to the author extraction method of class Draft in order to make it able to match up names with double-word family names on the first page (A. Foo Bar) with (familyname, given-name) ordering (Foo Bar Any) in the Authors' Addresses section. Regression tested against 200+ known good author extraction results. A number of stronger restrictions in regular expressions had to be introduced to avoid regression, which is probably all to the good. * Added support for ISO-format dates (or RFC 3339 dates, if you will) to the date parsing done for the submission tool. Also refined the regexes a bit to avoid false matches on for instance things like 'Juniper 2014'. * Merged in [8498] from rjsparks@nostrum.com: Reworked the logic flow for editing shepherds. Added a message to inform the user when the shepherd is not changed. Fixes bug #1508. -- Henrik Levkowetz 01 Nov 2014 23:16:20 +0000 ietfdb (5.7.1) ietf; urgency=medium This is a minor bugfix release which empties the merge queue in preparation for the IETF 91 code sprint. Details below: * Merged in [8456] from rcross@amsl.com: Fixed a bug when trying to edit a session request that doesn't exist. Fixed a bug when a submitted session request form does not include conflict input fields. * Merged in [8454] from rcross@amsl.com: Fixed the IRTF proceedings to include Open IRTF Meeting (irtfopen). * Merged in [8452] from rjsparks@nostrum.com: Relax ALLOWED_HOSTS when not running in production. Fixes bug #1373. * Merged in [8444] from rjsparks@nostrum.com: Fixed a condition check problem introduced with adjustments to setting the returning item bit. Fixes bug #1505. * Merged in [8441] from rjsparks@nostrum.com: Removed the X-Frame-Options configuration. * Merged in [8438] from rjsparks@nostrum.com: Better evaluation of whether a document type is diffable. Fixes bug #1504. * Merged in [8305] from rjsparks@nostrum.com: Replaced the return_to_url notion with logic that uses the session object. Related to bug #1430. * Added wgchairs@ietf.org to the release notification email. Split the notification email sending into two, in order to limit the number of addressees for emails going to Mailman lists. * Fixed a 500 error that could occur if someone manually entered a proceedings url so as to to upload materials to a nonexistent meeting/group combination. * Prevented 500 errors caused by a file move race condition on draft submission confirmation. -- Henrik Levkowetz 27 Oct 2014 06:15:18 +0000 ietfdb (5.7.0) ietf; urgency=medium **Enhanced Person-Chooser Widget** This release merges in work from olau@iola.dk which enhances a number of pages in the datatracker where forms contain fields where a person should be chosen, such as for instance when choosing the shepherd of a document, so that they uniformly display choices which show both email address and name. Furthermore, changes have been made so as to make the email address uniformly act as reference to the person record. Autocompletion is now consistently provided when looking for the email address or name of the person to choose. This solves a number of issues where it has been difficult to choose the correct Person/Email combination, and where the correct email address to use for an association has been unavailable previously. -- Henrik Levkowetz 26 Oct 2014 05:51:44 -0700 ietfdb (5.6.5) ietf; urgency=medium This is a minor release which brings in support for 'recording' documents, intended to cover audio and video recordings. This makes it possible to associate links to audio and video recordings with meeting sessions, and will make it possible to also include such links in the proceedings. There is also a database schema migration needed to support the 'recording' documents. * Merged in [8237] from rcross@amsl.com: Changes to support video content in proceedings ('recording' document type). * Normalized the naming of a couple of NameModel subclasses, with a migration and updated fixture. * Added a migration to change foreign keys to NameModel models from 8 to 32 bytes. -- Henrik Levkowetz 25 Oct 2014 09:14:15 -0700 ietfdb (5.6.4) ietf; urgency=medium * Merged in [8359] from rcross@amsl.com: fix get_or_create_nominee() to create Alias for new Person. * Merged in [8156] and [8320] from rcross@amsl.com: Do not allow editing or submitting new session requests when the tool is locked. Fixes Ticket #1443. * Merged in [8308] from rjsparks@nostrum.com: Build the links to about_url for concluded groups correctly. Fixes bug #1487. * Merged in [8303] from rjsparks@nostrum.com: Only show comment/discuss document version on the ballot page when the text is for a version of the document other than the current one. Fixes bug #1482. * Merged in [8377] from rjsparks@nostrum.com: Removes a modify-while-iterating error, and removes a bug where two different bits of code thought they were responsible for deleting things from a global list. Fixes bug #1498. * Merged in [8301] from rcross@amsl.com: Changes to support consensus status. * Merged in [8293] from rjsparks@nostrum.com (Note: Should what is now captured in the STATUSCHANGE_RELATIONS list instead be captured in the database in name_docrelationshipname? ): - Refactored editing the notify field to remove redundant code. - Changed the default notification list to include .all for documents, and the wg list for wg documents. - Allowed recalculating the notification list for all document types. - Improved the calculated notification list value for charters, conflict-reviews, and status-changes. - Adds shepherds to the notification list when they are assigned to a document. - Adds the working group email list to the notification list when a document is adopted. Fixes issue #1438. * Merged in [8285] from rjsparks@nostrum.com: Removed templates that were no longer being used. * Merged in [8271] and [8292] from rjsparks@nostrum.com: Send email when a the telechat date (or returning item bit) changes for a document. Fixes #1452 * Merged in [8262] and [8263] from rjsparks@nostrum.com: - Changes when returning_item is automatically set to match the current IESGs preferences. Removes several chunks of dead code related to editing telechat dates. Improves returning item tests. - Refactored multiple edit_telechat functions into one function in doc_views. Added a helper function for determining if ballots have changed to isolate the implementation. Fixed the issue with update_agenda setting the returning item bit even when the user explicitly said not to. Added prompting to encourage proper setting of the returning item bit to the edit_telechat view. Fixes #1209 * Merged in [8355] from rjsparks@nostrum.com: Add the owners email address to the json path for schedule objects. Fixes ticket #1492. * Merged in [8256] from rjsparks@nostrum.com: Allow defer for status change documents. Fixes bug #1397. * Merged in [8255] from rjsparks@nostrum.com: - Combined defer/undefer tests from doc/tests_ballot and iesg/tests, extending them to demonstrate current reported bugs. - Made doc.active_defer_event() look for the events that are currently being created. This remains brittle. - Added email notifying the IESG of an undefer analagous to the defer email. - Guarded against deferring an already deferred document or undeferring a document that hasn't been deferred. - Guarded against deferring a document that's not scheduled for a telechat. Fixes bugs 1417, 1465, 1417 * Merged in [8254] from rjsparks@nostrum.com: Don't send mail to unknown-email-* addresses. Fixes bug #1471. * Merged in [8249] from rjsparks@nostrum.com: Skip sheme-relative urls. Fixes bug #1466. * Merged in [8239] from rjsparks@nostrum.com: Adds javascript to return to a page a few seconds after successfully logging out. Fixes ticket #1461. * Merged in [8238] from rjsparks@nostrum.com: Look in the right place in the filesystem for the files bits when building reference relations during submit. Fixes bug #1467. * Merged in [8236] from rjsparks@nostrum.com: Log what rebuild_reference_relations returns to diagnose #1467. -- Henrik Levkowetz 13 Oct 2014 13:14:38 -0700 ietfdb (5.6.3) ietf; urgency=medium This is a bugfix and cleanup release, without any major new features. The most notable improvements are to the agenda scheduling code, where a number of bothersome bugs has been slain, but there are also other nice fixes: * Merged in [8229] from rjsparks@nostrum.com, with minor tweaks: From mcr@sandelman.ca: * Refactor to remove dajaxice. * Modified the URLs that address schedules: - urls now always start with /agenda, removing the mix of /agenda and /schedule prefixes - urls to a given schedule include the schedule owner (by email address) * Corrected issue that prevented deleting sessions. * Changed comment mechanism in timeslot_edit.js * Migration to change the email address for (System) Fixes bug #1426 * Merged in [8211] from rjsparks@nostrum.com: Provide a way to get back to the page the user logged out from. Fixes ticket #1461. * Merged in [8210] from rjsparks@nostrum.com: Default the responsible AD for an initial charter or recharter document to the responsible AD for the group. Fixes ticket #1451. * Merged in [8209] from rjsparks@nostrum.com: Fixed several places where files were not being closed. * Merged in [8208] from rjsparks@nostrum.com: Changed the code to use doc.href rather than manually constructing URLs in several templates. Fixes ticket #1459. * Merged in [8207] from rjsparks@nostrum.com: Cleanup commit before changing working HREF contents. * Merged in [8204] from rjsparks@nostrum.com: Improves how many href urls are constructed. Updates ticket #1459. * Merged in [8166] from rcross@amsl.com: Added the 'proposed' WG state to WG role queries for Chair and Secretary -- Henrik Levkowetz 19 Sep 2014 12:28:28 -0700 ietfdb (5.6.2) ietf; urgency=medium **IETF 90 Code Sprint** This release contains the datatracker bugfixes and enhancements from the IETF-90 Code Sprint. Many thanks to everyone that contributed! Contributions that continue to arrive during the week will be merged in to a new release at the end of the week or the beginning of next week. * Merged in [8155] from rcross@amsl.com: Allow Team Chairs access to proceedings. * Merged in [8154] from rcross@amsl.com: Fixed a bug where ScheduledSession objects were still being created without a related session. * Merged in [8150] from rjsparks@nostrum.com: Small cleanup refactor removing redundant configuration line in settings for charter text URLs. * Changed the length of the NameModel slug field from 8 to 32 characters. Added a corresponding migration. * Merged in [8146] from sunqi.csnet.thu@gmail.com: Changed the ietfauth file to allow to change the replaces relationship without setting the doc stream. Fixes ticket #1305. * Merged in [8143] from tterriberry@mozilla.com: Allow IRTF chair to adopt a draft into any RG. Fixes #1082. * Merged in [8137] from rjsparks@nostrum.com: First automated javascript test using PhantomJS and Selenium. * Merged in personal/shane/v5.6.2-dev0@8144 from shane@time-travellers.org: Added untrack to document and search pages. Fixes #1381. * Merged in [8136] from denghui@chinamobile.com: Added display of the relevant draft revision number for ballot comments. Fixes issue #911. * Permit really long sessions, and don't expire sessions on browser close. On request from Pete Resnick. * Merged in [8122] from gnocuil@gmail.com: Force mailing to secretary when a charter state changed to internal or external review. Fixes ticket #1444. * Merged in [8121] from fanpeng@chinamobile.com: Added a 'No Errata' indication for RFCs with no errata. Changed the link to the draft text for expired drafts to use the archive at www.ietf.org/archive/id/ instead of tools.ietf.org/id/. Fixes ticket #1112 and #1432. * Added a meta tag to the base template, to specify a page character set. * Merged in [8114] from gnocuil@gmail.com: Changed the template to highlight groups from different areas instead of the same area. Fixes ticket #1368. * Merged in [8099] from rjsparks@nostrum.com: Use the name field from the materials upload form. Fixes ticket #1445. -- Henrik Levkowetz 22 Jul 2014 14:21:25 -0700 ietfdb (5.6.1) ietf; urgency=medium * Added an x_frame_options setting to permit datatracker pages to be embedded in tools parges, for the tools tutorial. * Merged in [8057] from olau@iola.dk: Changed Document.get_absolute_url to handle case of non-meeting-based group materials, fixes #1440 * Merged in [8045] from rcross@amsl.com: Added code to grant IETF Trust Chair permissions for Announcement Tool. * Merged in [8003],[8004] and [8005] from fanpeng@chinamobile.com: Added email subscription and web-archive links to the datatracker wg summary page. Fixes issue #958. * Rewrote the draft-alias and group-alias generation scripts to generate matching aliases and virtual files for postfix. * Adjusted the permissions checking in has_role to accept bof chairs and secretaries. -- Henrik Levkowetz 15 Jul 2014 02:01:14 -0700 ietfdb (5.6.0) ietf; urgency=medium **Team Pages** This release adds group page support also for non-WG/RG groups, extending and generalising the work done recently to add RG pages. In particular, this provides the Edu team with a place to upload and display educational materials. Changelog: * Merged in branch/iola/team-support from olau@iola.dk. This generalises and extends the group support for WGs and RGs so that also other groups, such as for instance the Edu Team, can have pages. * Miscellaneous other minor changes mostly related to merging, testing and admin. -- Henrik Levkowetz 02 Jul 2014 12:40:19 -0700 ietfdb (5.5.2) ietf; urgency=medium This is a bugfix release which updates the database contents with bindings for breaks and registration timeslots that make the agenda pages come out as intended. Changelog: * Modified the code which adds non-session entries to a schedule so as to bind a Session object also to Break and Registration timeslots, through the Schedule/Timeslot/Session m2m table. This makes the agenda templates work as expected. There's also a migration and a standalone script that fills in this information for existing schedules. * Tweaked the test-crawler to show the complete chain of referrers for a failing URL. * Don't show dash after timeslot names in the ietf agenda if there's no associated location. -- Henrik Levkowetz 30 Jun 2014 10:21:41 -0700 ietfdb (5.5.1) ietf; urgency=medium This is a routine bugfix release. Here is a list of the addressed issues: * Merged in [7935] from liudapeng@chinamobile.com: Added display of both WG conflict and person requirements to the session request page. Fixes issue #1384. * Merged in [7924] from rcross@amsl.com: Now permitting IPR updates to not specify an IPR license selection. * Merged in [7911] from rcross@amsl.com: Fixed a problem which occurs when non-ascii names are used in session request notification emails. * Merged in [7910] from rjsparks@nostrum.com: Now paying attention to group type in all the wginfo functions. Fixes bug #1423. * Merged in [7888] from rjsparks@nostrum.com: Fixed a bug where links in personal document tracking list associated with groups which are not WGs or RGs return 500, by only turning WG and RG groups into links. Fixes bug #1421. * Merged in [7865] from rjsparks@nostrum.com: Addressed an issue with dragging and dropping unscheduled items back into the unscheduled bin (primary fix provided by Matt Miller). Fixes bug #1386. * Merged in [7843] from rcross@amsl.com: Changed the default group type field on the groups search form, from WG to unset. * Changed the code to move drafts from the active draft repository to the draft archive so that all associated files will be moved, not just those with specifically listed extensions. This fixes the problem that .xml files associated with submitted drafts were moved to the unknown_ids subdirectory of the archive, instead of into the archive proper. * Merged in [7879] and [7880] from olau@iola.dk to fix a couple of issues with the 5.5.0 release. * Fixed a bug in the mkrelease script, introduced by changing the naming convention for development tags from X.Y.Z-dev to X.Y.Z-dev0 (etc.). -- Henrik Levkowetz 26 Jun 2014 13:12:50 -0700 ietfdb (5.5.0) ietf; urgency=medium **Research Group Pages** This is a feature release, which introduces pages and workflow support for IRTF RGs, similar to what is available for IETF WGs. You'll find the rg pages under /rg/, for instance https://datatracker.ietf.org/rg/cfrg . Having this new baseline in place, I'm sure we'll get requests for refinements, but this should be a reasonable first pass at providing this functionality. -- Henrik Levkowetz 09 Jun 2014 14:25:51 -0700 ietfdb (5.4.3) ietf; urgency=medium * Merged in [7772] from rjsparks@nostrum.com: Checks that an email address will survive encoding as part of validating a liaison form. Fixes bug 1410. * Merged in [7766] from rjsparks@nostrum.com: Improves the robustness of the SMTP error handling utilities. Fixes bug #1409. * Tweaked mkrelease to add a new development tag matching each new release tag, to make it easier to create personal development branches with development settings. * Merged [7748] from rjsparks@nostrum.com: Adjust when publication request button appears for documents in non-ietf streams. Fixes bug #1402. * Merged [7740] from rjsparks@nostrum.com: Fixed a crash when requesting sessions for groups that do not have ADs. Applied to production as 2014-05-13-sreq-rg.patch . * Merged [7735] from rjsparks@nostrum.com: Fixed coloring rows: The js IETF object needs to exist for the code to work. Fixes bug #1303. * Merged [7734] from rcross@amsl.com: Changes to support IAB group types, including requesting a session and uploading materials. * Merged in [7732] from rjsparks@nostrum.com: Extended ScheduledSession objects were not initialized correctly, so un-extending did not work. Fixes bug #1401. * Added a file used by bin/mergeready to mark certain releases which has earlier been marked as ready to merge with a 'hold' indication, instead. * Replaced a symlink with the real file -- symlink committed by mistake. * Added validation of successful draft title extraction on draft submission upload, to avoid a later exception when trying to store draft information for a draft with a null title. * Merged in [7726] from rcross@amsl.com: Fix secauth middleware to grant access to WG Secretary, RG Chair and Area Director. * Merged [7705] from rjsparks@nostrum.com: Corrected Document vs DocHistory mismatch when working with status-change documents. Corrected creation of BallotDocEvent timestamps. Fixes bug #1396. * Merged [7678] from rcross@amsl.com: Show correct group type and ommit link to tools.ietf.org on BOF proceedings. * Merged [7677] from rjsparks@nostrum.com: Protect against cases where add_state_change_event can return None. Fixes bug # 1383. * Fixed a typo (missing space) in a template. Fixes issue #1398. * Added a utility command 'mergeready' which lists commits marked as 'Commit ready for merge' that have not yet been merged to trunk. -- Henrik Levkowetz 02 Jun 2014 15:10:37 -0700 ietfdb (5.4.2) ietf; urgency=medium * Merged [7673] from rjsparks@nostrum.com: Made several changes to better handle non-ascii UTF-8 in email messages. - Used multipart mime when including the original message in an error message to the secretariat. Modified the way IANA review email is parsed. Added non-ascii UTF-8 tests to the IANA review email parser and to the SMTP Exception handling code. - Changed how edit_mtg() is called, in order to propagate kwargs as kwargs. Removed repeated @check_permissions. * Merged [7653] from rcross@amsl.com: Fixed two issues with proceedings generation. * Merged in [7644] from rjsparks@nostrum.com: From rjsparks@nostrum.com: - Fixed layout issue on schedule editing page in Chrome - Fixed errant display of text in unscheduled group bar on the schedule editing page - Changed the instruction text on the special requests field of the session request form From rcross@amsl.com: - Improved scheduling of non-session items - Fixed issue with layout of the new notifications page - Fixed crash on notifications page -- Henrik Levkowetz 01 May 2014 02:14:27 +0200 ietfdb (5.4.1) ietf; urgency=high This is a minor bugfix release, to fix an issue with the mail handling infrastructure where one bad email recipient address for a notification message (about for instance a state change) could cause some actions related to the state change to be skipped: * Merged in [7635] from rjsparks@nostrum.com: Replumbed how SMTP Exceptions are handled, which involved refactoring several mail functions. * Also fixed a bug in the agenda editing code caused by a change of an attribute name in the python code but not doing the same change in templates using the attribute. * Changed the logic for what is the 'current' ietf meeting to disregard whether there's an agenda for the meeting or not. This lets people see the correct session request page for the current meeting. However, it also makes the /meeting/agenda.html page fail because there's no schedule associated with the meeting; so alternative pages saying 'No agenda available' has been added, too. * We're now showing the login link with a http:// scheme instead of https:// when in debug mode, in order to be able to log in when using 'python manage.py runserver', which only supports http. -- Henrik Levkowetz 25 Apr 2014 17:11:32 +0200 ietfdb (5.4.0) ietf; urgency=medium **Enhanced Agenda Scheduling** This is a feature release which brings in an updated version of the agenda scheduling code. There are still known bugs and rough edges, but this version has many bugfixes and cleaned up issues, and brings essential imporvements to the agenda scheduling tool. * Merged in [7561] from rjsparks@nostrum.com: Updates and bugfixes to the agenda editing features - Removes the pattern of using ScheduledSession m2m objects with one of the relationships left as None - Improves scheduled session state handling - Simplifies sending email to scheduled session requestors - Improved timeslot purpose and room editing - Improved access controls to editing forms - Better test coverage for the meeting views - Improvements to the javascript driven by prototyping automated tests - Better initialization of a new meeting On the session request form: - Allows specifiying room resources (projectors, meetecho) - Allows specifying what people must be present On the schedule editing page: - correctly calculates conflict levels - displays conflicts in and out of each session separately - italicizes BoFs - shows resource and people conflicts Adds automated placement as a management command -- Henrik Levkowetz 22 Apr 2014 23:58:27 +0200 ietfdb (5.3.1) ietf; urgency=medium This is a minor release, with a number of bug-fixes and a few enhancements. Notable enhancements are the ability to set the document consens field back to Unknown after it has been set to Yes or No, and an enhancement to the test infrastructure that lets tests of email handling interact with a real recipient SMTP server, instead of ending in a stub. Details: * Merged in [7591] from rjsparks@nostrum.com: Added a real (if simple) SMTP server to the test framework and tests handling of exceptions and rejected addresses. Fixes ticket #1314. * Merged [7590] from rjsparks@nostrum.com: Changed when the consensus field is displayed and who can edit it for IETF stream documents. Fixes bug #1380. * Merged [7589] from rjsparks@nostrum.com: Functional changes allowing consensus to be set back to Unknown. Fixes ticket #1150. * Merged [7588] from rjsparks@nostrum.com: Schema migration to allow consensus to be set back to unknown. Related to ticket #1150. * Merged in [7587] from rjsparks@nostrum.com: Anyone with a role in a group could preapprove drafts. Changed that to an explicit subset of roles. Fixes ticket 998. * Merged in [7586] from rjsparks@nostrum.com: Fixed calculation of needed ballots for status-change documents. Added needed ballots tests for drafts and status-change docs. Fixes bug 1116. * When we deployed the rewritten public datatracker, we went from django auth to basic http auth. At that time we also changed the session timeout time to 12 hours, from the default 2 weeks. I see no need to use a non-default setting now that we're back to using django auth; changing the session timeout time back to 2 weeks. * Merged in [7519] from olau@iola.dk: Removed uses of gzip middleware - the decorator thing breaks the ETags for some reason, as noted in issue #518, and it seems consensus is that we should do this in Apache instead for the whole site * Merged [7421] from olau@iola.dk: Fixed a crash bug in the redirection logic that occurs when someone posts a draft without an access token from the email confirmation step * Merged [7416] from olau@iola.dk: Redo the quickfix to the "Send and Post" button bug (mentioned in issue #1308) so that we still do the validation correctly, but just always show the button (even if it's unusable) -- Henrik Levkowetz 16 Apr 2014 23:22:41 +0200 ietfdb (5.3.0) ietf; urgency=medium **Django Authentication replaces Basic HTTP Auth** This release changes user authentication for the datatracker from basic http auth to Django's built-in authentication. This has the advantage of making it possible to log out, and log in as a different user, which can be useful, and it also changes the password hash storage for each user to a much stronger hash scheme, upon his or her first successful login after the deployment. The email-verification roundtrip which is required to create a new login, or change the password of an existing login, is retained. For the large majority of users, who either didn't have a password hash in the database before the transition to the Python/Django based database frontend on 16 July 2010, or had a password hash in the database, but have updated their password after 3 July 2012, there should be no impact. Password hashes have been imported as needed from the http auth password hash file. The few who had a password hash in the system before 16 July 2010, and haven't updated their password since 3 July 2012 are encouraged to set a new password using the password reset form at https://datatracker.ietf.org/accounts/reset/ . If there are issues which prevent a password reset, please email henrik@tools.ietf.org for assistance. -- Henrik Levkowetz 12 Apr 2014 20:14:17 +0200 ietfdb (5.2.1) ietf; urgency=medium This is a minor release, with some bugfixes and some enhancements. It also contains some reworked secretariat code, which changes part of the authentication handling in preparation for the next release (5.3.0), which will transition the datatracker from using HTTP basic authentication, to Django's built-in authentication scheme. * Merged in [7568] from rcross@amsl.com: Grant ISOC CEO access to announcement tool, change announcement tool from option 'IAB Executive Director' to 'IAB Executive Administrative Manager' * Merged in [7557] from rjsparks@nostrum.com: Update reference relationships (asyncronously) for new rfcs found when syncing with the rfc index. Fixes ticket #1347. * Added some datatracker development notes from the testing extension (pyflakes etc.) work * Merged in [ 7454] and [7549] from rcross@amsl.com: Changes to the secretariat code, to support Django authentication instead of basic http auth, and fixes to the tests to work with the secauth middleware changes. * Pyflakes cleanup to be compliant with pyflakes 0.8.1, which seems to find things 0.8.0 didn't find. * Changed URLs with explicit scheme from http to https. Emails that are sent out from the datatracker will now specify URLs with https:, rather than http. * Added a fix to exclude empty email addresses from the send list. * The ietf/patches directory doesn't work out as intended, and causes some confusion with the /a/www/ietf-datatracker/patches/ directory on the production server. * Backfilled the changelog file, back to 2.00 * Merged in [7153] from rjsparks@nostrum.com: Fixed a typo in code that looks for the IRTF chair email address while adding replaces relationships. Made that code slightly more robust. Fixes ticket #1253 -- Henrik Levkowetz 06 Apr 2014 17:28:49 +0200 ietfdb (5.2.0) ietf; urgency=low **PyFlakes** This is a code cleanup release. It adds a test and a managemement command to run pyflakes (pyflakes is a bit like 'lint' for Python) over the datatracker code, and provides cleaned-up code so that the new pyflakes test is clean. The number of lines changed is large, but the changes to what the code actually does is limited to fixing bugs discovered by pyflakes during the cleanup. There were around 10 such cases. Most of the changes are related to import statements, as the code otherwise was pretty clean already. In almost all places, bulk imports using '*' has been replaced by explicit imports, for these reasons: * It makes it clear from where an imported name has come, so that a human reader can look for an identifier in the import statements, and see from where it comes, and where he should go to inspect the related code. * It makes it clear to the interpreter exactly which symbol is intended, in cases where the same symbol is defined in multiple modules imported using '*' import. This is not a common case, but it actually turned up a couple of times during the cleanup. If the '*' imports in question hadn't been turned into explicit imports, only the (somewhat arbitrary) order of the import statements would have determine which instance of a function or class would actually be visible to the following code. This situation can make the code do something different from what was intended, in a quite devious way. * It avoids unintended import of generically named variables from other modules. Altough having such variables as module globals is a bad practice, it happens, and sometimes unintentionally importing them through a '*' import will make it appear to the interpreter that a statement intended to use an (by mistake undefined) identically named local variable is in fact a valid statement which uses the imported symbol instead. Without the '*' import, the situation would be correctly flagged by the interpreter. * Finally, importing all symbols explicitly makes it possible for pyflakes to do a better job in identifying unused and undefined symbols -- in the presence of '*' imports, this capability becomes much more limited. Several cases of bad code (use of undefined variables) was discovered during the cleanup only after the '*' imports were replaced by explicit imports. In many places, the import statements have been reordered to consistently list the generic python library imports first, followed by django imports, then local module imports (these typically live on the same level as ietf/ and django/), finally followed by datatracker-specific imports. Some people find that this kind of consistency in importing, both in keeping a consistent order, and in importing in a sequence from the more general down to the more specific, aids in the readability of the code. -- Henrik Levkowetz 19 Mar 2014 21:41:16 +0100 ietfdb (5.1.1) ietf; urgency=medium This is a minor bugfix release, in preparation for merging the pyflakes test branch to trunk. * Fixed the meeting materials page so as to avoid duplicate materials sections for groups with multiple sessions. * Merged [7456] from rjsparks@nostrum.com: Patched meeting/ajax to close permissions vulnerability. Tweaked tests to check the right functionality given the permissions policy currently in trunk. * Merged [7447] from rjsparks@nostrum.com: Cache the dependency graph pdf for an hour. * Merged [7445] from rjsparks@nostrum.com: Adds dependency graphs for drafts belonging to a group. Removes links to Bill's dependency tools. Fixes bug #536. -- Henrik Levkowetz 18 Mar 2014 22:49:58 +0100 ietfdb (5.1.0) ietf; urgency=high **IETF 89 Code Sprint** This release contains the datatracker bugfixes and enhancements from the IETF-89 Code Sprint. Many thanks to everyone that contributed! There are still some contributions from the sprint in the pipeline; they will be included in later releases. * Merged in [7400] from rcross@amsl.com: Fixed bugs with decorators.check_permissions() to allow upload to top level groups, and fixed the plenary upload check. * Merged in [7398] from rcross@amsl.com: Added X-CSRFToken AJAX request header for certain /secr/ pages needing it. * Merged in [7397] from rcross@amsl.com: Fixed a bug where build_nonsession() not creating ScheduledSession objects. * Merged in [7383] from jmh@joelhalpern.com: Changes counting logic in ballots to use actual number of ADs. Causes ballot email to use utility to generate requirements text Fixes ticket #924 * Merged in part of [7375] from jmh@joelhalpern.com: Fixed missing mailto: addresses in the meeting requests page. Fixes issue #1126. * Merged in part of [7375] from jmh@joelhalpern.com: Now sending draft update notices to IRSG for IRTF stream drafts. Fixes issue #1227. * Merged in [7396] and [7378] from rcross@amsl.com: Simplified clean_up_draft_files(). Removed references to old draft-archive subdirectories, and fixed for all RFC file types " Fixes ticket #1164 * Merged in [7386] from tterriberry@mozilla.com: Describe needed positions in document ballot mail. This uses doc.utils.needed_ballot_positions() to calculate what is needed. Fixes #924. * Merged in [7380] from bartosz.balazinski@interdigital.com: Changed the URL for some acoount settings from /cookies to /account/settings. Fixes ticket #806 * Merged in [7368] from rjsparks@nostrum.com: Improves the detail in the messages sent when creating tickets about failed sent email. Changes a locally defined exception name to look less like one already defined in smtplib. This is related to ticket #1208. * Merged in [7365] from rjsparks@nostrum.com: Improve handling of status-change relation form submission when conditions (such as not running javascript) lead to the POST missing required fields. * Merged in [7371] from rjsparks@nostrum.com: Migration to repair missing StateDocEvents from wg chairs using the datatracker to request publication of ietf stream documents. Incremental improvement to the request publication view to create those StateDocEvents going forward. This is related to bug #1312 -- Henrik Levkowetz 05 Mar 2014 18:20:31 +0100 ietfdb (5.0.2) ietf; urgency=medium This is a minor bugfix release. * Merged [7292] from rjsparks@nostrum.com: Allow 1-3 digit RFCs in status change documents. Fixes bug #1321. * Fixed a server failure for person alias creation during draft submissions. * Fixed overflow error for meetings without timeslots, which gave server errors for meeting/64/agenda.html. * Additional tweaks to bin/mergedevbranch. * Merged in [7204] from rjsparks@nostrum.com: Adds the IAB-parented sessions to the set of things returned as 'areas'. Fixes bug #1288 * Reapplied merge of [7209], which although listed in svn:mergeinfo on . actually doesn't seem to have made it into the repository. * Only show a link to the tools page for a group if the tools page is likely to exist, i.e., the group is a WG and it is or has been active. * Added a logging filter to filter out the 'Invalid HTTP_HOST' emails. * Changed the SECRET_KEY setting to take account of the settings in settings_local. * Merged in [7138] from rjsparks@nostrum.com: Reworked SMTP Exception handling, adding sending a ticket to the secretariat when there are errors handing messages off for delivery. Added SMTP exception handling to send-scheduled-mail. This is related to ticket #1208 * Added a file to hold a list of changesets which are ready for merge, as a manually maintained alternative to 'Ready for merge' annotations in commit messages. * Typo fixes. * Set version info and settings back to development mode -- Henrik Levkowetz 25 Feb 2014 16:53:54 +0100 ietfdb (5.0.1) ietf; urgency=medium This is a bugfix release which collects a series of fixes and usability tweaks from the last months. * Merged [7236] from rcross@amsl.com: Fixed Liaison Add CSRF token error and missing Post and Send button. Fixes ticket #1308. * Added a way to control the output of the url and template coverage tests, so they only will be run for verbosity greater than 1, which is controlled by the --verbosity switch. * Merged [7214] from rcross@amsl.com: Changeed old references to pub.ietf.org, to datatracker.ietf.org/secr/. * Merged [7213] from rcross@amsl.com: Added a missing template for the secretariat apps: unauthorized.html. * Merged [7209] from rcross@amsl.com: Fixed a typo in secretariat drafts add(). * Fixed a probem with wrong URLs in atom feeds, caused by caching. Fixes issue #1307. * Added a blank line before new session group in the text agenda, for readability. * Added a secret key to settings.py for development use. NOT for production use; that needs to go in settings_local.py * Added a warning to the draft submission page about upcoming submission cut-offs. Added a value in settings.py for the number of days before the first cut-off to display the waring. * Updated the caching settings to use memcached in production. * Remove spurious 'yes' in meeting requests page. * Merged [7215] from rjsparks@nostrum.com: Use idnits on www.ietf.org Fixes ticket #1200 * Merged [7215] from rjsparks@nostrum.com: Use idnits on www.ietf.org. Fixes ticket #1200 * Merged [7212] from rjsparks@nostrum.com: Removed the "Reason for (re)chartering" line from the charter main document page. Fixes bug #1294 * Merged [7210] from rjsparks@nostrum.com: Allow the IRTF Chair and the ISE to request a conflict review directly through the tracker. Notify the Secretariat when someone other than the secretariat initiates a conflict review. Notify IANA when anyone initiates a conflict review. Fixes tickets #1287 and #1289 * Merged [7204] from rjsparks@nostrum.com: Adds the IAB-parented sessions to the set of things returned as "areas" Fixes bug #1288 * Merged [7077] from rjsparks@nostrum.com: Returns "there are no ballots to view yet" rather than 404ing when the ballot link is followed for a document that exists. It is typical for last call to be issued (which includes a link to the ballot page) well in advance of creating any ballot for a document. Fixes bug 1233 * Merged [7076] from rjsparks@nostrum.com: Sets the State(type=draft) to Replaced when a document is replaced using views_draft.replaces. Sets the state back to Active or Expired when a document is no longer replaced by another document. Adds tests for the above functionality. Provides a patch to repair the state of documents pointed to by RelatedDocument(relationship__slug='replaces') objects created by views_draft.replaces before this fix. Fixes bug 1234 * Merged [6361] from rjsparks@nostrum.com: Allow the secretariat and ads to change the title of a status change document. Fixes bug 1141. Applied changes to adapt the code from Django 1.2 to 1.6: Provide a quoted string to {% url %} and use request.user.person instead of request.user.get_profile(). * Fixed problem with nomcom RST templates not being rendered under Django 1.6. * Merged [6359] from rjsparks@nostrum.com: Send email to the secretariat when a status change document is put directly into the last-call-requested state. Fixes bug 1139. * Added stream change and state change emails in adopt_draft() -- otherwise we wouldn't have the state change emails assumed in the previous commit. See issue #1246. * Removed the extra (misleading) email about WG adoption which is sent out in addition to the state change emails when a call for addoption (WG) or adoption (RG) is done using the 'Adopt Draft in Group' form. The state change messages should be sufficient, and are not misleading. Fixes issue #1246 (and 1290). * Handled the case in is_downref() where the src file doesn't have a std_level or intended_std_level set. * Modified ALLOWED_HOSTS to permit some (surprising) alternative HTTP_HOST names. Are these a result of queries proxied through other ietf.org domains? The numerical address is the mail server address. We should find out why that appears, and see if it can be made to appear as mail.ietf.org instead. * Added Matt Larson to the release notification email address list. -- Henrik Levkowetz 16 Feb 2014 19:36:41 +0100 ietfdb (5.0.0) ietf; urgency=medium **Database Schema Conversion Complete** With this release, a journey which started in 2008 with a *major* redesign of the IETF database schema has reached its goal. We've now converted the datatracker completely to the schema designed then, swapping out all the models that were changed, converted the database, swapped out all the GUI code that was built against the old models, and polished off a host of minor issues arising from the conversion. All this while completing and integrating 10 major functionality enhancement projects and releasing more than 50 minor releases, with not a single day of downtime. A history of release notes is available here: https://datatracker.ietf.org/release/ In addition to bringing in the last scheduled polish of the conversion, this release also brings in an upgrade of the Django framework from version 1.2 to 1.6, which gives us a number of new tools and possibilities for future work. A particular mention goes to Ole Laursen , an outstanding programmer at the small Danish firm IOLA, who has been doing a lot of the heavy lifting in coding the shim-layer which made it possible to change the database schema without a total re-write in the spring of 2012, followed by the major code re-write which has taken place since then to get rid of all the parts which were written to the old database schema. Thanks also goes to all the IETF code sprint participants who have contributed, and to Robert Sparks in particular who has contributed *a lot* to make it all come together. There are still some parts of the schema that need an overhaul, and plans exist for addressing those, but overall we should be in good shape for the near future, with some room to grow :-) Detailed change information is available at: - http://wiki.tools.ietf.org/tools/ietfdb/browser/trunk - http://wiki.tools.ietf.org/tools/ietfdb/browser/branch/iola/djangoport - http://wiki.tools.ietf.org/tools/ietfdb/browser/branch/iola/shimfree -- Henrik Levkowetz 30 Jan 2014 22:11:28 +0100 ietfdb (4.95) ietf; urgency=medium This release upgrades Django from version 1.2 to version 1.6, including a large number of refactorings and adjustments (about 140 individual changes) to adapt to changes in both interfaces and the style of how things are done between Django 1.2 and 1.6. The full list of changes is available here: http://tools.ietf.org/tools/ietfdb/log/branch/iola/djangoport -- Henrik Levkowetz 13 Jan 2014 19:14:05 +0100 ietfdb (4.90) ietf; urgency=medium **Shim Layer Removal** This release removes almost all parts of the shim-layer code which was used to provide a semblance of the old database schema to user-interface code after we moved to a new database schema in the early part of 2012. There should be no changes in basic functionality changes in this release, even if there are many small optimisations and changes in code details which come in as a result of the shim-layer removal. -- Henrik Levkowetz 20 Dec 2013 18:07:48 +0100 ietfdb (4.84) ietf; urgency=low This is a minor bugfix release, in preparation for merging in the latest shim-removal work. * Merged [6859] from rcross@amsl.com: Fixed calls to reverse() to match new url names since code merge * Merged [6858] from rcross@amsl.com: Use correct URL in new IPR notification email * Merged [6857] from rjsparks@nostrum.com: A script to run from cron to send daily messages to IETF Announce showing the email header field change. his should be run from Jan 6 to Jan 20, after which point we need to deploy analagous changes to the code that constructs last call announcements. This is related to bug #811. * Merged [6701] from rjsparks@nostrum.com: Adds pages to show what a given document refers to and what refers to it. Fixes bug #1194. * Merged [6672] from rjsparks@nostrum.com: Removed requirement to enter a phone number in various places on an IPR disclosure entry form. Fixes bug #1176 * Fixed a typo. Fixes issue #1216. -- Henrik Levkowetz 16 Dec 2013 23:34:37 +0100 ietfdb (4.83) ietf; urgency=high **IETF 88 Code Sprint** This release provides the code from the IETF-88 code sprint, and also a number of fixes to things reported during the IETF. The number of enhancements coming out of the sprint this time is impressive; this may actually have been the most successful sprint till now. Of particular note is the new ability for chairs and others who has the permission to edit a document's state, to edit replaced-by information for documents; and the introduction of information about which documents a given document references, for all documents. Future enhancements will display this information as diagrams and textually, and use it to re-introduce the dependency diagrams originally provide by Bill Fenner in his stand-alone dependency graph application. From rcross@amsl.com: * Changed draft replaces action: move document to archive directory From tterriberry@mozilla.com: * Allow wgchairs to edit document replacement relationships. This actually allows anyone with can_edit_stream_info permission to edit the list. This does draft name completion, but does not currently filter those names for likely replacements. Styling is also basically non-existent. Fixes #1002 * Added 'Track this document' link on drafts. Fixes #1085. * Mark concluded BoFs as BoFs, not Concluded WGs. Fixes #1169. From bartosz.balazinski@interdigital.com: * Added the new version of the shepherd writeup as a comment when it's edited. The new version works like this: - Any shepherd writeups done before the document is submitted for publication are not disclosed in the history. - When the document is submitted for publication the available writeup (if available) is added to history. - Any further writeups after the document has been submitted for publication are disclosed in the history. From suresh.krishnan@ericsson.com: * Refactored the mails sent when state is changed along with annotation tags. Don't send emails for only comment changes, just add a history entry. For state changes and annotation changes, only send one email, containing information about both state changes and annotation tag changes. Fixes issue #1127. From jmh@joelhalpern.com: * Included confirmation addresses in ID-Submission success notice. Fixes issue #1097. * Added document titles to status change request email. Fixes issue #1069. * Added 'Last Call Issued:' to front of last call atom feed entry subjects. * Fixed conflict review text for irtf docs to reference RFC 5743. * Added the last call expiration date to the document header, and remove duplicate code for producing the iest state summary. From markus.stenberg@iki.fi: * Added .csv export from private community lists. Fixes #1074 * Took care of #841 by moving correctly outside altogether. From adam@nostrum.com: * Fixed #1153: Fixes IPR disclosures being counted multiple times and counting of 'not yet approved' IPR disclosures. From rjsparks@nostrum.com: Refined Bill Fenner's regex based search through documents for references. This populates RelatedDocument with relations for references for each type draft Document; replaces these reference relationships with updated copies upon draft submission. Note to deployer: There is a script to run in patches/fill_in_references.py that does the work of bringing the database up to date. It takes around 10 minutes to complete on a fast development laptop. Fixes bug #1173 Other changes: * Tweaked the style used on the nomcom feedback pages a bit, to give people a bit more room to write in the feedback field. * It turns out that the get_user_email is called for every nominee listed on a feedback page, which is insane. But until the template can be rewritten to do this in a more sane way, we cache the lookup result. * Changed things so the left-side navbar doesn't jump to full page width in the instant before the main content is loaded. NB: Cleanup action needed: replace all px dimensions with em, consistently. * Included the IAOC update session in the training section of the agenda. * By preference, show the same email for a logged-in user as his login, if it exists; otherwise show the newest active email address. * Many minor fixes to agenda templates and the known-good agenda test files. -- Henrik Levkowetz 06 Nov 2013 20:33:43 +0100 ietfdb (4.82) ietf; urgency=high * Removed the ams_filters template tag file from the meeting app -- it was a copy of the ams_filters under secr/, and masked it. * Added another state to the possible IETFWG states in the group proxy models file, to avoid exceptions. * Changed the 'pipe' utility to work with commands taking input on standard in, also when providing an emtpy string as input. This is now different from providing 'None' as the input argument, or omitting it. * Tweaked the utility script to find missing submission confirmation emails. * Rewrote html and text agenda templates to take schedule as data. * Added the utility program (vzic) used to generate timezone-specific iCalendar information, and the original .ics files generated by the utility program in 2010. * Added some code to vzic to make it output symlinks for all timezone links specified in the Olson database, not only some of them. * Included newly generated .ics files, from http://www.iana.org/time-zones/repository/releases/tzdata2013h.tar.gz. This updates the .ics files to use timezone information current as of 27 Oct 2013. * Added links to the individual nominee fedback pages to the private nomcom index page, in order to make it easier to find and look at the feedback for a filtered set of nominees. * Added a template filter to do required escaping in iCalendar pages. * Changed the path to iCalendar vtimezone information to point into the release directory, so that we can make updated vtimezone information available directly in a release, instead of out-of-band. * Provided new methods Meeting.vtimezone() which return a vtimezone stanza for ical files, based on the timezone setting for a meeting, fetched from a pre- generated file; and Session.ical_status(), which provides a string appropriate for use in ical STATUS: entries. * New view code and templates for agenda pages, updating all agenda templates to take schedule-specific information so that they will work with arbitrary schedules, not just the official schedule for a meeting. * Updated test masters to match the changed (and now more predictable) order of some entries in the agenda pages. * Merged [6486] from rjsparks@nostrum.com: Slightly more than minimal changes to have questionnaire reminders go only to those nominees who have accepted but have not yet sent in a questionnaire for a given position * Marked some instances of code in the meetings app which used variables that don't exist with XXX Fixme. Removed dependency on the logging module, we use syslog by default. Replaced some log.debug() calls with debug.log(). * Removed a lot of dead code and unused imports. * Merged [6580] from rjsparks@nostrum.com: Reverted materials.html and the view that drives it to before the 4.70 merge. Tweaked the view to get (I hope) the right things. * Updated the template and support functions for iPhone agenda page. -- Henrik Levkowetz 31 Oct 2013 19:13:02 +0100 ietfdb (4.81) ietf; urgency=medium * Merged in branch/amsl/1.50@6388 from rcross@amsl.com, with secretariat tool announcement fixes, permission fixes, and agenda database schema fixes. * Required logins to be all-lowercase. This was prompted by repeated trouble with people registering non-lowercase logins, then trying to log in with all-lowercase, or vice versa. * Merged [6465] and [6466] from rjsparks@nostrum.com: Added the ability to send reminders to complete questionnaires to nominees in the accepted state. Changed the send_reminders management command to not take any arguments and run against all active nomcoms. Removed bugs from the send_reminders management command and added tests for it. Adjusted several dbtemplate titles and content. Fixes bug 1157 * Merged [6468] and [6469] from ejimenez@yaco.es: Now a Nomcom incumbent can be set to None for positions. Fixes #1156. * Let Timeslot.session() Return the first session, rather than none, for timeslots with multiple associated sessions for the public schedule. * Made the timeslots sent to the agenda.ics and agenda.txt template distinct, to avoid duplicate agenda items. Fixes issue #1155. * Added caching for the somewhat costly TimeSlot.session() method/property. This speeds up text agenda generation using the legacy template substantially. * Tweaked the strings displayed when a plenary agenda cannot be shown. * Changed the select statement in MeetingProxy.sessions() to produce correct results for the official agenda, and filter out timeslot entries without scheduled sessions. * Remove the AD information from the text agenda until we fix the database so that it displays consistently correctly for past meetings. * Reverted to release 4.72 versions of several functions and methods, starting with agenda_info() and the view functions that use it. Also changed meeting/tests/agenda.py to accept matching return values. Reverted old supporting models and proxy models to 4.72 versions, too, in meeting/proxy.py and proceedings/models.py. Updated the proxy models which rely on TimeSlot to work properly with the m2m sessions field, and adjusted some other functions, such as session_agenda() to also understand the m2m sessions field (and its reverse). Added an understanding of the "bof-conc" state to the code which returns 'BOF' or 'WG' for agenda templates. * Reverted to release 4.72 versions of txt, ics, and csv agendas, with minor tweaks. * Improved the test suite with improved diff tests for retrieved urltest files. A number of other test tweaks and enhancements, including several known-good master files to diff generated pages against. * Cleanup action: replaced the noTable block construct with start/end table_content blocks in order to not have to open and close tables in different blocks, and not have empty tables lying about. * Reinstated the release 4.72 get_agenda_info() as legacy_get_agenda_info(), and tweaked it to work with the new Timeslot model's sessions field. Reverted the html agenda view code to use legacy_get_agenda_info(), based on the release 4.72 code. This is a fix to display the html agenda for now, and will need more cleanup, but this should be done without introducing scheduledsession instances to the template. * Added a property method to return what the 'session' field used to return, but based on the 'sessions' m2m field filtered with the meeting agenda. This is right for the main meeting agenda, but not for personal schedule layouts, so this isn't a final fix. * Reverted html agenda templates to release 4.72 state, except for a jquery version change and moving inline weekview javascript to a separate file. * Changed the WG edit form so that once an acronym has been set, the acronym field is read-only; also changed the form validation to not permit changes to an existing acronym. * Changed NOMCOM_FROM_EMAIL to be the Nomcom chair instead of the secretariat. Fixes issue #1152. * Merged [6413] from rjsparks@nostrum.com: Removed redundant call to not_duplicated from the nomcom/private_index template. It was already applied in the view, and interacted badly with the list comprehension method of filtering for NomineePositions that had associated questionnaire responses. Fixes bug 1151. * Added Ryan to the admin list so he'll get 500 notifications. -- Henrik Levkowetz 21 Oct 2013 22:58:26 +0200 ietfdb (4.80) ietf; urgency=high **Agenda Scheduling Tool** This is a major release which provides the code drop from phase 3 of the Agenda Scheduling Tool. The code has been merged in, and a lot of minor alignments done. Deployment of this will make the phase 3 agenda editing tools available from the main ietf site, will align the database schema with that used in the ongoing development work, and will provide the correct models for secretariat tool adaptations. Other changes: * Reworked the TestCase code and fixture loading substantially, resulting in a substantial speed increase for tests when run on a transaction- capable database engine. * Added an index page for nomcoms, at /nomcom/, with links to nomcom pages and announcements, where they exist. * Fixed some bugs in the EncryptedTextField class. * Fixed the language of the nomination confirmation message. * Changed 'requirement' to 'desired expertise' in user-visible places in the nomcom app. * Fixed a wrong secretariat template extension name. * Provide the missing safe_rep function required in the back-ported assertIsNone() test case method. * Added an explanatory paragraph to the Desired Expertise page. * The exception string for submission upload read errors seems to have changed after we switched to wsgi, from "Client read error" to "request data read error". Now looking for just "read error" to catch both. * Tweaked the introductory text on the Nomcom Desired Expertise page. * Added a makefixture management command, from http://djangosnippets.org/snippets/918/, somewhat hacked. * Updated the test fixtures, built to be more internally consistent in order to be able to pre-load them for the test suite. * Fixed the many times duplicated position names in the position selection drop-down list in the nomcom private index page. Fixes issue #1137. -- Henrik Levkowetz 03 Oct 2013 16:22:39 +0200 ietfdb (4.72) ietf; urgency=medium * Added a migration for a new ConstraintName field: penalty * Fixed 2 issues with the wg document list: Wrong heading for the related docs, and candidate wg docs listed as wg docs, rather than related docs. * Fixed an issue arising when trying to edit a document state when there's no prior state, and removed the link to edit the document state when there's no set state. * Tweaked the template used to generate the various 1wg-charter*.txt files to properly fetch email addresses. * Merged in a fix from rjsparks@nostrum.com for incorrect IANA notification email addresses. * Added Nomcom role suport to role_required() through has_role(). This will let us get rid of the more specialized ad_hoc nomcom_memeber_required() function which can't handle access for multiple roles. * Replaced the ad_hoc nomcom_member_required() decorator with the generic role_required() decorator. Changed access permission for nomcom-chair only pages to also permit nomcom advisor access (this lets the previous nomcom chair explain and assist as needed). Also tweaked some text strings in the email feedback pipe script. * Added a WSGI connector for the datatracker, to let us run under mod_wsgi. * Modified the code which accumulates ipr disclosures associated with a document, shown as an IPR count in search results. The previous code had two deficiencies: it could count some IPR disclosures twice, and it also included withdrawn and pending disclosures. The current count matches the IPR search results better. * Moved the nomcom private key storage out of the source tree, which is a silly place to put it. * Added a dev-specific robots.txt, which blocks all robots. * Merged in the latest secretariat code from rcross@amsl.com, from branch/amsl/trunkmerge@6149. * Added the ability to search for documents from a certain stream to the main document search form. * Added overview pages for non-ietf-stream documents (ise, iab, irtf), and links to them form the sidebar. * Removed the old ad documents page and its view function, and put in a redirect from the temporary /ad2/ url to the /ad/ url. Also replaced the two AD document links in the lefthand menubar with one pointing to the new view (under the old URL). -- Henrik Levkowetz 19 Sep 2013 21:31:42 +0200 ietfdb (4.71) ietf; urgency=medium * Merged in personal/rjs/r6117-pubreq@6119: - Made Publication Request (for documents from IETF working groups) an explicit action rather than a side-effect. - Simplified the working group state edit form. - Added hints to the WG state edit form to use the document's main page to request publication. - If a document is moved into IESG processing directly by the secretariat or an AD (old processing path), set working group state accordingly. * Merged in branch/iola/shimfree@6083. This cleans up and moves relevant code from idrfc/ to doc/. There should now only be a bit of old wrapper code left in idrfc; that will go away when the remaining models which use it are cleaned up. * Fixed the manage.py command so it adds our own import path to the Python path automatically; people won't have to explicitly add pythonpath any more:: $ PYTHONPATH=$PWD ietf/manage.py ... * Applied a patch from rjsparks@nostrum.com to fix a line colouring bug in IPR lists. * Fixed a regression: wrong URL to IESG state diagram in state help. Fixes issue #1119. * Merged personal/rjs/v4.70@6042: - Made reporting IPR consistant across document searches, IPR searches, AD document queues, last calls, and agendas. All these points now report on the document(s) being directly queried, and the documents those transitively replace or obsolete. - Brought search results against WGs and document titles into consistency with results from searching for individual documents - Added the IPR count to the link on the documents main page (when not zero) - Built on Henrik's reimplementation of all_related\_\*, making the \*_related_\* functions return DocAlias? lists consistently, and added corresponding _relations_ functions to get lists of actual RelatedDocument? objects. - Added getting the DocAlias? with the same name to Document - Added getting related IPR disclosures (as described in the first bullet) to Document - Simplified ipr/related.py - Removed the use of DraftLikeDocAlias? and IETFWG from ipr/search.py. Retooled the various search functions and templates to use DocAlias? and IprDocAlias? directly. - Removed dead code from ipr/search.py - Removed the special handling of WG 2000 from ipr/search.py This fixes bug #1071 * Fixed a regression in display of IESG state; added back substate information. Fixes issue #1117. * Added template rendering verification on dbtemplate form submission in order to catch errors in edited templates before they are committed. This should prevent server 500 errors when rendering dbtemplate pages. Fixes issue #1113. * Selectively removed the agenda and minutes warnings from the meeting materials page, for educational sessions where agenda and minutes aren't expected. Fixes issue #1115. * Changed the order of the files diffed in the draft diff links on the history page. Fixes issue #1114. * Added Auto-Submitted and Precedence header fields to outgoing email messages. * Fixed a possible KeyError bug for a missing form field 'by'. * Added code to expire last calls for statechg documents too (in addition to iesg drafts) with the expire-last-call script. Fixes issue #1092. * Added secretaries to those who are authorized to edit stream info for a document. * Added a penalty field to the ConstraintNames, for use in agenda scheduling. * Refactored group membership code, adding advisors and liaisons to the membership list. Needed for the nomcom code. * Fixed the broken WG document list template (regression caused by the shimfree merge). * Fixed the red-on-red error message style which came in with the nomcom code merge. * Fixed the nomcom email pipe command to read from stdin if no file given, and give better error messages. * Added migrations which should have been part of release 4.70. -- Henrik Levkowetz 09 Sep 2013 21:40:25 +0200 ietfdb (4.70) ietf; urgency=high **NomCom Support** This release provides a datatracker nomcom app, ported from the earlier standalone nomcom app written by henrik. It includes public nomcom pages which provides an interface for members of the community to propose and comment on nominees for the positions the nomcom is filling, and private nomcom pages for secure management and browsing of positions, nominees, and comments. -- Henrik Levkowetz 06 Aug 2013 12:15:56 +0200 ietfdb (4.61) ietf; urgency=medium **IETF 87 Code Sprint** This release provides the code from the IETF-87 code sprint, and also a number of fixes to things reported during the IETF, and some enhancements requested. Noticeable enhancements are that document search now permits you to search for all kind of documents, not only for drafts and RFCs (you can searc for charters, slides and whatnot); that Research Group chairs now have the ability to manage their documents in the tracker; and that the tracker now has the ability to generate WG and draft email aliases, which permits us to plan a transition of the email aliases to the main ietf mail server. There are however many other much requested fixes and enhancements :-) From markus.stenberg@iki.fi: * Added support and scripts for generation of wg- and draft-aliases. Fixes issue #713. From adam@nostrum.com: * Added the capability to search for all kinds of documents in the main datatracker search page. Fixes bug #838. * Added tooltip capability to document tabs, and tooltips for disabled IESG Evaluation/Review tab. Fixes bug #448. * Added a document link to the emails sent on discuss/comment changes. Fixes bug #916 From rjsparks@nostrum.com: * Added related documents to the set of documents checked for IPR declarations when building last call text. Partially addresses #1071. From suresh.krishnan@ericsson.com: * When working group chairs added an annotation to a document, the date on the history entry was wrong. It has now been fixed. Fixes issue #1046. * Fixed the last call processing code to identify the new placeholder writeup. Fixes issue #884. Other fixes: * Added group secretaries to those authorise to edit group document meta-information. * Added RG chairs and secretaries to those authorized to edit group document meta-information. * Added a landing page for missing associations between login and Person record. * Tweaked the charter-and-milestones presentation in order to not blow up on bad character encodings in charter file. * Added back the 'Request Publication' action (regression loss) on draft pages for the non-ietf streams. * Fixed a bug in rendering the AD/Shepherd column in document list pages, when no AD is associated with a document. Fixes issue #1079. * Modified the doc stream-change edit form to reset doc.group to None on stream changes. Fixes issue #1078. * Fixed double plural 's' caused by the use of 'pluralize' in the template *and* plural forms for the group headers returned by fill_in_search_attributes(). Fixes issue #1077. * Fixed the incorrect blankline placemnt in the refactored template for id-index and id-abstracts, when generating abstracts. Fixes issue #1076. * Added convenience methods to the Document class to recursively retrieve all forward / reverse relationship of a kind or set of kinds. * Fixed the handling of help pages for doc states. * Added a direct link to the cookie options in use by the datatracker to the lefthand menubar. Fixes issue #1075. * Fixed a regression: restore diff pane in history page for RFCs. * Fixed a regression: display of full draft/rfc text now again obeys the full_draft cookie setting. * Changed the mimetype detection code to only read first 4k block of file, not the whole file. * Made the code which uses the 'magic' module to determine file type and encoding work with both the old and new interface to python-magic. * Added a guard to prevent duplicate RFC-Editor notifications for approved documents, and added logging to the notification routine. -- Henrik Levkowetz 01 Aug 2013 18:26:21 +0200 ietfdb (4.60) ietf; urgency=high **Shimfree Document Pages** This release provides new shimfree code in /doc/ which replaces code mainly from /idrfc/ and /idindex/. It comprises the first two code drops from the shimfree project. There are also some additional functionality, as detailed below. * Added an index page at /help/state, listing the document states that have help information. * On request form the secretariat, added a note to the new I-D announcement messages about there being a couple of minutes delay between submission and the appearance of htmlized document and diff on the tools servers. * Merged in two huge chunks of shim-layer removals from olau@iola.dk, comprising: - Deleted dead code in many places. - Renamed id-something to draft-something, make the "is this eligible for expiration" logic clearer - Added a name for IPR search URL - Revamped the ballot popup view - URL reversed the IPR search link instead of hardcoding it - Cleaned up search views and remove dead code, port them to the new DB schema, hack related views in iesg/ and wginfo/ to use the new search interfaces, avoid camelCase in search GET parameters (with backwards-compat fallback), add some simple search unit tests, remove caching from views_search.py index pages as they're now pretty fast to generate, rewrite ballot popup JS, regularize some CSS classes to use hyphen-notation rather than camelCase, move some of the search templates to doc/. idrfc/ now mostly contains some wrapper code still in use by other subdirs, some ported code not yet moved, and dead code. - Fixed output bug in test crawler and print referrer upon errors so it's easier to figure out where a link came from - Added /doc/in-last-call/ to crawler, report original page as referrer in a redirect chain rather than intermediate URL - Ported idindex to new schema, speed them up, add tests, refactor index page in views_search to share code with the text index file, get rid of some special-case idindex filters from ietf_filters, move "/drafts/" redirects to a file in /doc/ - Ported /idtracker/status/ and /idtracker/status/last-call/ overview of drafts in IESG process to new schema in /doc/iesg/ and /doc/iesg/last-call/ - Added redirects for all of /idtracker/\*, removed all view code and other dead code from idtracker/ - Removed the idtracker sitemap indexing drafts - in its current form, it adds nothing of value to the HTML-based /doc/all/ view, and it's pretty slow - Ported idtracker feeds to new schema, move them to doc/, cleaned up idtracker/ - only templatetags/ietf_filters and proxy code is left - Removed .related many to many relationship, it's not really useful since we always have to restrict on the relationship type anyway, instead add two helpers for doing the necessary queries (in both directions) - Added migration for transforming the .desc on the new_revision events into something more akin to what is actually shown in the history page - Added migration for blanking IESG notes that just consist of "RFC XXXX", these have been superfluous for some time - Grant stream chairs access to changing the stream on a draft - Hacked the format_history_text filter to be less weird, using the same formatting for snippets and full text, also link up legacy ballot set events - Moved the decoraters + utilities to new ietfauth/utils.py file - Added simple helper to Email to identify invalid email addresses (from legacy author entries) - Used new new_revision .desc format for when drafts are submitted - Improved the looks of the button class by adding extra contrast and a linear gradient. Currently the gradient is only visible in fairly recent browsers. - Rewrote draft and RFC tabs in terms of the new schema, porting write-up and history tabs as well - Fixed two bugs in RFC Editor syncing: make sure documents we don't know beforehand get a "draft" type and make sure individually submitted drafts get the type="individ" group instead of NULL - Made the CSS-styled button feel a bit nicer to use by flattening the active state, also introduce some temporary styles until browsers catch up with the standard syntax - Added migrations for fixing 1) a dummy RFC entry, 2) three stand-alone RFCs that didn't get their doc.type set, 3) a big bunch of historic stand-alone RFCs that have doc.group=None - set these to the individual submission "none" group for the time being so the view code doesn't have to deal with a special case. In some cases this is wrong since there actually was a WG associated but unfortunately fixing them properly requires detective work (probably parsing the RFCs) and in at least some cases recreating historic WGs. In case someone ends up doing this, the documents to check can still be found with Document.objects.filter(name__startswith="rfc", group__type="individ") since there are almost no new RFCs that didn't went through the I-D process. - Merged the I-D and RFC views by showing I-D information on RFCs too. I-Ds that have been published as RFCs redirect to the RFC URL. Also support alias URLs so e.g. /doc/bcpXXXX redirects to /doc/rfcXXXX. - Fixed revision augmentation so events after RFC publication gets a "RFC" designation - Fixed a bug with tabs not using provided name but rather doc.name - Displaying draft-iesg state rather than doc.friendly_state as IESG state, also show a notice that the IESG state refers to post-RFC processing if it does, like the old separate RFC page did - Fixed the RFC number doc.note migration to catch combined "RFC XXX; BCP XXX" notes too, use the opportunity to remove inserted HTML tags from notes and rely on linebreaksbr filter instead (the other thing was a left-over from the Perl days), update the various uses of the note to reflect that - Refactored slightly to make views_doc.py independent of other idrfc code - Moveed idrfc/views_doc.py to doc/ with associated templates, replace the somewhat fragile simple URL tests for views_doc.py with ordinary unit tests. The new tests are still fairly basic but at least test more than the URL tests did. - Made sure RFC's (and BCP/STD/FYI) are stored as RFC123 instead of RFC0123 in the alias table with a new migration and a change to the RFC Editor sync, this in turn makes /doc/std1/ do the right thing - Now /doc/std1/ works, we can actually do a local link in urlize_ietf_docs rather than linking to the tools.ietf.org server - Fixed history text formatter: sanitize HTML before adding linebreaks and non-breaking spaces, this cuts the time to render a history page with long comments in half - Added a test crawler that walks through the crawlable part of the site, reporting errors and slow pages - Got rid of initial "No record" positions when showing old positions, it's just noise - Added a .select_related() to the document main tab to reduce the number of DB queries, unfortunately it seems it doesn't really help with Django 1.2.x due to a bug (Document inherits from DocumentInfo which makes things a bit more complicated) - Introduced a simple cache in doc.get_state so repeated reads don't cause a DB query - Cleaned up the search code in preparation for removal of the shim-layer; use a static button and don't send extraneous GET parameters -- Henrik Levkowetz 23 Jul 2013 18:32:52 +0200 ietfdb (4.53) ietf; urgency=low This release provides improvements in the test suite, which nows runs cleanly with test database rollbacks (using InnoDB) in less than half he time it takes to run with a MyISAM test database without rollback support. Most of the time is now spent on the page load tests, not on fixture re-loading. -- Henrik Levkowetz 15 Jul 2013 09:32:18 +0200 ietfdb (4.52) ietf; urgency=medium This is a minor bugfix release, in preparation for the next major merge. * Fixed problem with caching of utc agenda -- use a separate cache name for this. * Permit unicode milestone text (using unicode() instead of str() in comparison when looking for milestone changes). Fixes issue #1065. * Added a list of releases below the release notes at /releases/* * From RjS: Added a case in the render_ballot_icon() filter for statchg documents. * Removed duplicate '.errorlist' style. * Fixed missing name change when moving settings from rfceditor module to settings.py. * Merged [5613] from mcr@sandelman.ca: include a way to dump timedeltafields so that it is possible to save data to fixtures. From olau@iola.dk: * Skip IANA - Review Needed and Version Changed - Review Needed changes from IANA as it turns out that the Datatracker is the authoritative source on these states. Also improve logging so that the raw JSON from IANA is dumped, the parsed JSON on imported changes is dumped and we write to syslog before starting a sync script in the notification view. * Only add charter state change link when chartering, it doesn't make sense for an approved charter. Fixes #861. * Don't display group.comments on the charter document page. Apparently group.comments have been used by the Secretariat in the past for chartering comments, but it's not possible to edit the field and the whole thing doesn't make sense from a modelling perspective - a feature like this should probably use the note field on the charter. Fixes issue #1048. * Don't crash if an attachment has been created already, just reuse it - this case shouldn't actually happen, but apparently sometimes does, probably due to a concurrency issue * Add link to charter pages from the milestones editing page (besides the cancel button), fixes #1044. * Special-case proposed working groups with respect to milestones, they get the charter milestones on the WG charter page rather than the current set * Show approved milestones on /doc/charter-xyz/ page if the charter is approved instead of only showing proposed milestones for proposed charters -- Henrik Levkowetz 14 Jul 2013 16:05:36 +0200 ietfdb (4.51) ietf; urgency=low This is a minor bugfix release, in preparation for the next major merge. Fixes: * Use argument 'draft' for document instead of 'approved_draft_name' when sending sync notifications to the RFC-Editor. * Moved settings for RFC-Editor sync to settings.py. * Don't actually do a post to the rfc-editor's state sync interface for a publication request when not in production mode. * Merged [5770] from rjsparks@nostrum.com: - Added editing last call messages, requesting, issuing and tracking IETF LCs to status-change documents - Added a Cancel button to the form that allows editing the relations for status-change documents - Added instructions to the agenda section 3.3 This adds states to status-change- documents and has a migration that must be applied. Fixes bug #1039 -- Henrik Levkowetz 09 Jun 2013 22:03:29 +0200 ietfdb (4.50) ietf; urgency=medium **Milestone Management** This is a major feature release, which introduces datatracker support for milestone management. WG Chairs will, if they are logged in, see an 'Add or edit milestones' button on the WG's Charter page in the datatracker, just below the charter text, and Area Directors and Secretariat staff will see a new link 'Milestones' in the left-hand menu-bar, leading to a page which lists Milestones Needing Review. -- Henrik Levkowetz 16 May 2013 00:34:16 +0200 ietfdb (4.45) ietf; urgency=medium This release contains bugfixes and some minor features. * Added IAB Chair permission for some IESG agenda links. * Added alternative names for 2 iana states which seems to have changed name since the code was originally deployed. Also added a guard against sending state change emails when the iana state hasn't actually changed. * Don't use non-ascii names in the email lists (at least for now), as the the code doesn't generate proper email header IDN encoding for non-ascii addresses. * Added the secretariat to the recipient list for publication request emails generated by the datatracker. Fixes issue #964. * Fixed a problem with checking shepherd writeup editing permissions for logged-in users with no associated person object. * Reverted a change from [5602], reinstating the explicit To: field for last-call announcements, because removing it caused the copies of the announcements destined for email lists to be held by Mailman for moderation because of implicit destination. Relates to issue #811. * Changed additional places to use IANA sync settings from settings.py * Merged [5645],[5646] and [5647] from olau@iola.dk: - Added support for notifying the RFC Editor upon draft approval - Added action to post to RFC Editor on non-IESG publication requests too - Fixed a bug that the CC on the announcement copy sent to IANA wasn't cleared causing people on the CC to get duplicate emails * Refined the INSTALL instructions for secretariat releases. * Added instructions on updating the release version and date for patch releases. * Added RjS to the ADMINS setting, so he will receive exception emails. -- Henrik Levkowetz 14 May 2013 21:50:09 +0200 ietfdb (4.44) ietf; urgency=medium This is a combined bugfix and feature release. It provides improvements to last-call messages, the display of document shepherd information, the content of AD pages, IESG ballot information, and various forms; and it fixes a number of bugs. From rjsparks@nostrum.com: * Merged [5600] and [5602]: Changed the header to last call messages to IETF Announce and to IANA to make replying to the announcement less likely to create an unnecessary ticket. * Merged [5569] and [5572]: Small fixes in 4.43 and showing the shepherd (when there is one) on search results, documents for this ad, and wg document lists. Fixes bug #972. * Merged [5570]: Moves the interface to edit shepherds and sheperd writeups out of the wgtracker interface and into the doc views (via idrfc). Added a little to the simple authorization code (can_edit) in idrfc. Added a way to reset the writeup to the current templates (leaving extension points to take templates for non-ietf stream documents). Fixes bug #967. (This also fixes tickets #834 and #691 (which were effectively duplicates of #967) * Merged [5595]: Tweaked the grouping code to not break documents of the same type up * Merged [5476]: - Added a document type for changing the publication status of other documents, and the UI for manipulating them. - Added charters, conflict reviews, and status changes to the AD's 'My Documents' page - Improved the presentation of all document types on the Agenda, Future Telechats, Scribe and Moderator package pages - Made the reverse name for document relationships explicit rather than deriving them from forward names - Added a way to get to the underlying Document (when it exists) from an RfcWrapper - Unified several common forms used by different document types From henrik@levkowetz.com: * Changed which email addresses the submission tool uses for confirmation emails and sending out full submission status URLs from the emails found in the submitted document (which could be empty, broken, or intentionally different than the original authors) to the author emails from the previous version, where a previous version exists. This fixes breakage which can occur when no valid email addresses can be found in a broken submission, and also ensures that at least one of the authors of a previous version signs off on a new version, preventing submission hijacking. * Added a section to the meeting materials page for IAB sessions. Added a link bar at the top to make it easier to find sections like Training and IAB. * Don't list documents replaced by other documents in the IESG Status list at /idtracker/status/. * Fixed a bug which would set the state in the event accompanying a WG activation to 'Proposed', which messes up various views. * Add new tag 'rev-wg' to the list of valid annotation tags for the ietf stream. Note: This list and those on nearby lines needs to be refactored into a table, instead of sitting in the code. * Added instructions on how to patch the production code (if necessary) to the INSTALL description. * Fixed rounding issue in IESG positions neded calculation. Fixes issue #974. * Made agenda views with timezone information work also for earlier meetings (those without timezone data available). -- Henrik Levkowetz 16 Apr 2013 00:49:24 +0200 ietfdb (4.43) ietf; urgency=high **IETF 86 Code Sprint** From Jim Schaad : * Working Group document page now allows for addition of documents to community lists. * Added new rules to the atom tracker for picking up documents in specific states * Added new rules to the atom tracker for picking up RFCs * Changed the header fields on the RFC table so that they reflect RFC descriptions rather than I-D descriptions. * Increased the set of information being returned on the atom viewer to reflect IETF specific information. From housley@vigilsec.com: * Send email to statements@ietf.org when a pending liaison statement gets queued. From jmh@joelhalpern.com: * Fixed the moderator package Conflict review text. * Added the document notification list to the destination email addresses when the document leaves IETF LC. * Repaired the ballot requirements string * Removed the 'Set all to not on agenda' button, as it is never used. From adam@nostrum.com: * Fixed formatting for history page. Relates to issue #210. * Added links to the session request page * Two changes: (1) searches by substring rather than 'begins with' (to allow, e.g., searching by last name); and (2) limits results to 10 entries (to limit server load and limit effectiveness of email-scraping attacks) * Fixed agenda oscillation problem (removed scrollbars from iframe) From cabo@tzi.org: * Added javascript functionality to make the UTC agenda convert it's UTC times to Browser local time. From rcross@amsl.com: * Ticket #673: Add the ability for the secretariat to clear a ballot to the tracker From suresh.krishnan@ericsson.com: * Checking for loss of comments when AD enters comments without changing state. Also modified the base css to have an unified errorlist format. From henrik@levkowetz.com * Some additional tweaks to the INSTALL text. * Added a note on secretariat releases. Reformatted to resolve rst markup mistakes -- '$ rst2pdf INSTALL' now works. * Ask people to use their account profile management form to add email addresses, instead of creating new accounts, on the create-account form. * Tweaked mergedevbranch to make the sprint merge/test cycle a little bit easier. * Tweaked the code from [5518] to handle the case where a document doesn't have any state set yet. * Changed the community tool email notification code to not try to send to nobody, and to use individual To: addressing rather bulk Bcc: addressing. -- Henrik Levkowetz 13 Mar 2013 19:26:54 +0100 ietfdb (4.42) ietf; urgency=high This release brings only minor new functionality to the datatracker (timezone indications on the html agenda, and an UTC version of the html agenda), but it's important because it includes the secretariat tools as part of the datatracker release and source repository, and makes the test suite also run secretariat app tests. Details: * Provides the html agenda for IETF meetings with local timezone indications, and adds a new html agenda with UTC timezone indications. * Merged in branch/amsl/trunkmerge@5449 from rcross@amsl.com, with some tweaks. This provides the secretariat apps. * In order that document states (which may be used by old documents) should not need to be removed when state machines change and states go out of use, all document states have a 'used' field. The code which accesses the state fields have not been requiring that used=True for the states returned, which is an error. Fixed this by adding 'used=True' to all State.objects.get() and State.objects.filter() call where it's relevant. * Applied patch from olau@iola.dk for some email problems, see issues #949 and #877. * With RFC6410, there are only two RFC maturity levels, 'Proposed Standard' and 'Internet Standard'. Added a mapping between 'Internet Standard' and slug 'std', to be able to process newer RFC info from the RFC Editor. -- Henrik Levkowetz 06 Mar 2013 20:37:14 +0100 ietfdb (4.41) ietf; urgency=low This release is a minor release, with bugfixes and some enhancements to the community draft-tracking feeds. For detailed commit messages, please see: http://wiki.tools.ietf.org/tools/ietfdb/log/trunk * Added a set of help pages for document states, and dded links from the new IANA states to help pages describing the different states. * From rjsparks@nostrum.com: Fixed a bug in the state change logging which caused the wrong document state log entries in some cases. * Merged [5426] from ietf@augustcellars.com: Make sure that the same rule cannot be entered twice in a community list. * Merged [5425] from ietf@augustcellars.com: Modify atom change feed so that 1. It returns the last 14 days of changes rather than the last 20 2. Change the atom template so that it has correct time offsets rather than saying that PST and UTC are the same 3. Change the atom template so that it uses content rather than summary and return HTML content with line breaks as needed. * Merged [5424] from ietf@augustcellars.com: Close the image tag. An empty image tag displays on IE although it does not display on Firefox. * Added variations on the recognized date formats during submitted draft parsing, such that comma need not be followed by whitespace in the formats using comma as a separator between some of the fields. Added extraction of drafts referenced by a document, in addition to RFCs referenced. * Modified the set of permissible parents for session groups, in order to permit an IAB-sponsored BoF to appear on the agenda. -- Henrik Levkowetz 27 Feb 2013 23:24:53 +0100 ietfdb (4.40) ietf; urgency=high **RFC-Editor and IANA Document State Data Exchange** This release is a major feature release, which provides the means to do state synchronization to and from the RFC-Editor and IANA, so that relevant state changes to drafts and RFCs at any of the 3 organizations can be picked up and reflected automatically in the tracking system used by the others. This release is the last piece of a multi-year effort to make the tracker provide seamless tracking of state information from the very first beginnngs of a document (which is provided through the community tracker part of the IETD datatracker, which lets anyone in the community set up tracking notifications for their specific set of documents) all the way through the working group process, IESG processing, to the final IANA and REF-Editor processing and publication. There isn't a lot of eye-candy associated with the current release, but as we get the RFC-Editor and IANA ends set up to use the notification interfaces provided in this release, the state shown in the datatracker should faithfully and timely reflect the state changes in the RFC-Editor and IANA parts of the process. For detailed commit messages, please see: http://wiki.tools.ietf.org/tools/ietfdb/log/branch/iola/statesync -- Henrik Levkowetz 20 Jan 2013 16:38:22 +0100 ietfdb (4.37) ietf; urgency=low This is a minor bug-fix release of the datatracker. It fixes issues with presentation of IESG discusses and comments, anchor names in the materials list page, details of the 1wg-summary.txt page, and some other minor issues. * Merged in a patch from housley@vigilsec.com to handle different documents better in the agenda JSON output. * Added simple logging of test runs, to make it easier to be sure that tests has been run successfully on the latest code. * Added a new field, #16: draft AD (name and email) to all_id2.txt * Made the IPR country field wider to accomodate IPR disclosures referencing many patent instances in many countries. * Updated draft submission author extraction module to handle dash-separated double given names. * Tweaks and fixes to the IESG scribe template templates. * Added a filter for use in displaying document comments and discusses which unfortunately sometimes use html
markup, which should give line breaks, and sometimes contain which should *not* be interpreted as html, but rendered as <... * Limited the 1wg-summary list and friends to WGs, (excluding the 'iesg' area which lists the areas as subgroups, for instance). * Resolved a naming conflict between the builtin messages framework and a variable named messages in wgcharter.views.change_state. Fixes issue #901. * Tweaked the handling of the syslog module not being available on windows. * Fixed what may have been a regression in the form of the anchors in the materials list page. -- Henrik Levkowetz 16 Dec 2012 19:30:30 +0100 ietfdb (4.36) ietf; urgency=medium **IETF 85 Code Sprint** This release contains the features and bugfixes from the IETF-85 code sprint, providing improved WG chair document handling, improved document and agenda display. The code in this release has been contributed by Robert Sparks, Joel Halpern, Ryan Cross, Adam Roach, and Henrik Levkowetz. From rjsparks@nostrum.com: * Enabled diff on the conflict review history tab. Fixes bug #882 * Made it more obvious when an intended status or shepherding AD is not set Removed an unused template Show reset approval text immediately. Fixes bug #900 From jmh@joelhalpern.com: * Moved the Replaced By: line in docent headers up to main header with Replaces: * Added a link to the Shepherd update page to get back to the document manipulatin page. * Made comments optional on WG adoption and WG state changes. * Corrected the test of final shepherd update flag. From rcross@amsl.com: * Changed CONFLICT_REVIEW_PATH from conflict_reviews to conflict-reviews From adam@nostrum.com: * Fixed '%2C' bug introducted (exposed?) by Apple's iCloud handling of URLs * Fixed time column wrapping problem that exhibits in (at least) Safari. From henrik@levkowetz.com: * Tweaked the changelog presentation to work irrespective of current directory, and give a sensible 404 if the changelog can't be found. * Tweaked the html agenda a little bit by adding a day indication for each timeslot, to make it easier to see which day you're actually seeing when the day separator is outside the window. -- Henrik Levkowetz 07 Nov 2012 20:41:36 +0100 ietfdb (4.35) ietf; urgency=medium This release provides a long list of fixes and minor enhancements, covering more than 50 different items found through feedback from users. Major contributors were Robert Sparks, Adam Roach, and Henrik. The changelog will be available at http://datatracker.ietf.org/release/4.35 after deployment. The commit log is at http://trac.tools.ietf.org/tools/ietfdb/log/trunk Details: * Added an 'email sent' success message after sending out a WG review announcement. Todo: Add equivalent messages in all other situations where email is sent out, for consistency. * Added various things which lets us use Django's messages framework to give feedback to users. This includes adding the messages middleware in settings.py, adding a message display are at the top of the page base template, and adding style setting for message display. * Tweaked test/mergedevbranch in a number of places in order to simplify handling (merging and testing) of multiple merges. * Merged [4909] from rjsparks@nostrum.com: Reimplemented clear_ballot to close the existing ballot and create a new one. Changed the all_positions code to only return synthetic no-positions for current ADs when a ballot is actually open * Merged [4904] from adam@nostrum.com: Fixing conflict list; adding AD column. * Merged [4885] from rjsparks@nostrum.com: Refactored close_open_ballots, creating a way to close one abllot at a time. rewrote the clear ballot code to close each open ballot and open a new one * Modified the format of the changelog to confirm fully to the debian changelog format. * Added a simple page to show release information parsed from a release's changelog file. * Improved the handling of iCalendar timezone information -- instead of simplified VTIMEZONE information generated from a template, the VTIMEZONE information for a meeting's timezone is read from file (where it presumably has been generated from the Olson timezone database, for instance using vzic. * Added an utility script to extract information about the outgoing confirmation request email related to a draft submission. * Added a management command to generate bibxml files for drafts. It's not fully cooked yet, as it needs to differentiate between documents which are currently drafts, and those that have been published as RFCs, but the basics are there. * Add an name utility function to return a name's initials. Handle names with an uppercase surname to the left of the given name correctly. * Added support for reverse-order (i.e., Japanese, Chinese, and other) names with uppercase family name in the draft submission author extraction. * Added an 'agenda_note' field to meeting.models.Meeting, and added display of content (if any) in html and txt agendas. * Fixed a misleading error message given when disallowed character occurs in a draft filename. * Merged [4879] from rjsparks@nostrum.com: Changed 'protocol writeup' to 'shepherd writeup' in several templates. Fixes bug #885 * Merged [4873] from rjsparks@nostrum.com: Includes the conflict-review document contents in the email sent with the results of the conflict review. Fixes bug #883 * Merged [4866] from rjsparks@nostrum.com: Show link to pending liaison statements to approve to the secretariat. This fixes bug #878 * Merged [4836] from housley@vigilsec.com: Add stream to conflict-review documents in the agenda.json object for the IESG telechat agenda * Merged [4825] from rjsparks@nostrum.com: Updated tests to deal with the mandatory state field * Merged [4811] from rjsparks@nostrum.com: Cleaned up setting wg state, leaving events, and facilitated creating an initial charter for an existing unchartered group * Merged [4806] from rjsparks@nostrum.com: Better handling for BoFs, particularly those that won't create WGs * Updated wginfo/tests.py to work with the merged wginfo/edit.py which requires the wg state to be set. * Fixed a problem with the spiffy ajax handling of email fields when test cases submit a textual list of email addresses instead of a python list. * Use decorator.decorator consistenly in debug wrappers. * Updated version of debug.py, which adds timing and profiling support functions. * Added Michele Simionato's decorator module, for use in debug.py * Merged [4805] from rjsparks@nostrum.com: When abandoning a chartering effort, only revert to approved charters if there's a chance one is there. Fixes bug #868 * Merged [4805] from rjsparks@nostrum.com: When abandoning a chartering effort, only revert to approved charters if there's a chance one is there. Fixes bug #868 * Removed debug statements * Added the creation of a WG state change event for WG state changes. * Tweak the GroupHistoryAdmin list_display. * Fixed missing import of Role. * Added a docstring note about the convention for when save_*_in_history() shoudl be called. * Merged [4842] from rjsparks@nostrum.com: Warn when putting a charter in an unusual state onto a telechat agenda * Merged [4841] from rjsparks@nostrum.com: Allows the IESG Note field to be edited even when empty. * Merged [4840] from rjsparks@nostrum.com: Added more information about RFC5742 conflict review documents to the /agenda, moderator, and scribe pages. Fixes bug #874 * Merged [4858] from rcross@amsl.com: The IPR notification email was still referring to the old CGI admin script; fixed. * Merged [4835] from rjsparks@nostrum.com: Improve the robustness of get_wg_section * Merged [4833] from rjsparks@nostrum.com: Send email to IANA and the IESG when entering IESG evaluation of an RFC5742 conflict review * Added a script to create NewRevisionDocEvent entries for charter files. * Fixed an instance of old use of first_name, last_name in submission tool code. * Fix up scribe template to suite John, undoing a number of fixes from the sprint. * Add shepherd field to all_id2.txt * Reverted a number of changes to the scribe template which made life more difficult for the scribe. * Fixed a problem with blocking comments on charter documents pointed out by rjsparks@nostrum.com. * Fixed another typo. * Show ballot positions also for documents without an active ballot. * Fix typo in import. * Fixed a password reset url which didn't work due to a wrong keyword name in the urlpattern. * Don't try to add a ballot's AD email addresses to a new version notification email if there's no ballot. Also did some linguistic fixes, and got rid of a wildcard import. * Make the mergedevbranch script more flexible in accepting different partial repository paths on the command line. * Make .ballot_open() available on DocumentInfo instead of on Document, too. * Fixed a crash for the case where we're looking at a historic charter page and there's no active ballot for the histoic charter. * Make .active_ballot() available on DocumentInfo instead of on Document, to make charter history snapshots work. * Merged [4773] from olau@iola.dk: Encode uploaded charter text with UTF-8 to avoid crashing on Unicode content -- Henrik Levkowetz 30 Oct 2012 15:19:09 +0100 ietfdb (4.34) ietf; urgency=medium * Merged in [4772] from rjsparks@nostrum.com, a big chunk which in itself combines a number of separate fixes: Liasion Manager: * Patch from Yaco to avoid resetting the From field when changing other items on the form * Gave the secretariat the ability to find/approve any unapproved liaisons * Changed all the email code to use ietf.mail.utils (and removed the fake-mail concept) Charter documents and the Agenda pages: * Added charter documents to iesg/agenda and iesg/agenda/documents * Synced the ordering of drafts on iesg/agenda and iesg/agenda/documents * Allow setting a responsible AD for charter documents * Changed the UI of the charter page to use editlink for changing attributes and buttons for actions (to align with drafts and conflict-reviews) Moderator package: * Refactor: Simplified access to the current BallotDocEvent from a Document * Added functions to BallotDocEvents? to faciliate access to BallotPositionDocEvents?, both for all positions, and current AD postions. * Updated the moderator package to use the Documents from _agenda_data. * Added a filter to assist with rendering the moderator package. * Fixed a bug where different functions in idrfc/views_ballot were using log_state_changed expecting different implementations (a cleanup task should reconcile the _three_ implementations in the codebase of that function). Cleanup from codesprint: * Removed some duplication between doc/util and doc/models by moving things into doc/models * Do not show non-empty discuss text when the ballot position is not blocking * Added a migration to update non-blocking ballot positions that have non-empty discuss text DEPLOYMENT NOTES Please be aware that migration step will take a few minutes to complete. Fixes issue #865 * Tweaked the author extraction code to handle company names in the author list on the first page, when the company names contain a comma, such as for instance 'Foo Bar, Inc'. * Added support for get_file_path() for conflrev documents based on branch /personal/rcross/v4.32@4722, but tweaked to return only the directory, not the full directory+name+ext path, in order to behave the same way as for other document types. * Merged in [4746] from adam@nostrum.com: Adding slides to agenda page * Merged in [4738] from adam@nostrum.com: Added a link to the cookie page, at Robert's request * Merged in [4737] from adam@nostrum.com: Fixed profile update page to keep Alias table up to date. Also, roles for inactive groups are no longer displayed on the profile page. * Applied fix from rjsparks@nostrum.com: Remove old document filtering which is now to strict, letting conflict review documents show in the iesg agenda. * Applied fix from adam@nostrum.com: Display meeting materials with correct ordering. * Removed the ValueError exceptions introduced in the previous revision of the draft author extraction code. Fixes issue #858. * Fixed problem with diff links which erroneously included a template variable interpolation. * Fixed problem with displaying ISE stream documents. * Fixed the update password request form to *not* give an error for existing accounts ,:-) * Fixed some parameter names in the ietfauth urlconf which had reverted to an old form in a recent merge. * Used the .plain_name Person attribute in the agenda documents form instead of the full .name attribute. * The call to liaison_manager_sdos() in set_organization_field was missing a Person parameter -- added it. -- Henrik Levkowetz 22 Aug 2012 14:57:33 +0200 ietfdb (4.33) ietf; urgency=medium **IETF 84 Code Sprint** This is the IETF-84 codesprint release: * Changeset [4724] from rbarnes@bbn.com: Adjusted the scribe template to make it XHTML compliant and fix what Robert broke * Changeset [4721] from adam@nostrum.com: Adding an 'href' method to documents. It doesn't work for documents of type 'liai-att' or 'liaison', but it's a good start. * Changeset [4709] from housley@vigilsec.com: Ability to fetch the IESG Telechat Agenda as a JSON object (agenda.json). * Changesets [4720], [4706], and [4705] from adam@nostrum.com: Adding self-management page for user profile information * Changeset [4704] from suresh.krishnan@ericsson.com: - When the state changes from whatever to Publication Requested, the regular state change mail will go out. - The regular state change mail will be sent to the authors and the wg chairs (this is the current behavior). - Now, in addition to this regular state change mail, another mail will be sent with the title 'Publication has been requested for draft ' and this mail will be sent to the AD responsible for the WG. I considered sending the mail to both the ADs but decided not to bother the other AD :-). * Changeset [4701] from rjsparks@nostrum.com: Moved the prefix for the URI to use for rfcdiff into settings.py. Fixes bug #808 -- Henrik Levkowetz 30 Jul 2012 23:54:19 +0200 ietfdb (4.32) ietf; urgency=medium This is a feature release that provides support for a new document type, Conflict Review documents (conflrev-\*.txt). From rjsparks@nostrum.com: * Adds a new document type for conflict reviews, with a ballot for the IESG 5742 response to a review request * Integrated the new document type into the iESG agenda views (including RSS feeds) * Removed the Edit and Add buttons from the document main view. * Replaced Add with actions appropriate for the document type, such as "Begin IESG Processing" or "Begin IETF Conflict Review", and made most data directly editable on the document's main page, depending on access permissions. * Removed a manual editing step that the secretariat had to perform when sending conflict review messages. The view now composes the message correctly given the stream. * Added a pencil icon motif to differentiate fields that are editable. * Generalized several views and helper functions to use Document instead of (e.g.) IdWrapper * Generalized reading documents from the repository * Added a way to get from IdWrapper to the underlying Document to facilitate migrating way from the Wrapper classes * Added many helpers to Document to assist with migrating off IdWrapper * Minor fixes and other changes - Fixes to document main view to avoid (silent) template failures. - Began removing some of the code that is no longer reachable post-migration - Corrected the behavior of the undefer code and added test cases for it - Improved initial population of notification lists and added the ability to regenerate the initial list * Made the test code that scans for template coverage more robust. Deployment notes: * new setting: CONFLICT_REVIEW_PATH. The associated directory will need to be created -- Henrik Levkowetz 28 Jul 2012 18:29:34 +0200 ietfdb (4.31) ietf; urgency=medium This is primarily a bugfix-release, catching a lot of issues related to the most recent few releases. A few features have also been included, liste first: * Added support for IRTF liaisons. * Improved I-D submission author extraction code, adding support for extraction of affiliation, improved date format extraction, support for additional (unusual) name abbreviation patterns, and more. Bugfixes. Not all fixes are mentioned here; for a complete list please see the commitlog. * Fixed a language typo in the registration confirmation page. * Tweaked the community tracker notification email. * Changed and tweaked various I-D submission emails in order to 1) make it less likely that they would be classified as spam (better ratio of English text to hash urls) and 2) provide better consistency in formatting of key/value information. * From adam@nostrum.com: Fixed an URL in the agenda.csv file which hadn't been updated to match current naming conventions and code. * Added new RFC-Editor state tag 'AUTH48-DONE' to the rfc-ed-queue mirror script. * Tweaked the meeting materials list to avoid duplicate rows for WGs with more than one slot, as long as the materials list is the same (which is the only thing supported by other parts of the system at this time). * Applied ballot popup patch from olau@iola.dk. * Made links to other versions available also for expired documents. * Changed community I-D tracking rule update frequency to every hour. * Rewrote the view and template code for the meeting materials list, which was showing nothing. Better to do the rewrite for the new models than trying to dig into why the proxy models doesn't work any more. * Fixed id_abstracts to include drafts assigned directly to areas, not only individual and WG drafts. * Fixed 1wg-charters.txt (and friends) to not list the areas as if they were WGs. * Updated utils/draft.py and modified the submit app code accordingly. * Merged in [4604] from adam@nostrum.com, which fixes problems with the html agenda code related to the schema transition. * Ballot ids are limited to integers, rather than being descriptive as intended at one point. Adjusted the url regexes accordingly. Patch from olau@iola.dk. * Introduced a line break to clean up the state display for tracked drafts a bit. * Make the link to the search form more prominent in the community list explicitly added documents page. * Sorted WGs in the community rules drop-down list by acronym rather than WG name. * Provided a more comprehensive document state indication. May need further refinement. * Tweaked the community tracker links in the lefthand menubar to avoid line breaking for the WG documents link visible to WG chairs. * Enabled the check for existing account, disabled when we started using self-service http password reset, but hadn't started creating accounts yet. * Refactored the two confirm*() methods in ietfauth/views.py; they need the same processing, only the templates to use differ. * Fixed the back-link on personal list email subscription confirmation page -- it just lead to the confirmation page itself, now leads to read-only list view. * When logged in as secretariat, at /iesg/agenda/ or /iesg/agenda/documents/, and clicking on the position matrix for a document, the overlay window would give a code 500 error, because of a missing ballot id in the templates' url lookup. Fix this by providing the ballot id. -- Henrik Levkowetz 28 Jul 2012 01:51:26 +0200 ietfdb (4.30) ietf; urgency=medium **Community Document Tracking Support** This is a feature release which provides the community document tracking functionality defined in RFC 6293. * Merged community tracking branch from esanchez@yaco.es, r3175-3679,3713-3830. Some additional fixes and smaller upgrades have also been included, as follows: From esanchez@yaco.es: * Patch to add a new IETF liaison-sending entity "IESG and IAB". From olau@iola.dk: * Small patch to avoid constant 500 traceback when someone tries to push an invalid cookie. From henrik@levkowetz.com: * Fix a bug which made the community tracking code crash when search results would show an old RFC without an associated draft. * Tweak the menubar listing of community tracking to show when login is needed, some other text tweaks, and fitting the I-D tracking links under Drafts and RFCs where they seem to belon.g * Minor cleanup of test_runner.py. Added guards against settings which can make tests inexplicably fail. Updated check to avoid running tests on production server. * Remove old non-functional "management issues" link from IESG agenda section 6 title. * Add a way to reach charter urls given a wg name rather than the charter document name. * Add some help for chairs which fuss about not being able to clearly see that they need to be logged in in order to handle approvals. * Behave slightly more gracefully if a submission has already been moved into place, and we are asked to do it again. * Disable the reference-to/referenced-by rules of the community app; they will only produce hits after we populate the document relationship table with reference information. * Simplify "document by WG" display name code. * Correct typo in community draft tracking subscription confirmation email. * Changed the group link on the personal doc list page to use the group acronym instead of whole name, and made the acronym a link to the wg documents page. * Tweaked the display of explicitly added documents (saying "explicitly" rather than "manually", and including the active/expired/rfc state of the document. * When adding a rule for I-Ds, only apply the selection to active I-Ds, not those which are expired or published. * Changes to the rule specifications for document tracking lists: Simplify the filter rules, show acronym in wg and area selection lists, list only ADs of active areas. * Fixups to the merged code, to match the code refactoring done to trunk after the split off of the community development branch. * Removed the grep based searches in utils.py; they are too costly. If tracing lists based on word search is needed, another implementation must be found. * Other minor cleanup. -- Henrik Levkowetz 03 Jul 2012 17:01:08 +0200 ietfdb (4.21) ietf; urgency=medium This is a bugfix release for the charter release (4.20) with some extra changes which were pending: Updated via-rfc-editor handling, better /meeting/requests page, added WG document approval page. From olau@iola.dk: * Add approval/pre-approval page for Secretariat and WG Chairs, with subpages for adding and canceling pre-approvals and a set of migrations for replacing the old IdApprovedDetail with a slightly less confusing Preapproval model. * Add listing of recently approved drafts to approval page by request from Barry Leiba. * Replace get_profile() hack with a test on the user instead, this also makes the ballot icon more robust against users without profiles (which shouldn't happen, but apparently we sometimes get one which results in a crash rather than something more graceful) * Give the incoming name to the top renderer so the links are internally consistent, this is needed because we still have different views for /doc/rfcXXXX/ and /doc/draft-foo-bar/ * Fix regexp fix - [.-_] does not mean "dot or dash or underscore", it means all characters between dot and underscore * Include _ in allowed document name regexp, we currently have 7 drafts with _ in the database despite it not being valid - they can be found with: select name from doc_document where name like '%\_%' and type_id = "draft"; * Fix flow of approval of charters/announcement of the WG action based on feedback from Cindy Morgan, now there's a link on the approval page to go to the edit page which sends you back upon saving, and the edit page doesn't provide a button to send the announcement since you should do that on the approve page (instead it provides a link). * Include current milestones in charter action/review announcements, fixes issue #835. * Add CC for group mailing list in action/review emails, fixes issue #837. * Fix link to charter .txt file on agenda page * Apparently, CHARTER_TXT_URL http://www.ietf.org/charters/ is really http://www.ietf.org/charter/, fix this in the settings.py file * Replace get_profile() hack with a test on the user instead, this also makes the ballot icon more robust against users without profiles (which shouldn't happen, but apparently we sometimes get one which results in a crash rather than something more graceful) * Give the incoming name to the top renderer so the links are internally consistent, this is needed because we still have different views for /doc/rfcXXXX/ and /doc/draft-foo-bar/ * Fix regexp fix - [.-_] does not mean "dot or dash or underscore", it means all characters between dot and underscore * Include _ in allowed document name regexp, we currently have 7 drafts with _ in the database despite it not being valid - they can be found with: select name from doc_document where name like '%\_%' and type_id = "draft"; * Fix flow of approval of charters/announcement of the WG action based on feedback from Cindy Morgan, now there's a link on the approval page to go to the edit page which sends you back upon saving, and the edit page doesn't provide a button to send the announcement since you should do that on the approve page (instead it provides a link). * Include current milestones in charter action/review announcements, fixes issue #835. * Add CC for group mailing list in action/review emails, fixes issue #837. * Fix link to charter .txt file on agenda page From rjsparks@nostrum.com: * Expose how many pages each document contains on the docs on future telechats page. Fixes bug #828 * Replaced the concept of a tag (via-rfc) identifying ise or irtf document (previously the idinternal.via_rfc_editor boolean) with looking at the document's stream. Removed the stream editing form - that functionality is on the edit info form. Put the old-ADs back into the list of choices when editing a document's info. This (re) fixes bug #749 * Fixed a bug in determining if a document is on the agenda, leftover from transition to new schema. From adam@nostrum.com: * Fix to the requests data page: - uses native schema for much greater efficiency - Uses meeting ID properly, so it can find future meetings even if their ID does not match the meeting number - Dramatic improvements to layout From henrik@levkowetz.com: * Try to not use explicit .html extensions in the urls. Redirect from those to .html-less urls. * Added a new field 'short' to Session, to help produce file names for agendas, minutes and slides for groups with different named session, such as for instance 'edu'. Generating distinct filenames directly from the name field gives too long names. * Quick fix for extensionless get_absolute_url(). XXX Fixme: needs bigger refactoring. * Quick fix for crash when going to /wg/imapmove/charter/. I'm not happy about the 'charter-ietf-' constant which now appears several places in the code; we need settings which defines the correct name pattern for different document types (or a table or table column, maybe). But this hopefully will make it possible to continue processing proposed WGs ... * Added missing '{{' before 'submission.filename' in draft announcement email templates. * Other minor fixes -- Henrik Levkowetz 11 Jun 2012 18:40:14 +0200 ietfdb (4.20) ietf; urgency=medium **WG Charter Management** This release introduces major new functionality for managing WG charters as documents. A large number of related and unrelated fixes has also been included, an almost complete list is available below, latest first: * Added a debug utility module on the same level as south,html5lib etc. * Don't try to call get_profile() on a user if the method isn't available. * Merged in fixes from Ole, from branch/charter:r4382-4407, and some changes from Henrik (removing the use of pos.blocked in views_ballot.py, and setting a ballot id in idrfc/testsREDESIGN.py) to make idrfc.EditPositionTestCase succeed. * Don't include interim meetings in those considered for the default meeting number for the '/meeting/' url. * Tweaked the error messages for acronym collisions in the create-wg form. * Added quotes around the WG name in the state change text, for better readability. * Applied a fix to missing nomcom chair in [4384] instead of [4385]. * Made arguments to url help_charter_states match the definition in ietf/idrfc/urls.py. * Fixed a bug in picking up blocking text (patch provided by olau@iola.dk). * Added a parameter to make the commitlog script useful for other branches than the current. * Catch exception which is raised if a nomcom NN group has been created, but no nomcom chair has been announced and added yet. Merged in [4364] from rjsparks@nostrum.com: * Expose how many pages each document contains on the docs on future telechats page. Fixes bug #828 Merged in fixes to the charter branch (r4345 - r4353 and r4354 - r4381) from olau@iola.dk.: * Check and sanitize text file upload (code is factored out in a new helper so it can be reused elsewhere in the future). * Move charter state help to /doc/help/state/charter/. * Say "generate" rather than "edit" when there's no text in the boxes * Don't show diff box if there's only 1 entry (and itself). * Say "Charter" rather than "Recharter" on the charter /doc/ page if the group is proposed or a BoF. * Treat BoF as proposed WG. * s/WG/group/ in acronym clash error message. * Add a star to the required fields. * Fix test broken by previous commit. * Fix buggy new group acronym check. * Amend previous commit to generate writeups on entering internal review instead. * Generate action and review text automatically. * Make phrasing sligtly more clear. * Make it move obvious what the change state view actually does by rephrasing the form. * Fix some phrasing bugs. * Fix terminology confusion and say "send ballot" rather than "issue ballot" to clear up that it is not actually created. * Fix wording of send ballot comment, the actual text was still specific to drafts. * Don't show edit button for snapshots. * Fix bug in hiding "external review needed" checkbox. * Create charters in state notrev instead of intrev, as a side effect this fixes a problem with comments not being saved when starting review on charter. * Use revision numbers to identify ballots and put a warning on closed ballots. * Fix bug in event description when copying over the final approved charter file. * Offer text from latest approved revision in case there's no initial text for a recharter submit form. * Reverse direction of revisions on charter /doc/ page to match tools.ietf.org/html/draft-\*. * Change max acronym length to 10 instead of 8 Additional fixes from Henrik: * Fixed the signature of DocEventAdmin method (needs explicit 'self' parameter) * Added various fixes and correction of merge errors. * Merged in fixes to the migration from olau@iola.dk. * Merged in the charter branch from olau@iola.dk. From Adam: * Added a fix for empty .ics files -- Henrik Levkowetz 11 Jun 2012 18:40:14 +0200 ietfdb (4.02) ietf; urgency=medium Merged [4288] from rjsparks@nostrum.com: * Made several changes to correctly use the new (RFC6410) "Internet Standard" level in email that gets sent at various stages in the handling of documents. Fixes bug 821. Merged branch/iola/migration-fixes@4319, containing these changesets from olau@iola.dk: * [4319]: Only query for regular IETF meetings when calculating cut off dates (reported by Ryan Cross). * [4311]: Fix bug in liaison form that prevents Secretariat users from posting statements on behalf of SDO liaison managers in some cases. * [4310]: Fix problem with direct replyto path in liaison form not using role emails (reported by Stephanie McCammon). * [4307]: Fix missing return in liaison proxy, fixes problem with from email on https://datatracker.ietf.org/liaison/1154/ as reported by Stephanie McCammon. * [4260]: Move note about IANA scraping messages, apparently I managed to put it in the wrong place (they're of course scraping draft approvals, not the ballot announcements). * [4253]: Move last call announcement text to last call event rather than stuffing it inside the state change event. * [4252]: Declare coding system to work around annoying problem when the date produced by SVN is localized. -- Henrik Levkowetz 26 Apr 2012 22:27:36 +0200 ietfdb (4.01) ietf; urgency=medium **IETF 83 Code Sprint** * Made various fixes to test cases in order to support the new code and database setup. * Merged [4265] from adam@nostrum.com: Migrated HTML agenda to new data model. This has several improvements, as well, such as clearer marking of BOFs. * Merged [4226] from adam@nostrum.com: Updated agenda.ics to use new data model. Also, tons more efficient. Additionally, the description field now includes links to relevant meeting materials. * Merged [4224] from york@isoc.org: Related to #816 - Modified base.html so that the logo is clickable as well as the text. * Merged [4223] from york@isoc.org: Related to #817 - added a 401.html page for responding to authentication failures * Merged [4212] from rcross@amsl.com: Ticket #673 Add ability to clear ballot * Merged [4214] from york@isoc.org: Fixes #816 - Turns datatracker.ietf.org into a clickable link * Merged [4213] from suresh.krishnan@ericsson.com: Making doc writeup available as read-only text to regular users who are not shepherd/AD/Secretariat etc. Adding a link for viewing a writeup to the main datatracker page. * Merged [4205] from shane@time-travellers.org: Added a link to the datatracker main document page when we announce a new document * Merged [4207] from adam@nostrum.com: Ported week view over to use the new meeting data model * Merged [4204] from shane@time-travellers.org: Adds a link to the datatracker main document page in the new-version notification messages * Added a fix to catch summer/wintertime changes. -- Henrik Levkowetz 22 Apr 2012 20:38:00 +0200 ietfdb (4.00) ietf; urgency=medium **New Database Schema** * This is the official release of the 4.00 series releases, which expects the redesigned database schema, and thus has an all new models layer. For a full changelog, please go tot he commit log for the iola/conversion branch, web accessible at: http://trac.tools.ietf.org/tools/ietfdb/log/branch/iola/conversion/ -- Henrik Levkowetz 24 Mar 2012 10:33:43 +0100 ietfdb (3.64) ietf; urgency=medium **IETF 82 Code Sprint** This release contains the features and bugfixes from the IETF-82 code sprint. From adam@nostrum.com: * Fixed a bug in is_authorized_in_draft_stream: would never return true for WG chairs. From lars.eggert@nokia.com: * Automatically set the recipients of RFC5742 review emails sent by the IESG based on the RFC Stream. * Fixed a typo. From rjsparks@nostrum.com: * Marked area directors who are not on the current IESG with square brackets on the discuss summary page. Fixes bug 666. * Changed the AD status page to group documents by current state. Fixes bug 742. * Changed the edit info form to allow (force) setting the stream when editing or adding a document to the iesg tracker. Fixes bug 743. From henrik@levkowetz.com: * Added a colour indication to the Area/WG overview page showing responsible AD for each WG. Also some html reformatting for better readability. * Be more specific about the submission startup time on meeting Monday. Indicate time and timezone for more cases on the submission form. * Various fixes to test fixtures and admin pages. -- Henrik Levkowetz 16 Nov 2011 07:08:11 +0100 ietfdb (3.63) ietf; urgency=medium This is a feature release which adds support for Alternate Stream draft tracking, similar to the WG Chair draft tracking. Some bug fixes have also been included. From esanchez@yaco.es: * Merged /branch/yaco/wgchairs.r3120:r3154-3558 from esanchez@yaco.es. This adds support for alternate streams document tracking, similar to the WG chairs tracking functionality. * Merged /branch/yaco/wgchairs.r3120/static/media:r3152-3153. Do not show the draft addoption form when editing stream. See #671. * Merged /branch/yaco/wgchairs.r3120/static/media:r3122-3152. Do no try to create an already existing model. See #671. From henrik@levkowetz.com: * Improved handling of a particular IO Error that sometimes occur during draft submission. * Removed some of the bling and unnecessary information from the document WG state display. * Aligned the workflow admin display lists with the current model fields. -- Henrik Levkowetz 03 Nov 2011 13:50:14 +0100 ietfdb (3.62) ietf; urgency=medium This is a minor bugfix release in preparation for merging in the Alternate Streams draft tracker enhancements. * Fixed a problem where server IO failures could be silently discarded resulting in an ID submission upload being quietly ignored, returning the upload form anew. * Changed to a more helpful text on the 500 server error page. * Tweaked various submission cutoff message strings. Also made the cut-off messages use the actual hour defined in settings, rather than a hardcoded string saying '5 PM (PT)' ... * Cleaned up the display of 'Sign In' and version number when rendering the base template without context (which is the case for the 500 server error template). * Fixed a wrong settings variable (introduced when merging code from the yaco idsubmit branch for v3.61). Refine the error report for failures to move files from staging to repository. * Refined the admin list page for submission details a bit. * Change the 'Sign In' link to be https, preventing clear-text passwords over the wire (given the current use of basic http auth, rather than diget auth, on the web server). * Added a 'Report a bug' link in the lefthand column, below the version indication. * The cutoff hour setting is in UTC, not PST or PDT. Adjusted accordingly in the settings file. -- Henrik Levkowetz 26 Oct 2011 15:55:18 +0200 ietfdb (3.61) ietf; urgency=medium From esanchez@yaco.es: * Check for missed files on staging area. Fixes #707 * Validate title extraction. Fixes #706 From henrik@levkowetz.com: * Improved extraction of draft title during submission. * Fixed a problem where the scan for an author's email address was prematurely terminated because another author's affiliation also was part of this author's address information. * Changed the length of the username field from 30 to 64 characters, to avoid datatracker login problems for people with long email addresses. * Speeded up things and increased reliability during submission author information extraction by looking for a recognizable author's address section, and not searching for author names earlier in the document if found. Fixes a known bad case where the author name occurred in the middle of a draft. * Added handling for the case where an author name is followed by parentheses which are not closed on the same line. * Added some columns to the admin interface for WgProceedingsActivities. Fixed breakage in the feeds code caused by table entries for this model containing meeting FKs which don't have an associated meeting entry. The base problem of broken table entries remain, though. -- Henrik Levkowetz 19 Oct 2011 15:46:27 +0200 ietfdb (3.60) ietf; urgency=medium **Self-Service Password Management** * Added basic automated apache password management functionality. -- Henrik Levkowetz 26 Aug 2011 21:43:47 +0200 ietfdb (3.59) ietf; urgency=medium * Merged [3331] from rjsparks@nostrum.com: Make it more likely that one will issue a ballot when it makes sense to do so. Fixes bug 703. * From smccammon@amsl.com: Updated field help for liaison statements, to match the current form. -- Henrik Levkowetz 19 Aug 2011 00:11:00 +0200 ietfdb (3.58) ietf; urgency=medium * Merged [3272] from rjsparks@nostrum.com: Fixed errors with the edit state link, the new ability to set an initial state when adding a document, the status date on the edit state form, and brought several tests up to date. Fixes issues 695, 696, 697, and 698. -- Henrik Levkowetz 12 Aug 2011 22:42:14 +0200 ietfdb (3.57) ietf; urgency=medium **IETF 81 Code Sprint** * Merged [3254] from suresh.krishnan@ericsson.com: Added a link to the ARO search including the IESG lists * Merged [3249] from suresh.krishnan@ericsson.com: Allowing adding documents in AD is watching state in addition to the default Publication Requested state. Fixes issue #684 * Merged [3245] from rjsparks@nostrum.com: Removes the "Change State" button and makes changing state a link further up on the form. This fixes bug 683, but creates a new one that we will need to address later - editing the state of an RFC that is going through the iesg process again (for going to draft in place for example) will need followup once the changes to get an rfc into that state easily are made. * Merged [3246] from adam@nostrum.com: Adding page to allow viewing meeting slot requests as they are made. There's no link to these yet. * Merged [3240] from adam@nostrum.com: Added csv output format for meeting agenda information, to assist external applications (e.g., Android app, iPhone app) in harvesting and displaying meeting agenda info. * Merged [3182] from adam@nostrum.com: Fix for bug 677 -- no longer assume that code sprint will always be scheduled. * Merged [3181] from adam@nostrum.com: Fix for bug 676 * Merged [3166] from rjsparks@nostrum.com: Simple changes to EditInfoForm field initialization * Various bugfixes and admin enhancements from henrik@levkowetz.com: - Some enhancements to the admin for IDInternal - Fix a bug where the wrong text was shown for IPR declarations which specified that licensing terms would be announced later (option d). - Fix a bug where the plenary entries in the html agenda didn't have links to the room map. - Enhance the admin list page for Stream a bit. - Add some debug output utility functions. - Tweak the admin list for WgMeetingSession to show wg acronym instead of group id. -- Henrik Levkowetz 27 Jul 2011 23:13:30 +0200 ietfdb (3.56) ietf; urgency=medium This is a minor release with various bugfixes and minor admin enhancements. The most long-term noticable enhancement is added support for app- and module-specific admin email addresses which will receive stack traces on uncaught exceptions. Details: * Change the cutoff-settings to match what's desired. Move CUTOFF_HOUR to settings. Change the submission page template to not show the form during the down period. * Set up app-specific email addresses so the respective developers will be notified about failures in code they have worked with. Make django pick up app- and module-specific admin email addresses for stack trace messages. * Make admin form lists work a bit better with non-ascii content in non-unicode tables. * Admin support for StreamedID, so one can look at it. * Get person info without limiting hits to iesglogins. WG Chairs will have logins but not IESG logins ... * Tweak ipr search to only look for IPRs in the appropriate state. * Tweak PersonOrOrgName.email() to handle non-ascii names a bit better. * Don't let the linewrapping algorithm churn infinitely. * Some IPR admin tweaks. Provide a __unicode__ method and show a contact even if multiple have been set for an IPR declaration. -- Henrik Levkowetz 23 Jul 2011 15:27:36 +0200 ietfdb (3.55) ietf; urgency=medium This release adds the wgchair tracker functionality, and also contains some bugfixes. Feature: * Merged in branch branch/yaco/wgchairs from esanchez@yaco.es. This provides the WG Chair Tracker functionality. Fixes: * Changed the default initial state for a WG document to 'WG Document', instead of 'Call for Adoption ...'. * Labelled the link to edit a document's WG state 'Change WG State', in order to not confuse it with changing the IESG state. * Reordered the state information for a document into related groups, separated by rulers. Add some indentation to the template code to make it a bit easier to read in some places. * Made the WG a draft belongs to into a link to the WG page. * Corrected an inappropriate use of the idsubmission repository location instead of the ID repository. Reported by Robert Sparks. * Correct the text (add an omitted word 'press'). Reported by Tomas Narten. * Fixed a problem with author extraction when a given name is the same as the surname. * Only try to return a shepherd for a document if one has been assigned to the document. * Merged in changes from esanchez@yaco.es, changeset [3067]. Makes Liaisons' Date field editable. * Added a bit of admin goodness for MeetingSessions. -- Henrik Levkowetz 24 May 2011 22:58:44 +0200 ietfdb (3.54) ietf; urgency=medium From rjsparks@nostrum.com: * Restructured the position editing page to better integrate the defer button. Fixes bug #659 * Copied the jquery-1.5.1.min.js library into /static/js/lib (from /static/js) because that's where the main document template was looking for it. There have probably been several problems since the change that left this dangling that showed up as things not behaving, but not as errors. The one that clued me in was the discuss text-box not being hidden when the position wasn't DISCUSS. They should all behave better now. * Added a django form validator to the discuss text field to not allow actions when the position is Discuss, but the discuss-text is empty. 2 and 3 together fix bug #660 * Added logic to the undefer fuction to put the document back on the previous telechat (if that hasn't already passed). That is, date1 from telechat dates, and not date2. Fixes bug #661 * Changed the last_call_announcement generation function's template to include the abstracts from the document sets (which with modern usage means the abstract of the document) reflecting the IESGs decision of a few months back. Fixes bug #662 * Removed the old tracker link from the document's main page. Fixes bug #663 From henrik@levkowetz.com: * Handle email recipient lists which contain 'None' elements correctly. Fixes an instance of failure to send notifications about a submitted draft where an author email address was missing. * Add an admin interface to the I-D submission app, to make it easier to handle manual tasks related to submissions. * Add the submission hash to initial-revision-approval emails to WG chairs, so their approvals will take effect. Fixes a problem where WG Chair approvals of WG draft submissions didn't take effect * Apply 'autoescape off' to all email templates which don'have it but might need it, to avoid html entity escapes in emails. Fixes another set of instances where this potentially could occur. * We cannot currently assume that BallotInfo entries matching IDInternal.ballot exists. It seems ballot may be set to a value before the actual ballot entry is created, possibly by some old secretariat tool. Very broken, but we need to survive it :-( Fixes a crash in the admin interface. * Reordered entries of submission forms and notification emails to be more appropriate. * Changed wrapping of formatted text to expand tabs during text wrapping, in order to get consistent indentation handling. -- Henrik Levkowetz 10 May 2011 14:57:09 +0200 ietfdb (3.53) ietf; urgency=medium From esanches@yaco.es: * Do not allow cancellation of submissions with GET requests, and Ensure that 'get full url', 'approve' and 'force' views are called via POST request. Insert a button to perform the last step of autopost via POST request. Fixes #650 * Do not assume that the two_pages_field field is not None. Fixes #651 * Allow creation dates that are 3 days after or 3 days before the current date. Fixes #652 * Change substate from Revised ID Needed to AD Followup if needed. Fixes #654 * Fix expected revision for expired drafts. Fixes #656 * Send announcements when posting new version of a draft. Fixes #649 From henrik@levkowetz.com: * Previous IPR information in last call announcements could be incomplete. Use a better search for IPR declarations related to a document, and include the IPR information in the last call preview. Fixes an AD request and a request from the IESG * When extracting meta-information from drafts, it is required that some data reside on the first page. Split unpaginated drafts into chunks so we can adhere better to this. Fixes a bug where submission filename was picked up (incorrectly) later in a document. * Wrap long lines in the 'save and send email' view of AD ballot comments and discusses. Fixes a request from the IESG * Give development and test deployment a /robots.txt which doesn't permit robots. Avoids indexing of development servers by web spiders. -- Henrik Levkowetz 04 May 2011 00:37:33 +0200 ietfdb (3.52) ietf; urgency=medium * A very small bugfix release, providing the ability for secretariat staff to post liaisons on behalf of others, and when doing so assuming the powers of the liaison manager they are posting for. This contains the changes that should have been part of 3.51, but wasn't... -- Henrik Levkowetz 18 Apr 2011 12:27:29 +0200 ietfdb (3.51) ietf; urgency=medium * A very small bugfix release, providing the ability for secretariat staff to post liaisons on behalf of others, and when doing so assuming the powers of the liaison manager they are posting for. -- Henrik Levkowetz 13 Apr 2011 16:20:21 +0200 ietfdb (3.50) ietf; urgency=medium **Submission Tool Rewrite** * For this release, the idsubmit port from esanchez@yaco.es has been merged in, which constitute substantial added functionality. This integrates the draft upload functionality with the python/django datatracker; it improves draft submission handling and security, and fixes problems with database breakage and inconsistency caused by the old implementation. With this also comes a major improvement of author extraction from draft text, provided by the ietf/utils/draft.py module from henrik@levkowetz.com. * Deployment note: Once the new release has been placed in its deployment directory, and the correct settings_local.py has been copied in, a command needs to be run in order to update the database tables to work with the new code. In the directory containing the ietf/ directory, run this command: $ PYTHONPATH=$PWD ietf/manage.py migrate The output should be as follows:: Running migrations for liaisons: - Nothing to migrate. Running migrations for submit: - Migrating forwards to 0003_add_extra_name_fields. > submit: 0001_initial > submit: 0002_add_submission_hash > submit: 0003_add_extra_name_fields - Loading initial data for submit. Once this is done, the regular deployment routine should be continued. -- Henrik Levkowetz 12 Apr 2011 18:23:44 +0200 ietfdb (3.16) ietf; urgency=medium This is a minor bugfix release. * Merged in [3029] from esanchez@yaco.es. Make the Cc: field of new liaisons editable. * Set the 'person' field of the LegacyLiaisonUser in the admin interface to be handled as a raw id field with search button, rather than as a choice list. This should make admin updates involving the LegacyLiaisonUser table much speedier. * Added a new fix for empty query strings to /meeting/agenda/agenda.ics. (The QUERY_STRING in request.META is not set the same way under the builtin server as under Apache; under apache there will be a QUERY_STRING entry wich is explicitly Null. Handles this.) * Included a javascript change not previsously merged in from branch/yaco/liaison/. -- Henrik Levkowetz 07 Apr 2011 17:15:41 +0200 ietfdb (3.15) ietf; urgency=medium This is a minor bugfix release. * Fix the weekday-dependent plenary information in the materials list. * In urls under /wg/, only accept wgnames which adhere to the constraints currently practiced. (Before this change, the URL patterns would match wg names containing non-ascii characters, which later would bomb due to mix of collations when accessing the database. Might as well return a 404 at once instead). * Don't return 500 if the /meeting/agenda/agenda.ics URL is without query part. * Get rid of a print statement used during testing. -- Henrik Levkowetz 06 Apr 2011 15:17:11 +0200 ietfdb (3.14) ietf; urgency=medium **IETF 80 Code Sprint** * From lars.eggert@nokia.com: Update jQuery to 1.5.1 and jQuery UI to 1.8.11. * From adam@nostrum.com: On the agenda page, for the custom agenda display, now only displays groups that are actually meeting. * From lars.eggert@nokia.com: Remove unused images. Convert GIFs to smaller PNGs. Optimize all images with http://www.smushit.com/ysmush.it/ * From lars.eggert@nokia.com: Change default vertical alignment of various datatracker tables for better readability. * From peter.musgrave@magorcorp.com: Fix typo. Fixes #566. * From jelte@nlnetlabs.nl: Make search result table headers clickable; clicking will sort on said column, fixes #484. * From peter.musgrave@magorcorp.com: Don't show AD/Secretariat links for Last Call etc. if they will 404. Fixes #550. * From adam@nostrum.com: Meeting boxes now expand to reveal all text when users hover over them. Fixes ticket #602. * From kivinen@iki.fi: Added an URL to retrieve a text/plain version of the list of drafts for a given WG. Useful for building WG-speific ePub documents of a WG's drafts. * From shane@time-travellers.org: Updated the JavaScript associated with the search page to control whether the 'search' button is enabled or not. It is now enabled if either the main search box has input, or if any of the sub-options have input, or both. * From rjsparks@nostrum.com: Adds a view of documents currently in IETF Last Call. Fixes #630. * From bmheight@gmail.com: Remove explicit URLs in the code, using reverse() and the newly created helper function reverse_lazy(). Fixes #628. * From rjsparks@nostrum.com: Changed the way ballot discuss/comment texts are displayed to put the text from current ADs first, and mark ex-ADs with [] following the convention on the left bar. This fixes issue #608 * From adam@nostrum.com: Added ical-format agenda. Fixes issue #601. * From peter.musgrave@magorcorp.com: Add IPR column to IESG Telechat Agenda. Fixes issue #552. * From rjsparks@nostrum.com: Add a defer/undefer button to the edit_position dialog. Fixes issue #627. * From kivinen@iki.fi: Changed cookie settings to be valid for 10 years, they used to be valid until the end of session. -- Henrik Levkowetz 28 Mar 2011 19:43:25 +0200 ietfdb (3.13) ietf; urgency=medium * Provide a full URL to IPR issues in the last call email, rather than just the local url path. Fixes an issue reported by Russ. * Tweak the admin interface for WGs and Chairs, adding some useful links to the tabular displays. * Add refinements for the liaison admin interface. Show contact link and coloured Login/User links to show broken entries. * Wrap the sdo name query in a try clause to avoid server 500 errors. * Only try to populate the liaison user/email list from the from_entity if it's set. * Make the document announcement default Cc: somewhat configurable. Remove iab@iab.org (on request). * Link to the State help page from the 'State:' label. * Don't use '<' and '>' in text/plain email text. * Don't permit just any characters in the document name; limit this to characters we currently permit in the names, or which has occurred in posted documents. Fixes a problem where non-ascii characters were propagated to the database search and caused collation sequence exceptions, instead of giving 404 errors. * Remove the To/From/Subject headers from extra headers to prevent duplicate headers. -- Henrik Levkowetz 26 Mar 2011 09:27:14 +0100 ietfdb (3.12) ietf; urgency=medium Note: Deploying this release requires a database schema update, see below. From esanches@yaco.es: * Allow an SDO Liason Manager to send outgoing liaison from any IETF Entity to his SDO. * Allow the secretariat to send liaisons on behalf of another user. * On login, retrieve the person record related to the login from the legacy tables of non IESG logins. Provides the link between login name and person listed in the liaison manager table. Fixes #576. * Refined handling of the To: and From: address lists when the Liaison Manager is also a WG Chair or AD. From henrik@levkowetz.com: * Add a clean_whitespace filter in some places to get rid of any newlines embedded in document titles. Fixes a problem with bad email headers in announcements related to documents with newlines embedded in the title. * Don't try to send out mail which has no recipients. Fixes a crash when trying to send announcements related to drafts which have an empty 'email notes to' field. * Fix typo in method calls to send email, fixes a crash when submitting liaison statements. * Renamed 'LiaisonDetail.taken_care' field to 'action_taken'. Miscellaneous associated fixes. Enhanced liaison-related admin pages. Note: Deploying this release requires an additional steps to create a new column in a table. This is done as a South migration (see http://south.aeracode.org/ for more info on South): # 8<---------- # First the regular checkout and prepare: cd /a/www/ietf-datatracker svn co http://svn.tools.ietf.org/svn/tools/ietfdb/tags/3.12 cp web/ietf/settings_local.py 3.12/ietf/ cd 3.12 # Next, apply the migrations: PYTHONPATH=$PWD ietf/manage.py migrate liaisons # Then carry on with the usual actions: cd ../ rm ./web; ln -s 3.12 web sudo /etc/init.d/apache restart # 8<---------- -- Henrik Levkowetz 02 Feb 2011 18:34:58 +0100 ietfdb (3.11) ietf; urgency=medium * Fixed a bug in the IPR Search, where searches against the IPR notice content would fail (Only try to open a legacy url if it leads to a file; not if it leads to a directory). * For a new IESG tracker document, only add a history comment about previous history if some previous history exists (i.e., if the replaced document also existed in the IESG tracker). * Show status of Dead Expired documents appropriately; just 'Expired' is insufficient. * Restore, for the secretariat only, the re-scheduling functionality of the /iesg/agenda/documents/ page which was removed in [2366] as the ADs felt that it made the page too busy. * Propagate all extra fields on to the final email sending function, not only the Cc and Bcc fields. Restores previously missing Reply-To: headers. * Turn autoescaping off for everything in text/plain email templates. Fixes multiple problems with '<' and '>' in emails showing up as '<' and '>', and related problems. * The liaison tool is deployed. Show the links to the new tool. * Prevent things from crashing if some of the email fields are null for a liaison. * It should be possible to edit the area of a draft even if it's been set before. Re-enabled the area list box on the document/edit/info/ page. * Corrected spelling error in list_display specification for the PersonOrOrgInfo Admin page. * Corrected the path to the draft archive in the settings file. (Some of the fixes above has been deployed already before this release by patching the previous release on the server.) -- Henrik Levkowetz 28 Jan 2011 13:15:40 +0100 ietfdb (3.10) ietf; urgency=medium * Fix css for IPR header (status column was included by mistake). Fixes issue #546. * Tweak some GUI strings in the Liaison Manager From adam@nostrum.com: * Added week-at-a-time view to agenda page when viewing selected areas and/or groups. If no groups are selected, the week view is hidden, leaving the base-level functionality unchanged. From peter.musgrave@magorcorp.com: * 548# Link in IPR column should use an absolute, not relative URL. This fixes issue #546. From kivinen@iki.fi: * Added new setting to the /cookies page which enables always showing full document text instead of showing beginning of the document. This fixes issue #551. From rjsparks@nostrum.com: * Refined the email sent when an position changes. -- Henrik Levkowetz 07 Dec 2010 21:39:17 +0100 ietfdb (3.09) ietf; urgency=medium **IETF 79 Code Sprint** From suresh.krishnan@ericsson.com: * Added the last call e-mail event to the draft history page. * Added a search function for drafts on their respective mailing lists. Fixes issue #458. From adam@nostrum.com: * Added tarfile and pdf-composite links and functionality to download working group documents from the agenda page. Fixes #539 From peter.musgrave@magorcorp.com: * Added column 'IPR' to documnet table for WG docs and by AD docs, and also in search results. Fixes issue #497. From kivinen@iki.fi: * Make the idea of what is 'soon' and 'new' in the I-D and RFC lists configurable. From lars.eggert@nokia.com: * Fix for #467: History tab: Avoid HTTP/HTTPS warning for the diff tool form submission. * Fix for #456: Make it possible for an IESG member to add a comment (for the document history) in the 'change document state' dialog * Fix for #537: Remove redundant "by" info from doc history text. * Fix for #525. Adds more information to the document history tab, specifically changes to writeup, announcement and last-call text. * Fix for #372. Makes the position editing form display the name of the document being edited. * Fix for #526 and #530: Change the format of the notification email sent out when an AD posts a ballot position on a draft, it by default CCs that email to the authors and chairs, and adds some explanatory text to the body of those messages. From rjsparks@nostrum.com: * Changed the language used in the last call email to be closer to the language the tracker uses when no IPR declarations are found directly on the draft. Fixes #506 * Retained search results on login. Fixes #482. * Added filename to the subject of Protocol Action and Document Action email messages (and fixed a bug that was preventing CC/BCC from being honored). Fixes issue #528. From fenner@fenron.net: * Split the /doc/ tabs into separate pages. This fixes #533. (Eventually, this will use to ask the tabs to be prefetched when the first tab is loaded, as documented at https://developer.mozilla.org/en/Link_prefetching_FAQ, but as there is some issues with this which haven't been fully resolved, the prefetch part is not part of this release.) * Fill in the X-IETF-IDTracker header with the I-D Tracker version number. This fixes #513 * Added support for admin site documentation From henrik@levkowetz.com: * Updated IESG Agenda Section 3.3 title * Added fix for announcement email multipart bug, in part contributed by glen@amsl.com and tony@att.com. * Other minor fixes -- Henrik Levkowetz 09 Nov 2010 10:42:13 +0100 ietfdb (3.08) ietf; urgency=medium From olau@iola.dk: * Ported scripts for expiration of drafts and last-calls, and sending scheduled announcements. The command-line front-ends are in bin/ as expire-ids, expire-last-calls and send-scheduled-mail. The last one already existed with some code, but it's not certain it actually worked. The new one accepts the same arguments as the Perl script (there's a little bit of help if you run it). All three log to syslog. They need to be started from cron with PYTHONPATH=/a/www/ietf-datatracker/web , in the same manner as other scripts which use the django models to interact with the database. -- Henrik Levkowetz 27 Oct 2010 13:52:26 +0200 ietfdb (3.07) ietf; urgency=medium From esanchez@yaco.es: * Merged in Yaco's Liaison Management Tool Port & Rewrite. Enjoy! Note: Deploying this release requires additional steps; to verify that liaison related settings in settings.py are correct, and to create new tables and update existing tables and table content. The latter is done as South migrations (see http://south.aeracode.org/ for more info on the South app). More extensiive documentation about the actions needed are provided in the user manual (doc/LSMT_user_manual.pdf in the release). The brief version follows:: # 8<---------- # First the regular checkout and prepare: cd /a/www/ietf-datatracker svn co http://svn.tools.ietf.org/svn/tools/ietfdb/tags/3.07 cp web/ietf/settings_local.py 3.07/ietf/ cd 3.07 # Verify that the new variables in settings.py are correct; if not, # add the correct settings in settings_local.py and inform the release # manager of the correct settings so they can be incorporated in the # next release. The variables in question are (as set in the release): # # # The email address from wich all liaison emails come: # LIAISON_UNIVERSAL_FROM = 'Liaison Statement Management Tool ' # # # The filesystem path where the liaison attachments will be saved: # LIAISON_ATTACH_PATH = '/a/www/ietf-datatracker/documents/LIAISON/' # # # The url from where the webserver serves the liaison attachments # LIAISON_ATTACH_URL = '/documents/LIAISON/' # Next, the changes to the MySQL tables will be done. # You can list the table migrations which will be applied if desired, # this should list migrations from 0001_... to 0009_... under liaisons: PYTHONPATH=$PWD ietf/manage.py migrate --list # Apply the migrations: PYTHONPATH=$PWD ietf/manage.py migrate # Add the static/doc location as statically served files to the apache # configuration. Fix line 6 in etc/apache2/vhoosts.d/ietf-datatracker.common # to read: # # (i.e., add '|doc' to the exception list). # Then carry on with the usual actions: cd ../ rm ./web; ln -s 3.07 web sudo /etc/init.d/apache restart # 8<---------- Once the datatracker is up and running with the new liaison tool in place, liaison role assignments have to be done as described in the LSMT user manual (in doc/LSMT_user_manual.pdf) page 14, summarized by Patrik on the yaco-liaison-tool mailing list: 1. Add the IAB and IETF chairs, wg chairs, area directors etc as apropriate (as described in the document). 2. Add the liaisons in the IETF assigned and named on the IAB list of liaisons. -- Henrik Levkowetz 26 Oct 2010 16:11:24 +0200 ietfdb (3.06) ietf; urgency=medium From rjsparks@nostrum.com: * Changed the navigation round editing ballots and sending discuss/email so that the user comes back to the page the edit started from. * Fix for ticket #374 (all in base.js) and removal of a vestigial 'save all changes' button from the iesg/agenda/documents page. * Split the ballot writeups page into three pages, for a more understandable user interface. From henrik@levkowetz.com: * Fix a presentation bug in /iesg/agenda/documents.txt -- Henrik Levkowetz 20 Sep 2010 16:45:37 +0200 ietfdb (3.05) ietf; urgency=medium Bugfix release. Fixes the following issues (for more details, see the release page http://trac.tools.ietf.org/tools/ietfdb/milestone/3.05) From olau@iola.dk: * #354 Document State Change Edit lacks dropdowns in IE 8 * #359 Test cases fail in fresh checkout from iesg-tracker branch * #364 Impossible to move back to No-Position * #366 The popup view of current positions when you left click on the grids needs to be smarter when it doesn't fit on the display. * #369 IDInternal entry with missing information generated * #370 Documents marked for telechat not on the web agenda From Henrik: * #367 Document state age not always shown correctly * #355 tarfile generation fails on production system * #371 When a draft lacks creation date, the all_id* and 1id_* generating script fail -- Henrik Levkowetz 24 Aug 2010 15:42:30 +0200 ietfdb (3.04) ietf; urgency=medium **IETF 78 Code Sprint** * From Adam Roach: Make the selectable WG agenda feature of the datatracker IETF Agenda less resource intensive by not preloading all WG agendas. * From Peter Musgrave: Improve the selection of listed 'related documents' on the WG document pages. * From olau@iola.dk: Fix for issue #351 which caused server error when editing the state of a document (as IESG user). The following features were included already in v3.03, but by mistake weren't listed in the changelog for that revision: * IETF 78 Sprint code from Peter Musgrave: Add related documents section to the wg documents page (e.g., /wg/sipclf/). * IETF 78 Sprint code from Robert Sparks: Relabel the 'Issue Ballot' button (for AD use, on the draft info page). * IETF 78 Sprint code from Robert Sparks: provide a downloadable tarball of the documents on the IESG agenda of a given date. -- Henrik Levkowetz 28 Jul 2010 16:13:23 +0200 ietfdb (3.03) ietf; urgency=medium * IETF 78 Sprint code from Adam Roach: Make the IETF agenda page view user-modifiable, providing a custom bookmarkable agenda view for each user. * Make WG agendas available trough datatracker URLs; this will avoid problems when the text from these pages are incorporated in frames in other datatracker pages. Example: /meeting/78/agenda/sipcore -- Henrik Levkowetz 27 Jul 2010 15:09:56 +0200 ietfdb (3.02) ietf; urgency=medium * Remove the per-document rescheduling dropdown boxes from the future iesg telechat document list (/iesg/agenda/documents/). Fixes issue #346. -- Henrik Levkowetz 21 Jul 2010 15:30:46 +0200 ietfdb (3.01) ietf; urgency=medium * Add a button to issue a ballot for documents which has entered IESG processing but don't have a ballot yet. * Always make idinternal.docstate() return a string -- there are callers that assume this, like the script which generates all_id2. * Don't fail with a server error (500) if a bad draft name (containing for instance newlines) is entered -- just return a 404. * For WG charters under evaluation, show the year too, not only month and day. This will reveal bad date information in the charter files. * If we fail to parse the date of a WG charter under evaluation, use 1 Jan 1900, and carry on. Don't fail with a server error. -- Henrik Levkowetz 20 Jul 2010 18:41:31 +0200 ietfdb (3.00) ietf; urgency=medium **IESG Datatracker Port to Python/Django** * This release adds the IOLA port of the former Perl IESG datatracker to the Python/Django datatracker. This should make most AD actions on drafts available through the Django datatracker, normally from the datatracker.ietf.org/doc// page or from the /doc/ad/.../ page, or expressed UI-wise: from the pages reached from the 'AD Dashboard' menu at the top of the lefthand menubar in the datatracker. This includes actions such as: - Change draft state - Edit draft metadata - Defer ballot, undefer ballot - Handle ballot comments - Handle ballot writeups - Approve ballots - Initiate last call Secretariat staff actions supported through the Django datatracker now includes: - Manage telechat dates - Manage working group descriptions Tweaks to the new interface and capabilities will be releases with a short release cycle, as they are discovered and fixed over the next weeks. -- Henrik Levkowetz 16 Jul 2010 18:14:48 +0200 ietfdb (2.52) ietf; urgency=medium * Added machine-readable ballot information (tsv and json) for drafts with ballots: /doc//ballot.tsv and /doc//ballot.json . Json data for the whole document is available for all drafts at /doc//doc.json . * Added Unicode NFKC normalization of paths. Somebody just tried to access /wg/ipfix/charter/ with 'fi' represented as the unicode ligature \ufb01... * Changed the text emitted during testing to have less noise at the beginning of the line -- only 'OK', 'Fail', and the initial line of coverage reports now starts at the beginning of the line, without whitespace. This makes it easier to scan a test run visually to find reported failures. -- Henrik Levkowetz 16 Jul 2010 13:02:46 +0200 ietfdb (2.51) ietf; urgency=medium * Add an html sanitizer and a sanitize_html template filter. This uses the html5lib, which has also been included in the svn tree. * Provide better handling of both text/plain document comments and document comments which contain html tags. Adds urlization, linebreak-preservation and html sanitization. Html sanitization would be better applied when adding comments, but we're not yet a position to enforce this for all input paths. * Catch an additional exception which can occur during generation of all_id2.txt -- Henrik Levkowetz 07 May 2010 12:26:58 +0200 ietfdb (2.50) ietf; urgency=medium From RjS: * Don't send mail if we don't have any recipients... From Pasi: * /iesg/agenda/: fix bug related to non-existing ballots * Removed old (unused) YUI js/css * /ipr/search/: avoid exception for unexpected search types; comment out debug logging * /doc/active, all: add link to all_id2.txt * /liaison/: add link to liaison statement manager tool From Henrik: * Make version information on the web pages a little less cryptic. * Tweak the IESG agenda page for better placement of IPR information; requested by Russ. Also align the ballot graphics. * Add admin site support for the DocumentComment model. * If replaced-by information exists, display it, even if the document state seems to be incorrect (something else than 'Replaced'). -- Henrik Levkowetz 26 Apr 2010 11:45:24 +0200 ietfdb (2.49) ietf; urgency=medium From Pasi: * New script to generate all_id2.txt. This should be called in www6s/scripts/datatracker-updater: run "python -m ietf.idindex.generate_all_id2_txt" and place its output in $ID/all_id2.txt. * /wg/: link to both www.ietf.org and tools lists of concluded WGs * /doc/: show full responsible AD name for old drafts, too * Eliminated some cases where exceptions could be thrown * Various minor tweaks and fixes From Henrik: * Added commands to the mkrelease script to update the IETF Tools feed with release information. -- Henrik Levkowetz 24 Mar 2010 21:11:27 +0100 ietfdb (2.48) ietf; urgency=medium From Pasi: * Show comments feed link only if it exists (=document is in IDInternal) * Fixed a broken link on main page * Move new look-and-feel base templates from templates/idrfc/ to just templates/ * Remove more unused code * Replaced /idtracker/help/evaluation/ with redirect to www.ietf.org * /wg/: fix mailto links for WG chairs * /doc/: show telechat date in search results list * Show correct version number of expired drafts * /doc/rfcNNNN/: show rfc stream * Use new look for more pages * Replaced most of /idtracker/ (search, document page, ballot page, comment page) with redirects to /doc/ * /doc/\*: Show information about ballot sets * Refactoring /wg/: use redirects instead of redundant URLs; removed old charter pages (not used/linked to); misc. cleaning * Point to /wg// in left navbar and /meeting/agenda/ -- Henrik Levkowetz 22 Mar 2010 00:26:41 +0100 ietfdb (2.47) ietf; urgency=medium **IETF 77 Code Sprint** From Suresh: * Added a link to the draft pages with email address to the draft authors From RjS: * Added STD/FYI/BCP info to the standard RFC display page * Added a link to the comment feed next to the nits link From Bill: * Output a summary of what's needed for the document to be approved in the main and ballot views. From Tony: * Search plugin for Firefox/IE/etc. From Pasi: * Correctly handle entities (like >) in IESG note field * New script for finding database tables with non-ASCII data * /doc/\*: allow direct links to tabs/individual comments * /iesg/agenda/: show management item text if logged in as AD * /wg/acronym/: fix warning for concluded WGs * Support PPTX meeting slides -- Henrik Levkowetz 21 Mar 2010 03:03:42 +0100 ietfdb (2.46) ietf; urgency=medium From Robert: * Add the I-D expiration notification script. \*\*\* Please add the following cron entry:: # Send notifications about pending I-D expirations. 42 4 \* \* 1 /a/www/ietf-datatracker/web/ietf/bin/notify-expirations From Henrik: * Adding the south schema migration app (http://south.aeracode.org/). * Change the text of IPR search result to more correctly reflect the status of the search result when IPR has been found on documents related to a listed document, but not on that document itself. From Pasi: * Use the new look for a bunch of additional pages * /admin/: fix login redirects to work with RemoteUserMiddleware; hide password changing functionality (which doesn't work with RemoteUser anyway) * /ipr/: remove separate list for updating * /wg/acronym/\*: clearer warning about concluded WGs * A lot of various code and deployment cleanup * A lot of minor tweaks and fixes (tooltips, links, and more) * /doc/rfcNNNN/: include link to errata * /doc/rfcNNN/: include links to PDF/PS versions (if they exist); handle RFCs that are not available as .txt * Added meta description tags (to improve search result usability): drafts/RFCs, IPR disclosures, liaison statements * Cache/gzip meeting agenda and materials pages * If draft doesn't exist under /idtracker/, redirect to /doc/ instead of showing error * Show /doc/ad/first.last/ only for ADs, not other folks in IESGLogin table * Fixed bunch of null/unique attributes for model fields * New script to check for violated database constraints (NOT NULL, UNIQUE, FOREIGN KEY) -- Henrik Levkowetz 21 Mar 2010 00:36:05 +0100 ietfdb (2.45) ietf; urgency=medium From Pasi: * Use wg_www_pages table (and removed unused idtracker_areaurl). Requires applying changes to database as follows: cd /a/www/ietf-datatracker/2.45/ietf PYTHONPATH=../ python manage.py dbshell < ../test/sql_fixup.sql * Parse stream/wg/file formats from rfc-index.xml; prepare for parsing auth48 info from queue2.xml * IPR disclosures: Don't include .doc/.html inline; don't fail if file does not exist * Replaced /drafts/* with redirects * Show datatracker version+date in new look, too * IESG discuss page: shade even/odd rows * Use new look for IETF meeting agenda; add color-coding support (like tools has). Also use new look for /iesg/agenda/, /ipr/ and /ipr/NNN/ * Show RFC publication date as YYYY-MM (since we don't currently have the day) * Fix searching for RFCs that are processed by IESG; made 'advanced search' options mutually exclusive * For plain text RFCs, point to www.rfc-editor.org instead of www.ietf.org * Fix page title for 404/500 pages (ticket:298) From Henrik: * Apply django changeset 12634 to our copy, to permit usernames containing '@'. See http://code.djangoproject.com/changeset/12634 . -- Henrik Levkowetz 11 Mar 2010 14:41:47 +0100 ietfdb (2.44) ietf; urgency=medium From Robert: * Moved old (1995-2003) liaison statements from the template file to the database. This requires applying database fixups as follows: cd /a/www/ietf-datatracker/2.44/ietf PYTHONPATH=../ python manage.py dbshell < ../test/liaison_fixup.sql And updating the liaison files as follows: cd /a/www/ietf-datatracker/documents/LIAISON/ # TAKE A BACKUP OF THE WHOLE DIRECTORY, JUST IN CASE . /a/www/ietf-datatracker/2.44/test/liaison_fixup.sh From Pasi: * Use new look for more pages * Make obsoletes/updates/etc. lists links (with new urlize_ietf_docs template filter) * Always show year in /idtracker/status/ dates * /doc/rfcNNNN/: show the internet-draft name (if known) and link to its history; show information about post-RFC IESG processing * Use yellow for 'abstain' also in /iesg/agenda/documents/ * IESG ballot grid icon: show 'abstain' as yellow instead of gray * IESG telechat agenda: include "private" links also if logged in, link from document list * Added /doc/all/ page * Better output if /doc/ search doesn't match anything * Show state-change-notice-to field in /doc/ (to AD/secretariat) * Make IESG telechat agenda feed discoverable * Added IPR/dependency links and edit/add buttons for RFCs, too; some template refactoring * Avoid exceptions from MySQL when searching for non-ASCII draft names/WG acronyms/etc. * Handle non-ASCII characters gracefully in old cgi-bin script redirects * IPR search: handle non-numeric RFC numbers/ID document tags gracefully (instead of uncaught exception) * Change Atom feeds (+couple of other places) to point to /doc/draft-.. instead of /idtracker/draft-.../ From Henrik: * In PersonOrOrgInfo.email(), try harder to find a relevant email address. The new code will eventually fall back to a broad filter which matches that of the perl code which creates WG charter pages, where the old code would sometimes result in django-generated charter pages with missing email addresses. * Serve ipr disclosures which are available on the server directly, instead of through an external http link in an