Closed enricogallesio closed 3 months ago
Hi @enricogallesio
html: {
removeComments: true,
},
is invalid option syntax. You should do:
(await import("@playform/compress")).default({
HTML: {
"html-minifier-terser": {
removeComments: true
}
}
}),
Hi @NikolaRHristov, thanks for your help. I tried with this syntax but I'm still getting html comments in my build.
I'm not sure what is wrong. I'm also using icon, tailwind and sitemap integrations. Not sure it this is relevant, but I've also disabled images compression since it is incredibly slow, and I'm not sure if that's worth since most of my images are optimized anyway.
This is my astro.config.mjs
import {defineConfig} from "astro/config";
import sitemap from "@astrojs/sitemap";
import tailwind from "@astrojs/tailwind";
import icon from "astro-icon";
import playformCompress from "@playform/compress";
export default defineConfig({
site: "https://www.MYWEBSITE.org"
integrations: [
sitemap(),
tailwind(),
icon(),
(await import("@playform/compress")).default({
Image: false,
HTML: {
"html-minifier-terser": {
removeComments: true,
},
},
}),
],
image: {
remotePatterns: [
{
hostname: "192.168.6.11",
port: "8055",
},
],
},
prefetch: {
prefetchAll: true,
},
});
any idea? thanks!
We've also added new ignoreCustomComments
in the new astro-compress
v2.2.23 and @playform/compress
v0.0.4
ignoreCustomComments: [
/^\s*#/,
/.*$.*/,
/^\s*\[/,
/^\s*\]/,
/^\s*!/,
/^\s*\//,
],
which might interfere with this. Can you also set ignoreCustomComments
to be an empty array ? Like so:
import {defineConfig} from "astro/config";
import sitemap from "@astrojs/sitemap";
import tailwind from "@astrojs/tailwind";
import icon from "astro-icon";
import playformCompress from "@playform/compress";
export default defineConfig({
site: "https://www.MYWEBSITE.org"
integrations: [
sitemap(),
tailwind(),
icon(),
(await import("@playform/compress")).default({
Image: false,
HTML: {
"html-minifier-terser": {
removeComments: true,
ignoreCustomComments: [],
},
},
}),
],
image: {
remotePatterns: [
{
hostname: "192.168.6.11",
port: "8055",
},
],
},
prefetch: {
prefetchAll: true,
},
});
HTML: { "html-minifier-terser": { removeComments: true, ignoreCustomComments: [], }, },
This seems to have solved the issue! :+1: Thank you very much @NikolaRHristov !
Can I just check, sorry to bother. What were the comments that were not getting removed ? Can you paste an example ?
I'm not sure but it looks like all of them were not getting removed. Those are plain simple
<!-- some text -->
and
<!-- ---- SECTION x ---- -->
I guess there must be something messy in the code that interferes with that, possibly some non properly closed comment field? Let me know if I can somehow help
We've also added new
ignoreCustomComments
in the newastro-compress
v2.2.23 and@playform/compress
v0.0.4ignoreCustomComments: [ /^\s*#/, /.*$.*/, /^\s*\[/, /^\s*\]/, /^\s*!/, /^\s*\//, ],
which might interfere with this. Can you also set
ignoreCustomComments
to be an empty array ? Like so:import {defineConfig} from "astro/config"; import sitemap from "@astrojs/sitemap"; import tailwind from "@astrojs/tailwind"; import icon from "astro-icon"; import playformCompress from "@playform/compress"; export default defineConfig({ site: "https://www.MYWEBSITE.org" integrations: [ sitemap(), tailwind(), icon(), (await import("@playform/compress")).default({ Image: false, HTML: { "html-minifier-terser": { removeComments: true, ignoreCustomComments: [], }, }, }), ], image: { remotePatterns: [ { hostname: "192.168.6.11", port: "8055", }, ], }, prefetch: { prefetchAll: true, }, });
FWIW, I was having the same issue and adding this section
HTML: {
"html-minifier-terser": {
removeComments: true,
ignoreCustomComments: [],
},
},
also solved it for me.
Hello! I'm not sure if this the expected behavior but comments in html are not removed in my build. I even tried
in the astro config file but comments are still there.
Any clue why this happens? thanks!