fix(windows): resolve staged headers from esm

This commit is contained in:
Jinwoo-H
2026-08-27 21:05:40 -04:00
parent 40e6cc5d51
commit 9381b1f3f5
2 changed files with 8 additions and 1 deletions
@@ -29,6 +29,7 @@ import {
readSync,
writeFileSync
} from 'node:fs'
import { createRequire } from 'node:module'
import { dirname, join, resolve } from 'node:path'
import { RELAY_WINDOWS_PROCESS_TREE_FILENAME } from '../../src/shared/relay-artifacts.ts'
@@ -92,7 +93,9 @@ function assertPatchApplied() {
function applyWindowsProcessTreeBuildFixes() {
const bindingPath = join(PACKAGE_DIR, 'binding.gyp')
const processPath = join(PACKAGE_DIR, 'src', 'process.cc')
const nodeAddonApiDir = dirname(require.resolve('node-addon-api/package.json'))
const nodeAddonApiDir = dirname(
createRequire(import.meta.url).resolve('node-addon-api/package.json')
)
const stagedHeaderDir = join(PACKAGE_DIR, 'deps', 'node-addon-api')
let bindingGyp = readFileSync(bindingPath, 'utf8')
let processCc = readFileSync(processPath, 'utf8')
@@ -21,7 +21,11 @@ describe('windows-process-tree node-addon-api gyp path', () => {
'utf8'
)
expect(buildScript).toContain("for (const header of ['napi.h', 'napi-inl.h'])")
expect(buildScript).toContain("import { createRequire } from 'node:module'")
expect(buildScript).toContain("import { dirname, join, resolve } from 'node:path'")
expect(buildScript).toContain(
"createRequire(import.meta.url).resolve('node-addon-api/package.json')"
)
expect(buildScript).toContain('Repaired un-applied pnpm patch hunks before build.')
})