Local Zotero: sub-collections always come back empty (stray quote in collectionSQL)
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 2/5
- 预计耗时
- 1-3 小时
- 新手友好度
- 88/100
- Issue 类型
- 缺陷
- 描述清晰度
- 描述清楚
- 活跃度
- 活跃
- 技术栈
- sqlite, typescript
调研方向
从 packages/editor-server/src/core/zotero/local/source.ts 的 collectionSQL()(约第 594 行)开始,将子集合分支与约第 553 行的 creatorsSQL() 进行比较。移除生成的 SQL 中多余的引号,并添加一个使用非空 parentKey 和 Zotero SQLite fixture 的测试,或者准备 SQL 以捕获语法错误。完成标准是子集合能够加载其项目,且不会出现 SQLite 语法错误。
由索引模型根据 Issue 内容生成。
描述
Bug
collectionSQL() in packages/editor-server/src/core/zotero/local/source.ts:594 has a stray single quote in the sub-collection branch:
const where = spec.parentKey.length > 0
? `AND collections.key = :k'` // <-- trailing '
: `AND libraries.libraryID = :k`;
The ' opens an unterminated string literal, so the query fails with a SQLite syntax error whenever spec.parentKey is non-empty, i.e. for any Zotero sub-collection read from the local database.
Impact
The error is caught in the collection reader (source.ts ~line 280: console.error(error); return collection;), so a sub-collection silently comes back with zero items. Users see the sub-collection in the citation UI with nothing in it, and nothing surfaces except a console log in the LSP output.
Top-level libraries are unaffected (they take the other branch).
Fix
Drop the quote: AND collections.key = :k. The sibling creatorsSQL() (~line 553) already has the correct form.
Testing
Worth adding a test that runs collectionSQL() for a spec with a non-empty parentKey against a fixture Zotero sqlite (or at least db.prepare()s the SQL), so a syntax error like this gets caught.
Found during the dependency-upgrade research.
- 主要语言
- TypeScript
- 星标
- 652
- 派生
- 64
- 平均合并
- 8 小时 45 分钟
- 30 天内合并 PR
- 36
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
quarto-dev/quarto 的其他 Issue
-
VS Code extension: `quarto preview` fails when the file path contains parentheses (path not shell-quoted)可能已有人在做 @Bondrewd-K 于 2 天前认领。 未关闭bug vscode
难度 2/5 1-3 小时 新手友好度 78/100
quarto-dev/quarto#1194 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 84/100
quarto-dev/quarto#1139 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 1/5 1-3 小时 新手友好度 90/100
quarto-dev/quarto#1138 ·
维护者通常 1 天内回复
-
Add dependabot?可能重新可做 关联的 PR 已关闭且未合并。 未关闭
难度 2/5 1-3 小时 新手友好度 68/100
quarto-dev/quarto#1135 ·
维护者通常 1 天内回复
-
AceNodeView: programmatic setSelection() marks the cursor dirty, scrolling the document to the front matter可能已有人在做 @kevinushey 于 50 天前认领。 未关闭
难度 1/5 1 小时以内 新手友好度 90/100
quarto-dev/quarto#1099 ·
维护者通常 1 天内回复
查看 quarto-dev/quarto 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 76/100
melgarafael/DeskcommCRM#3000 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 70/100
callstackincubator/simlock#639 ·
维护者通常 1 天内回复
-
bug
难度 2/5 1-3 小时 新手友好度 80/100
aws/agentcore-cli#2606 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 76/100
维护者通常 7 天内回复
-
ai-driven-qa bug Cosmetic
难度 2/5 1-3 小时 新手友好度 74/100
维护者通常 1 天内回复