Skip to content

Bump oclif/core to version 4.4.0 #6041

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

Merged
merged 1 commit into from
Jul 3, 2025

Conversation

isaacroldan
Copy link
Contributor

@isaacroldan isaacroldan commented Jun 30, 2025

WHY are these changes introduced?

To update the oclif dependency from 4.11.3 to 4.20.1 and @oclif/core from 3.26.5 to 4.4.0 across the codebase.

WHAT is this pull request doing?

  • Updates oclif from 4.11.3 to 4.20.1
  • Updates @oclif/core from 3.26.5 to 4.4.0 in all packages
  • Updates @oclif/plugin-commands from 4.1.18 to 4.1.26
  • Updates @oclif/plugin-plugins from 5.4.28 to 5.4.43
  • Fixes import paths in base-command.ts to use the new module structure
  • Updates type imports to match the new @oclif/core API
  • Adjusts CLI command documentation to reflect updated flag syntax (e.g., showing array flags with ...)

How to test your changes?

  1. Run pnpm install to update dependencies
  2. Verify that all CLI commands still work as expected
  3. Test commands with array flags to ensure they accept multiple values
  4. Run the test suite to ensure all tests pass with the updated dependencies

Measuring impact

How do we know this change was effective? Please choose one:

  • n/a - this doesn't need measurement, e.g. a linting rule or a bug-fix

Checklist

  • I've considered possible cross-platform impacts (Mac, Linux, Windows)
  • I've considered possible documentation changes

Copy link
Contributor Author

This stack of pull requests is managed by Graphite. Learn more about stacking.

@isaacroldan isaacroldan marked this pull request as ready for review June 30, 2025 13:44
@isaacroldan isaacroldan requested review from a team as code owners June 30, 2025 13:44
Copy link
Contributor

We detected some changes at packages/*/src and there are no updates in the .changeset.
If the changes are user-facing, run pnpm changeset add to track your changes and include them in the next release CHANGELOG.

Caution

DO NOT create changesets for features which you do not wish to be included in the public changelog of the next CLI release.

@isaacroldan isaacroldan force-pushed the 06-30-bump_oclif_core_to_version_4.4.0 branch from 31f0eb4 to 41fa265 Compare July 1, 2025 12:40
Copy link
Contributor Author

/snapit

Copy link
Contributor

github-actions bot commented Jul 2, 2025

🫰✨ Thanks @isaacroldan! Your snapshot has been published to npm.

Test the snapshot by installing your package globally:

pnpm i -g @shopify/cli@0.0.0-snapshot-20250702104341

Tip

If you get an ETARGET error, install it with NPM and the flag --@shopify:registry=https://registry.npmjs.org

Caution

After installing, validate the version by running just shopify in your terminal.
If the versions don't match, you might have multiple global instances installed.
Use which shopify to find out which one you are running and uninstall it.

@isaacroldan isaacroldan force-pushed the 06-30-bump_oclif_core_to_version_4.4.0 branch from 41fa265 to 768cb6c Compare July 2, 2025 11:13
Copy link
Contributor

github-actions bot commented Jul 2, 2025

Coverage report

St.
Category Percentage Covered / Total
🟡 Statements 78.35% 12571/16044
🟡 Branches
72.51% (+0.02% 🔼)
6122/8443
🟡 Functions
78.46% (-0.02% 🔻)
3279/4179
🟡 Lines
78.8% (+0.01% 🔼)
11897/15098
Show files with reduced coverage 🔻
St.
File Statements Branches Functions Lines
🟢
... / info.ts
81.44%
61.19% (-1.49% 🔻)
90.32% 83.15%
🟢
... / Dev.tsx
90.59% (-2.35% 🔻)
75% (-1.79% 🔻)
86.36% (-4.55% 🔻)
92.5% (-1.25% 🔻)

Test suite run success

2916 tests passing in 1262 suites.

Report generated by 🧪jest coverage report action from 768cb6c

Copy link
Contributor

github-actions bot commented Jul 2, 2025

Differences in type declarations

We detected differences in the type declarations generated by Typescript for this branch compared to the baseline ('main' branch). Please, review them to ensure they are backward-compatible. Here are some important things to keep in mind:

  • Some seemingly private modules might be re-exported through public modules.
  • If the branch is behind main you might see odd diffs, rebase main into this branch.

New type declarations

We found no new type declarations in this PR

Existing type declarations

packages/cli-kit/dist/public/node/base-command.d.ts
@@ -1,5 +1,7 @@
 import { Command } from '@oclif/core';
-import { FlagOutput, Input, ParserOutput, FlagInput, ArgOutput } from '@oclif/core/lib/interfaces/parser.js';
+import { OutputFlags, Input, ParserOutput, FlagInput, OutputArgs } from '@oclif/core/parser';
+export type ArgOutput = OutputArgs<any>;
+export type FlagOutput = OutputFlags<any>;
 declare abstract class BaseCommand extends Command {
     static baseFlags: FlagInput<{}>;
     static descriptionWithoutMarkdown(): string | undefined;
@@ -8,7 +10,7 @@ declare abstract class BaseCommand extends Command {
     catch(error: Error & {
         skipOclifErrorHandling: boolean;
     }): Promise<void>;
-    protected init(): Promise<any>;
+    protected init(): Promise<unknown>;
     protected showNpmFlagWarning(): void;
     protected exitWithTimestampWhenEnvVariablePresent(): void;
     protected parse<TFlags extends FlagOutput & {
packages/cli-kit/dist/public/node/cli.d.ts
@@ -29,11 +29,11 @@ export declare function runCreateCLI(options: RunCLIOptions, launchCLI?: (option
  * are shared across all the commands.
  */
 export declare const globalFlags: {
-    'no-color': import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
-    verbose: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
+    'no-color': import("@oclif/core/interfaces").BooleanFlag<boolean>;
+    verbose: import("@oclif/core/interfaces").BooleanFlag<boolean>;
 };
 export declare const jsonFlag: {
-    json: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
+    json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
 };
 /**
  * Clear the CLI cache, used to store some API responses and handle notifications status
packages/cli-kit/dist/public/node/custom-oclif-loader.d.ts
@@ -1,5 +1,5 @@
 import { Command, Config } from '@oclif/core';
-import { Options } from '@oclif/core/lib/interfaces/plugin.js';
+import { Options } from '@oclif/core/interfaces';
 export declare class ShopifyConfig extends Config {
     constructor(options: Options);
     customPriority(commands: Command.Loadable[]): Command.Loadable | undefined;

Copy link
Contributor

@alfonso-noriega alfonso-noriega left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@isaacroldan isaacroldan added this pull request to the merge queue Jul 3, 2025
Merged via the queue into main with commit 3b3fa27 Jul 3, 2025
30 of 32 checks passed
@isaacroldan isaacroldan deleted the 06-30-bump_oclif_core_to_version_4.4.0 branch July 3, 2025 09:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants