Biome CLI v2.5.10 发布:修复 Astro 解析多项问题

2.5.10

补丁变更

  • #11403 8f7786f谢谢@Princesseuh!- 修复了 Astro 在属性之间拒绝 JavaScript 注释的问题。
  • #11403 8f7786f谢谢@Princesseuh!- 固定裸地<在Astro文本中,将视为标签的开头,例如:5 < 6 and 7 > 6.就像HTML一样,a<无法打开标签是文本,无需逃逸。
  • #11438 3133ffa谢谢@Princesseuh!- 固定#8294:仅包含注释的Astro表达式不再被报告为解析错误,这也阻止了整个文件的格式化。
    {/* a note */}
    x
  • #11403 8f7786f谢谢@Princesseuh!- 固定#9165:一个空的Astro表达式,如{}不再无法解析。天文渲染图{}像虚无一样。
  • #11403 8f7786f谢谢@Princesseuh!- 修复包含注释无法解析的 Astro 表达式。
    {/* block comment */ x}
    {/* only a comment */}
  • #11403 8f7786f谢谢@Princesseuh!- 增加了对 Astro 片段速记的支持。
    <>
      a
    
  • #11403 8f7786f谢谢@Princesseuh!- 修复了 Astro 前置块被字符串或注释内的关闭标签打断的情况。
    ---
    const a = "</script>";
    // </script> in a comment
    ---
  • #11403 8f7786f谢谢@Princesseuh!- 固定---当加价前显示时,它被解读为Astro前置围栏。Astro只识别文件开头的前置件,所以带注释的文件现在没有前置件,而且它的---行是满足的。
    <!-- c -->
    ---
    this is text, not frontmatter
    ---
  • #11403 8f7786f谢谢@Princesseuh!- 修正了Astro前置块,导致该方块在一条仅以破折号开头的线上提前结束。
    ---
    --count;
    ---
  • #11403 8f7786f谢谢@Princesseuh!- 固定了携带天文元素的子女is:raw被解析为标记,而不是原始文本。这也涵盖了 和 ,Astro 是逐字输出的内容,而非处理,因此不再被标记为 JavaScript 或 CSS。
    <% awesome %>
    
  • #11403 8f7786f谢谢@Princesseuh!- 修正了 Astro 拒绝以冒号开头的属性名,例如:href.
  • #11403 8f7786f谢谢@Princesseuh!- 修复了Astro解析器未能从如 这样的错误关闭标签中恢复的情况,使后续错误在发生错误的地方被报告,而非级联。
  • #11403 8f7786f谢谢@Princesseuh!- 固定{在一个Astro元素中打开一个表达式。MathML 是 Astro 不解析表达式的外国内容,例如R^{2x}现存为文本。 未受影响。
  • #11403 8f7786f谢谢@Princesseuh!- 固定{{在Astro表达式的开头被读取为插值。Astro没有{{ }}语法,所以{{ a: 1 }}和 都是对象文字。
  • #11403 8f7786f谢谢@Princesseuh!- 在Astro中固定表达式或作为原始文本读取。Astro 将两者都作为普通元素解析,因此它们的标记和插值现在被解析,且仅在其中一个变量中使用的变量不再报告为未使用。
    {value}
  • #11403 8f7786f谢谢@Princesseuh!- 增加了对 Astro 模板字面属性值的支持,例如 。
  • #11403 8f7786f谢谢@Princesseuh!- 修复了 Astro 拒绝包含包含 HTML5 引号的属性值的问题`,=,'",例如和。
  • #11393 dec5a8f谢谢@1678092075!- 固定#11207:useStrictMode不再报告 Vue 事件处理程序,例如@click="count++".
  • #11431 c065f99谢谢@levrik!- 固定#11429:Vue同名绑定中使用的变量和导入,例如:disabledv-bind:disabled不再被报告为未使用。
  • #11409 405dedb谢谢@ematipico!- 修复了LSP服务器内存泄漏,导致长时间编辑器会话内存使用持续增长。
  • #11422 a51eff7谢谢@dyc3!- 固定#11416: 生物群系在解析未完成时不再崩溃{let}{const}斯韦尔特档案中的声明。
  • #11378 34b715c谢谢@Netail!- 新增了来自以下的额外规则源@eslint/css.biome migrate eslint更可靠地检测你的eslint配置中的规则。
  • #11403 8f7786f谢谢@Princesseuh!- 固定{#,{/,{:以及{@在每个类HTML文件中都被读取为Svelte块开口。它们现在仅支持 Svelte,因此在 HTML、Vue 和 Angular 文件中会出现如下序列{#if x}是普通文本,而不是解析错误。
  • #11443 8d45229谢谢@ematipico!- 固定#11390:noFloatingPromises在检查由 创建的非泛类实例的方法时,不再对调用参数进行不必要的类型推断new.
  • #11425 9c2667b谢谢@dyc3!- 固定#6426: GritQL 插件现在可以匹配并重写嵌入在引号字符串中的元变量。
  • #11441 00317c3谢谢@dyc3!- 性能提升useNamedCaptureGroup,noMisplacedAssertion,noSkippedTests,noExportsInTest,noDuplicateTestHooks,noIdenticalTestTitle,useTestHooksInOrder, 和useTestHooksOnTop.

变化

  • 重构(分析):通过以下方式避免框状规则状态字符串@dyc3#11385
  • CI:修正建议@ematipico#11391
  • 家务:更新spin解决被拉扯包裹警告@dyc3#11392
  • fix(useStrictMode): 忽略 Vue 事件处理程序@1678092075#11393
  • 重构(核心):作为跟踪函数的设置@ematipico#11363
  • feat(md):前置物解析支持@ematipico#11395
  • 繁琐任务:将CodSpeed和Cloudflare加入赞助商名单@ematipico#11410
  • 家务:缺少规则来源@Netail#11378
  • 杂务:用货物拒签替换货物审核@Netail#11413
  • feat(js_plugin):用于JS插件的运行时AST绑定,由@siketyan#10954
  • 家务:分成测试-林特鲁尔@Netail#11414
  • feat(js_plugin):按类型查询AST节点,如下@siketyan#11415
  • 修复(核心):文件驱逐和项目@ematipico#11409
  • fix(解析/JS):通过以下方式更优雅地处理不完整的声明@dyc3#11422
  • fix(grit):处理引号字符串内的元变量@dyc3#11425
  • chore(wasm):通过以下方式启用 JS 插件unstable专题报道@siketyan#11421
  • feat(js_transform):通过@siketyan#11417
  • fix(html/parser):正确的 Astro 文档解析@Princesseuh#11403
  • fix(visitor): register reference from Vue 同名绑定@levrik#11431
  • refactor(deserialize):通过二进制大小减少类型擦除访问者@siketyan#11428
  • fix(js_plugin):在Boa引擎上使用网页时间时钟,如下@siketyan#11434
  • fix(tools):一致性检查@ematipico#11444
  • fix(js/parser):接受仅注释的 Astro 模板表达式@Princesseuh#11438
  • fix(推理):对构造函数依赖成员使用局部推理,如下@ematipico#11443
  • PERF(lint/js):优化部分规则查询和单元测试调用共享逻辑,通过以下方式@dyc3#11441
  • 修正(解析/JS):通过以下方式进一步处理不完整的Svelte声明@dyc3#11448
  • CI:由@github-actions[bot]发布#11450

新贡献者

完整更新日志:https://github.com/biomejs/biome/compare/@biomejs/biome@2.5.9...@biomejs/biome@2.5.10

添加评论
点赞收藏
点踩分享查看原文
评论
?
参与讨论