Skip to content

Commit

Permalink
Revert "Adding head element checking for root layout" (#43760)
Browse files Browse the repository at this point in the history
Reverts #43597

The tests were disabled and currently the checking of these components
are not reliable, it also breaks the hmr. Revert it for now and then
we'll revisit how to re-enable the required tags checking
  • Loading branch information
huozhi committed Dec 6, 2022
1 parent efe1742 commit a19f04c
Show file tree
Hide file tree
Showing 4 changed files with 8 additions and 16 deletions.
Expand Up @@ -14,7 +14,7 @@ export type RootLayoutErrorProps = { missingTags: string[] }
export const RootLayoutError: React.FC<RootLayoutErrorProps> =
function BuildError({ missingTags }) {
const message =
'Please make sure to include the following tags in your root layout: <html>, <head>, <body>.\n\n' +
'Please make sure to include the following tags in your root layout: <html>, <body>.\n\n' +
`Missing required root layout tag${
missingTags.length === 1 ? '' : 's'
}: ` +
Expand Down
7 changes: 1 addition & 6 deletions packages/next/server/node-web-streams-helper.ts
Expand Up @@ -288,19 +288,15 @@ export function createRootLayoutValidatorStream(
getTree: () => FlightRouterState
): TransformStream<Uint8Array, Uint8Array> {
let foundHtml = false
let foundHead = false
let foundBody = false

return new TransformStream({
async transform(chunk, controller) {
if (!foundHtml || !foundHead || !foundBody) {
if (!foundHtml || !foundBody) {
const content = decodeText(chunk)
if (!foundHtml && content.includes('<html')) {
foundHtml = true
}
if (!foundHead && content.includes('<head')) {
foundHead = true
}
if (!foundBody && content.includes('<body')) {
foundBody = true
}
Expand All @@ -310,7 +306,6 @@ export function createRootLayoutValidatorStream(
flush(controller) {
const missingTags = [
foundHtml ? null : 'html',
foundHead ? null : 'head',
foundBody ? null : 'body',
].filter(nonNullable)

Expand Down
12 changes: 6 additions & 6 deletions test/e2e/app-dir/root-layout.test.ts
Expand Up @@ -40,9 +40,9 @@ describe('app-dir root layout', () => {

expect(await hasRedbox(browser, true)).toBe(true)
expect(await getRedboxSource(browser)).toMatchInlineSnapshot(`
"Please make sure to include the following tags in your root layout: <html>, <head>, <body>.
"Please make sure to include the following tags in your root layout: <html>, <body>.
Missing required root layout tags: html, head, body"
Missing required root layout tags: html, body"
`)
})

Expand All @@ -54,9 +54,9 @@ describe('app-dir root layout', () => {

expect(await hasRedbox(browser, true)).toBe(true)
expect(await getRedboxSource(browser)).toMatchInlineSnapshot(`
"Please make sure to include the following tags in your root layout: <html>, <head>, <body>.
"Please make sure to include the following tags in your root layout: <html>, <body>.
Missing required root layout tags: html, head, body"
Missing required root layout tags: html, body"
`)
})

Expand All @@ -67,9 +67,9 @@ describe('app-dir root layout', () => {

expect(await hasRedbox(browser, true)).toBe(true)
expect(await getRedboxSource(browser)).toMatchInlineSnapshot(`
"Please make sure to include the following tags in your root layout: <html>, <head>, <body>.
"Please make sure to include the following tags in your root layout: <html>, <body>.
Missing required root layout tags: html, head, body"
Missing required root layout tags: html, body"
`)
})
})
Expand Down
Expand Up @@ -4,9 +4,6 @@ export const revalidate = 0
export default function Root({ children }) {
return (
<html>
<head>
<title>Hello World</title>
</head>
<body>{children}</body>
</html>
)
Expand Down

0 comments on commit a19f04c

Please sign in to comment.