Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Squiggle should only cover the subexpression most closely related to a problem

未关闭
#449 0 条评论 1 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
35/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
停滞
技术栈
github-actions, typescript, vscode

调研方向

使用报告中的不完整 YAML 表达式,在 GitHub Actions VS Code extension 中复现该诊断,然后跟踪计算波浪线范围和 View Problem 位置的代码。完成标准是:诊断仅突出显示距离无效符号最近的子表达式,而不是整个 ${{ ... }} 表达式,同时保留报告的消息。

由索引模型根据 Issue 内容生成。

描述

Type: Bug

consider this incomplete expression:

something: >-
  ${{ 'alpine' }}
  ${{ (github.event_name == 'push') && (github.ref_name == github.event.repository. && format('{0}/{1}:latest', env.repository, env.image) || '' }}

there is more than one ${{ ... }} and more than one && in the value for something.

The system is nice enough not to stick squiggles under the entirety of the value of something, but it does stick them under the entirety of the second ${{ ... }}.

It would be nicer if it only put them around github.event.repository. && or even repository. && which is the portion of the expression that's closest to the unhappy item.

Unexpected symbol: '&&'
Available expression contexts: github, inputs, vars, needs, strategy, matrix, secrets, steps, job, runner, env

Available expression functions: hashFiles
View Problem

The worst pat of the current behavior is that View Problem points the user to the beginning of the ${{` saying:

Unexpected symbol: '&&'

Which is actually closest to the first && which is not the problematic one.

Extension version: 0.27.1
VS Code version: Code 1.98.0 (Universal) (6609ac3d66f4eade5cf376d1cb76f13985724bcb, 2025-03-04T21:06:18.612Z)
OS version: Darwin arm64 24.3.0
Modes:

System Info
Item Value
CPUs Apple M1 Max (10 x 2400)
GPU Status 2d_canvas: enabled
canvas_oop_rasterization: enabled_on
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
skia_graphite: disabled_off
video_decode: enabled
video_encode: enabled
webgl: enabled
webgl2: enabled
webgpu: enabled
webnn: disabled_off
Load (avg) 6, 7, 7
Memory (System) 64.00GB (0.10GB free)
Process Argv --crash-reporter-id 1fc67ee2-0174-4598-9f98-4537df0dd32c
Screen Reader no
VM 0%
A/B Experiments
vsliv368:30146709
vspor879:30202332
vspor708:30202333
vspor363:30204092
vswsl492:30256859
vscod805cf:30301675
binariesv615:30325510
py29gd2263:31024239
c4g48928:30535728
azure-dev_surveyone:30548225
vscrp:30673768
962ge761:30959799
h48ei257:31000450
pythontbext0:30879054
cppperfnew:31000557
dwnewjupytercf:31046870
nativerepl2:31139839
pythonrstrctxt:31112756
nativeloc2:31192216
iacca1:31171482
5fd0e150:31155592
dwcopilot:31170013
6074i472:31201624
dwoutputs:31242946
customenabled:31248079
5a9hg449:31230677
hdaa2157:31222309
copilot_t_ci:31222730
968h8231:31253945
jda6j935:31233686

主要语言
TypeScript
星标
661
派生
214
PR 合并指标
30 天内没有已合并 PR

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

github/vscode-github-actions 的其他 Issue

查看 github/vscode-github-actions 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。