From 189d9c825cf67ae784598ae8cbb387cb92092565 Mon Sep 17 00:00:00 2001 From: Simon Holthausen Date: Thu, 10 Nov 2022 11:07:40 +0100 Subject: [PATCH 1/5] [fix] emit deprecation warning only once Fixes #8009 --- CHANGELOG.md | 4 ++++ src/compiler/compile/index.ts | 19 ++++++++++++------- 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e21eda25af4..ebd070a0d20 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Svelte changelog +## Unreleased + +* Emit deprecation warning only once + ## 3.53.0 * Check whether `parentNode` exists before removing child ([#6037](https://github.com/sveltejs/svelte/issues/6037)) diff --git a/src/compiler/compile/index.ts b/src/compiler/compile/index.ts index 38a3da057cf..29c9c49737b 100644 --- a/src/compiler/compile/index.ts +++ b/src/compiler/compile/index.ts @@ -46,6 +46,8 @@ const valid_css_values = [ const regex_valid_identifier = /^[a-zA-Z_$][a-zA-Z_$0-9]*$/; const regex_starts_with_lowercase_character = /^[a-z]/; +let has_shown_deprecation = false; + function validate_options(options: CompileOptions, warnings: Warning[]) { const { name, filename, loopGuardTimeout, dev, namespace, css } = options; @@ -89,13 +91,16 @@ function validate_options(options: CompileOptions, warnings: Warning[]) { if (css === true || css === false) { options.css = css === true ? 'injected' : 'external'; - const message = `options.css as a boolean is deprecated. Use '${options.css}' instead of ${css}.`; - warnings.push({ - code: 'options-css-boolean-deprecated', - message, - filename, - toString: () => message - }); + if (!has_shown_deprecation) { + has_shown_deprecation=true; + const message = `options.css as a boolean is deprecated. Use '${options.css}' instead of ${css}.`; + warnings.push({ + code: 'options-css-boolean-deprecated', + message, + filename, + toString: () => message + }); + } } if (namespace && valid_namespaces.indexOf(namespace) === -1) { From 11a32efd3fc4727b2ac5e1e11de9ea9340ce2079 Mon Sep 17 00:00:00 2001 From: Simon H <5968653+dummdidumm@users.noreply.github.com> Date: Thu, 10 Nov 2022 13:09:21 +0100 Subject: [PATCH 2/5] omit deprecation warning completely for now --- src/compiler/compile/index.ts | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/src/compiler/compile/index.ts b/src/compiler/compile/index.ts index 29c9c49737b..7a18231cef9 100644 --- a/src/compiler/compile/index.ts +++ b/src/compiler/compile/index.ts @@ -46,8 +46,6 @@ const valid_css_values = [ const regex_valid_identifier = /^[a-zA-Z_$][a-zA-Z_$0-9]*$/; const regex_starts_with_lowercase_character = /^[a-z]/; -let has_shown_deprecation = false; - function validate_options(options: CompileOptions, warnings: Warning[]) { const { name, filename, loopGuardTimeout, dev, namespace, css } = options; @@ -91,16 +89,15 @@ function validate_options(options: CompileOptions, warnings: Warning[]) { if (css === true || css === false) { options.css = css === true ? 'injected' : 'external'; - if (!has_shown_deprecation) { - has_shown_deprecation=true; - const message = `options.css as a boolean is deprecated. Use '${options.css}' instead of ${css}.`; - warnings.push({ - code: 'options-css-boolean-deprecated', - message, - filename, - toString: () => message - }); - } + // possibly show this warning once we decided how Svelte 4 looks like + // const message = `options.css as a boolean is deprecated. Use '${options.css}' instead of ${css}.`; + // warnings.push({ + // code: 'options-css-boolean-deprecated', + // message, + // filename, + // toString: () => message + // }); + // } } if (namespace && valid_namespaces.indexOf(namespace) === -1) { From 7c9b00154c9c48e7459b18555d7f56a10cd41aae Mon Sep 17 00:00:00 2001 From: Simon H <5968653+dummdidumm@users.noreply.github.com> Date: Thu, 10 Nov 2022 13:14:56 +0100 Subject: [PATCH 3/5] update changelog --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ebd070a0d20..d271d9bdd2f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,7 @@ ## Unreleased -* Emit deprecation warning only once +* Do not deprecation warning for `css` compiler options for now ## 3.53.0 From e282767b3bc53eaeb3d28d8b3949e50d859c7303 Mon Sep 17 00:00:00 2001 From: Conduitry Date: Thu, 10 Nov 2022 09:08:10 -0500 Subject: [PATCH 4/5] update changelog --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d271d9bdd2f..de44742ab33 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,7 @@ ## Unreleased -* Do not deprecation warning for `css` compiler options for now +* Do not emit deprecation warnings for `css` compiler options for now ## 3.53.0 From 5f0ef3db8f35d8c6911549cbd1230dbec2242c3e Mon Sep 17 00:00:00 2001 From: Conduitry Date: Thu, 10 Nov 2022 09:09:11 -0500 Subject: [PATCH 5/5] update changelog --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index de44742ab33..3f9bd6196ff 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,7 @@ ## Unreleased -* Do not emit deprecation warnings for `css` compiler options for now +* Do not emit deprecation warnings for `css` compiler options for now ([#8009](https://github.com/sveltejs/svelte/issues/8009)) ## 3.53.0