@bookshop/hugo-engine 3.3.1-beta.9 → 3.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.nyc_output/{3d7b2afe-f130-478e-82ed-2a0379ecdfff.json → 396c364e-fec4-4f27-9ff2-8b236061ef8f.json} +0 -0
- package/.nyc_output/{8b92bece-b7fa-4f0d-a2c6-11e46127ccc8.json → 4ef43740-059b-4329-96cd-0643fd8fe8d8.json} +0 -0
- package/.nyc_output/{ad32106f-bbf1-46e2-a408-326af8789f63.json → 656275f4-66d6-4d27-bfab-c2f7a3087670.json} +0 -0
- package/.nyc_output/{b56df138-4974-4883-9070-3179d5d423bd.json → 6aec5420-0b83-4260-b300-4d595dfd0660.json} +0 -0
- package/.nyc_output/{b6ed24db-60f5-41e2-959d-ae65b62309aa.json → 874bd79b-45da-4726-9afc-1f6cab44be1f.json} +0 -0
- package/.nyc_output/processinfo/396c364e-fec4-4f27-9ff2-8b236061ef8f.json +1 -0
- package/.nyc_output/processinfo/4ef43740-059b-4329-96cd-0643fd8fe8d8.json +1 -0
- package/.nyc_output/processinfo/656275f4-66d6-4d27-bfab-c2f7a3087670.json +1 -0
- package/.nyc_output/processinfo/6aec5420-0b83-4260-b300-4d595dfd0660.json +1 -0
- package/.nyc_output/processinfo/874bd79b-45da-4726-9afc-1f6cab44be1f.json +1 -0
- package/.nyc_output/processinfo/index.json +1 -1
- package/hugo-renderer/build.sh +3 -0
- package/hugo-renderer/hugo_renderer.wasm +0 -0
- package/hugo-renderer/hugo_renderer.wasm.gz +0 -0
- package/lib/builder.js +2 -1
- package/lib/engine.js +9 -31
- package/package.json +4 -3
- package/.nyc_output/processinfo/3d7b2afe-f130-478e-82ed-2a0379ecdfff.json +0 -1
- package/.nyc_output/processinfo/8b92bece-b7fa-4f0d-a2c6-11e46127ccc8.json +0 -1
- package/.nyc_output/processinfo/ad32106f-bbf1-46e2-a408-326af8789f63.json +0 -1
- package/.nyc_output/processinfo/b56df138-4974-4883-9070-3179d5d423bd.json +0 -1
- package/.nyc_output/processinfo/b6ed24db-60f5-41e2-959d-ae65b62309aa.json +0 -1
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"parent":"6aec5420-0b83-4260-b300-4d595dfd0660","pid":3463,"argv":["/opt/hostedtoolcache/node/16.18.1/x64/bin/node","/home/runner/work/bookshop/bookshop/javascript-modules/node_modules/ava/lib/worker/subprocess.js"],"execArgv":[],"cwd":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine","time":1669766791163,"ppid":3424,"coverageFilename":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine/.nyc_output/396c364e-fec4-4f27-9ff2-8b236061ef8f.json","externalId":"","uuid":"396c364e-fec4-4f27-9ff2-8b236061ef8f","files":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"parent":"6aec5420-0b83-4260-b300-4d595dfd0660","pid":3435,"argv":["/opt/hostedtoolcache/node/16.18.1/x64/bin/node","/home/runner/work/bookshop/bookshop/javascript-modules/node_modules/ava/lib/worker/subprocess.js"],"execArgv":[],"cwd":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine","time":1669766790775,"ppid":3424,"coverageFilename":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine/.nyc_output/4ef43740-059b-4329-96cd-0643fd8fe8d8.json","externalId":"","uuid":"4ef43740-059b-4329-96cd-0643fd8fe8d8","files":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"parent":"6aec5420-0b83-4260-b300-4d595dfd0660","pid":3441,"argv":["/opt/hostedtoolcache/node/16.18.1/x64/bin/node","/home/runner/work/bookshop/bookshop/javascript-modules/node_modules/ava/lib/worker/subprocess.js"],"execArgv":[],"cwd":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine","time":1669766790781,"ppid":3424,"coverageFilename":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine/.nyc_output/656275f4-66d6-4d27-bfab-c2f7a3087670.json","externalId":"","uuid":"656275f4-66d6-4d27-bfab-c2f7a3087670","files":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"parent":null,"pid":3424,"argv":["/opt/hostedtoolcache/node/16.18.1/x64/bin/node","/home/runner/work/bookshop/bookshop/javascript-modules/node_modules/ava/cli.js","-v"],"execArgv":[],"cwd":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine","time":1669766790333,"ppid":3413,"coverageFilename":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine/.nyc_output/6aec5420-0b83-4260-b300-4d595dfd0660.json","externalId":"","uuid":"6aec5420-0b83-4260-b300-4d595dfd0660","files":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"parent":"6aec5420-0b83-4260-b300-4d595dfd0660","pid":3457,"argv":["/opt/hostedtoolcache/node/16.18.1/x64/bin/node","/home/runner/work/bookshop/bookshop/javascript-modules/node_modules/ava/lib/worker/subprocess.js"],"execArgv":[],"cwd":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine","time":1669766791137,"ppid":3424,"coverageFilename":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine/.nyc_output/874bd79b-45da-4726-9afc-1f6cab44be1f.json","externalId":"","uuid":"874bd79b-45da-4726-9afc-1f6cab44be1f","files":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"processes":{"
|
|
1
|
+
{"processes":{"396c364e-fec4-4f27-9ff2-8b236061ef8f":{"parent":"6aec5420-0b83-4260-b300-4d595dfd0660","children":[]},"4ef43740-059b-4329-96cd-0643fd8fe8d8":{"parent":"6aec5420-0b83-4260-b300-4d595dfd0660","children":[]},"656275f4-66d6-4d27-bfab-c2f7a3087670":{"parent":"6aec5420-0b83-4260-b300-4d595dfd0660","children":[]},"6aec5420-0b83-4260-b300-4d595dfd0660":{"parent":null,"children":["396c364e-fec4-4f27-9ff2-8b236061ef8f","4ef43740-059b-4329-96cd-0643fd8fe8d8","656275f4-66d6-4d27-bfab-c2f7a3087670","874bd79b-45da-4726-9afc-1f6cab44be1f"]},"874bd79b-45da-4726-9afc-1f6cab44be1f":{"parent":"6aec5420-0b83-4260-b300-4d595dfd0660","children":[]}},"files":{},"externalIds":{}}
|
package/hugo-renderer/build.sh
CHANGED
|
@@ -23,6 +23,9 @@ if [ ! -f $OUTPUTFILENAME ]; then
|
|
|
23
23
|
fi
|
|
24
24
|
echo "Done. Repo Hugo WASM available at hugo_renderer.wasm"
|
|
25
25
|
|
|
26
|
+
gzip --keep $OUTPUTFILENAME
|
|
27
|
+
echo "Repo Hugo WASM also available at hugo_renderer.wasm.gz"
|
|
28
|
+
|
|
26
29
|
# If we're just in a test run we don't want to touch the CDN repo
|
|
27
30
|
if [[ -z "${PUBLISH_BOOKSHOP_CDN}" ]]; then
|
|
28
31
|
echo "Not publishing to CDN."
|
|
Binary file
|
|
Binary file
|
package/lib/builder.js
CHANGED
|
@@ -10,7 +10,8 @@ export const esbuildConfigFn = (esbuildConfig, options) => {
|
|
|
10
10
|
esbuildConfig.loader = {
|
|
11
11
|
...esbuildConfig.loader,
|
|
12
12
|
".hugo.html": "text",
|
|
13
|
-
".wasm": options?.hosted ? "file" : "binary"
|
|
13
|
+
".wasm": options?.hosted ? "file" : "binary",
|
|
14
|
+
".wasm.gz": options?.hosted ? "file" : "binary",
|
|
14
15
|
};
|
|
15
16
|
|
|
16
17
|
const wasm_exec_banner = fs.readFileSync(path.join(__dirname, "../hugo-renderer/wasm_exec.js"));
|
package/lib/engine.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import hugoWasm from "../hugo-renderer/hugo_renderer.wasm";
|
|
2
|
+
import compressedHugoWasm from "../hugo-renderer/hugo_renderer.wasm.gz";
|
|
2
3
|
import { gunzipSync } from 'fflate';
|
|
3
4
|
import translateTextTemplate from './translateTextTemplate.js';
|
|
4
5
|
import { IdentifierParser } from './hugoIdentifierParser.js';
|
|
@@ -32,16 +33,11 @@ export class Engine {
|
|
|
32
33
|
}
|
|
33
34
|
|
|
34
35
|
async initializeHugo() {
|
|
35
|
-
const useLocalHugo = window.CloudCannon?.isMocked || /localhost|127\.0\.0\.1/i.test(window.location.host);
|
|
36
36
|
// When this script is run locally, the hugo wasm is loaded as binary rather than output as a file.
|
|
37
37
|
if (hugoWasm?.constructor === Uint8Array) {
|
|
38
38
|
await this.initializeInlineHugo();
|
|
39
39
|
} else {
|
|
40
|
-
|
|
41
|
-
await this.initializeLocalHugo();
|
|
42
|
-
} else {
|
|
43
|
-
await this.initializeRemoteCompressedHugo();
|
|
44
|
-
}
|
|
40
|
+
await this.initializeLocalCompressedHugo();
|
|
45
41
|
}
|
|
46
42
|
|
|
47
43
|
// TODO: Tidy
|
|
@@ -55,38 +51,20 @@ export class Engine {
|
|
|
55
51
|
const success = window.loadHugoBookshopPartials(JSON.stringify(mappedFiles));
|
|
56
52
|
}
|
|
57
53
|
|
|
58
|
-
async
|
|
54
|
+
async initializeLocalCompressedHugo() {
|
|
59
55
|
try {
|
|
60
56
|
const go = new Go();
|
|
61
|
-
const
|
|
62
|
-
const
|
|
63
|
-
const
|
|
64
|
-
const renderer = gunzipSync(new Uint8Array(
|
|
57
|
+
const compressedWasmOrigin = this.origin.replace(/\/[^\.\/]+\.(min\.)?js/, compressedHugoWasm.replace(/^\./, ''));
|
|
58
|
+
const compressedResponse = await fetch(compressedWasmOrigin);
|
|
59
|
+
const compressedBuffer = await compressedResponse.arrayBuffer();
|
|
60
|
+
const renderer = gunzipSync(new Uint8Array(compressedBuffer));
|
|
65
61
|
|
|
66
62
|
// Check the magic word at the start of the buffer as a way to verify the CDN download worked.
|
|
67
63
|
const isWasm = ([...renderer.slice(0, 4)]).map(g => g.toString(16).padStart(2, '0')).join('') === "0061736d";
|
|
68
64
|
if (!isWasm) throw "Not WASM";
|
|
69
65
|
|
|
70
|
-
const
|
|
71
|
-
go.run(
|
|
72
|
-
} catch (e) {
|
|
73
|
-
await this.initializeRemoteHugo();
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
async initializeRemoteHugo() {
|
|
78
|
-
try {
|
|
79
|
-
const go = new Go();
|
|
80
|
-
const remoteWasmOrigin = `https://cdn.bookshop.build/hugo/hugo_renderer_${version}.wasm`;
|
|
81
|
-
const remoteResponse = await fetch(remoteWasmOrigin);
|
|
82
|
-
const remoteBuffer = await remoteResponse.arrayBuffer();
|
|
83
|
-
|
|
84
|
-
// Check the magic word at the start of the buffer as a way to verify the CDN download worked.
|
|
85
|
-
const isWasm = ([...new Uint8Array(remoteBuffer, 0, 4)]).map(g => g.toString(16).padStart(2, '0')).join('') === "0061736d";
|
|
86
|
-
if (!isWasm) throw "Not WASM";
|
|
87
|
-
|
|
88
|
-
const remoteResult = await WebAssembly.instantiate(remoteBuffer, go.importObject);
|
|
89
|
-
go.run(remoteResult.instance);
|
|
66
|
+
const compressedResult = await WebAssembly.instantiate(renderer, go.importObject);
|
|
67
|
+
go.run(compressedResult.instance);
|
|
90
68
|
} catch (e) {
|
|
91
69
|
await this.initializeLocalHugo();
|
|
92
70
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bookshop/hugo-engine",
|
|
3
3
|
"packageManager": "yarn@3.0.0",
|
|
4
|
-
"version": "3.3.
|
|
4
|
+
"version": "3.3.2",
|
|
5
5
|
"description": "Bookshop frontend Hugo renderer",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"sideEffects": false,
|
|
@@ -14,7 +14,8 @@
|
|
|
14
14
|
"*.js",
|
|
15
15
|
"lib/*.js",
|
|
16
16
|
"!**/*.test.js",
|
|
17
|
-
"hugo-renderer/hugo_renderer.wasm"
|
|
17
|
+
"hugo-renderer/hugo_renderer.wasm",
|
|
18
|
+
"hugo-renderer/hugo_renderer.wasm.gz"
|
|
18
19
|
],
|
|
19
20
|
"scripts": {
|
|
20
21
|
"test": "nyc ava -v"
|
|
@@ -29,7 +30,7 @@
|
|
|
29
30
|
"nyc": "^15.1.0"
|
|
30
31
|
},
|
|
31
32
|
"dependencies": {
|
|
32
|
-
"@bookshop/helpers": "3.3.
|
|
33
|
+
"@bookshop/helpers": "3.3.2",
|
|
33
34
|
"esbuild": "^0.13.10",
|
|
34
35
|
"fflate": "^0.7.3",
|
|
35
36
|
"liquidjs": "9.28.0"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"parent":"b6ed24db-60f5-41e2-959d-ae65b62309aa","pid":3709,"argv":["/opt/hostedtoolcache/node/16.18.0/x64/bin/node","/home/runner/work/bookshop/bookshop/javascript-modules/node_modules/ava/lib/worker/subprocess.js"],"execArgv":[],"cwd":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine","time":1669268627436,"ppid":3676,"coverageFilename":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine/.nyc_output/3d7b2afe-f130-478e-82ed-2a0379ecdfff.json","externalId":"","uuid":"3d7b2afe-f130-478e-82ed-2a0379ecdfff","files":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"parent":"b6ed24db-60f5-41e2-959d-ae65b62309aa","pid":3710,"argv":["/opt/hostedtoolcache/node/16.18.0/x64/bin/node","/home/runner/work/bookshop/bookshop/javascript-modules/node_modules/ava/lib/worker/subprocess.js"],"execArgv":[],"cwd":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine","time":1669268627437,"ppid":3676,"coverageFilename":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine/.nyc_output/8b92bece-b7fa-4f0d-a2c6-11e46127ccc8.json","externalId":"","uuid":"8b92bece-b7fa-4f0d-a2c6-11e46127ccc8","files":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"parent":"b6ed24db-60f5-41e2-959d-ae65b62309aa","pid":3687,"argv":["/opt/hostedtoolcache/node/16.18.0/x64/bin/node","/home/runner/work/bookshop/bookshop/javascript-modules/node_modules/ava/lib/worker/subprocess.js"],"execArgv":[],"cwd":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine","time":1669268627080,"ppid":3676,"coverageFilename":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine/.nyc_output/ad32106f-bbf1-46e2-a408-326af8789f63.json","externalId":"","uuid":"ad32106f-bbf1-46e2-a408-326af8789f63","files":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"parent":"b6ed24db-60f5-41e2-959d-ae65b62309aa","pid":3693,"argv":["/opt/hostedtoolcache/node/16.18.0/x64/bin/node","/home/runner/work/bookshop/bookshop/javascript-modules/node_modules/ava/lib/worker/subprocess.js"],"execArgv":[],"cwd":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine","time":1669268627084,"ppid":3676,"coverageFilename":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine/.nyc_output/b56df138-4974-4883-9070-3179d5d423bd.json","externalId":"","uuid":"b56df138-4974-4883-9070-3179d5d423bd","files":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"parent":null,"pid":3676,"argv":["/opt/hostedtoolcache/node/16.18.0/x64/bin/node","/home/runner/work/bookshop/bookshop/javascript-modules/node_modules/ava/cli.js","-v"],"execArgv":[],"cwd":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine","time":1669268626662,"ppid":3665,"coverageFilename":"/home/runner/work/bookshop/bookshop/javascript-modules/engines/hugo-engine/.nyc_output/b6ed24db-60f5-41e2-959d-ae65b62309aa.json","externalId":"","uuid":"b6ed24db-60f5-41e2-959d-ae65b62309aa","files":[]}
|