fix(artifacts): expand nested ASARs on Windows (#582)
This commit is contained in:
parent
28e0f4e9ec
commit
ebb4c45b68
|
|
@ -1,3 +1,5 @@
|
|||
import { isAbsolute } from "node:path";
|
||||
|
||||
import {
|
||||
ArtifactPathRegistry,
|
||||
normalizeArtifactPath,
|
||||
|
|
@ -234,7 +236,7 @@ const digestArtifactEntry = async (
|
|||
const isExpandableAsar = (entry: ArtifactEntry, logicalPath: string): boolean =>
|
||||
entry.kind === "file" &&
|
||||
logicalPath.toLowerCase().endsWith(".asar") &&
|
||||
entry.adapterKey.startsWith("/");
|
||||
isAbsolute(entry.adapterKey);
|
||||
|
||||
const isUnavailableUnpackedEntry = (
|
||||
cause: unknown,
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import { mkdir, rm, symlink, writeFile } from "node:fs/promises";
|
||||
import { join } from "node:path";
|
||||
import { join, sep } from "node:path";
|
||||
import { buffer } from "node:stream/consumers";
|
||||
|
||||
import { createPackage, listPackage, uncache } from "@electron/asar";
|
||||
|
|
@ -144,7 +144,7 @@ describe("ASAR inventory freshness", () => {
|
|||
const fixture = await archiveFixture();
|
||||
try {
|
||||
expect(listPackage(fixture.archive, { isPack: false })).toEqual([
|
||||
"/old.js",
|
||||
`${sep}old.js`,
|
||||
]);
|
||||
await fixture.replace();
|
||||
const inventory = await inventoryArtifact(fixture.archive);
|
||||
|
|
@ -208,7 +208,7 @@ describe("ASAR inventory freshness", () => {
|
|||
|
||||
await fixture.replace();
|
||||
expect(listPackage(fixture.archive, { isPack: false })).toEqual([
|
||||
"/new.js",
|
||||
`${sep}new.js`,
|
||||
]);
|
||||
} finally {
|
||||
await entries.return?.();
|
||||
|
|
|
|||
Loading…
Reference in New Issue