Skip to content
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

feat(html/minifier): improve the remove_redundant_attributes option #6197

Conversation

alexander-akait
Copy link
Collaborator

@alexander-akait alexander-akait commented Oct 18, 2022

Description:

Due kangax/html-minifier#1075

A lot of CSS frameworks use (and not only):

input[type=text] {
  /* styles */
}

So it is not safe to remove them by default, anyway I implemented the safe mode - it will remove:

  • deprecated attributes (they doesn't used in CSS almost always, expect very old frameworks, which already doesn't supported)
  • SVG attributes, it is common ptractide don't use them in CSS
  • attributes from metadata elements, because they will not be rendered

BREAKING CHANGE:

Yes

Related issue (if exists):

No

@alexander-akait alexander-akait changed the title Refactor html minifier reducant attributes feat(html/minifier): improve the remove_redundant_attributes option Oct 18, 2022
@alexander-akait alexander-akait marked this pull request as ready for review October 18, 2022 17:51
@kdy1 kdy1 self-assigned this Oct 18, 2022
@kdy1 kdy1 added this to the Planned milestone Oct 18, 2022
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
#[serde(deny_unknown_fields)]
#[serde(rename_all = "kebab-case")]
pub enum RemoveRedundantAttributes {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's implement Default for this type instead of using #[serde(default = "")].

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can then change #[serde(default = "...")] to #[serde(default)]

@alexander-akait
Copy link
Collaborator Author

@kdy1 Done, for another enum too 👍

Copy link
Member

@kdy1 kdy1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CI faileda

@alexander-akait alexander-akait force-pushed the refactor-html-minifier-reducant-attributes branch from 9f7f76e to c176d5b Compare October 19, 2022 23:39
@alexander-akait
Copy link
Collaborator Author

@kdy1 Fixed again 😄

Copy link
Member

@kdy1 kdy1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

swc-bump:

  • swc_html_minifier --breaking

@kdy1 kdy1 enabled auto-merge (squash) October 20, 2022 03:48
Copy link
Collaborator

@swc-bot swc-bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Automated review comment generated by auto-rebase script

@kdy1 kdy1 merged commit aa3fab1 into swc-project:main Oct 20, 2022
@alexander-akait alexander-akait deleted the refactor-html-minifier-reducant-attributes branch October 20, 2022 12:36
@kdy1 kdy1 modified the milestones: Planned, v1.3.10 Oct 21, 2022
@swc-project swc-project locked as resolved and limited conversation to collaborators Nov 20, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants