Uh oh!
There was an error while loading. Please reload this page.
chore: update @oclif/core to v4 and migrate ESLint to v9 flat config - #392
Conversation
- Upgrade @oclif/core from ^2.8.12 to ^4.0.0 (fixes#391) - Replace removed ux.table with custom src/ux-table.js (ESM-only @oclif/table is incompatible with CJS) - Upgrade @adobe/eslint-config-aio-lib-config to 5.0.0, eslint to ^9.0.0 - Migrate ESLint config from .eslintrc to eslint.config.js (flat config format) - Patch Command.prototype.parse in test setup for oclif v4 config.runHook requirement - Update createTestFlagsFunction to check 'flags' instead of '_flags' (oclif v4 change) - Simplify api/list.js --json flag handling (remove oclif v2 workaround) - Maintain 100% branch/line/statement coverage Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
There was a problem hiding this comment.
Pull request overview
Updates this plugin to work with the @oclif/core v4 ecosystem and ESLint v9, including adapting CLI output and test scaffolding to accommodate breaking changes introduced by oclif v4 and the ESLint flat-config migration.
Changes:
- Upgrade
@oclif/core(andoclifdev tooling) to v4 and adjust tests for updated parsing/config expectations. - Replace removed
ux.tableusage with a localsrc/ux-table.jsimplementation and update commands accordingly. - Migrate from
.eslintrctoeslint.config.js(ESLint v9 flat config) and update lint dependencies.
Reviewed changes
Copilot reviewed 15 out of 16 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| test/jest.setup.js | Patches Command.prototype.parse for unit tests and updates flag assertions for oclif v4. |
| test/commands/runtime/api/list.test.js | Simplifies argv-related test logic after command parsing changes. |
| src/ux-table.js | Adds a local table printer intended to replace ux.table. |
| src/commands/runtime/trigger/list.js | Switches table output from ux.table to local table(). |
| src/commands/runtime/rule/list.js | Switches table output from ux.table to local table(). |
| src/commands/runtime/property/get.js | Switches table output from ux.table to local table(). |
| src/commands/runtime/package/list.js | Switches table output from ux.table to local table(). |
| src/commands/runtime/namespace/list.js | Switches table output from ux.table to local table(). |
| src/commands/runtime/namespace/get.js | Switches multiple table outputs from ux.table to local table(). |
| src/commands/runtime/api/list.js | Removes prior argv workaround and uses local table() for output. |
| src/commands/runtime/activation/list.js | Switches table output from ux.table to local table(). |
| src/commands/runtime/action/list.js | Switches table output from ux.table to local table(). |
| package.json | Bumps oclif/core to v4 and updates ESLint/Jest lint tooling dependencies. |
| eslint.config.js | Introduces ESLint v9 flat config and test globals integration. |
| .gitignore | Adds .claude ignore entry. |
| .eslintrc | Removes legacy ESLint config (replaced by flat config). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
shazron
commented
Apr 7, 2026
@copilot apply changes based on the comments in this thread |
Agent-Logs-Url: https://github.com/adobe/aio-cli-plugin-runtime/sessions/56c60f1b-cede-41a1-823e-9181de4e14c9 Co-authored-by: shazron <36107+shazron@users.noreply.github.com>
Applied all four review changes in commit dccc4a6:
Also added |
Fixes#391
Summary
@oclif/corefrom^2.8.12to^4.0.0, resolving chore: update @oclif/core to latest version #391ux.tablewith a customsrc/ux-table.jscompatible with the CJS project (the official@oclif/tablereplacement is ESM-only)@adobe/eslint-config-aio-lib-configto5.0.0andeslintto^9.0.0.eslintrctoeslint.config.js(flat config format required by ESLint v9)oclifCLI to^4.0.0andeslint-plugin-jestto^29.0.0Breaking changes handled
ux.tableremoved in v4 → custom table implementation preserving identical output formatCommand.parse()now requiresthis.config.runHook→ patched in test setup for unit tests that instantiate commands directly_flagsinternal property removed → updatedcreateTestFlagsFunctionto checkflagsinsteadargvis now a writable class field → simplified test that previously used a getter-onlyObject.definePropertyTest plan
npm test)npm run lint)🤖 Generated with Claude Code