Commit graph

62 commits

Author SHA1 Message Date
Adam Roach 5cb7c82e39 Check that email is sent to chairs of both replaced and replacing document
- Legacy-Id: 9808
2015-07-18 16:07:26 +00:00
Robert Sparks a6c64d2b12 Remove sessonly, replacing the idea with a separate State. Add tests checking how materials show on agenda views. Commit ready for merge.
- Legacy-Id: 9351
2015-04-01 16:00:05 +00:00
Ryan Cross 34a16483fa Improve test coverage of secr.drafts. Commit ready for merge.
- Legacy-Id: 9307
2015-03-21 20:26:53 +00:00
Henrik Levkowetz 49d86d691b Merged in [8861] from rcross@amsl.com:
Changes to allow upload of bluesheets in materials upload page.  Primarily for use with Interim meetings.
 - Legacy-Id: 8891
Note: SVN reference [8861] has been migrated to Git commit 40efbf4f57
2015-01-21 20:32:18 +00:00
Henrik Levkowetz be1c255be1 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.
 - Legacy-Id: 8888
Note: SVN reference [8854] has been migrated to Git commit 65804be683
2015-01-21 19:56:57 +00:00
Henrik Levkowetz f15ba3346b 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).
 - Legacy-Id: 8880
Note: SVN reference [8846] has been migrated to Git commit ce5bda1835b32640d17136d09262f654fade94d4
2015-01-21 19:01:47 +00:00
Henrik Levkowetz 0db48f3db0 Merged in [8840] from rjsparks@nostrum.com:\n Automatically ensure Alias records exists when Person records are changed, relieving multiple code locations of that responsibility. Fixes bug #1550.
- Legacy-Id: 8873
Note: SVN reference [8840] has been migrated to Git commit b0b3a31b10bb35eb00d29f27d75d21c3cc4edc4e
2015-01-20 22:32:01 +00:00
Ryan Cross 40efbf4f57 Changes to allow upload of bluesheets in materials upload page. Primarily for use with Interim meetings. Commit ready for merge.
- Legacy-Id: 8861
2015-01-12 18:45:50 +00:00
Ryan Cross e686c5c7f5 Allow upload of bluesheets via materials upload interface
- Legacy-Id: 8857
2015-01-09 21:29:57 +00:00
Robert Sparks 65804be683 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.

Commit ready for merge.
 - Legacy-Id: 8854
2015-01-09 18:52:06 +00:00
Henrik Levkowetz 5183042d58 Merged in branch/amsl/iprtool/5.7.4@8734 from rcross@amsl.com, providing new IPR models, refactored code, and improved list, search, and management interfaces.
- Legacy-Id: 8808
2014-12-21 19:26:33 +00:00
Henrik Levkowetz 704589b4c7 Merged in branch/iola/people-cleanup @ [8471] 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.
 - Legacy-Id: 8472
Note: SVN reference [8471] has been migrated to Git commit d62f2343e8
2014-10-25 21:05:50 +00:00
Henrik Levkowetz d4e5f070af Merged in [8293] from rjsparks@nostrum.com:\n XXX: Should what is now captured in the list of STATUSCHANGE_RELATIONS 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 #1438
 - Legacy-Id: 8385
Note: SVN reference [8293] has been migrated to Git commit 640c5eb52ace8bb6d2c1b3ca6c14ef10ad0f324f
2014-10-12 17:32:11 +00:00
Ole Laursen f291a466d7 Change Document.shepherd to point to the email address rather than the
person, add migration to fix the existing shepherds, fix wording and
max entries on change shepherd page to be more self-explanatory
 - Legacy-Id: 8268
