Skip to content

--fix is broken with .gts files #2681

@NullVoxPopuli

Description

@NullVoxPopuli

Here is where I am testing: NullVoxPopuli/limber#545

cd frontend
pnpm i
pnpm lint:hbs
pnpm lint:hbs --fix

Without --fix works fine:

❯  pnpm ember-template-lint app/components/limber/output/index.gts 
app/components/limber/output/index.gts
  16:10  error  Delete `⏎··`  prettier
  17:58  error  Delete `··`  prettier
  19:4  error  Replace `··{{!--` with `{{!`  prettier
  24:6  error  Delete `--`  prettier
  24:11  error  Delete `··`  prettier
  26:1  error  Replace `······` with `    `  prettier
  27:32  error  Delete `··`  prettier
  28:60  error  Replace `··········{{!--·@glint-ignore·--` with `        {{! @glint-ignore `  prettier
  29:35  error  Delete `··`  prettier
  31:10  error  Delete `··`  prettier
  31:24  error  Delete `··`  prettier
  33:6  error  Delete `··`  prettier
  33:17  error  Replace `······` with `    `  prettier
  35:1  error  Replace `····` with `  `  prettier
  36:11  error  Replace `··</Compiler>⏎` with `</Compiler>`  prettier

With fix gives an error an the typescript syntax:

❯  pnpm ember-template-lint app/components/limber/output/index.gts --fix
/home/nullvoxpopuli/Development/NullVoxPopuli/limber/node_modules/.pnpm/@glimmer+syntax@0.83.1/node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/syntax-error.js:19
let error = new Error(`${message}: ${quotedCode}(error occurred in '${module}' @ line ${line} : column ${column})`);
            ^

Error [SyntaxError]: Unclosed element `Signature`: 

|
|  <Signature>
|

(error occurred in 'an unknown module' @ line 15 : column 24)
  at generateSyntaxError (/home/nullvoxpopuli/Development/NullVoxPopuli/limber/node_modules/.pnpm/@glimmer+syntax@0.83.1/node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/syntax-error.js:19:15)
  at TokenizerEventHandlers.Program (/home/nullvoxpopuli/Development/NullVoxPopuli/limber/node_modules/.pnpm/@glimmer+syntax@0.83.1/node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/parser/handlebars-node-visitors.js:63:50)
  at TokenizerEventHandlers.acceptTemplate (/home/nullvoxpopuli/Development/NullVoxPopuli/limber/node_modules/.pnpm/@glimmer+syntax@0.83.1/node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/parser.js:78:27)
  at preprocess (/home/nullvoxpopuli/Development/NullVoxPopuli/limber/node_modules/.pnpm/@glimmer+syntax@0.83.1/node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/parser/tokenizer-event-handlers.js:377:72)
  at new ParseResult (/home/nullvoxpopuli/Development/NullVoxPopuli/limber/node_modules/.pnpm/ember-template-recast@6.1.3/node_modules/ember-template-recast/lib/parse-result.js:101:43)

so, maybe somehow when in fix mode, the templates aren't getting parsed / extracted appropriately.

looks like the same error on gjs:

 pnpm lint:hbs app/components/limber/output/js-test.gjs  --fix

> limber@0.0.0 lint:hbs /home/nullvoxpopuli/Development/NullVoxPopuli/limber/frontend
> ember-template-lint . --no-error-on-unmatched-pattern "app/components/limber/output/js-test.gjs" "--fix"

/home/nullvoxpopuli/Development/NullVoxPopuli/limber/node_modules/.pnpm/@glimmer+syntax@0.83.1/node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/syntax-error.js:19
  let error = new Error(`${message}: ${quotedCode}(error occurred in '${module}' @ line ${line} : column ${column})`);
              ^

Error [SyntaxError]: ' is not a valid character within attribute names: (error occurred in 'an unknown module' @ line 16 : column 12)
    at generateSyntaxError (/home/nullvoxpopuli/Development/NullVoxPopuli/limber/node_modules/.pnpm/@glimmer+syntax@0.83.1/node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/syntax-error.js:19:15)
    at TokenizerEventHandlers.reportSyntaxError (/home/nullvoxpopuli/Development/NullVoxPopuli/limber/node_modules/.pnpm/@glimmer+syntax@0.83.1/node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/parser/tokenizer-event-handlers.js:257:48)
    at EventedTokenizer.attributeName (/home/nullvoxpopuli/Development/NullVoxPopuli/limber/node_modules/.pnpm/simple-html-tokenizer@0.5.11/node_modules/simple-html-tokenizer/dist/simple-html-tokenizer.js:473:39)
    at EventedTokenizer.tokenizePart (/home/nullvoxpopuli/Development/NullVoxPopuli/limber/node_modules/.pnpm/simple-html-tokenizer@0.5.11/node_modules/simple-html-tokenizer/dist/simple-html-tokenizer.js:661:29)
    at TokenizerEventHandlers.ContentStatement (/home/nullvoxpopuli/Development/NullVoxPopuli/limber/node_modules/.pnpm/@glimmer+syntax@0.83.1/node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/parser/handlebars-node-visitors.js:254:20)
    at TokenizerEventHandlers.acceptNode (/home/nullvoxpopuli/Development/NullVoxPopuli/limber/node_modules/.pnpm/@glimmer+syntax@0.83.1/node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/parser.js:82:27)
    at TokenizerEventHandlers.Program (/home/nullvoxpopuli/Development/NullVoxPopuli/limber/node_modules/.pnpm/@glimmer+syntax@0.83.1/node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/parser/handlebars-node-visitors.js:55:12)
    at TokenizerEventHandlers.acceptTemplate (/home/nullvoxpopuli/Development/NullVoxPopuli/limber/node_modules/.pnpm/@glimmer+syntax@0.83.1/node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/parser.js:78:27)
    at preprocess (/home/nullvoxpopuli/Development/NullVoxPopuli/limber/node_modules/.pnpm/@glimmer+syntax@0.83.1/node_modules/@glimmer/syntax/dist/commonjs/es2017/lib/parser/tokenizer-event-handlers.js:377:72)
    at new ParseResult (/home/nullvoxpopuli/Development/NullVoxPopuli/limber/node_modules/.pnpm/ember-template-recast@6.1.3/node_modules/ember-template-recast/lib/parse-result.js:101:43)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions