Problem/Motivation

There are some documentation links that have invalid HTML. According the HTML specification, every attribute in a HTML tag have a pair (attribute, value) with a notation like (with double quotes). In the documentation, there are some links that have the value of the @href attribute with only one quote.

Steps to reproduce

Proposed resolution

Fix the quoting of the href attribute.
Use this to find instances.
$ git grep -ri "/code>

Remaining tasks

Review
Commit

User interface changes

API changes

Data model changes

Release notes snippet

I attach a patch that solves this little bug.

Issue fork drupal-898656

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

jacine’s picture

Version: 7.x-dev » 8.x-dev
Status: Needs review » Needs work

Hi @rvilar, thank you for the patch! You are correct and this should be fixed.

However, the following lines don't have any links or invalid HTML, so they would need to removed from this patch. Also, I'm 99% positive that it's too late to get this fixed in Drupal 7, even though it would be nice, because I believe it would require changes to translations that have already been made, and we are well past string freeze. So, I'm going to mark this 8.x unless someone can prove me wrong.

+++ modules/blog/blog.module	31 Aug 2010 17:31:42 -0000
@@ -40,15 +40,15 @@ function blog_help($path, $arg) {
+      $output .= '<dd>' . t('Each user\'s blog entries are automatically displayed with a link to the user\'s main blog page. You can create as many single-user blogs as you have site users with permission to create blog content.') . '</dd>';
+++ modules/blog/blog.module	31 Aug 2010 17:31:42 -0000
@@ -40,15 +40,15 @@ function blog_help($path, $arg) {
+      $output .= '<dd>' . t('Blog entries from each single-user blog are also aggregated into one central multi-user blog, which displays the blog content of all users in a single listing.') . '</dd>';
+++ modules/blog/blog.module	31 Aug 2010 17:31:42 -0000
@@ -40,15 +40,15 @@ function blog_help($path, $arg) {
+      $output .= '<dd>' . t('There is an optional <em>Blogs</em> menu item added to the Navigation menu, which displays all blogs available on your site, and a <em>My blog</em> item displaying the current user\'s blog entries.') . '</dd>';
+++ modules/book/book.module	31 Aug 2010 17:31:43 -0000
@@ -19,11 +19,11 @@ function book_help($path, $arg) {
+      $output .= '<dd>' . t('Users with the <em>View printer-friendly books</em> permission can select the <em>printer-friendly version</em> link visible at the bottom of a book page\'s content to generate a printer-friendly display of the page and all of its subsections.') . '</dd>';
+++ modules/color/color.module	31 Aug 2010 17:31:43 -0000
@@ -12,8 +12,8 @@ function color_help($path, $arg) {
+      $output .= '<dd>' . t('The Color module saves a modified copy of the theme\'s specified stylesheets in the files directory. This means that if you make any manual changes to your theme\'s stylesheet, <em>you must save your color settings again, even if they haven\'t changed</em>. This step is required because the module stylesheets (in the files directory) need to be recreated to include your changes.') . '</dd>';
+++ modules/locale/locale.module	31 Aug 2010 17:31:46 -0000
@@ -69,7 +69,7 @@ function locale_help($path, $arg) {
+      $output = '<p>' . t('Define how to decide which language is used to display page elements (primarily text provided by Drupal and modules, such as field labels and help text). This decision is made by evaluating a series of detection methods for languages; the first detection method that gets a result will determine which language is used for that type of text. Define the order of evaluation of language detection methods on this page.') . '</p>';
+++ modules/tracker/tracker.module	31 Aug 2010 17:31:51 -0000
@@ -19,9 +19,9 @@ function tracker_help($path, $arg) {
+      $output .= '<dd>' . t('To follow a specific user\'s new and updated content, select the <em>Track</em> tab from the user\'s profile page.') . '</dd>';
+++ modules/blog/blog.module	31 Aug 2010 17:31:42 -0000
@@ -40,15 +40,15 @@ function blog_help($path, $arg) {
+      $output .= '<dd>' . t('Blog entries from each single-user blog are also aggregated into one central multi-user blog, which displays the blog content of all users in a single listing.') . '</dd>';

Powered by Dreditor.

webchick’s picture

Version: 8.x-dev » 7.x-dev
Status: Needs work » Postponed (maintainer needs more info)

We can still break strings at this phase for bug fixes, but it is my understanding that single-quoted attributes, though slightly odd, are actually fine from a W3C compliance POV. Is there some documentation out there to the contrary?

jacine’s picture

Thanks @webchick ;)

Single quotes validate, so it's not technically a W3C compliance issue. It's more of a consistency/code style issue. We need to pick one, which we already have, and stick with it, so this should be fixed. Whether that happens in 7 or 8, is up to you.

rvilar’s picture

Status: Postponed (maintainer needs more info) » Needs review

Thanks @Jacine and @webchick

In XML specification the double quotes is a recommendation and not, how I thought, an error. Excuse me for this little issue.

I'm think, like @Jacine, that now it's more a code style issue than an error, like I expected. i think that it has to be fixed for consistency.

jacine’s picture

Title: Some documentation links have invalid HTML » Some documentation links use single quotes for attributes, which produces inconsistent HTML
Version: 7.x-dev » 8.x-dev
Status: Needs review » Needs work

The patch still needs work, per my comment in #1. Since it's not technically a bug, and there is no patch that's ready, I'm fine pushing this to 8.x.

dave reid’s picture

I would also rather use the format of t("<a href=\"value\">") rather than having to change all strings and possibly cause lots of unnecessary re-rolls.

albert volkman’s picture

Status: Needs work » Needs review
StatusFileSize
new27.31 KB

Bringing this issue back from the grave :)

Status: Needs review » Needs work

The last submitted patch, 7: consistent_quotes_around_links-898656-6.patch, failed testing.

albert volkman’s picture

Issue summary: View changes
Status: Needs work » Needs review
StatusFileSize
new13.28 KB

Re-roll

jhedstrom’s picture

Status: Needs review » Needs work
Issue tags: +Needs reroll
ravi.khetri’s picture

Status: Needs work » Needs review
StatusFileSize
new13.93 KB

Rerolled

Status: Needs review » Needs work

The last submitted patch, 12: 898656_12.patch, failed testing.

jyotisankar’s picture

Status: Needs work » Needs review
StatusFileSize
new14.08 KB

Status: Needs review » Needs work

The last submitted patch, 14: some-documentation-links-898656-13.patch, failed testing.

ravi.khetri’s picture

Issue tags: +SprintWeekend2015
jyotisankar’s picture

Status: Needs work » Needs review

jain_deepak’s picture

Rerolled

The last submitted patch, 14: some-documentation-links-898656-13.patch, failed testing.

albert volkman’s picture

+++ b/core/modules/book/book.module
@@ -34,7 +34,7 @@ function book_help($route_name, RouteMatchInterface $route_match) {
+     $output .= '<dd>' . t('Book pages have a default book-specific navigation block. This navigation block contains links that lead to the previous and next pages in the book, and to the level above the current page in the book\'s structure. This block can be enabled on the <a href="!admin-block">Blocks administration page</a>. For book pages to show up in the book navigation, they must be added to a book outline.', array('!admin-block' => \Drupal::url('block.admin_display'))) . '</dd>';

Incorrect spacing here.

manningpete’s picture

Issue tags: -Needs reroll

Last patch applies.

sumit.prajapati’s picture

Issue tags: +Needs Review
StatusFileSize
new14.17 KB

Issue in numbetr #21 has been addressed please see the patch.

jhedstrom’s picture

Status: Needs review » Needs work
Issue tags: -Needs Review
+++ b/core/modules/book/book.module
@@ -34,11 +34,11 @@ function book_help($route_name, RouteMatchInterface $route_match) {
-      $output .= '<dd>' . t("Users with the <em>View printer-friendly books</em> permission can select the <em>printer-friendly version</em> link visible at the bottom of a book page's content to generate a printer-friendly display of the page and all of its subsections.") . '</dd>';
+      $output .= '<dd>' . t('Users with the <em>View printer-friendly books</em> permission can select the <em>printer-friendly version</em> link visible at the bottom of a book page\'s content to generate a printer-friendly display of the page and all of its subsections.') . '</dd>';

+++ b/core/modules/tracker/tracker.module
@@ -25,7 +25,7 @@ function tracker_help($route_name, RouteMatchInterface $route_match) {
-      $output .= '<dd>' . t("To follow a specific user's new and updated content, select the <em>Activity</em> tab from the user's profile page.") . '</dd>';
+      $output .= '<dd>' . t('To follow a specific user\'s new and updated content, select the <em>Activity</em> tab from the user\'s profile page.') . '</dd>';

This issue is specific to using double quotes in link tags. It shouldn't replace the use of double quotes where they avoid needing to escape single quotes, since that is intentional according to the coding standards.

goldlilys’s picture

Shouldn't this be in Needs Review rather than Needs Work since the last submitted patch is passing?

jhedstrom’s picture

It's at needs work based on the feedback in #24.

deepakaryan1988’s picture

Removing sprint weekend tag!! and adding documentation tag
As suggested by @YesCT

deepakaryan1988’s picture

Issue tags: +SprintWeekend2015

Sorry, these issues were actually worked on during the 2015 Global Sprint
Weekend https://groups.drupal.org/node/447258

virajthakrar’s picture

Status: Needs work » Needs review
StatusFileSize
new0 bytes

Changes updated as per comment #24 and update code as per drupal coding standards.

Status: Needs review » Needs work

The last submitted patch, 29: documentation-898656-29.patch, failed testing.

virajthakrar’s picture

Status: Needs work » Needs review
StatusFileSize
new4.35 KB

Updated according to coding standards and Comment #24.

Version: 8.0.x-dev » 8.1.x-dev

Drupal 8.0.6 was released on April 6 and is the final bugfix release for the Drupal 8.0.x series. Drupal 8.0.x will not receive any further development aside from security fixes. Drupal 8.1.0-rc1 is now available and sites should prepare to update to 8.1.0.

Bug reports should be targeted against the 8.1.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.2.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.1.x-dev » 8.2.x-dev

Drupal 8.1.9 was released on September 7 and is the final bugfix release for the Drupal 8.1.x series. Drupal 8.1.x will not receive any further development aside from security fixes. Drupal 8.2.0-rc1 is now available and sites should prepare to upgrade to 8.2.0.

Bug reports should be targeted against the 8.2.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.3.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.2.x-dev » 8.3.x-dev

Drupal 8.2.6 was released on February 1, 2017 and is the final full bugfix release for the Drupal 8.2.x series. Drupal 8.2.x will not receive any further development aside from critical and security fixes. Sites should prepare to update to 8.3.0 on April 5, 2017. (Drupal 8.3.0-alpha1 is available for testing.)

Bug reports should be targeted against the 8.3.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.4.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.3.x-dev » 8.4.x-dev

Drupal 8.3.6 was released on August 2, 2017 and is the final full bugfix release for the Drupal 8.3.x series. Drupal 8.3.x will not receive any further development aside from critical and security fixes. Sites should prepare to update to 8.4.0 on October 4, 2017. (Drupal 8.4.0-alpha1 is available for testing.)

Bug reports should be targeted against the 8.4.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.5.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.4.x-dev » 8.5.x-dev

Drupal 8.4.4 was released on January 3, 2018 and is the final full bugfix release for the Drupal 8.4.x series. Drupal 8.4.x will not receive any further development aside from critical and security fixes. Sites should prepare to update to 8.5.0 on March 7, 2018. (Drupal 8.5.0-alpha1 is available for testing.)

Bug reports should be targeted against the 8.5.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.6.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.5.x-dev » 8.6.x-dev

Drupal 8.5.6 was released on August 1, 2018 and is the final bugfix release for the Drupal 8.5.x series. Drupal 8.5.x will not receive any further development aside from security fixes. Sites should prepare to update to 8.6.0 on September 5, 2018. (Drupal 8.6.0-rc1 is available for testing.)

Bug reports should be targeted against the 8.6.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.7.x-dev branch. For more information see the Drupal 8 minor version schedule and the Allowed changes during the Drupal 8 release cycle.

Version: 8.6.x-dev » 8.8.x-dev

Drupal 8.6.x will not receive any further development aside from security fixes. Bug reports should be targeted against the 8.8.x-dev branch from now on, and new development or disruptive changes should be targeted against the 8.9.x-dev branch. For more information see the Drupal 8 and 9 minor version schedule and the Allowed changes during the Drupal 8 and 9 release cycles.

Version: 8.8.x-dev » 8.9.x-dev

Drupal 8.8.7 was released on June 3, 2020 and is the final full bugfix release for the Drupal 8.8.x series. Drupal 8.8.x will not receive any further development aside from security fixes. Sites should prepare to update to Drupal 8.9.0 or Drupal 9.0.0 for ongoing support.

Bug reports should be targeted against the 8.9.x-dev branch from now on, and new development or disruptive changes should be targeted against the 9.1.x-dev branch. For more information see the Drupal 8 and 9 minor version schedule and the Allowed changes during the Drupal 8 and 9 release cycles.

quietone’s picture

Version: 8.9.x-dev » 9.3.x-dev
Issue summary: View changes
StatusFileSize
new9.1 KB

It has been some time since this has been worked on.

I used this to find instances, grep -ri "<a href='" core| awk -F: '{print $1}' | sort | nl, which I am sure could be improved.

With this patch the following are found:

$ grep -ri "<a href='" core| awk -F: '{print $1}' | sort | nl
     1  Binary file core/node_modules/chromedriver/lib/chromedriver/chromedriver matches
     2  core/assets/vendor/jquery/jquery.js
     3  core/assets/vendor/jquery/jquery.js
     4  core/assets/vendor/jquery/jquery.min.js
     5  core/modules/views/tests/src/Functional/GlossaryTest.php
     6  core/node_modules/eslint-plugin-jsx-a11y/README.md
     7  core/node_modules/eslint-plugin-jsx-a11y/README.md
     8  core/node_modules/eslint-plugin-jsx-a11y/README.md
     9  core/node_modules/jsx-ast-utils/README.md
    10  core/node_modules/jsx-ast-utils/README.md

The only file of interest there is core/modules/views/tests/src/Functional/GlossaryTest.php. The lines there are

      $result = $this->xpath('//a[contains(@href, :href) and normalize-space(text())=:label]/..', [':href' => $href, ':label' => $label]);
      $this->assertNotEmpty(count($result));
      // The rendered output looks like "<a href=''>X</a> | (count)" so let's

which I don't think need to be changed.

Version: 9.3.x-dev » 9.4.x-dev

Drupal 9.3.0-rc1 was released on November 26, 2021, which means new developments and disruptive changes should now be targeted for the 9.4.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

Version: 9.4.x-dev » 9.5.x-dev

Drupal 9.4.0-alpha1 was released on May 6, 2022, which means new developments and disruptive changes should now be targeted for the 9.5.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

Version: 9.5.x-dev » 10.1.x-dev

Drupal 9.5.0-beta2 and Drupal 10.0.0-beta2 were released on September 29, 2022, which means new developments and disruptive changes should now be targeted for the 10.1.x-dev branch. For more information see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

smustgrave’s picture

Status: Needs review » Needs work
Issue tags: +Needs Review Queue Initiative

This issue is being reviewed by the kind folks in Slack, #needs-review-queue-initiative. We are working to keep the size of Needs Review queue [2700+ issues] to around 400 (1 month or less), following Review a patch or merge request as a guide.

At this time we will need a D10 version of patch #41 and a recheck using the same grep as before.

Abhisheksingh27’s picture

Status: Needs work » Needs review
StatusFileSize
new9.14 KB

Adding reroll for 10.1.x as the patch #41 failed to apply in drupal 10.
please review

Abhisheksingh27’s picture

StatusFileSize
new9.52 KB

Adding #46 patch again with improved coding satandards.

smustgrave’s picture

Issue summary: View changes
Status: Needs review » Reviewed & tested by the community

@Abhisheksingh27 please include interdiffs with patches.

Following what @quietone ran grep -ri "<a href='" core| awk -F: '{print $1}' | sort | nl and got

     1  core/assets/vendor/jquery/jquery.js
     2  core/assets/vendor/jquery/jquery.js
     3  core/assets/vendor/jquery/jquery.min.js
     4  core/modules/views/tests/src/Functional/GlossaryTest.php
     5  core/node_modules/jquery-form/node_modules/jquery/dist/jquery.js
     6  core/node_modules/jquery-form/node_modules/jquery/dist/jquery.js
     7  core/node_modules/jquery-form/node_modules/jquery/dist/jquery.min.js
     8  core/node_modules/jquery-form/node_modules/jquery/dist/jquery.slim.js
     9  core/node_modules/jquery-form/node_modules/jquery/dist/jquery.slim.js
    10  core/node_modules/jquery-form/node_modules/jquery/dist/jquery.slim.min.js
    11  core/node_modules/jquery-form/node_modules/jquery/external/sizzle/dist/sizzle.js
    12  core/node_modules/jquery-form/node_modules/jquery/external/sizzle/dist/sizzle.js
    13  core/node_modules/jquery-form/node_modules/jquery/external/sizzle/dist/sizzle.min.js
    14  core/node_modules/jquery-ui/build/tasks/testswarm.js
    15  core/node_modules/jquery-ui/external/jquery-1.10.0/jquery.js
    16  core/node_modules/jquery-ui/external/jquery-1.10.0/jquery.js
    17  core/node_modules/jquery-ui/external/jquery-1.10.1/jquery.js
    18  core/node_modules/jquery-ui/external/jquery-1.10.1/jquery.js
    19  core/node_modules/jquery-ui/external/jquery-1.10.2/jquery.js
    20  core/node_modules/jquery-ui/external/jquery-1.10.2/jquery.js
    21  core/node_modules/jquery-ui/external/jquery-1.11.0/jquery.js
    22  core/node_modules/jquery-ui/external/jquery-1.11.0/jquery.js
    23  core/node_modules/jquery-ui/external/jquery-1.11.0/jquery.js
    24  core/node_modules/jquery-ui/external/jquery-1.11.0/jquery.js
    25  core/node_modules/jquery-ui/external/jquery-1.11.0/jquery.js
    26  core/node_modules/jquery-ui/external/jquery-1.11.0/jquery.js
    27  core/node_modules/jquery-ui/external/jquery-1.11.1/jquery.js
    28  core/node_modules/jquery-ui/external/jquery-1.11.1/jquery.js
    29  core/node_modules/jquery-ui/external/jquery-1.11.1/jquery.js
    30  core/node_modules/jquery-ui/external/jquery-1.11.1/jquery.js
    31  core/node_modules/jquery-ui/external/jquery-1.11.2/jquery.js
    32  core/node_modules/jquery-ui/external/jquery-1.11.2/jquery.js
    33  core/node_modules/jquery-ui/external/jquery-1.11.2/jquery.js
    34  core/node_modules/jquery-ui/external/jquery-1.11.2/jquery.js
    35  core/node_modules/jquery-ui/external/jquery-1.11.3/jquery.js
    36  core/node_modules/jquery-ui/external/jquery-1.11.3/jquery.js
    37  core/node_modules/jquery-ui/external/jquery-1.11.3/jquery.js
    38  core/node_modules/jquery-ui/external/jquery-1.11.3/jquery.js
    39  core/node_modules/jquery-ui/external/jquery-1.12.0/jquery.js
    40  core/node_modules/jquery-ui/external/jquery-1.12.0/jquery.js
    41  core/node_modules/jquery-ui/external/jquery-1.12.0/jquery.js
    42  core/node_modules/jquery-ui/external/jquery-1.12.1/jquery.js
    43  core/node_modules/jquery-ui/external/jquery-1.12.1/jquery.js
    44  core/node_modules/jquery-ui/external/jquery-1.12.1/jquery.js
    45  core/node_modules/jquery-ui/external/jquery-1.12.2/jquery.js
    46  core/node_modules/jquery-ui/external/jquery-1.12.2/jquery.js
    47  core/node_modules/jquery-ui/external/jquery-1.12.2/jquery.js
    48  core/node_modules/jquery-ui/external/jquery-1.12.3/jquery.js
    49  core/node_modules/jquery-ui/external/jquery-1.12.3/jquery.js
    50  core/node_modules/jquery-ui/external/jquery-1.12.3/jquery.js
    51  core/node_modules/jquery-ui/external/jquery-1.12.4/jquery.js
    52  core/node_modules/jquery-ui/external/jquery-1.12.4/jquery.js
    53  core/node_modules/jquery-ui/external/jquery-1.12.4/jquery.js
    54  core/node_modules/jquery-ui/external/jquery-1.8.0/jquery.js
    55  core/node_modules/jquery-ui/external/jquery-1.8.0/jquery.js
    56  core/node_modules/jquery-ui/external/jquery-1.8.1/jquery.js
    57  core/node_modules/jquery-ui/external/jquery-1.8.1/jquery.js
    58  core/node_modules/jquery-ui/external/jquery-1.8.2/jquery.js
    59  core/node_modules/jquery-ui/external/jquery-1.8.2/jquery.js
    60  core/node_modules/jquery-ui/external/jquery-1.8.3/jquery.js
    61  core/node_modules/jquery-ui/external/jquery-1.8.3/jquery.js
    62  core/node_modules/jquery-ui/external/jquery-1.9.0/jquery.js
    63  core/node_modules/jquery-ui/external/jquery-1.9.0/jquery.js
    64  core/node_modules/jquery-ui/external/jquery-1.9.1/jquery.js
    65  core/node_modules/jquery-ui/external/jquery-1.9.1/jquery.js
    66  core/node_modules/jquery-ui/external/jquery-2.0.0/jquery.js
    67  core/node_modules/jquery-ui/external/jquery-2.0.1/jquery.js
    68  core/node_modules/jquery-ui/external/jquery-2.0.2/jquery.js
    69  core/node_modules/jquery-ui/external/jquery-2.0.3/jquery.js
    70  core/node_modules/jquery-ui/external/jquery-2.1.0/jquery.js
    71  core/node_modules/jquery-ui/external/jquery-2.1.1/jquery.js
    72  core/node_modules/jquery-ui/external/jquery-2.1.2/jquery.js
    73  core/node_modules/jquery-ui/external/jquery-2.1.3/jquery.js
    74  core/node_modules/jquery-ui/external/jquery-2.1.4/jquery.js
    75  core/node_modules/jquery-ui/external/jquery-2.2.0/jquery.js
    76  core/node_modules/jquery-ui/external/jquery-2.2.1/jquery.js
    77  core/node_modules/jquery-ui/external/jquery-2.2.2/jquery.js
    78  core/node_modules/jquery-ui/external/jquery-2.2.3/jquery.js
    79  core/node_modules/jquery-ui/external/jquery-2.2.4/jquery.js
    80  core/node_modules/jquery-ui/external/jquery-3.0.0/jquery.js
    81  core/node_modules/jquery-ui/external/jquery-3.0.0/jquery.js
    82  core/node_modules/jquery-ui/external/jquery-3.1.0/jquery.js
    83  core/node_modules/jquery-ui/external/jquery-3.1.0/jquery.js
    84  core/node_modules/jquery-ui/external/jquery-3.1.1/jquery.js
    85  core/node_modules/jquery-ui/external/jquery-3.1.1/jquery.js
    86  core/node_modules/jquery-ui/external/jquery-3.2.0/jquery.js
    87  core/node_modules/jquery-ui/external/jquery-3.2.0/jquery.js
    88  core/node_modules/jquery-ui/external/jquery-3.2.1/jquery.js
    89  core/node_modules/jquery-ui/external/jquery-3.2.1/jquery.js
    90  core/node_modules/jquery-ui/external/jquery-3.3.0/jquery.js
    91  core/node_modules/jquery-ui/external/jquery-3.3.0/jquery.js
    92  core/node_modules/jquery-ui/external/jquery-3.3.1/jquery.js
    93  core/node_modules/jquery-ui/external/jquery-3.3.1/jquery.js
    94  core/node_modules/jquery-ui/external/jquery-3.4.0/jquery.js
    95  core/node_modules/jquery-ui/external/jquery-3.4.0/jquery.js
    96  core/node_modules/jquery-ui/external/jquery-3.4.1/jquery.js
    97  core/node_modules/jquery-ui/external/jquery-3.4.1/jquery.js
    98  core/node_modules/jquery-ui/external/jquery-3.5.0/jquery.js
    99  core/node_modules/jquery-ui/external/jquery-3.5.0/jquery.js
   100  core/node_modules/jquery-ui/external/jquery-3.5.1/jquery.js
   101  core/node_modules/jquery-ui/external/jquery-3.5.1/jquery.js
   102  core/node_modules/jquery-ui/external/jquery-3.6.0/jquery.js
   103  core/node_modules/jquery-ui/external/jquery-3.6.0/jquery.js
   104  core/node_modules/jquery-ui/external/jquery-custom/jquery.js
   105  core/node_modules/jquery-ui/external/jquery-custom/jquery.js
   106  core/node_modules/jquery-ui/external/jquery-custom/jquery.js
   107  core/node_modules/jquery-ui/external/jquery-custom/jquery.js
   108  core/node_modules/jquery-ui/external/jquery/jquery.js
   109  core/node_modules/jquery-ui/external/jquery/jquery.js
   110  core/node_modules/jquery-ui/external/qunit/qunit.js
   111  core/node_modules/jquery-ui/external/qunit/qunit.js
   112  core/node_modules/jquery-ui/node_modules/jquery/dist/jquery.js
   113  core/node_modules/jquery-ui/node_modules/jquery/dist/jquery.js
   114  core/node_modules/jquery-ui/node_modules/jquery/dist/jquery.min.js
   115  core/node_modules/jquery-ui/node_modules/jquery/dist/jquery.slim.js
   116  core/node_modules/jquery-ui/node_modules/jquery/dist/jquery.slim.js
   117  core/node_modules/jquery-ui/node_modules/jquery/dist/jquery.slim.min.js
   118  core/node_modules/jquery-ui/node_modules/jquery/external/sizzle/dist/sizzle.js
   119  core/node_modules/jquery-ui/node_modules/jquery/external/sizzle/dist/sizzle.js
   120  core/node_modules/jquery-ui/node_modules/jquery/external/sizzle/dist/sizzle.min.js
   121  core/node_modules/jquery/dist/jquery.js
   122  core/node_modules/jquery/dist/jquery.js
   123  core/node_modules/jquery/dist/jquery.min.js
   124  core/node_modules/jquery/dist/jquery.slim.js
   125  core/node_modules/jquery/dist/jquery.slim.js
   126  core/node_modules/jquery/dist/jquery.slim.min.js
   127  core/node_modules/jquery/external/sizzle/dist/sizzle.js
   128  core/node_modules/jquery/external/sizzle/dist/sizzle.js
   129  core/node_modules/jquery/external/sizzle/dist/sizzle.min.js
   130  core/node_modules/js-sdsl/README.md
   131  core/node_modules/js-sdsl/README.zh-CN.md

So mainly just node_modules stuff. Did see GlossaryTest as mentioned but as quietone pointed out this should be fine.

Updating remaining tasks in issue summary.

xjm’s picture

Thanks @quietone and @smustgrave.

Re: GlossaryTest, is the comment maybe just wrong? If it's true, then the whole view has bad markup. If it's false, it should be changed. Manually testing now...

xjm’s picture

Status: Reviewed & tested by the community » Needs work
  1. I confirmed GlossaryTest just has an incorrect comment -- the attribute is correctly double-quoted in the actual view -- so we might as well fix that comment too, since it's part of the same pattern.

  2. +++ b/core/modules/book/book.module
    @@ -167,7 +167,7 @@ function book_form_node_form_alter(&$form, FormStateInterface $form_state, $form
    - * @todo: Remove this in favor of an entity field.
    + * @todo Remove this in favor of an entity field.
    

    Scope creep here.

  3. -1,About Umami,"<p>Umami is a fictional food magazine that has been created to demonstrate how you might build a Drupal site using functionality provided 'out of the box'.</p><p>For more information visit <a href='https://www.drupal.org/docs/umami-drupal-demonstration-installation-profile'>https://www.drupal.org/docs/umami-drupal-demonstration-installation-profile</a>.</p>",Samuel Adamson,about-umami
    +1,About Umami,"<p>Umami is a fictional food magazine that has been created to demonstrate how you might build a Drupal site using functionality provided 'out of the box'.</p><p>For more information visit <a href="https://www.drupal.org/docs/8/umami-drupal-8-demonstration-installation-profile">https://www.drupal.org/docs/8/umami-drupal-8-demonstration-installation-profile</a>.</p>",Samuel Adamson,about-umami
    
     id,title,body,author,slug
    -1,Acerca de Umami,"<p> Umami es una revista ficticia de alimentos que se ha creado para demostrar cómo se puede construir un sitio de Drupal con la funcionalidad que se proporciona 'fuera de la caja'. </p> <p> Para obtener más información, visite <a href='https://www.drupal.org/docs/umami-drupal-demonstration-installation-profile'>https://www.drupal.org/docs/umami-drupal-demonstration-installation-profile</a>.</p> ",Samuel Adamson,acerca-de-umami
    +1,Acerca de Umami,"<p> Umami es una revista ficticia de alimentos que se ha creado para demostrar cómo se puede construir un sitio de Drupal con la funcionalidad que se proporciona 'fuera de la caja'. </p> <p> Para obtener más información, visite <a href="https://www.drupal.org/docs/8/umami-drupal-8-demonstration-installation-profile">https://www.drupal.org/docs/8/umami-drupal-8-demonstration-installation-profile</a>.</p> ",Samuel Adamson,acerca-de-umami
    

    These are changing the URLs themselves as well as how they are quoted. And, in fact, they seem to be reverting another fix. The URL in HEAD (without the /8/) appears to be the correct one, and using the /8/ version triggers a redirect.

NW mainly for point 3; the others are trivial. Thanks!

Version: 10.1.x-dev » 11.x-dev

Drupal core is moving towards using a “main” branch. As an interim step, a new 11.x branch has been opened, as Drupal.org infrastructure cannot currently fully support a branch named main. New developments and disruptive changes should now be targeted for the 11.x branch, which currently accepts only minor-version allowed changes. For more information, see the Drupal core minor version schedule and the Allowed changes during the Drupal core release cycle.

Dcmorris made their first commit to this issue’s fork.

ksenzee’s picture

I worked with my team (@dcmorris, @jmarcella, @tinycanary) at Drupalcon Portland 2024 to resurrect this patch and see what's left of it in 11.x. We'll post results soon.

Gauravvvv made their first commit to this issue’s fork.

gauravvvv’s picture

Status: Needs work » Needs review
needs-review-queue-bot’s picture

Status: Needs review » Needs work

The Needs Review Queue Bot tested this issue.

While you are making the above changes, we recommend that you convert this patch to a merge request. Merge requests are preferred over patches. Be sure to hide the old patch files as well. (Converting an issue to a merge request without other contributions to the issue will not receive credit.)

quietone’s picture

Assigned: rvilar » Unassigned
Issue summary: View changes
Status: Needs work » Needs review
Issue tags: -Documentation

Let's finish this small change.

From #50
1. Fixed
2. No book module on 11.x
3. Fixed.

I tested the changes to Umami by installing and confirming the output on the about page for both languages.

And a final check with this grep shows that there are no other href attributes starting with a single quote.

$ git grep -ri "<a href='" core| awk -F: '{print $1}' | sort | nl
$ 
smustgrave’s picture

Status: Needs review » Needs work

2 small comments on MR.

quietone’s picture

Status: Needs work » Needs review
smustgrave’s picture

Status: Needs review » Reviewed & tested by the community

Thanks @quietone my 2 questions are answered.

  • nod_ committed b85397f2 on 11.x
    Issue #898656 by quietone, Abhisheksingh27, virajthakrar, smustgrave,...

nod_’s picture

Status: Reviewed & tested by the community » Fixed

Committed b85397f and pushed to 11.x. Thanks!

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.

xjm’s picture

Crediting myself for my committer reviews which should for sure have been credited under our policy. :)