2014-08-13 11:40:01 +00:00
Henrik Levkowetz b02b0a96df All tests pass, except for some pyflakes tests which I believe are fixed in trunk.
- Legacy-Id: 7579
2014-04-06 20:04:36 +00:00
Henrik Levkowetz 6606538453 Fixed mistaken outcomment.
- Legacy-Id: 7497
2014-03-16 07:48:59 +00:00
Henrik Levkowetz 49edc7404e Made ietf/utils pyflakes-clean.
- Legacy-Id: 7496
2014-03-16 07:26:03 +00:00
Henrik Levkowetz 5bef5d11ae Made doc/ pyflakes-clean.
- Legacy-Id: 7462
2014-03-15 16:09:47 +00:00
Robert Sparks 31808eccb2 Allow 1-3 digit RFCs in status change documents.
Fixes bug #1321
Commit ready for merge
 - Legacy-Id: 7292
2014-02-24 15:43:32 +00:00
Ole Laursen cb4d5b7c2b Simplify make_test_data a bit by using the create_person helper for the chair and WG delegate, regularize the naming of those
- Legacy-Id: 6990
2013-12-18 16:27:02 +00:00
Ole Laursen 77e03c7355 Fix bugs in stream edit test
- Legacy-Id: 6933
2013-12-16 11:55:15 +00:00
Ole Laursen 7f25469c6b Drop the group/person/role global fixtures, the fixture loader in
Django 1.6 refuses to load them because they have dangling foreign
keys, and in rewriting them it turns out it is easier to do so in code
- so refactor the test data generation code to have a separate
function with the unchanging base data and call that from the global
fixture setup
 - Legacy-Id: 6917
2013-12-13 15:58:36 +00:00
Ole Laursen bb2d070679 Redo tests for IPR to cover all views, fix some bugs and add some
finishing touches
 - Legacy-Id: 6779
2013-12-03 18:33:07 +00:00
Ole Laursen 9457669310 Merge in changes from the old shimfree branch
- Legacy-Id: 6764
2013-11-27 12:55:50 +00:00
Ole Laursen f6ff2a8082 Delete all old WGAction stuff, it's superceded by the WG charter
support, clean up iesg/models.py a bit
 - Legacy-Id: 6411
2013-10-10 16:12:34 +00:00
Henrik Levkowetz a07f47a4a0 Added a new TestCase class, subclassing django.test.TestCase, in order to
be able to add fixtures once and for all for all tests, instead of loading
them again and again for each test, if running on a database that supports
transaction rollbacks.  In this case, fixtures specified in the perma_fixtures
class attribute will be loaded permanently, and not re-loaded.  Fixtures
specifice as before, in a fixtures class attribute, will be treated as
before.

The downside of this is that as fixtures are loaded and not unloaded, they
can conflict with each other.  The requirements on consistency becomes much
greater.  The effect of this has been to require quite a bit of changes to
the simplified creations of various objects in make_test_data() in cases
where identically named objects occur in fixtures.  Where completely
fictitious objects are created, no conflicts appear.

Also re-wrote parts of test_runner.py to permit global fixtures, loaded
before any tests are run and shared by all.
 - Legacy-Id: 6318
2013-09-30 20:22:24 +00:00
Henrik Levkowetz cbfe489ff5 Merged in more shim-layer removals from olau@iola.dk
(-r5465:HEAD from branch/iola/shimfree).  Copying relevant
commit messages here:

 - 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
 - Legacy-Id: 5836
2013-07-17 20:52:39 +00:00
Henrik Levkowetz e678659b56 Merged in a lot of shim-layer removals from olau@iola.dk
(-r5194:5465 from branch/iola/shimfree).  Copying relevant
commit messages here:

  - 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

  - Removed dead code in several places
 - Legacy-Id: 5830
2013-07-15 20:55:24 +00:00
Henrik Levkowetz 3105101cc5 Changed test running and test data generation to work with database rollback
(for instance with InnoDB).

Added settings.DATABASE_TEST_OPTIONS which can be used to force for instance
InnoDB use during testing.

Using this has the potential of reducing the time it takes to run the test
suite substantially; a few test runs indicate a reduction in test run time by
50% on a run-of-the-mill linux server.
 - Legacy-Id: 5823
