Skip to content

Commit ad07ff2

Browse files
authored
updates (#244)
* recommend arquero * inline d3-dsv * update @observablehq/inputs
1 parent a3cbf26 commit ad07ff2

File tree

7 files changed

+38
-13
lines changed

7 files changed

+38
-13
lines changed

bin/resolve-dependencies

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,6 @@ const mains = ["unpkg", "jsdelivr", "browser", "main"];
1010
const package = await resolve("d3");
1111
console.log(`export const d3 = dependency("${package.name}", "${package.version}", "${package.export}");`);
1212
}
13-
{
14-
const package = await resolve("d3-dsv");
15-
console.log(`export const d3Dsv = dependency("${package.name}", "${package.version}", "${package.export}");`);
16-
}
1713
{
1814
const package = await resolve("@observablehq/inputs");
1915
console.log(`export const inputs = dependency("${package.name}", "${package.version}", "${package.export}");`);
@@ -70,6 +66,10 @@ const mains = ["unpkg", "jsdelivr", "browser", "main"];
7066
const package = await resolve("apache-arrow@4");
7167
console.log(`export const arrow = dependency("${package.name}", "${package.version}", "${package.export}");`);
7268
}
69+
{
70+
const package = await resolve("arquero");
71+
console.log(`export const arquero = dependency("${package.name}", "${package.version}", "${package.export}");`);
72+
}
7373
{
7474
const package = await resolve("topojson-client");
7575
console.log(`export const topojson = dependency("${package.name}", "${package.version}", "${package.export}");`);

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
"dist/**/*.js"
2828
],
2929
"dependencies": {
30+
"d3-dsv": "^2.0.0",
3031
"d3-require": "^1.2.4"
3132
},
3233
"devDependencies": {

src/dependencies.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import dependency from "./dependency.js";
22
export const d3 = dependency("d3", "7.0.1", "dist/d3.min.js");
3-
export const d3Dsv = dependency("d3-dsv", "3.0.1", "dist/d3-dsv.min.js");
4-
export const inputs = dependency("@observablehq/inputs", "0.9.0", "dist/inputs.min.js");
3+
export const inputs = dependency("@observablehq/inputs", "0.9.1", "dist/inputs.min.js");
54
export const plot = dependency("@observablehq/plot", "0.2.0", "dist/plot.umd.min.js");
65
export const graphviz = dependency("@observablehq/graphviz", "0.2.1", "dist/graphviz.min.js");
76
export const highlight = dependency("@observablehq/highlight.js", "2.0.0", "highlight.min.js");
@@ -15,4 +14,5 @@ export const vega = dependency("vega", "5.20.2", "build/vega.min.js");
1514
export const vegalite = dependency("vega-lite", "5.1.0", "build/vega-lite.min.js");
1615
export const vegaliteApi = dependency("vega-lite-api", "5.0.0", "build/vega-lite-api.min.js");
1716
export const arrow = dependency("apache-arrow", "4.0.1", "Arrow.es2015.min.js");
17+
export const arquero = dependency("arquero", "4.8.4", "dist/arquero.min.js");
1818
export const topojson = dependency("topojson-client", "3.1.0", "dist/topojson-client.min.js");

src/fileAttachment.js

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1+
import {autoType, csvParse, csvParseRows, tsvParse, tsvParseRows} from "d3-dsv";
12
import {require as requireDefault} from "d3-require";
2-
import {arrow, d3Dsv, jszip} from "./dependencies.js";
3+
import {arrow, jszip} from "./dependencies.js";
34
import {SQLiteDatabaseClient} from "./sqlite.js";
45

56
async function remote_fetch(file) {
@@ -9,10 +10,10 @@ async function remote_fetch(file) {
910
}
1011

1112
async function dsv(file, delimiter, {array = false, typed = false} = {}) {
12-
const [text, d3] = await Promise.all([file.text(), requireDefault(d3Dsv.resolve())]);
13+
const text = await file.text();
1314
return (delimiter === "\t"
14-
? (array ? d3.tsvParseRows : d3.tsvParse)
15-
: (array ? d3.csvParseRows : d3.csvParse))(text, typed && d3.autoType);
15+
? (array ? tsvParseRows : tsvParse)
16+
: (array ? csvParseRows : csvParse))(text, typed && autoType);
1617
}
1718

1819
class AbstractFile {

src/library.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import svg from "./svg.js";
1515
import tex from "./tex.js";
1616
import vegalite from "./vegalite.js";
1717
import width from "./width.js";
18-
import {arrow, d3, graphviz, htl, inputs, lodash, plot, topojson} from "./dependencies.js";
18+
import {arquero, arrow, d3, graphviz, htl, inputs, lodash, plot, topojson} from "./dependencies.js";
1919

2020
export default Object.assign(function Library(resolver) {
2121
const require = requirer(resolver);
@@ -28,6 +28,7 @@ export default Object.assign(function Library(resolver) {
2828
SQLite: () => SQLite(require),
2929
SQLiteDatabaseClient: () => SQLiteDatabaseClient,
3030
_: () => require(lodash.resolve()),
31+
aq: () => require.alias({"apache-arrow": arrow.resolve()})(arquero.resolve()),
3132
d3: () => require(d3.resolve()),
3233
dot: () => require(graphviz.resolve()),
3334
htl: () => require(htl.resolve()),

test/index-test.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ test("new Library returns a library with the expected keys", async t => {
1515
"SQLite",
1616
"SQLiteDatabaseClient",
1717
"_",
18+
"aq",
1819
"d3",
1920
"dot",
2021
"htl",

yarn.lock

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -689,7 +689,7 @@ combined-stream@^1.0.6, combined-stream@~1.0.6:
689689
dependencies:
690690
delayed-stream "~1.0.0"
691691

692-
commander@^2.20.0:
692+
commander@2, commander@^2.20.0:
693693
version "2.20.3"
694694
resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
695695
integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
@@ -787,6 +787,15 @@ csstype@^3.0.2:
787787
resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.6.tgz#865d0b5833d7d8d40f4e5b8a6d76aea3de4725ef"
788788
integrity sha512-+ZAmfyWMT7TiIlzdqJgjMb7S4f1beorDbWbsocyK4RaiqA5RTX3K14bnBWmmA9QEM0gRdsjyyrEmcyga8Zsxmw==
789789

790+
d3-dsv@^2.0.0:
791+
version "2.0.0"
792+
resolved "https://registry.yarnpkg.com/d3-dsv/-/d3-dsv-2.0.0.tgz#b37b194b6df42da513a120d913ad1be22b5fe7c5"
793+
integrity sha512-E+Pn8UJYx9mViuIUkoc93gJGGYut6mSDKy2+XaPwccwkRGlR+LO97L2VCCRjQivTwLHkSnAJG7yo00BWY6QM+w==
794+
dependencies:
795+
commander "2"
796+
iconv-lite "0.4"
797+
rw "1"
798+
790799
d3-require@^1.2.4:
791800
version "1.2.4"
792801
resolved "https://registry.yarnpkg.com/d3-require/-/d3-require-1.2.4.tgz#59afc591d5089f99fecd8c45ef7539e1fee112b3"
@@ -1307,6 +1316,13 @@ husky@^4.3.8:
13071316
slash "^3.0.0"
13081317
which-pm-runs "^1.0.0"
13091318

1319+
1320+
version "0.4.24"
1321+
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
1322+
integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==
1323+
dependencies:
1324+
safer-buffer ">= 2.1.2 < 3"
1325+
13101326
ignore@^4.0.6:
13111327
version "4.0.6"
13121328
resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc"
@@ -2331,6 +2347,11 @@ rollup@^2.37.1:
23312347
optionalDependencies:
23322348
fsevents "~2.1.2"
23332349

2350+
rw@1:
2351+
version "1.3.3"
2352+
resolved "https://registry.yarnpkg.com/rw/-/rw-1.3.3.tgz#3f862dfa91ab766b14885ef4d01124bfda074fb4"
2353+
integrity sha1-P4Yt+pGrdmsUiF700BEkv9oHT7Q=
2354+
23342355
safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.2:
23352356
version "5.2.1"
23362357
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
@@ -2341,7 +2362,7 @@ safe-buffer@~5.1.1:
23412362
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
23422363
integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
23432364

2344-
safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0:
2365+
"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0:
23452366
version "2.1.2"
23462367
resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
23472368
integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==

0 commit comments

Comments
 (0)