Bug: Prettier errorneously removes semicolon in-between expressions
Info
| Tool | Version |
|---|---|
| Plugin | v2.4.1 |
| Prettier | v2.8.3 |
| Framework | vue |
| Node | v16 |
| OS | linux |
Prettier config
{
"printWidth": 120,
"endOfLine": "lf",
"tabWidth": 4,
"singleQuote": true,
"semi": false,
"trailingComma": "all",
"arrowParens": "avoid",
"bracketSpacing": false,
"vueIndentScriptAndStyle": true,
"proseWrap": "never",
"pugAttributeSeparator": "as-needed",
"bracketSameLine": true,
"pugSortAttributesBeginning": [
"^(is|v-is)$",
"^v-for$",
"^(v-if|v-else-if|v-else|v-show|v-cloak)$",
"^(v-once|v-pre)$",
"^id$",
"^ref$", "^key$", "^(v-slot|slot)$",
"^v-model$",
"^v-.+$"
],
"pugSortAttributesEnd": [
"^@.+$",
"^v-on$",
"^v-text$",
"^v-html$"
],
"pugSortAttributes": "asc"
}
Input
<template lang="pug">
input#dropzone.image-input(
@drop.stop.prevent='onDrop($event.dataTransfer.files); dragging = false')
</template>
Output or Error

Expected Output
Should be unchanged
Additional Context
Could you first try out pugSemi: true?
Maybe this is already sufficient enough
My workaround is to stay on v2.3 for now, which still works.
On 2.4.1, I tried setting {"pugSemi": true} but met this error:
[error] Error: Invalid --pug-semi value. Expected null, false, "" or "true", but received true.
I then tried changing it to {"pugSemi":"true"} but then met other error:
[PugPrinter]: Error: Invalid semi value. Expected true or false, but received "true".
Ah yeah, this is a known issue https://github.com/prettier/prettier/issues/9204

I met the same issue
P.S.
"@prettier/plugin-pug": "^2.4.1"
"prettier": "^2.8.3"
FYI. Downgrade prettier to 2.7.1 can fix the issue for me temporarily.
@Shinigami92 Do we have any path forward for resolving this yet?
@Shinigami92 Do we have any path forward for resolving this yet?
Please ask this in the related prettier issue