Skip to content

@actions/glob v0.7.0 breaks ESM actions: Minimatch is not a named export in minimatch v10 #2408

@Tobbe

Description

@Tobbe

Bug report

Package: @actions/glob
Version: 0.7.0

Description

@actions/glob v0.7.0 bumped minimatch from v3 to v10 (PR #2355), but lib/internal-pattern.js still imports Minimatch as a named export:

import { Minimatch } from 'minimatch';  // internal-pattern.js:5

minimatch v10 does not export Minimatch as a named export, so this crashes at runtime with a SyntaxError in any ESM context.

Error

file:///…/node_modules/@actions/glob/lib/internal-pattern.js:5
import { Minimatch } from 'minimatch';
         ^^^^^^^^^
SyntaxError: The requested module 'minimatch' does not provide an export named 'Minimatch'
    at #asyncInstantiate (node:internal/modules/esm/module_job:326:21)
    at async ModuleJob.run (node:internal/modules/esm/module_job:429:5)

Steps to reproduce

Use @actions/glob v0.7.0 in a Node.js action that runs as ESM (e.g. a .mts action with using: node24).

Expected behavior

@actions/glob v0.7.0 should work with the minimatch v10 it ships with.

Possible fix

In internal-pattern.js, update the import to use minimatch v10's API — likely import Minimatch from 'minimatch' (default export) or the equivalent named export from v10.

Environment

  • Node.js: v24.15.0
  • @actions/glob: 0.7.0
  • minimatch: 10.x (pulled in transitively by @actions/glob v0.7.0)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions