Skip to content

Commit 051c3ef

Browse files
committed
Fix jsFile invalid on windows (fix #389)
1 parent e47d1ed commit 051c3ef

File tree

1 file changed

+19
-20
lines changed

1 file changed

+19
-20
lines changed

server/aleph.ts

+19-20
Original file line numberDiff line numberDiff line change
@@ -515,7 +515,7 @@ export class Aleph implements IAleph {
515515
async addModule(specifier: string, sourceCode: string, forceRefresh?: boolean): Promise<Module> {
516516
let sourceType = getSourceType(specifier)
517517
if (sourceType === SourceType.Unknown) {
518-
throw new Error("addModule: unknown souce type")
518+
throw new Error("addModule: unknown source type")
519519
}
520520
const source = {
521521
code: sourceCode,
@@ -937,9 +937,9 @@ export class Aleph implements IAleph {
937937
async getModuleJS(module: Module, injectHMRCode = false): Promise<Uint8Array | null> {
938938
const { specifier, jsFile, jsBuffer } = module
939939
if (!jsBuffer) {
940-
const cacheFp = join(this.#buildDir, jsFile)
941-
if (await existsFile(cacheFp)) {
942-
module.jsBuffer = await Deno.readFile(cacheFp)
940+
const cacheFile = join(this.#buildDir, jsFile)
941+
if (await existsFile(cacheFile)) {
942+
module.jsBuffer = await Deno.readFile(cacheFile)
943943
log.debug(`load '${jsFile}'` + dim(' • ' + util.formatBytes(module.jsBuffer.length)))
944944
}
945945
}
@@ -1119,10 +1119,9 @@ export class Aleph implements IAleph {
11191119

11201120
const isRemote = util.isLikelyHttpURL(specifier) && !isLocalUrl(specifier)
11211121
const localPath = toLocalPath(specifier)
1122-
const name = trimBuiltinModuleExts(basename(localPath))
1123-
const jsFile = join(dirname(localPath), `${name}.js`)
1124-
const cacheFp = join(this.#buildDir, jsFile)
1125-
const metaFp = cacheFp.slice(0, -3) + '.meta.json'
1122+
const jsFile = trimBuiltinModuleExts(localPath) + '.js'
1123+
const cacheFile = join(this.#buildDir, jsFile)
1124+
const metaFile = cacheFile.slice(0, -3) + '.meta.json'
11261125
const isNew = !mod
11271126

11281127
let defer = (err?: Error) => { }
@@ -1152,14 +1151,14 @@ export class Aleph implements IAleph {
11521151
this.#appModule = mod
11531152
}
11541153

1155-
if (!forceRefresh && await existsFile(metaFp)) {
1154+
if (!forceRefresh && await existsFile(metaFile)) {
11561155
try {
1157-
const meta = JSON.parse(await Deno.readTextFile(metaFp))
1156+
const meta = JSON.parse(await Deno.readTextFile(metaFile))
11581157
if (meta.specifier === specifier && util.isFilledString(meta.sourceHash) && util.isArray(meta.deps)) {
11591158
Object.assign(mod, meta)
11601159
} else {
1161-
log.warn(`removing invalid metadata '${name}.meta.json'`)
1162-
Deno.remove(metaFp)
1160+
log.warn(`removing invalid metadata of '${basename(specifier)}'`)
1161+
Deno.remove(metaFile)
11631162
}
11641163
} catch (e) { }
11651164
}
@@ -1169,7 +1168,7 @@ export class Aleph implements IAleph {
11691168
return [mod, null]
11701169
}
11711170

1172-
if (!isRemote || this.#reloading || mod.sourceHash === '' || !await existsFile(cacheFp)) {
1171+
if (!isRemote || this.#reloading || mod.sourceHash === '' || !await existsFile(cacheFile)) {
11731172
try {
11741173
const src = customSource || await this.resolveModuleSource(specifier, data)
11751174
const sourceHash = computeHash(src.code)
@@ -1429,14 +1428,14 @@ export class Aleph implements IAleph {
14291428
private async cacheModule(module: Module, sourceMap?: string) {
14301429
const { jsBuffer, jsFile, ready, ...rest } = module
14311430
if (jsBuffer) {
1432-
const cacheFp = join(this.#buildDir, jsFile)
1433-
const metaFp = cacheFp.slice(0, -3) + '.meta.json'
1434-
await ensureDir(dirname(cacheFp))
1431+
const cacheFile = join(this.#buildDir, jsFile)
1432+
const metaFile = cacheFile.slice(0, -3) + '.meta.json'
1433+
await ensureDir(dirname(cacheFile))
14351434
await Promise.all([
1436-
Deno.writeFile(cacheFp, jsBuffer),
1437-
Deno.writeTextFile(metaFp, JSON.stringify({ ...rest }, undefined, 2)),
1438-
sourceMap ? Deno.writeTextFile(`${cacheFp}.map`, sourceMap) : Promise.resolve(),
1439-
lazyRemove(cacheFp.slice(0, -3) + '.bundling.js'),
1435+
Deno.writeFile(cacheFile, jsBuffer),
1436+
Deno.writeTextFile(metaFile, JSON.stringify({ ...rest }, undefined, 2)),
1437+
sourceMap ? Deno.writeTextFile(`${cacheFile}.map`, sourceMap) : Promise.resolve(),
1438+
lazyRemove(cacheFile.slice(0, -3) + '.bundling.js'),
14401439
])
14411440
}
14421441
}

0 commit comments

Comments
 (0)