Skip to content

Commit 0a35d8f

Browse files
authored
fix: remove cjs build & update min node to 20 (#3687)
BREAKING CHANGE: - minify ./lib/marked.esm.js and ./lib/marked.umd.js - remove ./marked.min.js use ./lib/marked.umd.js instead - remove ./lib/marked.cjs - update minimum supported node version to 20 to support require('marked.esm.js'). see nodejs.org/docs/latest-v20.x/api/modules.html#loading-ecmascript-modules-using-require
1 parent 4fc639e commit 0a35d8f

File tree

17 files changed

+1963
-1255
lines changed

17 files changed

+1963
-1255
lines changed

.gitattributes

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
11
* eol=lf
22
test/* linguist-vendored
33
lib/* linguist-generated
4-
marked.min.js linguist-generated

.github/workflows/tests.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ jobs:
1212
UnitTests:
1313
strategy:
1414
matrix:
15-
# lowest verison here should also be in `engines` field
16-
node_version: [18, "lts/*", "latest"]
15+
# lowest version here should also be in `engines` field
16+
node_version: [20, "lts/*", "latest"]
1717
runs-on: ubuntu-latest
1818
steps:
1919
- name: Checkout Code

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,4 @@ lib
88
docs/LICENSE.md
99
vuln.js
1010
man/marked.1
11-
marked.min.js
1211
test.js

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ $ marked --help
8383
</head>
8484
<body>
8585
<div id="content"></div>
86-
<script src="https://cdn.jsdelivr.net/npm/marked/marked.min.js"></script>
86+
<script src="https://cdn.jsdelivr.net/npm/marked/lib/marked.umd.js"></script>
8787
<script>
8888
document.getElementById('content').innerHTML =
8989
marked.parse('# Marked in the browser\n\nRendered by **marked**.');

bin/main.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -177,7 +177,7 @@ export async function main(nodeProcess) {
177177
try {
178178
// try require for json
179179
markedConfig = require(configFile);
180-
} catch (err) {
180+
} catch(err) {
181181
if (err.code !== 'ERR_REQUIRE_ESM') {
182182
throw err;
183183
}
@@ -271,7 +271,7 @@ export async function main(nodeProcess) {
271271
try {
272272
await start(nodeProcess.argv.slice());
273273
nodeProcess.exit(0);
274-
} catch (err) {
274+
} catch(err) {
275275
if (err.code === 'ENOENT') {
276276
nodeProcess.stderr.write('marked: ' + err.path + ': No such file or directory');
277277
} else {

docs/INDEX.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ $ marked -s 'line1\nline2' -c config.json
109109
</head>
110110
<body>
111111
<div id="content"></div>
112-
<script src="https://cdn.jsdelivr.net/npm/marked/marked.min.js"></script>
112+
<script src="https://cdn.jsdelivr.net/npm/marked/lib/marked.umd.js"></script>
113113
<script>
114114
document.getElementById('content').innerHTML =
115115
marked.parse('# Marked in browser\n\nRendered by **marked**.');

docs/USING_ADVANCED.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ markedWorker.postMessage(markdownString);
171171
```js
172172
// markedWorker.js
173173

174-
importScripts('path/to/marked.min.js');
174+
importScripts('path/to/marked.umd.js');
175175

176176
onmessage = (e) => {
177177
const markdownString = e.data

docs/build.js

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/* global marked */
2-
import '../marked.min.js';
2+
import '../lib/marked.umd.js';
33
import { promises } from 'fs';
44
import { join, dirname, parse, format } from 'path';
55
import { fileURLToPath } from 'url';
@@ -48,10 +48,17 @@ async function init() {
4848
console.log('Cleaning up output directory ' + outputDir);
4949
await rm(outputDir, { force: true, recursive: true });
5050
await mkdir(outputDir);
51+
await mkdir(join(outputDir, 'lib'));
5152
console.log(`Copying file ${join(inputDir, 'LICENSE.md')}`);
5253
await copyFile(join(cwd, 'LICENSE.md'), join(inputDir, 'LICENSE.md'));
53-
console.log(`Copying file ${join(outputDir, 'marked.min.js')}`);
54-
await copyFile(join(cwd, 'marked.min.js'), join(outputDir, 'marked.min.js'));
54+
console.log(`Copying file ${join(outputDir, 'lib/marked.umd.js')}`);
55+
await copyFile(join(cwd, 'lib/marked.umd.js'), join(outputDir, 'lib/marked.umd.js'));
56+
console.log(`Copying file ${join(outputDir, 'lib/marked.umd.js.map')}`);
57+
await copyFile(join(cwd, 'lib/marked.umd.js.map'), join(outputDir, 'lib/marked.umd.js.map'));
58+
console.log(`Copying file ${join(outputDir, 'lib/marked.esm.js')}`);
59+
await copyFile(join(cwd, 'lib/marked.esm.js'), join(outputDir, 'lib/marked.esm.js'));
60+
console.log(`Copying file ${join(outputDir, 'lib/marked.esm.js.map')}`);
61+
await copyFile(join(cwd, 'lib/marked.esm.js.map'), join(outputDir, 'lib/marked.esm.js.map'));
5562
const tmpl = await readFile(templateFile, 'utf8');
5663
console.log('Building markdown...');
5764
const [original, commonmark, gfm] = await getTests([

docs/demo/worker.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,7 @@ function loadVersion(ver) {
135135
} else {
136136
promise = import(ver + '/lib/marked.esm.js')
137137
.catch(fetchMarked(ver + '/marked.min.js'))
138+
.catch(fetchMarked(ver + '/lib/marked.umd.js'))
138139
.catch(fetchMarked(ver + '/lib/marked.js'))
139140
.then((marked) => {
140141
if (!marked) {

esbuild.config.js

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ function config(options) {
2626
},
2727
sourcemap: true,
2828
bundle: true,
29-
minify: false,
29+
minify: true,
3030
...(options.format === 'umd'
3131
? {
3232
plugins: [umdWrapper({
@@ -43,19 +43,7 @@ await esbuild.build(config({
4343
outfile: 'lib/marked.esm.js',
4444
}));
4545

46-
await esbuild.build(config({
47-
format: 'cjs',
48-
outfile: 'lib/marked.cjs',
49-
}));
50-
5146
await esbuild.build(config({
5247
format: 'umd',
5348
outfile: 'lib/marked.umd.js',
5449
}));
55-
56-
await esbuild.build(config({
57-
sourcemap: false,
58-
minify: true,
59-
format: 'umd',
60-
outfile: 'marked.min.js',
61-
}));

0 commit comments

Comments
 (0)