File: terser-async.patch

package info (click to toggle)
node-cjs-module-lexer 2.1.0%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 416 kB
  • sloc: javascript: 2,297; ansic: 1,551; makefile: 31
file content (46 lines) | stat: -rw-r--r-- 1,529 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
Description: async build
 Since terser is async anyway, let's use async api
Last-Update: 2022-09-08
Author: Jérémy Lal <kapouer@melix.org>
Forwarded: not-needed
Reviewed-By: Xavier <yadd@debian.org>
Last-Update: 2025-08-14

--- a/build.js
+++ b/build.js
@@ -1,18 +1,19 @@
-const fs = require('fs');
-const terser = require('terser');
+const { readFile, mkdir, writeFile } = require('node:fs/promises');
+const { minify } = require('terser');
+
+(async function() {
 
 const MINIFY = true;
 
-try { fs.mkdirSync('./dist'); }
-catch (e) {}
+await mkdir('./dist', { recursive: true });
 
-const wasmBuffer = fs.readFileSync('./lib/lexer.wasm');
-const jsSource = fs.readFileSync('./src/lexer.js').toString();
-const pjson = JSON.parse(fs.readFileSync('./package.json').toString());
+const wasmBuffer = await readFile('./lib/lexer.wasm');
+const jsSource = (await readFile('./src/lexer.js')).toString();
+const pjson = JSON.parse((await readFile('./package.json')).toString());
 
 const jsSourceProcessed = jsSource.replace('WASM_BINARY', wasmBuffer.toString('base64'));
 
-const minified = MINIFY && terser.minify(jsSourceProcessed, {
+const minified = MINIFY && await minify(jsSourceProcessed, {
   module: true,
   output: {
     preamble: `/* cjs-module-lexer ${pjson.version} */`
@@ -22,4 +23,6 @@
 if (minified.error)
   throw minified.error;
 
-fs.writeFileSync('./dist/lexer.mjs', minified ? minified.code : jsSourceProcessed);
+  await writeFile('./dist/lexer.mjs', minified ? minified.code : jsSourceProcessed);
+
+})();