Skip to content
This repository was archived by the owner on Aug 1, 2024. It is now read-only.

Commit d6e761c

Browse files
[release major] Using the cache system of Deno
Using the cache system of Deno
2 parents b80e15e + 2f47354 commit d6e761c

35 files changed

+2765
-148
lines changed

deno.json

Lines changed: 21 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,9 @@
1414
"lint": {
1515
"files": {
1616
"include": [
17-
"mod.ts"
17+
"mod.ts",
18+
"deps.ts",
19+
"example/"
1820
]
1921
},
2022
"rules": {
@@ -24,20 +26,25 @@
2426
}
2527
},
2628
"fmt": {
27-
"files": {
28-
"include": [
29-
"mod.ts"
30-
]
31-
},
32-
"options": {
33-
"indentWidth": 2,
34-
"lineWidth": 80,
35-
"proseWrap": "always",
36-
"singleQuote": true,
37-
"useTabs": false
38-
}
29+
"include": [
30+
"mod.ts",
31+
"deps.ts",
32+
"example/"
33+
],
34+
"indentWidth": 2,
35+
"lineWidth": 80,
36+
"proseWrap": "always",
37+
"singleQuote": true,
38+
"useTabs": false
3939
},
4040
"tasks": {
41-
"build": "deno run -A ./example/build.ts"
41+
"build": "bash ./example/cache.sh && deno run -A ./example/build.ts",
42+
"test": "bash ./test/build/cache.sh && deno test -A",
43+
"test:unit": "deno test -A test/unit",
44+
"test:build": "bash ./test/build/cache.sh && deno test -A test/build",
45+
"debug:build": "bash ./example/cache.sh && deno run -A --inspect-brk ./example/build.ts",
46+
"debug:test": "bash ./test/cache.sh && deno test -A --inspect-brk",
47+
"debug:test:unit": "deno test -A --inspect-brk test/unit",
48+
"debug:test:build": "bash ./test/build/cache.sh && deno test -A --inspect-brk test/build"
4249
}
4350
}

deno.lock

Lines changed: 18 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

deps.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
11
export * as esbuild from 'https://deno.land/x/esbuild@v0.17.18/mod.js';
2-
export * as cache from 'https://deno.land/x/cache@0.2.13/mod.ts';
32
export { posix } from 'https://deno.land/std@0.186.0/path/mod.ts';
3+
export * as fs from 'https://deno.land/std@0.186.0/fs/mod.ts';
4+
export * as sha256 from 'https://deno.land/std@0.119.0/hash/sha256.ts';
5+
export * as asserts from 'https://deno.land/std@0.186.0/testing/asserts.ts';

example/build.ts

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
import { esbuild } from '../deps.ts';
22
import esbuildCachePlugin from '../mod.ts';
3-
import importmap from "./import_map.json" assert { type: "json" };
3+
import importmap from './import_map.json' assert { type: 'json' };
4+
import lockMap from './lock.json' assert { type: 'json' };
5+
6+
const denoPath = await esbuildCachePlugin.util.getDenoDir();
47

58
const config: esbuild.BuildOptions = {
69
entryPoints: [
@@ -18,8 +21,12 @@ const config: esbuild.BuildOptions = {
1821
platform: 'browser',
1922
plugins: [
2023
esbuildCachePlugin({
21-
directory: './example/cache',
22-
importmap
24+
lockMap,
25+
denoCacheDirectory: denoPath,
26+
importmap,
27+
loaderRules: [
28+
{ test: /^node:util/, loader: 'empty' },
29+
],
2330
}),
2431
],
2532
};

example/cache.sh

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
deno cache \
2+
--lock=./example/lock.json --lock-write \
3+
--importmap ./example/import_map.json \
4+
./example/main.ts \
5+
./example/someDir/main2.ts

example/import_map.json

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
{
22
"imports": {
3-
"preact": "https://esm.sh/preact@10"
3+
"preact": "https://esm.sh/preact@10.13",
4+
"lodash": "npm:lodash",
5+
"semver": "npm:semver"
46
},
5-
"scope": {
6-
"./example/someDir": {
7+
"scopes": {
8+
"someDir/": {
79
"preact": "https://esm.sh/preact@8"
810
}
911
}

example/lock.json

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
{
2+
"version": "2",
3+
"remote": {
4+
"https://esm.sh/preact@10.13.2": "5ebf0838bbc3c32fc6e78a4cd9dd672f2c36386d0595815d721a6b0941278488",
5+
"https://esm.sh/preact@8.5.3": "ef4442ddc988b77592fb826e091ab0f45dd483835ad0c5179b2fd220f66e4855",
6+
"https://esm.sh/stable/preact@10.13.2/deno/preact.mjs": "365fab897381f4f403f859c5d12939084560545567108cc90dae901bbe892578",
7+
"https://esm.sh/stable/preact@8.5.3/deno/preact.mjs": "4f4e7f3e5fb5b15294ab6ce5086fe8cdb728245b504aca693edc399e59c4f60d",
8+
"https://esm.sh/v118/preact@10.13.2/src/index.d.ts": "65398710de6aa0a07412da79784e05e6e96763f51c7c91b77344d2d0af06385c",
9+
"https://esm.sh/v118/preact@10.13.2/src/jsx.d.ts": "9ac9b82c199fa7b04748807d750eba1a106c0be52041b8617416f88d6fc0a257",
10+
"https://esm.sh/v118/preact@8.5.3/dist/preact.d.ts": "f107fb4b97735e91aa307b78931174273db9e498437657b5cbb3ff009f06982e"
11+
},
12+
"npm": {
13+
"specifiers": {
14+
"lodash": "lodash@4.17.21",
15+
"semver": "semver@7.5.0"
16+
},
17+
"packages": {
18+
"lodash@4.17.21": {
19+
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
20+
"dependencies": {}
21+
},
22+
"lru-cache@6.0.0": {
23+
"integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
24+
"dependencies": {
25+
"yallist": "yallist@4.0.0"
26+
}
27+
},
28+
"semver@7.5.0": {
29+
"integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==",
30+
"dependencies": {
31+
"lru-cache": "lru-cache@6.0.0"
32+
}
33+
},
34+
"yallist@4.0.0": {
35+
"integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
36+
"dependencies": {}
37+
}
38+
}
39+
}
40+
}

example/main.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1-
import * as preact from "preact";
1+
import * as preact from 'preact';
2+
import * as lodash from 'lodash';
3+
import * as semver from 'semver';
24

35
console.log(preact);
6+
console.log(lodash);
7+
console.log(semver);

example/someDir/main2.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
import * as preact from "preact";
1+
import * as preact from 'preact';
22

3-
console.log(preact)
3+
console.log(preact);

0 commit comments

Comments
 (0)