-
Notifications
You must be signed in to change notification settings - Fork 15.3k
[clang-doc] <ul> must be nested in <li>
#168972
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
Conversation
This stack of pull requests is managed by Graphite. Learn more about stacking. |
|
@llvm/pr-subscribers-clang-tools-extra Author: Erick Velez (evelez7) ChangesThe HTML spec states that only Full diff: https://github.com/llvm/llvm-project/pull/168972.diff 3 Files Affected:
diff --git a/clang-tools-extra/clang-doc/assets/class-template.mustache b/clang-tools-extra/clang-doc/assets/class-template.mustache
index 8eb28f33e65f6..c5187026a2399 100644
--- a/clang-tools-extra/clang-doc/assets/class-template.mustache
+++ b/clang-tools-extra/clang-doc/assets/class-template.mustache
@@ -50,18 +50,21 @@
<li class="sidebar-section">
<a class="sidebar-item" href="#PublicMembers">Public Members</a>
</li>
- <ul>
- {{#PublicMembers}}
- <li class="sidebar-item-container">
- <a class="sidebar-item" href="#{{Name}}">{{Name}}</a>
- </li>
- {{/PublicMembers}}
- </ul>
+ <li>
+ <ul>
+ {{#PublicMembers}}
+ <li class="sidebar-item-container">
+ <a class="sidebar-item" href="#{{Name}}">{{Name}}</a>
+ </li>
+ {{/PublicMembers}}
+ </ul>
+ </li>
{{/HasPublicMembers}}
{{#ProtectedMembers}}
- <li class="sidebar-section">
- <a class="sidebar-item" href="#PublicMethods">Protected Members</a>
- </li>
+ <li class="sidebar-section">
+ <a class="sidebar-item" href="#PublicMethods">Protected Members</a>
+ </li>
+ <li>
<ul>
{{#Obj}}
<li class="sidebar-item-container">
@@ -69,42 +72,49 @@
</li>
{{/Obj}}
</ul>
+ </li>
{{/ProtectedMembers}}
{{#HasPublicFunctions}}
<li class="sidebar-section">
<a class="sidebar-item" href="#PublicMethods">Public Method</a>
</li>
- <ul>
- {{#PublicFunctions}}
- <li class="sidebar-item-container">
- <a class="sidebar-item" href="#{{USR}}">{{Name}}</a>
- </li>
- {{/PublicFunctions}}
- </ul>
+ <li>
+ <ul>
+ {{#PublicFunctions}}
+ <li class="sidebar-item-container">
+ <a class="sidebar-item" href="#{{USR}}">{{Name}}</a>
+ </li>
+ {{/PublicFunctions}}
+ </ul>
+ </li>
{{/HasPublicFunctions}}
{{#ProtectedFunction}}
<li class="sidebar-section">
<a class="sidebar-item" href="#ProtectedFunction">Protected Method</a>
</li>
- <ul>
- {{#Obj}}
- <li class="sidebar-item-container">
- <a class="sidebar-item" href="#{{ID}}">{{Name}}</a>
- </li>
- {{/Obj}}
- </ul>
+ <li>
+ <ul>
+ {{#Obj}}
+ <li class="sidebar-item-container">
+ <a class="sidebar-item" href="#{{ID}}">{{Name}}</a>
+ </li>
+ {{/Obj}}
+ </ul>
+ </li>
{{/ProtectedFunction}}
{{#Enums}}
<li class="sidebar-section">
<a class="sidebar-item" href="#Enums">Enums</a>
</li>
- <ul>
- {{#Obj}}
- <li class="sidebar-item-container">
- <a class="sidebar-item" href="#{{USR}}">{{EnumName}}</a>
- </li>
- {{/Obj}}
- </ul>
+ <li>
+ <ul>
+ {{#Obj}}
+ <li class="sidebar-item-container">
+ <a class="sidebar-item" href="#{{USR}}">{{EnumName}}</a>
+ </li>
+ {{/Obj}}
+ </ul>
+ </li>
{{/Enums}}
{{#Typedef}}
<li class="sidebar-section">Typedef</li>
@@ -113,13 +123,15 @@
<li class="sidebar-section">
<a class="sidebar-item" href="#Classes">Inner Classes</a>
</li>
- <ul>
- {{#Links}}
- <li class="sidebar-item-container">
- <a class="sidebar-item" href="#{{ID}}">{{Name}}</a>
- </li>
- {{/Links}}
- </ul>
+ <li>
+ <ul>
+ {{#Links}}
+ <li class="sidebar-item-container">
+ <a class="sidebar-item" href="#{{ID}}">{{Name}}</a>
+ </li>
+ {{/Links}}
+ </ul>
+ </li>
{{/Record}}
</ul>
</div>
diff --git a/clang-tools-extra/clang-doc/assets/namespace-template.mustache b/clang-tools-extra/clang-doc/assets/namespace-template.mustache
index 614023b9f6723..8a5be46aee28b 100644
--- a/clang-tools-extra/clang-doc/assets/namespace-template.mustache
+++ b/clang-tools-extra/clang-doc/assets/namespace-template.mustache
@@ -50,25 +50,29 @@
<li class="sidebar-section">
<a class="sidebar-item" href="#Enums">Enums</a>
</li>
- <ul>
- {{#Enums}}
- <li class="sidebar-item-container">
- <a class="sidebar-item" href="#{{USR}}">{{Name}}</a>
- </li>
- {{/Enums}}
- </ul>
+ <li>
+ <ul>
+ {{#Enums}}
+ <li class="sidebar-item-container">
+ <a class="sidebar-item" href="#{{USR}}">{{Name}}</a>
+ </li>
+ {{/Enums}}
+ </ul>
+ </li>
{{/HasEnums}}
{{#HasRecords}}
<li class="sidebar-section">
<a class="sidebar-item" href="#Classes">Inner Classes</a>
</li>
- <ul>
- {{#Records}}
- <li class="sidebar-item-container">
- <a class="sidebar-item" href="#{{USR}}">{{Name}}</a>
- </li>
- {{/Records}}
- </ul>
+ <li>
+ <ul>
+ {{#Records}}
+ <li class="sidebar-item-container">
+ <a class="sidebar-item" href="#{{USR}}">{{Name}}</a>
+ </li>
+ {{/Records}}
+ </ul>
+ </li>
{{/HasRecrods}}
</ul>
</div>
diff --git a/clang-tools-extra/test/clang-doc/mustache-index.cpp b/clang-tools-extra/test/clang-doc/mustache-index.cpp
index 7b98c6b7c9880..19e0b32d3d4af 100644
--- a/clang-tools-extra/test/clang-doc/mustache-index.cpp
+++ b/clang-tools-extra/test/clang-doc/mustache-index.cpp
@@ -13,19 +13,21 @@ class Foo;
// CHECK: <li class="sidebar-section">
// CHECK-NEXT: <a class="sidebar-item" href="#Enums">Enums</a>
// CHECK-NEXT: </li>
-// CHECK-NEXT: <ul>
-// CHECK-NEXT: <li class="sidebar-item-container">
-// CHECK-NEXT: <a class="sidebar-item" href="#{{[0-9A-F]*}}">Color</a>
-// CHECK-NEXT: </li>
-// CHECK-NEXT: </ul>
+// CHECK-NEXT: <li>
+// CHECK-NEXT: <ul>
+// CHECK-NEXT: <li class="sidebar-item-container">
+// CHECK-NEXT: <a class="sidebar-item" href="#{{[0-9A-F]*}}">Color</a>
+// CHECK-NEXT: </li>
+// CHECK-NEXT: </ul>
// CHECK: <li class="sidebar-section">
// CHECK-NEXT: <a class="sidebar-item" href="#Classes">Inner Classes</a>
// CHECK-NEXT: </li>
-// CHECK-NEXT: <ul>
-// CHECK-NEXT: <li class="sidebar-item-container">
-// CHECK-NEXT: <a class="sidebar-item" href="#{{[0-9A-F]*}}">Foo</a>
-// CHECK-NEXT: </li>
-// CHECK-NEXT: </ul>
+// CHECK-NEXT: <li>
+// CHECK-NEXT: <ul>
+// CHECK-NEXT: <li class="sidebar-item-container">
+// CHECK-NEXT: <a class="sidebar-item" href="#{{[0-9A-F]*}}">Foo</a>
+// CHECK-NEXT: </li>
+// CHECK-NEXT: </ul>
// CHECK: <section id="Enums" class="section-container">
// CHECK-NEXT: <h2>Enumerations</h2>
|
|
See HTML output here: https://erickvelez.com/clang-doc-mustache-output/pr168972/GlobalNamespace/ MDN page on nesting: https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/ul#nesting_a_list If you throw the old HTML output into a validator, it will flag the old |
🐧 Linux x64 Test Results
|
9dc79f2 to
0cd3d59
Compare
ea76e81 to
6344651
Compare
0cd3d59 to
c82802e
Compare
The HTML spec states that only `<li>` can be children of `<ul>`. Nested `<ul>` tags in an unordered list must be children of `<li>`.
6344651 to
955b033
Compare
|
LLVM Buildbot has detected a new failure on builder Full details are available at: https://lab.llvm.org/buildbot/#/builders/52/builds/13031 Here is the relevant piece of the build log for the reference |

The HTML spec states that only
<li>can be children of<ul>. Nested<ul>tags in an unordered list must be children of<li>.