Bug 1225146

Summary: devel:languages:nodejs/nodejs20: Bug "Internal Error: not found: corepack"
Product: [openSUSE] openSUSE Tumbleweed Reporter: Johannes Kastl <opensuse_buildservice>
Component: OtherAssignee: Adam Majer <amajer>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None    
Version: Current   
Target Milestone: Current   
Hardware: Other   
OS: openSUSE Tumbleweed   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Johannes Kastl 2024-05-23 13:54:55 UTC
HI,

I was trying to use corepack20 to install pnpm, but this errors out:

# corepack20 enable pnpm
Internal Error: not found: corepack
    at getNotFoundError (/usr/lib64/node_modules/corepack20/dist/lib/corepack.cjs:19667:51)
    at which3 (/usr/lib64/node_modules/corepack20/dist/lib/corepack.cjs:19716:13)
    at async EnableCommand.execute (/usr/lib64/node_modules/corepack20/dist/lib/corepack.cjs:23561:55)
    at async EnableCommand.validateAndExecute (/usr/lib64/node_modules/corepack20/dist/lib/corepack.cjs:21173:22)
    at async _Cli.run (/usr/lib64/node_modules/corepack20/dist/lib/corepack.cjs:22148:18)
    at async Object.runMain (/usr/lib64/node_modules/corepack20/dist/lib/corepack.cjs:24266:12)

# rpm -qa|grep -E 'node|corepack'
nodejs-common-6.1-1.3.x86_64
nodejs21-21.7.2-1.1.x86_64
corepack20-20.12.1-1.1.x86_64

This also affects Leap 15.x. SLES15 seems to not provide corepack20 for $REASONS.

The same happens for corepack21:

# corepack21 enable pnpm
Internal Error: not found: corepack
    at getNotFoundError (/usr/lib64/node_modules/corepack21/dist/lib/corepack.cjs:19667:51)
    at which3 (/usr/lib64/node_modules/corepack21/dist/lib/corepack.cjs:19716:13)
    at async EnableCommand.execute (/usr/lib64/node_modules/corepack21/dist/lib/corepack.cjs:23561:55)
    at async EnableCommand.validateAndExecute (/usr/lib64/node_modules/corepack21/dist/lib/corepack.cjs:21173:22)
    at async _Cli.run (/usr/lib64/node_modules/corepack21/dist/lib/corepack.cjs:22148:18)
    at async Object.runMain (/usr/lib64/node_modules/corepack21/dist/lib/corepack.cjs:24266:12)

# rpm -qa|grep -E 'node|corepack'
nodejs-common-6.1-1.3.x86_64
nodejs21-21.7.2-1.1.x86_64
corepack21-21.7.2-1.1.x86_64

# cat /etc/os-release 
NAME="openSUSE Tumbleweed"
# VERSION="20240521"
ID="opensuse-tumbleweed"
ID_LIKE="opensuse suse"
VERSION_ID="20240521"
PRETTY_NAME="openSUSE Tumbleweed"

Kind Regards,
Johannes
Comment 1 Adam Majer 2024-05-28 13:10:12 UTC
Fix for nodejs-common is submitted to Factory that will change the "not found" to something that seems to be working. It may take a few days as it also changes default version of nodejs to 22.x

It's not part of nodejs in SLE since customers haven't requested it and it's just a thin layer that downloads the actual code from internet.

You are first person to report actually trying to use corepack (aside from the contribution to enable it earlier this year). :-) Thanks for bug report.