Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 18 additions & 4 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,9 @@ env:
NODE_VERSION: 22.x

permissions:
contents: read
actions: read
contents: read
packages: read

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
Expand All @@ -30,11 +31,15 @@ jobs:
- name: Setup Node.js
uses: actions/setup-node@v5
with:
node-version: ${{ env.NODE_VERSION }}
cache: 'npm'
node-version: ${{ env.NODE_VERSION }}
registry-url: 'https://npm.pkg.github.com'
scope: '@deepnote'

- name: Install dependencies
run: npm ci --prefer-offline --no-audit
env:
NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Run ESLint
run: npm run lint
Expand All @@ -53,11 +58,15 @@ jobs:
- name: Setup Node.js
uses: actions/setup-node@v5
with:
node-version: ${{ env.NODE_VERSION }}
cache: 'npm'
node-version: ${{ env.NODE_VERSION }}
registry-url: 'https://npm.pkg.github.com'
scope: '@deepnote'

- name: Install dependencies
run: npm ci --prefer-offline --no-audit
env:
NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Compile TypeScript
run: npm run compile
Expand All @@ -71,6 +80,7 @@ jobs:

- name: Check licenses
run: npm run check-licenses

check_licenses:
name: Check Licenses
runs-on: ubuntu-latest
Expand All @@ -81,11 +91,15 @@ jobs:
- name: Setup Node.js
uses: actions/setup-node@v5
with:
node-version: ${{ env.NODE_VERSION }}
cache: 'npm'
node-version: ${{ env.NODE_VERSION }}
registry-url: 'https://npm.pkg.github.com'
scope: '@deepnote'

- name: Install dependencies
run: npm ci
env:
NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Check Licenses
run: npm run check-licenses
5 changes: 5 additions & 0 deletions .github/workflows/copilot-setup-steps.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ jobs:
permissions:
# If you want to clone the repository as part of your setup steps, for example to install dependencies, you'll need the `contents: read` permission. If you don't clone the repository in your setup steps, Copilot will do this for you automatically after the steps complete.
contents: read
packages: read

# You can define any steps you want, and they will run before the agent starts.
# If you do not check out your code, Copilot will do this for you.
Expand All @@ -42,6 +43,8 @@ jobs:
uses: actions/setup-node@v5
with:
node-version: ${{env.NODE_VERSION}}
registry-url: 'https://npm.pkg.github.com'
scope: '@deepnote'

- name: Cache npm files
uses: actions/cache@v4
Expand All @@ -59,6 +62,8 @@ jobs:
# Let that happen in other jobs, this job needs to be fast
- name: npm ci
run: npm ci --ignore-scripts --prefer-offline --no-audit
env:
NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: npm run postinstall
run: npm run postinstall
Expand Down
9 changes: 7 additions & 2 deletions .github/workflows/deps.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,9 @@ env:
NODE_VERSION: 22.x

permissions:
contents: read
actions: read
contents: read
packages: read

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
Expand All @@ -28,11 +29,15 @@ jobs:
- name: Setup Node.js
uses: actions/setup-node@v5
with:
node-version: ${{ env.NODE_VERSION }}
cache: 'npm'
node-version: ${{ env.NODE_VERSION }}
registry-url: 'https://npm.pkg.github.com'
scope: '@deepnote'

- name: Install dependencies
run: npm ci --prefer-offline --no-audit
env:
NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Run security audit
run: npm audit --json > audit-report.json || true
Expand Down
1 change: 1 addition & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
@deepnote:registry=https://npm.pkg.github.com
28 changes: 28 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,34 @@ cd vscode-jupyter

```

#### Install Recommended Extensions

First, install all the recommended VS Code extensions. Open the Command Palette (Ctrl+Shift+P or Cmd+Shift+P) and run:

```text
Extensions: Show Recommended Extensions
```

Then install all the extensions listed under "Workspace Recommendations".

#### Configure Access to @deepnote/blocks Package

The `@deepnote/blocks` package is published on GitHub Packages. To install it, you'll need to authenticate with GitHub:

1. Create a GitHub Personal Access Token (classic) with `read:packages` scope:
- Go to https://github.com/settings/tokens
- Click "Generate new token (classic)"
- Select the `read:packages` scope
- Generate and copy the token

2. Add the token to your global `.npmrc` file:
```shell
echo "//npm.pkg.github.com/:_authToken=YOUR_TOKEN_HERE" >> ~/.npmrc
```
Replace `YOUR_TOKEN_HERE` with your actual token.

After completing these steps, you can install dependencies normally with `npm ci`. The project's `.npmrc` file is already configured to use GitHub Packages for the `@deepnote` scope.

On Apple Silicon, you will have to use system versions of `libsodium` and `libzmq` instead of the bundled ones:

```shell
Expand Down
71 changes: 69 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2099,6 +2099,7 @@
},
"dependencies": {
"@c4312/evt": "^0.1.1",
"@deepnote/blocks": "^1.1.0",
"@enonic/fnv-plus": "^1.3.0",
"@jupyter-widgets/base": "^6.0.8",
"@jupyter-widgets/controls": "^5.0.9",
Expand Down
Loading