Problem/Motivation
On #648218: Make API changes in Drupal core be nodes, we made a new content type and View for Change Records. This is a follow-up issue to fix any glitches and make UI improvements that might be needed.
Proposed resolution
See sections below.
Remaining tasks
These proposed changes need to be evaluated and acted upon if desirable:
a) [DONE] (see comment #14 - patch added to drupalorg and deployed to d.o) - Fix bug: on issues with no changes, the sidebar block for related change records was appearing, with some bogus empty text. The patch made the block disappear for issues with no related changes.
b) [DONE] (see comment #3 - done in the d.o user interface) - Uncheck "Promoted to front page" in the changenotice content type.
c) [DONE] In the Block on an issue, when there are no related changes (for instance, on this issue, check out the right sidebar). This block was supposed to not show at all if there were no results, but it is showing the empty text instead. I think it might be better if it was not shown.
d) (undecided) We might need to re-instate more options for the updates done section, such as adding a N/A to indicate that this type of update doesn't need to be done. I think the workflow will be OK as it is, but we need to try it out for a bit and see. [I am not sure on this one yet. I don't think that the Coder or Docs people are using this section much yet. --jhodgdon. I think a "N/A" option is probably a good idea. That section confuses a lot of people, in my experience. --xjm] Separate issue has been filed: #1762568: Add options for update status of API change nodes
e) [OBSOLETE] (see comment #15 and #18) Consider adding other information to the Issue page sidebar to go with the Related Changes block, such as the Jump To links or some other information. [Note: The related changes have been moved to the Issue Summary section, so this does not apply any more.]
f) (probably don't need this) Add a field where you paste in the commit hash. Note that this is probably waiting on #493074: Back-link to the commit as a comment on the related issue. and/or #443000: When viewing an issue, display a list of commits that reference that issue #, so that the issue would have the commits displayed, making it easy to find the commit hashes when creating the change node. Or at least having the core maintainers getting into the habit of putting commit hashes in when they make a commit. [Note: we probably don't need commits on change nodes, since they are quite likely to be put onto issues soon.]
g) (probably not) Taxonomy, as an extra filter for finding change records of interest on the list-changes page (could be the component list for core, or the list of categories from the Categorical 6/7 module update page, or ...???). [But the change records filtering is already pretty extensive, so we probably don't need this.]
h) [DONE] A link to the RSS feed. We have an RSS feed for change requests, and I think if you're on the list-changes page http://drupal.org/list-changes you should see the RSS link, which would go to http://drupal.org/changes/drupal/rss.xml (similar URL for other projects). See issue #1479576: [patch elsewhere] Provide a link to the RSS feed on change notices page.
i) (OBSOLETE) Add Translators as someone a change can affect. See issue #1218394: Add "Translators" to the list of people a change affects in API change nodes. [Note: We talked to the translation team and they said no on this one.]
j) [DONE] Add a link to add a new change notice on the list page. See issue #1479574: Add a link to add a change notice at the top of http://drupal.org/list-changes/.
k) #1762540: Include revision date in display of API change nodes
l) [oops, this was the same as (d) so has been combined]
m) (I think this is abandoned) Being discussed in this issue [should be a separate issue probably]: a different way to view the output, with full nodes instead of a summary table, being worked on by KarenS.
n) [DONE] #1785334: Add "Distribution developers" as an option under "Impacts" for change notices
o) #2302003: Change records tabs for contrib projects link to Drupal core's change records Menu tabs above change records page should link to /list-changes/[project]/[tab].
User interface changes
See above.
API changes
None.
Original report by [username]
On #648218: Make API changes in Drupal core be nodes, we (hoorrrraaayyyy!!) made a new content type and View for Change Records.
This is a follow-up issue to fix any glitches and make UI improvements that might be needed.
Currently known:
a) In the Block on an issue, when there are no related changes (for instance, on this issue, check out the right sidebar). This block was supposed to not show at all if there were no results, but it is showing the empty text instead. I think it might be better if it was not shown.
b) We might need to re-instate more options for the updates done section, such as adding a N/A to indicate that this type of update doesn't need to be done. I think the workflow will be OK as it is, but we need to try it out for a bit and see.
| Comment | File | Size | Author |
|---|---|---|---|
| #44 | feature-diff.txt | 6.05 KB | karens |
| #44 | drupalorg_change_notice-6.x-3.1.tar_.zip | 7.33 KB | karens |
| #42 | Change records for Drupal core | changenotice drupal dev-4.jpg | 84.35 KB | karens |
| #42 | Change records for Drupal core | changenotice drupal dev-3.jpg | 58.78 KB | karens |
| #42 | view-change-nodes-new.txt | 34.83 KB | karens |
Comments
Comment #1
pillarsdotnet commentedPerhaps a silly question, but who is going to manually convert all the old data in http://drupal.org/update/modules/6/7http://drupal.org/update/modules/6/7 to the new format?
Comment #2
Toktik commentedjhodgdon, have you unchecked "Promoted to front page" ? :)
Change nodes appearing in News tab in Front page.
Comment #3
drummI unchecked the promoted boxes. Looks like features doersn't manage those for us.
Comment #4
rszrama commentedI'll give you a hearty +1 to not showing the block if it's empty. It was pretty disconcerting to suddenly lose a third of the page all the way down an issue to a block that was providing no meaningful information. Even if it does have data in it, the fact that it needs a grid-4 sidebar region down the length of the page is going to be annoying... I guess I really settled into having a full width issue page and miss it now.
Do you think there'd be some way to put this in the content region floated right so it doesn't affect comment width? (Edit: just realized that might not be so easy.)
Comment #5
drummNon-full width is not actually a bad thing, some discussion on this landed at http://drupal.org/node/1036132#comment-4726874. Summary: easier to read, try putting more meta-data in the column.
Comment #6
rszrama commentedAhh, sorry to rehash the topic. I'm familiar with studies on the readability of smaller width columns, but I liked the extra space when posting code / images at the very least. I don't often hang out in issues with hundreds of comments, though, so maybe the nature of Commerce's issues is less conversation dense and more technical at this point.
Comment #7
sunsubscribing
Comment #8
jhodgdonRE #1 - We are starting this process with Drupal 8.x changes.
We are not going to go back and convert the 6/7 or 5/6 module/theme update pages to be Change record nodes. That would be a huge amount of work to get right (if it's even possible), since we would need to cross-reference the categorical lists, figure out what has been documented (and sent to Coder, etc.), and what hasn't, etc. It would be nearly impossible to get right, and I don't want to litter the management views for Coder and Docs people with old stale 6/7 changes that have already been taken care of.
Sorry.
Comment #9
dstolsub
Comment #10
merlinofchaos commentedI totally agree with rszrama in #4. Losing a third of the screen for all issue information for a tiny block is a colossal waste of space, and I've gotten accustomed to having the full width for issues.
Comment #11
fenstratI also agree with rszrama in #4 and merlin in #10. Seriously missing full width issues.
Comment #12
Bojhan commentedI am a bit confused by this move as well. It adds way to much visual prominence to something, that has little importance to most people. The fact that we are not using all of the page, is not the point - if that improves readability, that's fine.
I find the argument that this is done to improve readability a bit vague though. The idea behind it is that the readers eyes become fatigued after a certain line-length - and thus often a rule of thumb applied that the ideal line-length is between 52-78 characters. Although this is done correctly in this case, there are more factors at play such as the font(especially width), letter spacing, word spacing, and even alignment which is very different in the issue queue than on long body's of text.
I am not sure with the change we have accounted for all the other variables, also considering mark boulton put a lot of thought into the design of these pages - I am hesitant to say, that this should be considered an improvement.
Can a typographer (purist) chime in?
Comment #13
jhodgdonI think that much of d.o has sidebar blocks. Issues didn't in the past. There was some discussion on the original issue about this reducing the width of issues and that being a Good Thing... as I'd like to spend time fixing the "No changes or invalid project" block, I won't search for it now, but maybe you can find it?
Comment #14
jhodgdonHere is a patch that should fix the block so that if there is nothing to display, it is not displayed (instead of displaying the empty text).
This is a change to the default view in the change notice feature. So after applying this patch, it would need to be updated... clear cache? do something in features module UI? I'm not sure what the correct mechanism is. I made the patch by fixing the problem in the views UI on my test site (which was overriding the block display's empty text and setting it to nothing in the changes View). Then I exported the view, and found the one line that had changed, and added it to the code to make the patch. So I am not sure how to deploy it... anyway, here it is and it should work...
Comment #15
xjmEveryone I've talked to really dislikes the sidebar block. Personally, it makes me feel almost claustrophobic. I am not sure if this is just because we are habituated to the full width, or because at this point it is not yet useful. However, I know the plan is to add more metadata to this column, which would be helpful for issue scan-ability in general.
A couple of thoughts:
Comment #16
xjmSorry, crosspost because of d.o barf.
Comment #17
jhodgdonAs a note, here are some other features that weren't done in the first pass, but could be addressed here:
a) Add a field where you paste in the commit hash. Note that this is probably waiting on #493074: Back-link to the commit as a comment on the related issue. and/or #443000: When viewing an issue, display a list of commits that reference that issue #, so that the issue would have the commits displayed, making it easy to find the commit hashes when creating the change node. Or at least having the core maintainers getting into the habit of putting commit hashes in when they make a commit.
b) Taxonomy, as an extra filter for finding change records of interest on the list-changes page (could be the component list for core, or the list of categories from the Categorical 6/7 module update page, or ...???).
Comment #18
jhodgdonxjm #15: A few notes...
a) I think this block will be visible on only a few issues, once the patch above gets deployed.
b) I think the right column width is set by the overall d.o design -- for instance, see pages like http://drupal.org/documentation and the rest of d.o except issue pages.
c) I like the idea of putting other stuff on the sidebar. But the jump to links - probably not - those are part of the issue node display, kind of tricky to move them to the sidebar.
Comment #19
jhodgdonWhoops. Didn't mean to change the title back there.
Comment #20
drummCommitted. Will be deploying soon.
Comment #21
drummComment #22
jhodgdondrumm has deployed this fix -- thanks for the rapid turn-around!
Changing back to active for the other suggestions, which need to be discussed a bit more before deciding to make them happen or not.
Comment #23
jhodgdonI just noticed another thing that should probably be done: a link to the RSS feed. We have an RSS feed for change requests, and I think if you're on the list-changes page http://drupal.org/list-changes you should see the RSS link.
Note: Just after I add this comment, I'm going to go up to the top and (gasp!) edit the issue summary so that we have all the suggestions in one list. :)
Comment #24
yoroy commentedHardly the expert here, but some considerations:
Drupal code wraps at 80 chars, people will want to post code snippets and see that not break in here
Readability, fontsize, line length, line height and friends, yes they all relate. For line length alone, the take-away is that *comprehension* seems to drop with shorter line lengths. The ball park is 70 to 110 chars per line, anything above or below is likely to hamper comprehension and retention.
Line-length preference is very much an individual preference. Enjoy this reasonable informed bikeshed discussion in the comments here so we don't have to: http://www.viget.com/advance/the-line-length-misconception/ As per usual, skim the post, then start reading at the bottom :-)
I checked this page with firebug, and an optimal line of text in this here layout, with the block showing, hits 90 characters per line. A line with word lenghts that cause the line to wrap sooner doesn't easily drop below 85 chars per line. So it seems doable and wouldn't necessarily break the design but also comes really close to what is the absolute minimum necessary here.
Comment #25
xjmJust closed #1218166: Why do I (and others?) see revision info on issues? as dup.
Comment #26
drummSend general layout and design stuff over to our theme, http://drupal.org/project/bluecheese. It isn't this issue's problem.
(Since there was some talk about it here, I'd like to summarize the current situation. *.Drupal.org is ours. We did have Mark Boulton design a redesign, but that was well over a year or two ago. It is ours to evolve now. We need to do that, so there isn't a need for another monolithic redesign project.
We already are doing that, the body font size was bumped up from the original, without changing the columns. That certainly changed the character counts. Different fonts on different systems will give you different counts too.
Issue pages are especially ours to make our own, Mark didn't spend any time on them. We have the advantage of being users of issue pages. We don't have to worry about the old "you are not the user" advice as much, but do keep it in mind.
Sorry for the rant.)
Comment #27
yoroy commentedYou're right drumm, but we also have to have these design discussions in the context of where it actually happens and people are thinking about it. Thanks for the summary on who's to own this. Also: #1218230: Design for issue pages with more information :-)
Comment #28
drummNew work on this can happen at docs_infra-drupal.redesign.devdrupal.org, when it finished in about 5 minutes. The D.o snapshot was taken before the deployment today, so head over to .../admin/build/features and revert to what is in code. As always, info on the setup is at http://drupal.org/node/1018084.
Comment #29
jhodgdonThere's a separate issue related to the API change nodes:
#1218394: Add "Translators" to the list of people a change affects in API change nodes
I'm adding this to the issue summary at the top right after I add this comment.
Comment #29.0
jhodgdonUpdate issue summary to list all proposed ideas, and document which ones have already been done
Comment #30
pillarsdotnet commentedIt is possible to create change notification records that are attached to issues for contributed modules.Would it be possible to create a view that gathers the change notifications associated with a given project, and link to that view from the project page?EDIT: Dave Reid said in IRC that this has already happened; I'm going to go and test it out now.
Comment #31
jhodgdonYeah every project has a view. Just go to http://drupal.org/list-changes/pathauto or whatever the project short name is (that one doesn't have any).
Comment #32
pillarsdotnet commentedYup; I added a change notice for one of my projects, and I saw it listed in the resources on the project page.
Comment #33
webchickPosted #1327980: Change notices should default to revisions on which is a quickie if someone has a d.o sandbox.
Comment #34
jhodgdonTagging so I don't keep losing this issue
Comment #34.0
jhodgdonAdd another Remaining Task (translators as people this change can affect, separate issue)
Comment #35
jhodgdonI just updated the issue summary with all the status of all the tasks that have been mentioned here, plus two more that were recently filed separately. There are a few items in there that are marked "undecided" -- any opinions on whether we should do them or not?
Comment #36
xjmMy two cents on the "undecided" points:
Comment #36.0
xjmadd all the stuff discussed here, with status, to the summary
Comment #37
jhodgdonThanks xjm... I've updated the issue summary accordingly. I'm still undecided on (d) though.
So it looks like we need to do (h) and (j) sometime soon. I can take them on but am waiting on
#1401136: Change notification "keyword" function doesn't work to get committed first, since I will need to make a patch that will conflict with that one, on the same dev server.
Issues for (h) and (j) already exist:
#1479576: [patch elsewhere] Provide a link to the RSS feed on change notices page
#1479574: Add a link to add a change notice at the top of http://drupal.org/list-changes/
Comment #38
jhodgdontagging
Comment #38.0
jhodgdonUpdate according to xjm's comments in #36
Comment #39
jhodgdonSo... All of the decided-on ideas in this issue have been completed now -- hooray! I just updated the issue summary.
I'm inclined to mark this as "fixed", unless we decide we need to do:
(d) - N/A option for the "updates done" section -- I think we won't know if we need to do this until the Coder, Docs, and related teams start using the change notices to figure out what needs to be documented/updated. My feeling is that the current set-up will work out OK, because of the search options available on
http://drupal.org/list-change-updates/drupal
For instance, you can search for Impacts = site builders/admins/etc., online docs marked "not done" -- there is not really a need to have things that don't impact site builders also marked online docs = N/A... at least that was my vision of how it would work.
(f) commit hash field -- I think we're leaning towards putting this on issue pages instead in some fashion, so it probably doesn't need to be on the change records too? If we do want it on the change records as well, we could probably accomplish it via a view with relationships rather than a field, but probably we don't need it?
(g) some sort of taxonomy or component list for filtering change notices -- I don't think we need it, as we have quite a bit of filtering available... we also need to keep in mind that change notices apply to all projects, so we can't just use the core component list here.
Anyway, I'm tenatively marking this issue fixed. If someone thinks we need to do one of these three items, or has other ideas for improving change notices, feel free to reopen the discussion!
Comment #41
karens commentedI would like to re-examine "(g) some sort of taxonomy or component list for filtering change notices -- I don't think we need it, as we have quite a bit of filtering available... we also need to keep in mind that change notices apply to all projects, so we can't just use the core component list here."
The reason is that you can neither filter by keywords or taxonomy. So there is no way at this point to get an overview of changes by category similar to what we had for earlier versions.
There is also no way to get a view that gives you an overview of the actual text of the changes without clicking into every single issue. There is also no way to get an rss feed that has anything other than the most recent changes. Together these make the new list somewhat less useful than the old page that you could scan to see what has changed at a glance. You can see people complaining about this at http://drupal.org/update/modules/7/8, and I personally don't think this is as useful as it could be.
I've asked for access to a development environment where I could try to create some more useful views like this. I'd like a view that displays the text of the change for a way to scan without clicking into each issue, and it would be nice to have a way to create such a scan that is categorized, too. It would also be nice, and probably not too hard, to have the rss feed respond to values in the url so you could see a rss feed for a time period (or for all time), not just the most recent changes.
I'm open to suggestions if people disagree, but I know that for me at least the current view is less useful than the old page was.
Comment #42
karens commentedSo here's one simple improvement. I've altered the view so the original view works exactly as it does now and it is accessible both from the original url and also from list-changes/summary as a default tab.
Then I added a new display that has all the same filters and arguments but instead of displaying as a table, it displays the complete nodes as a detailed display. This makes it easy to filter the changes and read the results without clicking through to each node. This view shows up as another tab at list-changes/detail.
Screenshots and the exported view are attached.
Comment #43
drummPlease go ahead and export the whole feature at admin/build/features when this is ready to deploy. Be sure to call out any config changes not managed by features if they happen.
(I don't have a comment on the actual changes. I shouldn't have any problems with basic views changes, as long as people like them.)
Comment #44
karens commentedOK the output of fd and the new feature are included below.
Comment #45
jhodgdonI'm not sure what you mean about not being able to filter by keywords -- you can, last I checked? For example:
http://drupal.org/list-changes?keywords_description=taxonomy
On the other hand, your suggestion about having a way to view entire nodes sounds like a good idea! Did you do that on a test site where we can try it out?
Comment #46
karens commentedThe keywords do work here, I was having trouble somewhere but can't re-create that now.
You can see this in the screenshots and at http://changenotice-drupal.redesign.devdrupal.org/list-changes/ and http://changenotice-drupal.redesign.devdrupal.org/list-changes/detail.
Comment #47
jhodgdonLooks pretty good! A few thoughts:
1. How will people know that the detail page exists? Oh, I see on the detail page that there is navigation back to the summary... Maybe it could also list the http://drupal.org/list-change-updates page as a link? Also, this navigation is not correct if you are on a page for a different project, such as http://drupal.org/list-changes/examples (for the Examples project).
2. I think the URL for the details page needs to be changed. If there was a project called "detail" it could get confused with this URL. How about list-changes-detail/[project name] instead of list-changes/detail?
3. I'm also not sure that the details page should have so many items per page. It's very long. Thoughts?
Comment #48
karens commentedThe list-changes/summary and list-changes/detail are the right way to configure paths that are tabs (list-changes is the base path, and the other two are the tabs). If I change it to list-changes-detail it's a completely different path and the tab can't work. There are no 'links' to the different views, there are tabs. You can see both tabs from both views. If you want to see a project page it should be list-changes/detail/example or list-changes/summary/example, since the project name is an argument that drops in after the base view path.
I limited it to 30 items rather than 50. Yes it's long, but if you shorten it too much you lose the benefit. I think 30 is a fair compromise.
Comment #49
jhodgdonThe problem is that list-changes/[project] is currently the path for change lists for each project. We just currently drop the [project] for Drupal Core, although list-changes/drupal is the correct path. So you'd need to change the paths for other projects... breaking links etc. I'm not sure what the solution is, but the test site as it is now will not work for non-core change lists.
Comment #50
solotandem commentedAdded issues:
#1762540: Include revision date in display of API change nodes
#1762568: Add options for update status of API change nodes
Comment #50.0
solotandem commentedUpdate status of tasks
Comment #51
jhodgdonThanks! I added the issues in #50 to the summary. Also KarenS: I added your recent ideas to the summary, but I think it would be better in a separate issue (this is actually a meta-issue).
Comment #52
webchickHere's another one, which hopefully should be pretty easy: #1785334: Add "Distribution developers" as an option under "Impacts" for change notices
Comment #52.0
webchickadd some new ideas to the summary
Comment #53
jhodgdonAdded #52 to summary.
Comment #53.0
jhodgdonAdded new issue to summary
Comment #54
mgiffordSo can this be closed? Still some undecided issues, but.
Comment #55
jhodgdonThere are quite a few open follow-ups. Normally we leave a Meta issue open until all the folllowups are done?
Comment #56
mgiffordThat's fine. Partly it's just a reminder that this issue has stalled. Can we decide on the undecided elements?
Comment #57
jhodgdonOK, I've taken a look at the items in the summary... (d) is actually the same as (l), and is an open issue, so I've combined them.
(k) and (n) are still open issues that seem reasonable.
As far as I know (m) has been abandoned.
I've updated the summary, and linked to the related issues.
Comment #58
mgiffordThanks!
Comment #61
megachrizAdded #2302003: Change records tabs for contrib projects link to Drupal core's change records.
Comment #71
drumm#1785334: Add "Distribution developers" as an option under "Impacts" for change notices is done.
Comment #72
drummThat leaves only:
Which I think can stand on their own without this issue tracking them. Especially since the first one looks like it might need some decisions.