-
Notifications
You must be signed in to change notification settings - Fork 88
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Guidelines Appendices should include a list of pending deprecations #1657
Comments
I like the idea, how about making one table for depreciation, and one with links to GH issues discussing specific elements? It could help increase the traffic between GH and tei-c.org? |
Hi @duncdrum. I'm not sure about the second idea... there can be many issues on one particular element which we would want on separate issues in github. (e.g. one discussing its definition, another one wondering about its content model, another one proposing new sample values for one of its attributes....etc.) What might be better is a generic 'Raise an issue about this element on GitHub' button which copied in the reference page url and gave a template for submitting a good issue. Like the kinds of things you get with bug submission systems... |
Whether just an appendix listing deprecations (which, BTW, needs to include auto-generated items that are deprecated with |
I think it is a good idea to have an appendix listing the deprecations. I think it would fit after Appendix E, Appendix F Deprications? Or is it bad style to restructure the appendices? I'm a bit worried too about the "raise an issue on GitHub" button, but maybe we should discuss this in the context of the ongoing internationalization process and our idea to possibly introduce a "suggest a translation" button? |
@sydb In my envisioning of it I'm picturing a stub file with the start of a list of deprecated objects. In building the Guidelines this is then added to for all those using validUntil or similar. I.e. we manually add those for which we don't have a mechanism. @martinascholger Other than people having cited the letters of the appendices or something I don't think it is too much of a problem to insert an appendix. Another option is to have it just as an additional page produced alongside the Guidelines but not in the Guidelines. i.e. It might sit in the Guidelines release directory but be listed on the index page on the right under TEI Sourcecode, or similar. The feedback mechanism of a generic 'Create an issue' say on all ref-*.html pages is really a separate issue in itself I guess. We currently have a 'Feedback' link on the footer of every page, which goes to http://www.tei-c.org/About/contact.xml which has a 'Submit an issue in GitHub' link that just goes to the issues page for the TEIC/TEI repository. The problem with that, of course, is we have several repositories. It would be nifty to have it go to something that directed your query a bit. |
F2F subgroup suggests to mark this green and @martinascholger to proceed coordinating the creation of the appendix. Connections to GitHub and internationalization are deferred to later / separate issue. |
…ting a TEI document with a table of current deprecations from p5subset.xml.
Added P5/Utilities/listDeprecations.xsl in commit 12736aa to generate a P5 document containing a table of all the current deprecations in p5subset.xml. The next stage is to incorporate that process into the GL build process, and then to integrate that table as (e.g.) REF-DEPRECATIONS.html, and then decide what Appendix letter it should have. |
…ting a TEI document to host a table of current deprecations from p5subset.xml, along with changes to schemas to allow for it.
I've done a few more things in subsequent commits that get us closer to making this work. I think the last thing is to figure out how the appendix generation bits (divGens) trigger processes, and hook in a new process for the new appendix. |
Made a commit to the Stylesheets in common/common_tagdocs.xsl which I think should enable processing of |
This is basically done: But the results are not (yet) pretty. It's Appendix G -- that seemed the most logical place to put it -- and it's tabular. But @jamescummings @martinascholger @hcayless please have a look and make some suggestions as to what it should look like (pointing at other Guidelines tables that exist for examples) and whether you think any additional info is required. The other thing each item should obviously do is link to somewhere in the Guidelines pages, but I haven't figured out the approved method of making that happen. |
@martindholmes — your description of what you did doesn’t entirely match @jamescummings “envisioning”. Where do things that are deprecated manually (as opposed to with |
Sorry @sydb, I didn't properly understand what was being asked for. I thought it was just a list of deprecations. I don't really know what a manual (as opposed to |
@sydb there is now a deprecation XML file in the repo, though, so it would be easy to add textual explanations of anything you like in there, above the |
For an example, see P5/Source/Specs/content.xml (search for “deprecated”). I’ll take a look at the DEPRECATION file soon. |
Well, when I build the Guidelines, the DEPPRECATION.html file looks like that But if & when it is working, seems to me it might do fine depending on formatting, separation, etc. |
Would it be sufficient to harvest the constraintSpecs whose idents end in "-deprecated" and echo out their error messages? That would be easy. |
@sydb Did you update your stylesheets before doing the build? This is one of those cases where the Stylesheets and the TEI repos both required changes. |
Right! Probably not. On it … |
OK. Got it working. Looks good. |
@sydb the latest incarnation shows correctly-linked items for most cases: but a couple which didn't end up linked; I need to investigate that. And it looks like constraint-based "manual" deprecations are also being pulled into the main table, so perhaps we only need one table after all? |
Well, it’s not clear to me that there will always be a constraint specification (or One way we could handle this is to say that when something is deprecated we always put in a I don’t see how the manual deprecations got pulled into the table: I only see a for-each //attribute::validUntil … did those constraint specifications already have So I’m trying to think through how this should work. I.e., how do we get a useful, human-readable description into the table? (Probably should be a 4th column.) The elements that can have So putting a special |
…ould be able to harvest all our deprecations into a single table. Issue #1657.
There's now only a single table, and links are working there. Now I think all that remains is cosmetic work. @jamescummings @martinascholger @sydb could you take a look at the results: and suggest what things should look like and what needs fixing. |
I've now added some basic styling to the table, added i18n keys in Stylesheets/i18n.xsl for the headers, and integrated the translation call into the XSLT in common_tagdocs.xsl. Translations are still needed, of course. The description column will be populated once @sydb has completed his work adding the required desc elements in the TEI source. |
To clarify what @sydb and I are doing to make this work: all items which are deprecated will have |
To further explicate @martindholmes’ previous post … We had to make some decisions when implementing this ticket which Council may wish to weigh in on:
I don’t want to check in the changes to the specs (that add these Yes, we should have done this in a separate branch. But a) we started before we realized we should have, and b) Martin is deathly afraid of the Stylesheets-TEI repo anti-feedback loop that would occur if we used a different branch. (I don’t care as much, because I build the Stylesheets locally, instead of on Jenkins.) |
@sydb I'm not deathly afraid. It's just not practical to have two branches in two separate repos dependent on each other, with parallel pull requests, and Jenkins can't build such a mess of stuff without multiple new Jenkins jobs. The two repos should never have been separated. |
On the prose before the table is
(i.e. it isn't necessarily this revision that has deprecated it.) Also, why not include a count of deprecated things (similar to other appendices like elements)? |
@jamescummings you can edit DEPRECATIONS.xml to make the change. I'm not sure what the value of a count is, but if you want to add it, it would be another of the processing-instruction things we've added before. |
I think the change @jamescummings recommends is fine, but I hold that the current wording asserts the list is the list of things that are deprecated in this revision, not that they were first deprecated in this revision. And as for a count, I have nothing against it, but seems like a waste of time to me. Most of the time there are fewer than 1/2 dozen dozen deprecations. (We happen to have a lot due to the datatypes now, but those all go away next month.) |
While warmly applauding the decision to provide some explanation for deprecations and guidance on what to do if you're affected by one, I wonder whether this is an over-engineered solution. So I propose to engineer it further: shirley there should be a constraintSpec on the attribute @validUntil to enforce the requirements syd sets out above? Also, as regards the data.* deprecations, this is a fairly special case, which probably should be addressed explicitly by a (series of?) postings to tei-l etc |
Yes, there should be constraints, and there already are in some sense — but I have not checked them in yet as they break the build until the conditions are satisfied. I’m planning to check both in in roughly 24 hours. As for the data->teidata, the old ones already get the red warning boxes, but I think @lb42 is right, a posting to TEI-L is in order, too. I’ll plan to post a 2-week warning on or about Mon 17 Sep. |
Checked in at c0e061a |
Done and working. |
We should have an appendix (or something else?) in the Guidelines which lists all the elements/attributes/etc that will be deprecated and the dates-after-which the deprecation will happen.
The text was updated successfully, but these errors were encountered: