Skip to content

Commit

Permalink
Pre-release 0.1.0 + README (#18)
Browse files Browse the repository at this point in the history
  • Loading branch information
bmingles committed Jul 10, 2024
1 parent e0d87ee commit 21e9ae3
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 6 deletions.
28 changes: 22 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,13 @@ Deephaven in VS Code

## Installation

This extension is not yet published to the marketplace, but you can install a `.vsix` directly. To get a `.vsix`, you can either:
TODO: Document marketplace instructions.

> Note: There are some `vscode` bugs that cause some flakiness with the `run` button. vscode `v90` introduced an optional `workbench.editor.alwaysShowEditorActions` setting. Setting this to `true` improves the experience here. Namely the run button will not disappear when running commands or selecting its dropdown. See https://github.com/deephaven/vscode-deephaven/issues/1 for more details.
### Installation from .VSIX

This extension can also be installed directly from a `.vsix`. To get a `.vsix`, you can either:

Download one from the [releases/](releases/) folder.

Expand All @@ -23,8 +29,6 @@ Build a .vsix locally via `npm run package`
Then install in vscode:
![Install Deephaven in VS Code](docs/install.png)

> Note: There are some `vscode` bugs that cause some flakiness with the `run` button. vscode `v90` introduced an optional `workbench.editor.alwaysShowEditorActions` setting. Setting this to `true` improves the experience here. Namely the run button will not disappear when running commands or selecting its dropdown. See https://github.com/deephaven/vscode-deephaven/issues/1 for more details.
## Connecting to a Server

Core server `http://localhost:10000/` is configured by default and doesn't require any additional config. Additional connections can be configured in `vscode` settings.
Expand Down Expand Up @@ -61,7 +65,7 @@ Scripts will be run against the active connection or default to the first connec

![Deephaven: Run](docs/run.png)

Note that `vscode` will remember your selection so you can just click the `run` button (play icon) the next time.
> Note that `vscode` should remember your selection so you can just click the `run` button (play icon) the next time; however, we have observed cases where this does not always work.
### Run a selection

Expand All @@ -70,14 +74,26 @@ Note that `vscode` will remember your selection so you can just click the `run`

![Deephaven: Run Selection](docs/run-selection.png)

Note that `vscode` will remember your selection so you can just click the `run` button (play icon) the next time.
> Note that `vscode` should remember your selection so you can just click the `run` button (play icon) the next time; however, we have observed cases where this does not always work.
## Code Snippets

The `vscode-deephaven` extension comes with some predefined `python` snippets. These insert pre-defined code snippets into an editor. To use, simply type `ui` to see available snippets.

![Code Snippets](docs/code-snippets.png)

## Releases

We are following the official `vscode` extension publishing guidance.

- Pre-release versions use `major.ODD_NUMBER.patch` version scheme (e.g. `1.1.3`)
- Release versions use `major.EVEN_NUMBER.patch` versions scheme (e.g. `1.2.3`)

> Note that `vscode` will always install a later release version instead of pre-release, so it's important to always have a pre-release version that is later than the release version if we want to allow pre-release users to stay on the latest pre-release.
You can find additional details here:
https://code.visualstudio.com/api/working-with-extensions/publishing-extension#prerelease-extensions

## Implementation Notes

### Server Connection
Expand All @@ -98,7 +114,7 @@ On subsequent script runs, the session will be re-used and only steps 4 and 5 wi

### Downloading JS API

The extension dynamically downloads and loads the DH JS API from a DH Core server.
The extension dynamically downloads and loads the DH JS API from a running DH Core server.

- `src/jsApi.downloadDhFromServer()`
At runtime, `dh-internal.js` and `dh-core.js` are downloaded from the running DH server (default http://localhost:10000). The files are saved to `out/tmp` as `.cjs` modules, and import / export are converted to cjs compatible ones.
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
{
"name": "vscode-deephaven",
"version": "0.1.0",
"displayName": "Deephaven in VS Code",
"description": "",
"publisher": "Deephaven Data Labs",
Expand Down

0 comments on commit 21e9ae3

Please sign in to comment.