Skip to content

Minify incorrectly joins css pseudo class if used with & #908

@nikandfor

Description

@nikandfor

:is(.z) joined to the previous token, but it shouldn't be

$ cat minify.css
.x {
        & :is(.z) { }
        &:is(.y) :is(.z) { }
}

$ minify minify.css
.x{&:is(.z) { } &:is(.y):is(.z) { }}

$ go version -m `which minify`
/Users/nik/.go/bin/minify: go1.25.1
        path    github.com/tdewolff/minify/v2/cmd/minify
        mod     github.com/tdewolff/minify/v2   v2.24.8 h1:58/VjsbevI4d5FGV0ZSuBrHMSSkH4MCH0sIz/eKIauE=
        dep     github.com/djherbis/atime       v1.1.0  h1:rgwVbP/5by8BvvjBNrbh64Qz33idKT3pSnMSJsxhi0g=
        dep     github.com/fsnotify/fsnotify    v1.9.0  h1:2Ml+OJNzbYCTzsxtv8vKSFD9PbJjmhYF14k/jKC7S9k=
        dep     github.com/jmoiron/sqlx v1.4.0  h1:1PLqN7S1UYp5t4SrVVnt4nUVNemrDAtxlulVe+Qgm3o=
        dep     github.com/pelletier/go-toml    v1.9.5  h1:4yBQzkHv+7BHq2PQUZF3Mx0IYxG7LsP222s7Agd3ve8=
        dep     github.com/tdewolff/argp        v0.0.0-20250430135133-0f54527d2b1e      h1:2jfHhbjBKS2wfyvcz5W2eOkQVKv57DKM1C/QYhTovhs=
        dep     github.com/tdewolff/parse/v2    v2.8.5  h1:ZmBiA/8Do5Rpk7bDye0jbbDUpXXbCdc3iah4VeUvwYU=
        dep     golang.org/x/sys        v0.37.0 h1:fdNQudmxPjkdUTPnLn5mdQv7Zwvbvpaxqs831goi9kQ=
        dep     gopkg.in/yaml.v3        v3.0.1  h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
        build   -buildmode=exe
        build   -compiler=gc
        build   DefaultGODEBUG=containermaxprocs=0,decoratemappings=0,tlssha1=1,updatemaxprocs=0,x509sha256skid=0
        build   CGO_ENABLED=1
        build   CGO_CFLAGS=
        build   CGO_CPPFLAGS=
        build   CGO_CXXFLAGS=
        build   CGO_LDFLAGS=
        build   GOARCH=arm64
        build   GOOS=darwin
        build   GOARM64=v8.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions