-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Revert PR #3533 and fix SQLite bundling #3557
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
|
554660d to
f6a9d92
Compare
| <Bot className="w-4" /> | ||
| <div>{t("kilocode:ghost.title")}</div> | ||
| </div> | ||
| IK BEN MARK |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
for debugging; todo: remove
This commit reverts PR #3533 which disabled NewAutocompleteProvider due to SQLite bundling issues. The proper fix is to bundle SQLite native binaries following Continue's approach. Changes: - Restored NewAutocompleteProvider in GhostServiceManager.ts - Added .node loader to esbuild.mjs to handle native binary modules - Added build step to copy sqlite3 and sqlite modules to dist/node_modules/ - Updated .vscodeignore to include SQLite modules in VSIX package - Fixed sqlite3 mock in AutocompleteLruCache.spec.ts to include default export The extension will now properly load SQLite at runtime from the bundled node_modules, allowing NewAutocompleteProvider to work in production.
cded68b to
e5d2b68
Compare
|
VSIX size appears to increase from 31 => 39 MB |
| // Fallback: try to find it in pnpm structure | ||
| const pnpmDir = path.join(srcDir, "../node_modules/.pnpm") | ||
| if (fs.existsSync(pnpmDir)) { | ||
| const entries = fs.readdirSync(pnpmDir) | ||
| for (const entry of entries) { | ||
| if (entry.startsWith(`${packageName}@`)) { | ||
| const packagePath = path.join(pnpmDir, entry, "node_modules", packageName) | ||
| if (fs.existsSync(packagePath)) { | ||
| packageSource = packagePath | ||
| break | ||
| } | ||
| } | ||
| } | ||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
do we care about this fallback or should we just fail?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
3/4 packages use the fallback
| copyPackage("sqlite3") | ||
| copyPackage("sqlite") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
do we need both?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes, though I'm not sure why
|
Only works on mac with this change |
This commit reverts PR #3533 which disabled NewAutocompleteProvider due to SQLite bundling issues. The proper fix is to bundle SQLite native binaries following Continue's approach.
Changes:
The extension will now properly load SQLite at runtime from the bundled node_modules, allowing NewAutocompleteProvider to work in production.
Context
Implementation
Screenshots
How to Test
Get in Touch