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

[Bug]: [postcss-merge-rules] Why the code in the example cannot be compressed #1598

Open
QiuShuiBai opened this issue Apr 19, 2024 · 4 comments

Comments

@QiuShuiBai
Copy link

Describe the bug

bug demo

Why didn't cssnano merge the class name "a" ?

write

.a { width: 100px; }
.b { width: 10px; }
.a { height: 200px; }

output

.a{width:100px}.b{width:10px}.a{height:200px}

But when I replace the writing order, cssnano can successfully merge

wtite

.a { width: 100px; }
.a { height: 200px; }
.b { width: 10px; }

output

.a{height:200px;width:100px}.b{width:10px}

Expected behaviour

expect to see

.a{height:200px;width:100px}.b{width:10px}

Steps to reproduce

use cssnano playground

bug demo

Version

6.1.2

Preset

default

Environment

System:
    OS: macOS 12.0.1
    CPU: (12) x64 Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz
    Memory: 26.08 MB / 16.00 GB
    Shell: 5.8 - /bin/zsh

Package details

@didi/[email protected] /Users/didi/zc-self/mpx-cube-ui
├─┬ @didi/[email protected]
│ └─┬ [email protected]
│   └── [email protected]
├─┬ @mpxjs/[email protected]
│ └── [email protected]
├─┬ @mpxjs/[email protected]
│ ├─┬ [email protected]
│ │ ├─┬ [email protected]
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ ├── [email protected] deduped
│ │ │ │ └─┬ [email protected]
│ │ │ │   └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ └── [email protected] deduped
│ │ └── [email protected] deduped
│ ├─┬ [email protected]
│ │ └── [email protected]
│ ├─┬ [email protected]
│ │ └── [email protected] deduped
│ ├─┬ [email protected]
│ │ └── [email protected] deduped
│ ├─┬ [email protected]
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ └── [email protected] deduped
│ ├─┬ [email protected]
│ │ └── [email protected] deduped
│ ├─┬ [email protected]
│ │ └── [email protected] deduped
│ └── [email protected] deduped
├─┬ @vue/[email protected]
│ ├─┬ @vue/[email protected]
│ │ └── [email protected]
│ ├─┬ [email protected]
│ │ └── [email protected] deduped
│ ├─┬ [email protected]
│ │ └── [email protected] deduped
│ ├─┬ [email protected]
│ │ ├─┬ [email protected]
│ │ │ ├─┬ [email protected]
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ ├── [email protected] deduped
│ │ │ │ │ └─┬ [email protected]
│ │ │ │ │   └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ ├─┬ [email protected]
│ │ │ │ │ └── [email protected] deduped
│ │ │ │ └── [email protected] deduped
│ │ │ └── [email protected] deduped
│ │ └── [email protected] deduped
│ ├─┬ [email protected]
│ │ ├─┬ [email protected]
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ ├── [email protected] deduped
│ │ │ │ └─┬ [email protected]
│ │ │ │   └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ ├─┬ [email protected]
│ │ │ │ └── [email protected] deduped
│ │ │ └── [email protected] deduped
│ │ └── [email protected] deduped
│ ├─┬ [email protected]
│ │ └── [email protected] deduped
│ └── [email protected] deduped
├─┬ [email protected]
│ ├─┬ [email protected]
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected]
│ │ ├─┬ [email protected]
│ │ │ └── [email protected]
│ │ ├─┬ [email protected]
│ │ │ └── [email protected]
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected]
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected]
│ │ └── [email protected] deduped
│ ├─┬ [email protected]
│ │ └── [email protected]
│ ├─┬ [email protected]
│ │ └── [email protected]
│ ├─┬ [email protected]
│ │ └── [email protected]
│ ├─┬ [email protected]
│ │ └── [email protected]
│ ├─┬ [email protected]
│ │ └── [email protected]
│ └── [email protected]
├─┬ [email protected]
│ ├─┬ [email protected]
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ ├── [email protected] deduped
│ │ │ └─┬ [email protected]
│ │ │   └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ ├─┬ [email protected]
│ │ │ └── [email protected] deduped
│ │ └── [email protected] deduped
│ └── [email protected] deduped
├── [email protected]
├─┬ [email protected] -> ./vue-cli-plugin-cube-docs
│ └─┬ [email protected]
│   └─┬ @vuepress/[email protected]
│     ├─┬ [email protected]
│     │ └── [email protected]
│     ├─┬ [email protected]
│     │ ├─┬ [email protected]
│     │ │ └── [email protected] deduped
│     │ ├─┬ [email protected]
│     │ │ └── [email protected] deduped
│     │ ├─┬ [email protected]
│     │ │ └── [email protected] deduped
│     │ ├─┬ [email protected]
│     │ │ └── [email protected] deduped
│     │ ├─┬ [email protected]
│     │ │ └── [email protected] deduped
│     │ └── [email protected] deduped
│     ├─┬ [email protected]
│     │ └─┬ [email protected]
│     │   ├─┬ [email protected]
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ ├── [email protected] deduped
│     │   │ │ └─┬ [email protected]
│     │   │ │   └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ ├─┬ [email protected]
│     │   │ │ └── [email protected] deduped
│     │   │ └── [email protected] deduped
│     │   └── [email protected] deduped
│     ├─┬ [email protected]
│     │ └── [email protected] deduped
│     ├─┬ [email protected]
│     │ └── [email protected] deduped
│     ├─┬ [email protected]
│     │ └─┬ @vue/[email protected]
│     │   └── [email protected] deduped
│     └─┬ [email protected]
│       └─┬ @vue/[email protected]
│         └── [email protected]
├─┬ [email protected]
│ └─┬ @vue/[email protected]
│   └── [email protected] deduped
└─┬ [email protected]
  └─┬ @vuepress/[email protected]
    ├─┬ [email protected]
    │ └── [email protected]
    ├─┬ [email protected]
    │ ├─┬ [email protected]
    │ │ └── [email protected] deduped
    │ ├─┬ [email protected]
    │ │ └── [email protected] deduped
    │ ├─┬ [email protected]
    │ │ └── [email protected] deduped
    │ ├─┬ [email protected]
    │ │ └── [email protected] deduped
    │ ├─┬ [email protected]
    │ │ └── [email protected] deduped
    │ └── [email protected] deduped
    ├─┬ [email protected]
    │ └─┬ [email protected]
    │   ├─┬ [email protected]
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected]
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ ├── [email protected] deduped
    │   │ │ └─┬ [email protected]
    │   │ │   └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ ├─┬ [email protected]
    │   │ │ └── [email protected] deduped
    │   │ └── [email protected] deduped
    │   └── [email protected]
    ├─┬ [email protected]
    │ └── [email protected] deduped
    └─┬ [email protected]
      └── [email protected]

Additional context

No response

@ludofischer
Copy link
Collaborator

cssnano does not reorder rules. In general, reordering CSS rules could lead to a different result. I don't know how complex the code to determine whether reordering is safe would be.

@btea
Copy link
Contributor

btea commented Apr 20, 2024

For situations where automatic judgment is difficult, an option can be provided to the user. For example, canMerge, whose type is string | string[] | () => string[], allows users to determine which selector contents can be merged without any side effects. 🤔

@ludofischer
Copy link
Collaborator

For situations where automatic judgment is difficult, an option can be provided to the user. For example, canMerge, whose type is string | string[] | () => string[], allows users to determine which selector contents can be merged without any side effects. 🤔

What's an example where this custom rule would be useful? If the CSS is written by hand, it would be difficult to be sure it always respects the same structure. If it is generated, why write redundant rules to a file if the programmer already knows how they can be deduplicated.

@btea
Copy link
Contributor

btea commented Apr 20, 2024

It makes sense. 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants