Commit ef27057
committed
Improve packaging and split browser and Node-specific code
This commit separates components that depend on browser environment
from components that use Node features. No separation was previously
needed because code used runtime feature detection. Such feature
detection made it impossible for bundlers, like Webpack, to strip
away Node-specific code. Presence of it caused failures at build time
and made it hard to use the driver package.
Driver contains couple env-dependent components:
* network channel (`WebSocket` in browser, `net.Socket` in Node)
* byte buffer (`ArrayBuffer` in browser, `buffer.Buffer` in Node)
* host name resolver (no-op in browser, `dns` lookup in Node)
* UTF8 encoding & decoding (`text-encoding` library in browser, `StringDecoder` in Node)
Implementations of these components now live in separate folders
`src/internal/node` and `src/internal/browser`. Both contain `index.js`
files that export the same set of components and follow the same
"interface". Env-dependent tests are also split into separate folders.
All sources import/require `node/index.js` by default.
`package.json` now contains a "browser" field which instructs bundlers
to replace all imports/require of `node/index.js` with `browser/index.js`
for client-side apps. This way code that depends on Node APIs will not
even be included in the resulting bundle.
Gulp build for UMD `neo4j-web.js` and `neo4j-web.test.js` bundles
excludes `node` folders and only includes `browser`. It also replaces
all require calls of "/node" to "/browser". Dedicated browserify
transformation is added for this to the bundling process. Resulting
bundles no longer contain code that depends on Node APIs.1 parent b910f28 commit ef27057
File tree
38 files changed
+956
-923
lines changed- src/v1
- internal
- browser
- buf
- node
- resolver
- test
- internal
- browser
- node
- v1
38 files changed
+956
-923
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
45 | 45 | | |
46 | 46 | | |
47 | 47 | | |
| 48 | + | |
48 | 49 | | |
49 | 50 | | |
50 | 51 | | |
| |||
66 | 67 | | |
67 | 68 | | |
68 | 69 | | |
69 | | - | |
70 | | - | |
71 | | - | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
72 | 73 | | |
73 | 74 | | |
74 | 75 | | |
| |||
87 | 88 | | |
88 | 89 | | |
89 | 90 | | |
90 | | - | |
| 91 | + | |
91 | 92 | | |
92 | 93 | | |
93 | 94 | | |
| |||
106 | 107 | | |
107 | 108 | | |
108 | 109 | | |
| 110 | + | |
109 | 111 | | |
110 | 112 | | |
111 | 113 | | |
| |||
164 | 166 | | |
165 | 167 | | |
166 | 168 | | |
167 | | - | |
| 169 | + | |
168 | 170 | | |
169 | 171 | | |
170 | 172 | | |
| |||
306 | 308 | | |
307 | 309 | | |
308 | 310 | | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
| 316 | + | |
| 317 | + | |
| 318 | + | |
| 319 | + | |
| 320 | + | |
| 321 | + | |
| 322 | + | |
| 323 | + | |
| 324 | + | |
| 325 | + | |
| 326 | + | |
| 327 | + | |
| 328 | + | |
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
22 | 22 | | |
23 | 23 | | |
24 | 24 | | |
25 | | - | |
26 | | - | |
27 | | - | |
28 | | - | |
29 | | - | |
30 | | - | |
31 | | - | |
| 25 | + | |
32 | 26 | | |
33 | 27 | | |
34 | 28 | | |
| |||
41 | 35 | | |
42 | 36 | | |
43 | 37 | | |
| 38 | + | |
44 | 39 | | |
45 | 40 | | |
46 | 41 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
17 | 17 | | |
18 | 18 | | |
19 | 19 | | |
20 | | - | |
| 20 | + | |
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
17 | 17 | | |
18 | 18 | | |
19 | 19 | | |
20 | | - | |
| 20 | + | |
21 | 21 | | |
22 | | - | |
| 22 | + | |
23 | 23 | | |
24 | 24 | | |
25 | 25 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 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 | + | |
0 commit comments