2013-07-15 07:21:34 +00:00
Robert Sparks a741642717 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.

This fixes bug #1039
 - Legacy-Id: 5770
2013-06-01 21:01:45 +00:00
Henrik Levkowetz bd0c07290a Merged in branch/iola/milestones, which provides datatracker support for management of WG milestones.
- Legacy-Id: 5739
2013-05-15 22:07:23 +00:00
Ole Laursen 3d1eb07afe Port 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/
 - Legacy-Id: 5634
2013-04-10 11:48:07 +00:00
Henrik Levkowetz 7a98fff79c Merged [5476] from rjsparks@nostrum.com:
* 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
 - Legacy-Id: 5629
Note: SVN reference [5476] has been migrated to Git commit 10b4f7a4dc
2013-04-07 19:11:18 +00:00
Henrik Levkowetz 2f3476690f 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.
- Legacy-Id: 5486
2013-03-05 23:24:41 +00:00
Robert Sparks 589ff698ee Merge forward complete
- Legacy-Id: 5328
2013-01-24 21:28:27 +00:00
Ole Laursen accf6d4470 Move 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.
 - Legacy-Id: 5295
2013-01-18 13:17:00 +00:00
Ole Laursen 6e89f3b606 Merge changes from old milestones branch
- Legacy-Id: 5198
2013-01-15 16:45:19 +00:00
Ole Laursen b19f6d8060 Merge in milestones branch
- Legacy-Id: 5091
2012-12-03 14:36:30 +00:00
Ole Laursen daa5d49adb Fix RFC Editor group acronym to be rfceditor in test data
- Legacy-Id: 5024
2012-11-07 14:58:49 +00:00
Ole Laursen 85d2cdddc2 Add POST interface for IANA/RFC Editor for triggering updates, add
discrepancies report for seeing differences between the
Datatracker/RFC Editor/IANA, add tests of IANA/RFC Editor integration,
add script for weekly discrepancies emails
 - Legacy-Id: 4851
2012-09-17 15:57:48 +00:00
Ole Laursen 6050cbf76a Give test groups a list_email so we can email them
- Legacy-Id: 4592
2012-07-04 18:29:53 +00:00
Ole Laursen 488add5004 Add script and code (and tests) to send milestone reminders to ADs
(for reviews) and group chairs.
 - Legacy-Id: 4557
2012-06-30 16:46:31 +00:00
Robert Sparks 51ab8123d9 merged in from 4.20-ise
- Legacy-Id: 4502
2012-06-22 20:25:17 +00:00
Ole Laursen 8a8ddb0cc6 Add started_iesg_process event back in in test data as it's still
useful there
 - Legacy-Id: 4276
2012-04-16 13:57:18 +00:00
Ole Laursen e4a9d8c7aa Finish ballot support for charters (apart from non-generic ballot
deferral), remove a bunch of now obsolete charter code.
 - Legacy-Id: 4255
2012-04-04 18:09:03 +00:00
Ole Laursen 980d4e6444 Move new schema models from redesign/ to ietf/
- Legacy-Id: 3855
2012-01-24 17:17:24 +00:00
Ole Laursen f3685e7af1 Turn expiration into an explicit expires attribute on document, set
that on submission of new revision and resurrection
 - Legacy-Id: 3801
2012-01-12 12:03:45 +00:00
Ole Laursen 31aef86164 Merge charter branch with the UI hooks disabled for the time being
- Legacy-Id: 3800
2012-01-11 15:04:13 +00:00
Ole Laursen de0fc12ce8 Port telechat dates
- Legacy-Id: 3774
2011-12-20 13:12:12 +00:00
Ole Laursen 367d6b2116 Port recently merged stream delegate management in ietfworkflows to new schema
- Legacy-Id: 3687
2011-11-22 21:15:49 +00:00