Skip to content

feat: add support for commonjs loaders#2380

Open
esatterwhite wants to merge 10 commits intoactions:mainfrom
esatterwhite:2294-esatterwhite-common-js
Open

feat: add support for commonjs loaders#2380
esatterwhite wants to merge 10 commits intoactions:mainfrom
esatterwhite:2294-esatterwhite-common-js

Conversation

@esatterwhite
Copy link
Copy Markdown

When this package was converted to ecmascript modules, it only defined an import
declaration in the package manifest making it impossible to load via
commonjs / require. Nodejs 22.12.0 added support for loading ecmascript
modules via require and commonjs modules via import. As long as the file
extension is .js and there is no top-level await, the same code can be
loaded by either mechanism. This change adds the require and default
declarations to the exports section of package.json making it possible
for this package to be used in either project type.

Fixes: #2294

When this package was converted to esm, it only defined an `import`
declaration in the package manifest making it impossible to load via
commonjs / require. Nodejs 22.12.0 added support for loading ecmascript
modules via require and commonjs modules via import. As long as the file
extension is `.js` and there is no top-level await, the same code can be
loaded by either mechanism. This change adds the `require` and `default`
decarations to the `exports` section of package.json making it possible
for this package to be used in either project type.

Fixes: actions#2294
When this package was converted to esm, it only defined an `import`
declaration in the package manifest making it impossible to load via
commonjs / require. Nodejs 22.12.0 added support for loading ecmascript
modules via require and commonjs modules via import. As long as the file
extension is `.js` and there is no top-level await, the same code can be
loaded by either mechanism. This change adds the `require` and `default`
decarations to the `exports` section of package.json making it possible
for this package to be used in either project type.

Fixes: actions#2294
When this package was converted to esm, it only defined an `import`
declaration in the package manifest making it impossible to load via
commonjs / require. Nodejs 22.12.0 added support for loading ecmascript
modules via require and commonjs modules via import. As long as the file
extension is `.js` and there is no top-level await, the same code can be
loaded by either mechanism. This change adds the `require` and `default`
decarations to the `exports` section of package.json making it possible
for this package to be used in either project type.

Fixes: actions#2294
When this package was converted to esm, it only defined an `import`
declaration in the package manifest making it impossible to load via
commonjs / require. Nodejs 22.12.0 added support for loading ecmascript
modules via require and commonjs modules via import. As long as the file
extension is `.js` and there is no top-level await, the same code can be
loaded by either mechanism. This change adds the `require` and `default`
decarations to the `exports` section of package.json making it possible
for this package to be used in either project type.

Fixes: actions#2294
When this package was converted to esm, it only defined an `import`
declaration in the package manifest making it impossible to load via
commonjs / require. Nodejs 22.12.0 added support for loading ecmascript
modules via require and commonjs modules via import. As long as the file
extension is `.js` and there is no top-level await, the same code can be
loaded by either mechanism. This change adds the `require` and `default`
decarations to the `exports` section of package.json making it possible
for this package to be used in either project type.

Fixes: actions#2294
When this package was converted to esm, it only defined an `import`
declaration in the package manifest making it impossible to load via
commonjs / require. Nodejs 22.12.0 added support for loading ecmascript
modules via require and commonjs modules via import. As long as the file
extension is `.js` and there is no top-level await, the same code can be
loaded by either mechanism. This change adds the `require` and `default`
decarations to the `exports` section of package.json making it possible
for this package to be used in either project type.

Fixes: actions#2294
When this package was converted to esm, it only defined an `import`
declaration in the package manifest making it impossible to load via
commonjs / require. Nodejs 22.12.0 added support for loading ecmascript
modules via require and commonjs modules via import. As long as the file
extension is `.js` and there is no top-level await, the same code can be
loaded by either mechanism. This change adds the `require` and `default`
decarations to the `exports` section of package.json making it possible
for this package to be used in either project type.

Fixes: actions#2294
When this package was converted to esm, it only defined an `import`
declaration in the package manifest making it impossible to load via
commonjs / require. Nodejs 22.12.0 added support for loading ecmascript
modules via require and commonjs modules via import. As long as the file
extension is `.js` and there is no top-level await, the same code can be
loaded by either mechanism. This change adds the `require` and `default`
decarations to the `exports` section of package.json making it possible
for this package to be used in either project type.

Fixes: actions#2294
When this package was converted to esm, it only defined an `import`
declaration in the package manifest making it impossible to load via
commonjs / require. Nodejs 22.12.0 added support for loading ecmascript
modules via require and commonjs modules via import. As long as the file
extension is `.js` and there is no top-level await, the same code can be
loaded by either mechanism. This change adds the `require` and `default`
decarations to the `exports` section of package.json making it possible
for this package to be used in either project type.

Fixes: actions#2294
When this package was converted to esm, it only defined an `import`
declaration in the package manifest making it impossible to load via
commonjs / require. Nodejs 22.12.0 added support for loading ecmascript
modules via require and commonjs modules via import. As long as the file
extension is `.js` and there is no top-level await, the same code can be
loaded by either mechanism. This change adds the `require` and `default`
decarations to the `exports` section of package.json making it possible
for this package to be used in either project type.

Fixes: actions#2294
@esatterwhite esatterwhite requested review from a team as code owners April 17, 2026 22:45
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.

No "exports" main defined in @actions/core/package.json @v3

1 participant