Problem/Motivation
When a navigation menu contains an item that is inaccessible (access = FALSE), the following notice is generated:
Notice: Undefined index: localized_options in menu_navigation_links()
This issue can be reproduced with stock Drupal 7 core by assigning the Navigation menu as the Secondary links source.
The source of the issue is that, for performance reasons, inaccessible menu items are not localized. However, menu_navigation_links() processes all non-hidden menu items, regardless of access, and assumes that they have been localized.
Drupal 8/9
Per the Backport policy, "Issues posted only against 7.x should have an explanation in the issue summary as to why there is no related 8.x issue", so this is here to note that the issue has never been reproduced in Drupal 8/9, which works differently (there is no menu_navigation_links() function).
Proposed resolution
When iterating items in menu_navigation_links(), test for access as well as hidden status before processing. This extra access check ensures that non-localized items won't be processed.
Remaining tasks
Write a test that reproduces the issue. A draft test is attached in #50.
| Task | Novice task? | Contributor instructions | Complete? |
|---|---|---|---|
| Reroll the patch if it no longer applies. | Novice | Instructions | |
| Add automated tests | Instructions | ||
| Review patch to ensure that it fixes the issue, stays within scope, is properly documented, and follows coding standards | Instructions |
User interface changes
None
API changes
None
Original report by javier.alejandro.castro
Using stock D7, with Spanish translation, and Zen theme with a custom sub-theme, i get this when choosing "Navigation menu" as source for "Secondary links".
Notice: Undefined index: localized_options in menu_navigation_links() (line 1780 of /var/www/html/drupal/includes/menu.inc).
OS: Fedora 14 Linux
Webserver: Apache 2.2.17
PHP: 5.3.4
Drupal: 7.0 (final)
Path: /var/www/html/drupal
| Comment | File | Size | Author |
|---|---|---|---|
| #165 | 1018614-165.patch | 1.74 KB | mcdruid |
| #165 | 1018614-165_test_only.patch | 1.11 KB | mcdruid |
| #135 | Issue-1018614-by-hass-Inaccessible-menu-items-in-nav-D7.patch | 1.74 KB | hass |
Comments
Comment #1
stevenpatzComment #2
catchComment #3
Anonymous (not verified) commentedI think the problem is that is missing a call to _menu_translate() on each item for the menu_secondary_menu() function, on line 1730
Similar to the calls made on line 2118 or 2409
Hope it can be fixed soon!
Comment #4
sreeee commentedthis is the offending part, in my case:
// Create a single level of links.
$router_item = menu_get_item();
$links = array();
foreach ($tree as $item) {
if (!$item['link']['hidden']) {
$class = '';
$l = $item['link']['localized_options'];
$l['href'] = $item['link']['href'];
$l['title'] = $item['link']['title'];
if ($item['link']['in_active_trail']) {
$class = ' active-trail';
$l['attributes']['class'][] = 'active-trail';
}
// Normally, l() compares the href of every link with $_GET['q'] and sets
// the active class accordingly. But local tasks do not appear in menu
// trees, so if the current path is a local task, and this link is its
// tab root, then we have to set the class manually.
if ($item['link']['href'] == $router_item['tab_root_href'] && $item['link']['href'] != $_GET['q']) {
$l['attributes']['class'][] = 'active';
}
// Keyed with the unique mlid to generate classes in theme_links().
$links['menu-' . $item['link']['mlid'] . $class] = $l;
}
}
return $links;
Comment #5
droplet commentedthe error is come from "Add content" but why only inner page have error..
(just found that even menu hided, it will also loaded)
Comment #6
W32 commentedSubscribe
Comment #7
mjgruta commentedI also experience this problem when I change my Menus -> Settings -> Source for the Secondary links from "User menu" to "Navigation".
I changed it back again to "User menu" and the error is now gone.
Comment #8
Niklas Fiekas commentedSubscribe.
Comment #9
aperron commentedWhen I correct as jhayzhon explain, the error disappear.
Comment #10
montesq commentedComment #11
johnvSubscribe.
Comment #12
mjgruta commented#5: menu.patch queued for re-testing.
Comment #13
cappersg commentedDid a "handwise patch" by changing the lines as mentioned in the patchcode manually in the file menu.inc:
$l = $item['link']['localized_options'];
was replaced by
$l = !empty($item['link']['localized_options']) ? $item['link']['localized_options'] : array();
Uploaded the "new" menu.inc to the server: problem solved! So I don't know if the patchfile works but the solution is OK.
Comment #14
enjoy777 commentedsubscribe
Comment #15
zoneg commented#5: menu.patch queued for re-testing.
Comment #16
drupalshrek commentedI have exactly the same error (see attachment). In addition, there is now an extra "empty" menu item.
The problem began when I changed the title of the main page.
You can try at http://lesjoyeuxcolibris.be/
I have cleared all the caches; the problem still exists.
Comment #17
daverowley commentedThanks for the fix cappersg, it worked for me.
Comment #18
ortho85 commentedjhayzhon's post of January 21 solved it for me, too. Thanks.
Comment #19
lotzwe commentedCappersg's patch fixed the problem for me too. Thanks for that. I'd about gone out of my tree thinking I'd missed a setting somewhere.
Comment #20
tinokreutzer commentedcappersg's fix worked for me as well, thanks.
Comment #21
droplet commented#13, #17, #19, #20 fixes are from my patch at #5 and all said worked, so i change to RTBC.
Comment #22
catchComment #23
robin monks commentedsubscribing... horridly annoying having to patch a fresh Drupal 7 core for a simple use case.
Comment #24
carlos.macao commented+1
Comment #25
SpiffBB commentedI can confirm that the partch from post 5 fix the problem. Thanks!
Comment #26
catch#5: menu.patch queued for re-testing.
Comment #27
drupalshrek commentedYup, the patch in post #5 fixes it. Thanks!
In summary (in case anybody here who doesn't know how to read these patches):
1) Edit file includes/menu.inc
2)
Replace line 1780, which should be currently:
$l = $item['link']['localized_options'];
with:
$l = !empty($item['link']['localized_options']) ? $item['link']['localized_options'] : array();
Comment #28
webchickchx (the menu system maintainer) wants to take a look at this.
Comment #29
chx commentedI wonder whether we are hiding a problem instead of fixing it. _menu_item_localize sets localized_options and both _menu_translate and _menu_link_translate both call this function. So how do we end up with non-localized items?
Comment #30
chx commentedi took a good, long look at the history of this and it did not reveal anything. Is
$element['#localized_options'] = !empty($data['link']['localized_options']) ? $data['link']['localized_options'] : array();necessary, even? Also, I wonder how none of thought to add the obvious: we need tests. That will show where this fails.Comment #31
teddyboar commentedSame with a fresh 7.2 install. Plus, if secondary menu set to main menu, it shows nothing (no main menu at the place of the secondary menu).
I have everything on localhost, so feel free to ask me to do any testing (if any needed).
Specs: Drupal7.2, Windows 7 x64 SP1, IIS7.5, PHP5.3.6
Comment #32
aspilicious commentedLeave this at 8.x, fix will be backported. Bugs always needs to be fixed in the newest version. Trust me this will get fixed sooner if you leave at 8.x.
Comment #33
chx commentedproblem is that _menu_link_translate will "Skip links containing untranslated arguments." but _menu_tree_check_access will leave it in the tree for items in the active trail even if there is a % in there. Something like the attached patch fixes that but it might require even further research... like, why does _menu_tree_check_access leave those item there?
Comment #34
chx commented#907690-55: Breadcrumbs don't work for dynamic paths & local tasks #2 added this line.
Comment #35
sunAs @chx already mentioned, let's start with tests first.
Yuck. I've forgotten the details about what caused us to keep certain untranslated links in the tree, and I apparently #failed to properly document the underlying reasoning in code. All I remember is that it is required to make certain links to correctly appear in the breadcrumb. I hope that this is at least mentioned/documented somewhere in the issue summary or comments on it.
The block of code right above the "Skip links containing untranslated arguments" is related to that though, and likewise a block of code in menu_set_active_trail(), which is the only location that passes the $translate = TRUE argument to _menu_link_translate().
Well, separate issue: #1189310: Document why some links in a menu tree are kept untranslated for building breadcrumbs
Comment #36
Whiskey commentedI tried patch #33 as patch #5 only fixed one of two notices that I got in account settings (Drupal 7.8) . Both original notices were fixed by #33, but now I have "Notice: Undefined index: in_active_trail in _menu_link_translate() (line 915 of /home/quickstart/websites/gdutch.dev/includes/menu.inc)." on the Reports page (admin overlay). The line refers to this code:
Comment #37
rpmskret commentedAfter setting up a view for taxonomy items got the error..
Notice: Undefined index: localized_options in menu_navigation_links() (line 1782 of F:\xampp\htdocs\ic4ever\includes\menu.inc).
for every taxonomy page. eg. /taxonomy/term/4 . I hard coded the fix as did #13 based on the #5 patch.
Thanks to all posters. So far so good, seems an instant fix in this case.
Got to get this issue fixed in next drupal release.
Comment #38
bryanhirsch commentedI'm at the Boston Initiative. We're testing and rerolling patches. This patch still applies cleanly as of commit ec0f197e3c (last release 7.9). Just FYI.
Comment #39
mgifford#5: menu.patch queued for re-testing.
Comment #41
aspilicious commentedLeave this at 8.x it will be backported...
Comment #42
aspilicious commentedComment #43
aspilicious commented#33: 1018614_33.patch queued for re-testing.
Comment #44
aspilicious commentedArgh I shouldn't retest this, will fail anyway
Comment #46
mhamed commentedFor me the error merged when i display the image of the gallery as a full page
the patch worked
thanks
Comment #47
Niklas Fiekas commentedI had this error a while ago, but I can't remember how to reproduce. I'd write the tests, when someone can provide steps to reproduce this from a fresh installation.
Comment #48
Niklas Fiekas commentedError back suddenly (Edit: Oh ... it depends just on the page you're on). That gave me a chance to manually test (and reroll) the patch. See attached.
I'll go for the test case now.
Comment #50
Niklas Fiekas commentedAs chx predicted there is more work and research to be done on the fix. It seams to break a lot of things.
Meanwhile here's a test. Setting to needs review to see it fail. Questions here:
Comment #52
Niklas Fiekas commentedYay! Test failed for the right reason.
Comment #53
brucet1952 commented#5: menu.patch queued for re-testing.
Comment #54
wermfud commentedsubscribe
Comment #55
damienmckenna@wermfud: You don't have to post "subscribe" notices anymore, you can just click the lovely green Follow button at the top-right of the page :)
Comment #56
ethnovode commentedI had the notice when editing taxonomy terms and after applying the patch I have this one on the admin/structure/taxonomy/modeles page :
Notice : Trying to get property of non-object dans taxonomy_admin_vocabulary_title_callback() (ligne 381 dans /var/www/[…]/modules/taxonomy/taxonomy.module).And this one x2 when editing a term :
Notice : Trying to get property of non-object dans taxonomy_term_title() (ligne 1550 dans /var/www/[…]/modules/taxonomy/taxonomy.module).Comment #57
rpmskret commented@ ethnovode same problem w/taxonomy pages as you. I have applied the fix by poster #13 a few times now for different installs and it works 100%.
Let me know ..
Comment #58
ethnovode commentedThanks romanse, I reverted the patch and used solution provided in #13 with success.
Also I couldn't edit views anymore with the patch :
PHP Fatal error: Call to a member function get_human_name() on a non-object in /var/www/[…]/sites/all/modules/views/views_ui.module on line 259, referer: […]/admin/structure/viewsI hope this get fixed and if I can help to find the real cause of this please let me know. I don't understand a thing here :)
Comment #59
Anonymous (not verified) commentedJust commenting, i cant believe i posted this on January 7, 2011 at 3:45pm
And the bug is still alive and kicking. Please somebody kill it!!!!
Comment #60
pat redmond commentedConfirming the bug exists in 7.14
Just to confuse things, I am not using translation at all. Although I guess the translation functions are still being called.
Comment #61
jdanthinne commented#33 is working for me on this case.
EDIT : some messages are gone… but new ones are there now, so patch #33 is not working at 100%
New messages:
Comment #62
chaloum commentedI've go the same issue in the current version of D7
Comment #63
jawi commentedsubscribe
Notice: Trying to get property of non-object in taxonomy_admin_vocabulary_title_callback() (regel 381 /public_html/modules/taxonomy/taxonomy.module).
Comment #64
Kim A. Jakobsen commentedsubscribe
Comment #65
jlancaster commentedProblem still exists in 7.15. I resolved it a slightly different way after poking around and went with using a reference as opposed to #5's solution.
Replaced:
$l = $item['link']['localized_options'];
With:
$l = &$item['link']['localized_options'];
I'm thinking this might be a better solution since it appears the $item['link']['localized_options'] array actually exists, it just doesn't know the appropriate scope. I haven't thoroughly investigated whether or not this breaks somewhere down the line but figure since this issue has been open so long an alternative interpretation might be useful in moving a patch into a production release.
Comment #66
thalism commentedThe #65 solution seems to work very well to me.
I'm using Drupal v. 7.14
Comment #67
FSheFF commented#65 worked for me as well. I've been trying various "solutions" for two weeks now and this is the first one that worked for me. At Drupal 7.15.
Will be on the watch for other issues that might crop up.
Comment #68
droplet commentedComment #69
cconrad commented#65 fixed it for me too. Using Drupal 7.15.
Comment #70
danon1981 commentedDrupal 7.15 fixed with solution from #65
Comment #71
JvE commented#65 does the same as #5, it simply prevents the error from displaying.
A quick look seems to indicate that the localized_options are not there because for performance reasons inaccessible items are not localized.
But it appears they are added to the menu_navigation_links which incorrectly assumes all items have been localized.
Attached patch is an attempt to fix that.
For the D7.15 people wanting to hack core:
includes/menu.inc line 1855:
if (!$item['link']['hidden']) {change to
if ($item['link']['access'] && !$item['link']['hidden']) {Comment #72
JvE commentedComment #73
jlancaster commentedIssue is still persistant in the latest 7.16 release. I like #71's solution as opposed to what I suggested prior. I'm hoping that flagging this back to v7 might get someone looking at it and including it in future updates. I hate hacking Drupal core!
Comment #74
jfarry commentedCan confirm that problem still exists in 7.16 and also that #71 appears to work well :)
Comment #75
bartezz commentedAlso confirming it's still there and patch in #71 solves the issue!
Comment #76
Niklas Fiekas commented@jlancaster: We'll need to fix it for 8.x first and then backport to Drupal 7.
This has a lot of confirmations already. Thanks, JvE, for the patch! I think all we need is some tests. I had a simple one ready in http://drupal.org/node/1018614#comment-5481040 but by now (instead of trying to get that applying) we should probably just go and write a better one from scratch.
Comment #77
axle_foley00 commentedThe solution proposed in comment #7 worked for me in Drupal 7.
Comment #78
JvE commented@axle_foley00 that is not a solution.
Comment #79
nedjoClarify issue in title. I've also updated the summary.
Comment #80
nedjoRestoring Needs tests tag.
Comment #81
JvE commentedThis is no longer an issue in D8.
The current menu_secondary_menu() calls
menu_navigation_links('main', 0) which calls
menu_tree_page_data('main', 1) which calls
menu_build_tree('main', $parameters) which calls
menu_tree_check_access(&$tree, $node_links) which calls
_menu_tree_check_access(&$tree) which rebuilds the $tree without any links that do not match
if ($item['access'] || ($item['in_active_trail'] && strpos($item['href'], '%') !== FALSE)) {
Therefore the $tree used in menu_navigation_links should never have any items with $access == FALSE and thus without localized_items.
(unless an item you do not have access to ends up in_active_trail and has a % in it's href)
Comment #83
JvE commentedSigh. Check twice, submit once :(
Comment #84
catchWhile this is a notice, it's not a sign of a more serious bug, so downgrading from major. Could still use tests here I think.
Comment #85
catchSorry, completely wrong status...
Comment #86
wxman commentedI was having the same issues on mine version 7.18. The patch fixed all the errors.
Comment #87
hectorelgomez commentedThanks, works perfectly.
Comment #88
teknic commentedWorks for me, thank you!
Comment #89
JvE commentedComment #90
skdrupal88#83: drupal-menu_navigation_links-1018614-83.patch queued for re-testing.
Comment #91
rachidik commented#83: drupal-menu_navigation_links-1018614-83.patch queued for re-testing.
Comment #92
rachidik commentedwork for me ..its ok
Comment #93
vegantriathleteIt seems that other things changed in D8 that caused the patch to no longer be necessary. However, as of 7.22 I can still recreate the error by changing the secondary menu from User to Navigation.
What is the status of this patch? Does it correctly address the issue? Is it going to be committed to D7?
Comment #94
vegantriathleteNote: In my case I am using menu_token to place the user id in the path. When people visit the site as anonymous the token gets resolved to "not yet assigned".
link['access']= TRUE,link['hidden']= 0 for these items and there are still no localized_options. So, even adding the code would not fix the situation for me.Is this a bug in menu_token? Should it be setting access to FALSE or hidden to 1?
EDIT: I resolved this by adding logic to my custom access callback function (used in my mymodule_menu) to check whether the user is signed in ($user->uid). Thus, an anonymous visitor gets access = FALSE now. So, perhaps this was really a bug in my own code.
Comment #95
David_Rothstein commentedWhat happened to the tests? (For example, the ones written in #50.) They seem to have gotten lost somewhere along the way...
And at least the tests should go in Drupal 8 too, even if the bug doesn't exist there (especially because getting tests for this passing is the way to prove/guarantee that the bug no longer exists).
Comment #96
David_Rothstein commented"needs backport to D7" tag didn't seem to stick...
Comment #96.0
David_Rothstein commentedUpdate summary.
Comment #97
kristiaanvandeneyndeIs there any way to get the simple patch in D7 already and then write tests for both versions as a follow-up in the same issue?
Comment #98
tetley44 commentedThankyou for this. This fixed my problem too. :-)
Comment #99
jamesharv commentedHere's a D7 version of the patch from #83.
Comment #102
JvE commented#83 is a D7 patch.
D8 does not have the issue due to changes in the way menus work.
David_Rothstein wants to have a test for D8 first and then a test for D7 before the D7 patch can go in.
Comment #103
jamesharv commentedApologies @JvE. I misread the issue. Thanks for the clarification (and for your patch!)
Comment #104
pdmackenzie commentedComment #7 (jhayzhon) fixed it for me too!
Comment #105
socialnicheguru commented99 worked for me.
Comment #106
dcam commentedFor anyone working on this issue in the future, see David_Rothstein's comments in #95.
Tests need to be added to D8 before the fix and tests can go into D7. #50 has tests for D8 already, but I don't know enough about the issue to say if they're sufficient. #50 will need to be rerolled.
Comment #107
hussainwebSince it's pretty long since #50, let me summarize the changes I made in the reroll.
core/modules/menu_ui/src/Tests/MenuTest.php. The method name is the same.$this->big_userbecame$this->admin_user).main-menuis now justmainandnavigationis nowtools.These are the relevant changes. I have changed the function call to
drupalPostto the new method (drupalPostForm).I am hiding all other patches for now to avoid confusion. Please show the relevant patches once the test is proper and the fix needs to go to Drupal 7.
I tested this locally and there is a failure in the test. The test expects the "Add content" link to appear twice - once in secondary menu and once in tools block. But the block is not placed for the test and the text appears only once (from the secondary menu). I have to check this once on a fresh install of D7 to be sure of what was expected. For now, I am just attaching the patch for review.
Comment #108
hussainwebI compared the block in D7 and D8 and they are in the same position, so the test is still valid. I have modified the test to place a block and it all passed for me on my local. Here it is.
Comment #110
heyddi commentedFor D7, #83 works great! Thanks.
Comment #112
mgiffordComment #113
mgiffordComment #115
hussainwebA very small change. Git took care of rebase all by itself.
Comment #117
etron770 commentedI do not understand, why we need to use a core patch?
I assume it is a misconfiguration of the website, isn't it? I get this notice only on one of the multilingual sites:
I copied a multidomain, multilingual website in a new webspace and deleted all domains (domain1, domain2 and domain3) and their content, except one domain (domain4). After that I am getting this noice.
I deleted this domain (domain4) on the original website and there is no notice about that when using (domain1, domain2 and domain3) .
.
If it is not a misconfiguration why is there an nearly 3year old unfixed issue? That's not drupal like
Comment #118
JvE commentedIt is a bug. But not a very big one. And Drupal issues that are not super urgent and critical usually take a long time.
Take the latest D7 bugfix release (7.33):
Issues from 2005 fixed: 1
Issues from 2008 fixed: 1
Issues from 2009 fixed: 5
Issues from 2010 fixed: 10
Issues from 2011 fixed: 14
Issues from 2012 fixed: 12
Issues from 2013 fixed: 14
Issues from 2014 fixed: 25
Comment #119
scott.browne commented#83, thank you!
Comment #120
euk commentedThis is ridiculous.
7.39 and still not fixed.
Used #83 and worked fine for me.
Comment #121
etron770 commentedMaybe, but doing service for dozens of sites its no way to patch and test the sites after each drupal core update ....
Comment #122
webchickIf anyone wants to see this go in, the list of what's left to do is in #106.
Comment #126
g33kg1rl commented#83 works for me. :)
Comment #127
deanflory commentedNeeds a reroll of #83 against D7.53. I believe the errors I'm seeing are from this patch, or the lack of this patch doing what is necessary to fix the issue.
Comment #129
deanflory commentedNevermind the reroll, I think patch #83 did work properly when applied to D7.54. Thanks.
Comment #130
Pavan B S commentedFixed the coding standard of short array, applying the patch.
Comment #133
hass commentedComment #134
hass commentedMy logs are full and ONLY log this error message every few second. Why the heck is the on liner from #83 still not committed to in D7? I do not care about all the back and forth here. This is a serious issue to everyone and core maintainers need to put priority on fixing it. With test or without - I do NOT care. Bug is bug.
Comment #135
hass commented#50 + #83 combined. Unbelivable that core maintainers cannot combine and commit two very small patches within 7 years.
Comment #136
hass commentedComment #137
hass commentedComment #138
hass commentedReroled D8
Comment #139
hass commentedComment #140
xjmStill needs tests... there's a starting point in #50. I'm not sure how the patch here corresponds to the issue in the summary, either. Was the wrong patch attached?
Also not a critical.
Comment #141
hass commentedYou are right. I attached the wrong D8 patch.
Comment #146
solideogloria commentedCan we please get this committed to D7 and D8? It looks to me like D7 already has a test written, so can someone fix the issues with the D8 patch hass posted since it failed testing?
Comment #147
JohnnyW commentedIt's the end of 2019 and I had to apply this fix #135 to Drupal 7.61 - problem solved now (can't imagine a life without Drupal 7, it's support and its many modules).
Comment #150
gngn commentedI've been using the (seven years old) D7 patch #83 for two and half year without problems.
#135 is the same patch with added tests.
So in my opion this could be commited to D7.
Comment #151
solideogloria commentedAgreed. The Drupal community came together and made a solution, but the powers that be are unwilling to do anything, despite the drupal.org site itself still running on D7...
Comment #152
stevenpatzThe days of Drupal 7 are pretty limited, so the odds of this being patched to Drupal 7 ....not so good.
Comment #153
solideogloria commentedThe fact that a patch WITH TESTS exists makes your point irrelevant. The issue is essentially fixed, with a few people standing in the way of it actually being merged.
Does Drupal care more about its users, or its agenda?
Comment #154
izmeez commentedAgreed. Using patch in #135 for some time. Drupal policy is shooting itself in the foot.
Comment #155
volegerTagging. Hope that will help to gain some attention before the next Drupal 7 release preparation.
Comment #156
stevenpatzAs it stands now the last patch failed. So at a minimum a new patch needs rolled.
Comment #157
solideogloria commentedI just patched #135 against 7.x-dev successfully... there's literally no change needed. It's the D8 patch that failed.
Comment #158
izmeez commented@StevenPatz what patch and failure are you referring to? The last several comments have been about the D7 patch in #135 that applies without difficult to D7.73 and has tests and has been RTBC. Sure D8/D9 is a different story and that's what's holding it up. Policies before code.
Comment #159
volegerDoes the issue reproducable on Drupal 8/9? Followed steps to reproduce described in the patch and those looks like outdated.
Comment #160
volegerThe test coverage based on steps to reproduse from Drupal 7 issue for Drupal 8/9 make no sense as those steps not able to reproduce (At least for me). So, if I'm wrong and someone experienced issues in Drupal 8+ with the same symptoms, then the test for Drupal 8/9 need to be updated. In the other case this issue is the only Drupal 7 issue and patch #135 can resolve it with the test coverage.
Comment #161
volegerSet proper status, as currently this issue need some additional feedback.
Comment #162
volegerSet proper status.
The patch is at #135 comment.
Patch contains a test (based on steps to reproduce) and the one-line fix.
Comment #163
solideogloria commentedAdded "backport policy" statement about why D8/9 doesn't need to be covered.
Comment #164
mcdruid commentedRemoving the "Pending Drupal 7 commit" tag for now per my comment #1007746-215: Reordering fails with more than 100 items in a menu which I won't repeat in full here.
Comment #165
mcdruid commentedSame patch as #135 plus a test_only (which I suppose is a reroll of #50).
Comment #167
mcdruid commentedOk, I think this LGTM (on the basis of the note on the backport policy in the IS).
Comment #168
fabianx commentedRTBC + 1
Comment #169
solideogloria commented+1 RTBC (because it's the same as 135, which I tested a while ago.)
Comment #171
mcdruid commentedThanks everybody!