All-in-one dependancey updating PR#246
Open
abdoei wants to merge 21 commits into
Open
Conversation
This reverts commit f264dd3.
…rackets to fix the broken visual representation after problem count exceeded 999 becoming a 4-digit number.
…tated in ansi-styles 5.0.0 changelog.
nyc hooks into Module._compile to instrument code, which breaks Node.js's ESM-require feature (--experimental-require-module) and causes SyntaxErrors on ESM dependencies like ora@9 and ansi-styles@6. c8 uses V8 native coverage instead, working seamlessly with both CJS and ESM modules without patching the module loader.
winston@2.1.1 accesses module.exports.padLevels during a circular dependency load, which emits a warning in Node.js v26+. Patched common.js to guard with hasOwnProperty before accessing the property. The patch is persisted via pnpm's patchedDependencies so it survives reinstalls. Why not upgrading? Because the latest prompt is using this 4yo version of winston.
… extraction behavior
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Modernize the entire project — bump all dependencies to latest, migrate tooling, and produce standalone executables with Node 22 while keeping API intact.
Changes
Build & Packaging
pkg@4with@yao-pkg/pkg@6— The original pkg only supports up to Node 10. The maintained fork supports Node 22 and includes Zstd compression.node10→node22— Binaries built for Linux, macOS, and Windows at Node 22.--fallback-to-source— Ships plain source for ESM files that can't be bytecode-compiled.Dependency Modernization
All dependencies bumped to latest compatible versions:
cheerio0.x→1.2.0yargs6.x→17.7.3(via intermediate18.0.0, rolled back to CJS-compatible v17 for pkg)ora0.x→5.4.1(rolled back from9.4.1to avoid ESM-only chalk subpath imports)mkdirp0.x→3.0.1ansi-styles2.x→6.2.3color-convertadded as explicit dependencysupports-color2.x→10.2.2nconf,underscore,wordwrap,prompt,request,moment,he— minor bumpsTooling
4.x→10.x— Migrated from legacy.eslintrcto flat config (eslint.config.js)chai→ nativenode:assert— Removes chai dependency, uses built-inassert.strictnyc→c8— Native coverage tool compatible with modern Nodenpm→pnpm— Updated install scripts and added pnpm-workspace.yamlStandalone Binary Fixes
~/.lc/<app>/plugins/instead of the read-only pkg snapshotpunycodedeprecation —process.noDeprecationsilences tough-cookie warningsPatches
winston@2.1.1— SuppressedpadLevelsdeprecation warning via pnpm patchOther
--inspect-brkdebuggingVerification: All 139 tests pass (
pnpm run test).