Skip to content

Rename ApplicationModule to ExtensionInstance, old class to SpecificationBackedExtension#7292

Draft
isaacroldan wants to merge 1 commit into04-14-introduce_applicationmodule_base_class_moduledescriptor_and_moduleregistryfrom
04-14-rename_applicationmodule_to_extensioninstance_old_class_to_specificationbackedextension
Draft

Rename ApplicationModule to ExtensionInstance, old class to SpecificationBackedExtension#7292
isaacroldan wants to merge 1 commit into04-14-introduce_applicationmodule_base_class_moduledescriptor_and_moduleregistryfrom
04-14-rename_applicationmodule_to_extensioninstance_old_class_to_specificationbackedextension

Conversation

@isaacroldan
Copy link
Copy Markdown
Contributor

WHY are these changes introduced?

Fixes #0000

WHAT is this pull request doing?

How to test your changes?

Post-release steps

Checklist

  • I've considered possible cross-platform impacts (Mac, Linux, Windows)
  • I've considered possible documentation changes
  • I've considered analytics changes to measure impact
  • The change is user-facing, so I've added a changelog entry with pnpm changeset add

Copy link
Copy Markdown
Contributor Author

isaacroldan commented Apr 14, 2026

@isaacroldan isaacroldan force-pushed the 04-14-introduce_applicationmodule_base_class_moduledescriptor_and_moduleregistry branch from 8e4a90d to e215bc7 Compare April 14, 2026 15:24
@isaacroldan isaacroldan force-pushed the 04-14-rename_applicationmodule_to_extensioninstance_old_class_to_specificationbackedextension branch from afb85b0 to 616f287 Compare April 14, 2026 15:24
@github-actions
Copy link
Copy Markdown
Contributor

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/node-package-manager.d.ts
@@ -68,14 +68,6 @@ export declare function packageManagerFromUserAgent(env?: NodeJS.ProcessEnv): Pa
  * @returns The dependency manager
  */
 export declare function getPackageManager(fromDirectory: string): Promise<PackageManager>;
-/**
- * Builds the command and argv needed to execute a local binary using the package manager
- * detected from the provided directory or its ancestors.
- */
-export declare function packageManagerBinaryCommandForDirectory(fromDirectory: string, binary: string, ...binaryArgs: string[]): Promise<{
-    command: string;
-    args: string[];
-}>;
 interface InstallNPMDependenciesRecursivelyOptions {
     /**
      * The dependency manager to use to install the dependencies.

…tionBackedExtension

Phase 2 of the refactor: make ExtensionInstance the base class name.

- Rename ApplicationModule class to ExtensionInstance (the base class)
- Rename old ExtensionInstance class to SpecificationBackedExtension
- Re-export ExtensionInstance from extension-instance.ts so all 76+
  importing files continue working with zero changes
- Update loader to use new SpecificationBackedExtension(...)
- Update test files to use new SpecificationBackedExtension(...)
- Replace direct .specification.X accesses with instance getters:
  .specification.identifier -> .type
  .specification.experience -> .experience
  .specification.buildConfig -> .buildConfig
- Add optional specification? property on base class for backward compat

2088 tests pass across 209 files.
@isaacroldan isaacroldan force-pushed the 04-14-rename_applicationmodule_to_extensioninstance_old_class_to_specificationbackedextension branch from 616f287 to 314e17b Compare April 14, 2026 16:36
@isaacroldan isaacroldan force-pushed the 04-14-introduce_applicationmodule_base_class_moduledescriptor_and_moduleregistry branch from e215bc7 to 273a501 Compare April 14, 2026 16:36
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.

1 participant