core throws a TypeError when index.json has a version semver can't read
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 2/5
- 预计耗时
- 1-3 小时
- 新手友好度
- 78/100
- Issue 类型
- 缺陷
- 描述清晰度
- 描述清楚
- 活跃度
- 活跃
- 技术栈
- javascript, node.js
调研方向
从 core/index.js 第 131–139 行附近开始,那里会对版本进行强制转换并读取其 major 属性;然后检查 core/test/errors.js 和 issue 中使用 fixture-server 的复现示例。确保 null 等格式错误的版本会被拒绝,并产生一条指出版本和 index URL 的错误;更新测试以验证该错误消息。
由索引模型根据 Issue 内容生成。
描述
When index.json has a version that semver.coerce can't read (null, a string with no digits, an object), core rejects with TypeError: Cannot read properties of null (reading 'major') from core/index.js#L139. The comment above it at L131 assumes every version parses, so nothing checks for null.
The error doesn't say which entry or which URL was the problem, and core/test/errors.js only checks that core rejects, so the TypeError passes it.
Repro, with the fixture server:
const nodevu = require('@nodevu/core');
const { at } = require('@nodevu/fixtures');
await nodevu(at('2024-01-01', {
index: [{ version: null, date: '2024-01-01', files: ['src'] }],
schedule: {},
}));
// TypeError: Cannot read properties of null (reading 'major')
fast-check finds it in its first run, shrunk to version: null in an otherwise empty index.
core should reject with an error that names the version and the index URL instead.
Found while working on #153.
- 主要语言
- JavaScript
- 星标
- 15
- 派生
- 2
- 平均合并
- 1 天 1 小时
- 30 天内合并 PR
- 60
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
cutenode/nodevu 的其他 Issue
-
难度 3/5 1-2 天 新手友好度 68/100
维护者通常 1 天内回复
-
难度 3/5 1-2 天 新手友好度 68/100
维护者通常 1 天内回复
-
fix missing 'v's in a few spots.可能重新可做 @hemnath-hub 于 52 天前认领,目前没有进行中的 PR。 未关闭
难度 3/5 1-2 天 新手友好度 45/100
维护者通常 1 天内回复
-
fix missing EOL markers可能重新可做 @hemnath-hub 于 52 天前认领,目前没有进行中的 PR。 未关闭
难度 2/5 1-3 小时 新手友好度 45/100
维护者通常 1 天内回复
-
feat: filtered core可能重新可做 @hemnath-hub 于 52 天前认领,目前没有进行中的 PR。 未关闭
难度 3/5 1-2 天 新手友好度 48/100
维护者通常 1 天内回复
相似的 Issue
-
bug
难度 2/5 1-3 小时 新手友好度 84/100
ImpactMojo/ImpactMojo#1385 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
Seeed-Studio/wiki-documents#5974 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 75/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 70/100
taskcluster/taskcluster#9486 · 2 条评论 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 76/100
维护者通常 1 天内回复