fix: handle configure script in node 10.11+

This commit is contained in:
calebboyd
2018-10-20 11:23:12 -05:00
parent 129c2f86a0
commit 0db8122f8f
5 changed files with 75 additions and 23 deletions
+9 -8
View File
@@ -1,19 +1,20 @@
import * as path from 'path'
import { resolve } from 'path'
import { NexeCompiler } from '../compiler'
export default async function snapshot(compiler: NexeCompiler, next: () => Promise<void>) {
const snapshotFile = compiler.options.snapshot
const warmupScript = compiler.options.warmup
export default async function(compiler: NexeCompiler, next: () => Promise<void>) {
const { snapshot, warmup, cwd } = compiler.options
if (!snapshotFile) {
if (!snapshot) {
return next()
}
await compiler.replaceInFileAsync(
'configure',
compiler.configureScript,
'def configure_v8(o):',
`def configure_v8(o):\n o['variables']['embed_script'] = r'${path.resolve(snapshotFile)}'\n o['variables']['warmup_script'] = r'${path.resolve(warmupScript ||
snapshotFile)}'`
`def configure_v8(o):\n o['variables']['embed_script'] = r'${resolve(
cwd,
snapshot
)}'\n o['variables']['warmup_script'] = r'${resolve(warmup || snapshot)}'`
)
return next()
+1 -11
View File
@@ -1,16 +1,6 @@
import { NexeCompiler } from '../compiler'
import { parse } from 'cherow'
function semverGt(version: string, operand: string) {
const [cMajor, cMinor, cPatch] = version.split('.').map(Number)
const [major, minor, patch] = operand.split('.').map(Number)
return (
cMajor > major ||
(cMajor === major && cMinor > minor) ||
(cMajor === major && cMinor === minor && cPatch > patch)
)
}
import { semverGt } from '../util'
function walkSome(node: any, visit: Function) {
if (!node || typeof node.type !== 'string' || node._visited) {