This uses doc.utils.needed_ballot_positions() to calculate what is
needed.
Fixes#924.
- Legacy-Id: 7405
Note: SVN reference [7386] has been migrated to Git commit d42ccbe741
Changes counting logic in ballots to use actual number of ADs.
Causes ballot email to use utility to generate requirements text
- Legacy-Id: 7404
Note: SVN reference [7383] has been migrated to Git commit 271c48c9c47bf63bee2289fad9224b624c388fba
Now sending draft update notices to IRSG for IRTF stream drafts. Fixes issue #1227.
- Legacy-Id: 7402
Note: SVN reference [7375] has been migrated to Git commit 5f89d9ab996c4b0519ec23accb288e02961c62bf
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
Commit ready to merge
- Legacy-Id: 7371
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
- Legacy-Id: 7225
Note: SVN reference [7210] has been migrated to Git commit a0fd974c92
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
- Legacy-Id: 7223
Note: SVN reference [7077] has been migrated to Git commit e93b5ec296
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
- Legacy-Id: 7222
Note: SVN reference [7076] has been migrated to Git commit a3da5bbd87
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().
- Legacy-Id: 7221
Note: SVN reference [6361] has been migrated to Git commit 7c4cf7002f
Send email to the secretariat when a status change document is put directly into the last-call-requested state.
Fixes bug 1139.
- Legacy-Id: 7208
Note: SVN reference [6359] has been migrated to Git commit faabcb8328
with a query for the appropriate event types, this should work now
that new events set the correct type and old events have been migrated
- Legacy-Id: 7140
doc/utils_charter.py) in favour of add_state_change_event which has
slightly better API but otherwise does basically the same except it
sets an event type we can later search for. Also expand tests slightly
to exercise three more templates.
- Legacy-Id: 7129
intended std level and consensus is not filled in for the draft before
sending it (as per discussion with Alice Russo) - the consensus check
is skipped for ISE drafts
- Legacy-Id: 7103
checking a StreamName against the slug, which happened to work with
MySQL because the stream name is the same as the slug, just uppercase
- but MySQL is case insensitive
- Legacy-Id: 7091
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
Commit ready for merge
- Legacy-Id: 7077
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
Commit ready for merge
- Legacy-Id: 7076
Adds pages to show what a given document refers to and what refers to it.
Fixes bug #1194
commit ready for merge
- Legacy-Id: 6951
Note: SVN reference [6701] has been migrated to Git commit d19967ac93
now outputs a newline in the beginning - this doesn't seem make a
difference for browsers, but it means testing with PyQuery needs to
strip the text to be able to check accurately
- Legacy-Id: 6931
Improve e-mails from replaced-by updates.
Fix an incorrectly-expanded file tag in the subject.
Fixes#1178.
Use a slightly more natural grammatical construct in the message body.
Fixes#1179.
- Legacy-Id: 6699
Note: SVN reference [6696] has been migrated to Git commit 03896647cc
Fix an incorrectly-expanded file tag in the subject.
Fixes#1178.
Use a slightly more natural grammatical construct in the message body.
Fixes#1179.
- Legacy-Id: 6696
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.
- Legacy-Id: 6662
Note: SVN reference [6641] has been migrated to Git commit a0a451881b
Add document titles to status change request email. Fixes issue #1069.
- Legacy-Id: 6648
Note: SVN reference [6630] has been migrated to Git commit bb539aa0c2
Allow wgchairs to edit replaces 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
- Legacy-Id: 6639
Note: SVN reference [6629] has been migrated to Git commit 9ef29a323f
Refines Bill Fenner's regex based search through documents for references.
Populates RelatedDocument with relations for references for each type draft Document.
Replaces these reference relationships with updated copies on 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
- Legacy-Id: 6633
Note: SVN reference [6622] has been migrated to Git commit a677a70df3
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
- Legacy-Id: 6629
Ticket #1153: Fixes IPR disclosures being counted multiple times and counting of \'not yet approved\' IPR disclosures.
- Legacy-Id: 6623
Note: SVN reference [6613] has been migrated to Git commit b72c8a7cfd
Populates RelatedDocument with relations for references for each type draft Document.
Replaces these reference relationships with updated copies on 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
- Legacy-Id: 6622
Populates RelatedDocument with relations for references for each type draft Document.
Replaces these reference relationships with updated copies on draft submission.
Note to deployer: This migration takes around 10 minutes to complete on a fast development laptop.
- Legacy-Id: 6572
position field may not be set when we get to this point and
try to retrieve the value of a different field than the one
we're processing. Don't cause a new exception in that case.
- Legacy-Id: 6416
review decisions. Add migration to split up iesg_approve/disapprove
events of the form "IESG has approved ... and state has been changed
..." into the approve/disapprove event and a synthesized state change
event. Also regularize the descriptions a bit. This simplifies the
code in the new page.
- Legacy-Id: 6340
port associated tests, make the recommended next states clickable with
Javascript so a standard state change is just two clicks (next state
and save button)
- Legacy-Id: 6288
doc/ together with test and utilities, rewrite the UI to be more in
line with the rest of the edit pages (including the revamped stream
state change UI)
- Legacy-Id: 6269
ietfworkflows, add streams_menu template tag for outputting the
streams menu instead of the one in ietfworkflows, move
base_wgmenu.html and base_leftmenu.html templates to base/ (together
with base/streams_menu.html), get rid of "first" madness in
base/left_menu.html which is now obsolete anyway because we have a
Settings headline which is always first
- Legacy-Id: 6255
- 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.
- Legacy-Id: 6120
* 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
- Legacy-Id: 6083
* 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
Fixes bug 1071
- Legacy-Id: 6042
Added tooltip capability to document tabs, and tooltips for disabled IESG Evaluation/Review tab. Fixes bug #448.
- Legacy-Id: 5931
Note: SVN reference [5903] has been migrated to Git commit d87379c177
(-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
(-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
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
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
* 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
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.
- Legacy-Id: 5611
* 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: 5476
added the ability to start a status change when looking at an RFC (populating the start from accordingly)
Made changes and proposed changes show on the RFC pages
- Legacy-Id: 5330
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)
- Legacy-Id: 5313
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
- Legacy-Id: 5296
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
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
- Legacy-Id: 5289
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.
- Legacy-Id: 5285
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.
- Legacy-Id: 5284
since we always have to restrict on the relationship type anyway,
instead add two helpers for doing the necessary queries (in both
directions)
- Legacy-Id: 5205