-
-
Notifications
You must be signed in to change notification settings - Fork 3.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Start a placeholder with a goal for the doc
Open for early feedback during the sprint
- Loading branch information
Showing
3 changed files
with
231 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
# Zero to Extension | ||
|
||
Goal: Document in a single page how to go from absolutely no JupyterLab, conda, Node, TypeScript, etc. materials on your machine to having a local instance of JupyterLab running with a basic extension installed for dev iteration. Be opinionated and doc *one* path to setup with conda. | ||
|
||
## Prerequisites | ||
|
||
|
||
|
||
|
||
## Questions / Thoughts | ||
|
||
* Don't want to maintain the dev setup steps here if they're also in the contributing doc and extesnion pages and ... but it's also hard as a newbie to trace through all of them. Solve this later I guess. | ||
* Knowing how to package an extension for release is another useful tidbit this tutorial might cover, but perhaps that should be separate. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,217 @@ | ||
lerna(verbose) GitUtilities.isInitialized () | ||
lerna(verbose) GitUtilities.isInitialized () => true | ||
lerna(verbose) GitUtilities.getTopLevelDirectory() | ||
lerna(verbose) GitUtilities.getTopLevelDirectory() => "." | ||
lerna(verbose) FileSystemUtilities.existsSync("./lerna.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./lerna.json") => true | ||
lerna(verbose) FileSystemUtilities.readFileSync("./lerna.json") | ||
lerna(verbose) FileSystemUtilities.readFileSync("./lerna.json") => "{\n \"lerna\": \"2.0.0-beta.38\",\n \"packages\": [\n \"jupyterlab\",\n \"jupyterlab/tests/mock-mimeextension\",\n \"examples/*\",\n \"packages/*\",\n \"packages/services/examples/node\",\n \"packages/services/examples/browser\",\n \"packages/services/examples/typescript-browser-with-output\",\n \"test\"\n ],\n \"version\": \"independent\"\n}" | ||
lerna(verbose) FileSystemUtilities.existsSync("./package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./package.json") => true | ||
lerna(verbose) FileSystemUtilities.readFileSync("./package.json") | ||
lerna(verbose) FileSystemUtilities.readFileSync("./package.json") => "{\n \"private\": true,\n \"scripts\": {\n \"install\": \"lerna bootstrap --hoist\",\n \"build:packages\": \"cd packages/all-packages && npm run build\",\n \"build:examples\": \"lerna run build --scope \\\"@jupyterlab/example-*\\\"\",\n \"build\": \"npm run build:packages && cd jupyterlab && npm run build\",\n \"build:main\": \"npm run build\",\n \"build:src\": \"lerna run build --scope \\\"@jupyterlab/!(test-|example-)*\\\"\",\n \"build:test\": \"lerna run build:test\",\n \"clean\": \"node scripts/clean-packages.js examples packages\",\n \"clean:examples\": \"node scripts/clean-packages.js examples\",\n \"clean:main\": \"cd jupyterlab && npm run clean\",\n \"clean:src\": \"node scripts/clean-packages.js packages\",\n \"clean:tests\": \"lerna run clean --scope \\\"@jupyterlab/test-*\\\"\",\n \"coverage\": \"lerna run coverage --stream\",\n \"docs\": \"lerna run docs\",\n \"get:dependency\": \"node scripts/get-dependency.js\",\n \"integrity\": \"node scripts/package-integrity.js\",\n \"publish\": \"npm update && npm install && npm run clean && npm run build && lerna publish -m \\\"Publish\\\"\",\n \"test\": \"cd test && npm test\",\n \"test:services\": \"cd packages/services && npm test && npm run test:integration && cd examples/node && python main.py\",\n \"test:chrome\": \"lerna run test:chrome --stream\",\n \"test:firefox\": \"lerna run test:firefox --stream\",\n \"test:ie\": \"lerna run test:ie --concurrency 1 --stream\",\n \"update:dependency\": \"node scripts/update-dependency.js\",\n \"update:core\": \"cd jupyterlab && node update-core.js\",\n \"watch:packages\": \"watch \\\"npm run build:packages\\\" ./packages/** --wait 10 --filter=scripts/watch-filter.js --ignoreDotFiles\",\n \"watch\": \"watch \\\"npm run build\\\" ./packages/** --wait 10 --filter=scripts/watch-filter.js --ignoreDotFiles\",\n \"watch:main\": \"npm run watch\",\n \"addsibling\": \"node scripts/add-sibling.js\",\n \"removesibling\": \"node scripts/remove-sibling.js\"\n },\n \"dependencies\": {},\n \"devDependencies\": {\n \"lerna\": \"2.0.0-beta.38\"\n }\n}" | ||
lerna(info) Lerna v2.0.0-beta.38 | ||
lerna(info) Independent Versioning Mode | ||
lerna(verbose) FileSystemUtilities.existsSync("./package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./lerna.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./lerna.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./VERSION") | ||
lerna(verbose) FileSystemUtilities.existsSync("./VERSION") => false | ||
lerna(info) Scoping to packages that match '@jupyterlab/example-*' | ||
lerna(verbose) FileSystemUtilities.existsSync("./jupyterlab/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./jupyterlab/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./jupyterlab/tests/mock-mimeextension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./jupyterlab/tests/mock-mimeextension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./examples/app/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./examples/app/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./examples/console/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./examples/console/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./examples/filebrowser/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./examples/filebrowser/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./examples/notebook/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./examples/notebook/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./examples/terminal/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./examples/terminal/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/all-packages/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/all-packages/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/application-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/application-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/application/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/application/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/apputils-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/apputils-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/apputils/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/apputils/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/cells/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/cells/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/codeeditor/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/codeeditor/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/codemirror-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/codemirror-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/codemirror/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/codemirror/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/completer-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/completer-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/completer/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/completer/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/console-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/console-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/console/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/console/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/coreutils/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/coreutils/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/csvviewer-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/csvviewer-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/csvviewer/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/csvviewer/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/docmanager-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/docmanager-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/docmanager/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/docmanager/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/docregistry/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/docregistry/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/faq-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/faq-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/filebrowser-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/filebrowser-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/filebrowser/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/filebrowser/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/fileeditor-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/fileeditor-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/fileeditor/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/fileeditor/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/help-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/help-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/imageviewer-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/imageviewer-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/imageviewer/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/imageviewer/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/inspector-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/inspector-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/inspector/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/inspector/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/launcher-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/launcher-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/launcher/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/launcher/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/markdownviewer-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/markdownviewer-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/notebook-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/notebook-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/notebook/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/notebook/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/outputarea/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/outputarea/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/pdf-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/pdf-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/rendermime-interfaces/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/rendermime-interfaces/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/rendermime/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/rendermime/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/running-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/running-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/running/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/running/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/services/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/services/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/settingeditor-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/settingeditor-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/shortcuts-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/shortcuts-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/tabmanager-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/tabmanager-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/terminal-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/terminal-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/terminal/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/terminal/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/theme-dark-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/theme-dark-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/theme-light-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/theme-light-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/tooltip-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/tooltip-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/tooltip/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/tooltip/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/vega2-extension/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/vega2-extension/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/services/examples/node/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/services/examples/node/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/services/examples/browser/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/services/examples/browser/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/services/examples/typescript-browser-with-output/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./packages/services/examples/typescript-browser-with-output/package.json") => true | ||
lerna(verbose) FileSystemUtilities.existsSync("./test/package.json") | ||
lerna(verbose) FileSystemUtilities.existsSync("./test/package.json") => true | ||
lerna(verbose) Attempting running RunCommand.initialize | ||
lerna(verbose) Successfully ran RunCommand.initialize | ||
lerna(verbose) Attempting running RunCommand.execute | ||
lerna(verbose) NpmUtilities.runScriptInDir ("build", [], "./examples/app") | ||
lerna(verbose) NpmUtilities.execInDir ("run build", [], "./examples/app") | ||
lerna(verbose) NpmUtilities.runScriptInDir ("build", [], "./examples/console") | ||
lerna(verbose) NpmUtilities.execInDir ("run build", [], "./examples/console") | ||
lerna(verbose) NpmUtilities.runScriptInDir ("build", [], "./examples/filebrowser") | ||
lerna(verbose) NpmUtilities.execInDir ("run build", [], "./examples/filebrowser") | ||
lerna(verbose) NpmUtilities.runScriptInDir ("build", [], "./examples/notebook") | ||
lerna(verbose) NpmUtilities.execInDir ("run build", [], "./examples/notebook") | ||
lerna(error) NpmUtilities.execInDir ("run build", [], "./examples/console") | ||
Error: Command failed: npm run build | ||
|
||
npm ERR! Darwin 15.6.0 | ||
npm ERR! argv "/Users/parente/miniconda3/envs/jupyterlab-dev/bin/node" "/Users/parente/miniconda3/envs/jupyterlab-dev/bin/npm" "run" "build" | ||
npm ERR! node v6.11.0 | ||
npm ERR! npm v3.10.10 | ||
npm ERR! code ELIFECYCLE | ||
npm ERR! @jupyterlab/example-console@0.10.0 build: `tsc && webpack` | ||
npm ERR! Exit status 1 | ||
npm ERR! | ||
npm ERR! Failed at the @jupyterlab/example-console@0.10.0 build script 'tsc && webpack'. | ||
npm ERR! Make sure you have the latest version of node.js and npm installed. | ||
npm ERR! If you do, this is most likely a problem with the @jupyterlab/example-console package, | ||
npm ERR! not with npm itself. | ||
npm ERR! Tell the author that this fails on your system: | ||
npm ERR! tsc && webpack | ||
npm ERR! You can get information on how to open an issue for this project with: | ||
npm ERR! npm bugs @jupyterlab/example-console | ||
npm ERR! Or if that isn't available, you can get their info via: | ||
npm ERR! npm owner ls @jupyterlab/example-console | ||
npm ERR! There is likely additional logging output above. | ||
|
||
npm ERR! Please include the following file with any support request: | ||
npm ERR! /Users/parente/projects/jupyterlab/examples/console/npm-debug.log | ||
|
||
at ChildProcess.exithandler (child_process.js:204:12) | ||
at emitTwo (events.js:106:13) | ||
at ChildProcess.emit (events.js:191:7) | ||
at maybeClose (internal/child_process.js:891:16) | ||
at Process.ChildProcess._handle.onexit (internal/child_process.js:226:5) | ||
lerna(error) | ||
> @jupyterlab/example-console@0.10.0 build /Users/parente/projects/jupyterlab/examples/console | ||
> tsc && webpack | ||
|
||
src/index.ts(18,8): error TS2307: Cannot find module '@jupyterlab/services'. | ||
src/index.ts(22,8): error TS2307: Cannot find module '@jupyterlab/codemirror'. | ||
src/index.ts(26,8): error TS2307: Cannot find module '@jupyterlab/console'. | ||
src/index.ts(30,8): error TS2307: Cannot find module '@jupyterlab/rendermime'. | ||
|
||
lerna(error) NpmUtilities.runScriptInDir ("build", [], "./examples/console") | ||
lerna(error) | ||
> @jupyterlab/example-console@0.10.0 build /Users/parente/projects/jupyterlab/examples/console | ||
> tsc && webpack | ||
|
||
src/index.ts(18,8): error TS2307: Cannot find module '@jupyterlab/services'. | ||
src/index.ts(22,8): error TS2307: Cannot find module '@jupyterlab/codemirror'. | ||
src/index.ts(26,8): error TS2307: Cannot find module '@jupyterlab/console'. | ||
src/index.ts(30,8): error TS2307: Cannot find module '@jupyterlab/rendermime'. | ||
|
||
lerna(info) | ||
> @jupyterlab/example-console@0.10.0 build /Users/parente/projects/jupyterlab/examples/console | ||
> tsc && webpack | ||
|
||
src/index.ts(18,8): error TS2307: Cannot find module '@jupyterlab/services'. | ||
src/index.ts(22,8): error TS2307: Cannot find module '@jupyterlab/codemirror'. | ||
src/index.ts(26,8): error TS2307: Cannot find module '@jupyterlab/console'. | ||
src/index.ts(30,8): error TS2307: Cannot find module '@jupyterlab/rendermime'. | ||
|
||
lerna(error) Errored while running npm script 'build' in '@jupyterlab/example-console' | ||
lerna(error) Errored while running RunCommand.execute |