Commit Graph

228 Commits

Author SHA1 Message Date
Don Jayamanne
dd2c3af375 Remove as any from ipynb (#277057)
* Remove `as any` from ipynb

* Fixes

* updates
2025-11-13 09:30:35 +01:00
Don Jayamanne
b282eee40c Remove usages of in (#276333)
* Remove usages of in

* Update extensions/ipynb/src/serializers.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-09 08:07:11 +01:00
Matt Bierner
98b069c041 Work towards getting isolated built-in extension compiles
For #271167

This makes it so our built-in extensions can mostly be built using `tsc` on the command line. Previously the extensions were picking up a lot of typing info from the root `node_modules` that meant they weren't truly independent
2025-10-13 11:03:20 -07:00
Matt Bierner
360c9fd134 Add lint rule for as any and bulk ignore all existing breaks
For #269213

This adds a new eslint rule for `as any` and `<any>({... })`. We'd like to remove almost all of these, however right now the first goal is to prevent them in new code. That's why with this first PR I simply add `eslint-disable` comments for all breaks

Trying to get this change in soon after branching off for release to hopefully minimize disruption during debt week work
2025-10-02 23:38:33 -07:00
Matt Bierner
2c749892ad Merge pull request #260466 from mjbvz/sick-marmoset
Convert esbuild scripts to modules
2025-08-07 21:57:27 -07:00
Matt Bierner
e4f9730eae Also update gulp 2025-08-07 20:15:04 -07:00
Matt Bierner
7bf1ab9dbe Also change common file extension 2025-08-07 20:07:03 -07:00
Matt Bierner
f272e51947 Convert esbuild scripts to modules
Planning to convert to typescript but want to do it in a few smaller steps
2025-08-07 20:04:44 -07:00
Matt Bierner
ed71020bfc Convert extension webpack scripts to modules 2025-08-07 17:20:22 -07:00
Ladislau Szomoru
4d7c56ee82 Engineering - Add GitHub action for pull requests (#254056)
* Test - handle running tests as part of a GitHub action

* Add GitHub action files
2025-07-04 08:21:56 +00:00
Don Jayamanne
bdc1dd9a7c Enable ipynb serialization (forgot to change value in code) (#251959) 2025-06-19 19:38:44 -07:00
Don Jayamanne
4ff7a87b13 Ensure we always normalize cell source (#251670)
* Ensure we always normalize cell source

* oops
2025-06-17 05:46:59 +02:00
Aaron Munger
fa298e0de0 skip flaky test (#251158) 2025-06-10 15:50:26 -07:00
Aaron Munger
10066c9ec3 more certainty for resuming the paused emitter (#251130) 2025-06-10 12:30:54 -07:00
Don Jayamanne
509cc674f2 Skip failing nb test untill resolved (#248472) 2025-05-09 15:15:05 +10:00
Aaron Munger
e65a9a3d46 check one more async op (#248225) 2025-05-06 17:46:21 +02:00
Aaron Munger
d6fb62df0d diagnostic message (#248151) 2025-05-05 20:22:41 +02:00
eleanorjboyd
12df889920 add right click menu support 2025-03-24 11:00:49 -07:00
Benjamin Pasero
d70596e87b Chat-related commands should not be available on web (without backend) (fix #241873) (#242954)
* Chat-related commands should not be available on web (without backend) (fix #241873)

* Remove notebook.cellOutput.addToChat from command palette

* Only show "Toggle agent mode" when chat enabled

* Show notebook.cellOutput.addToChat only when chat enabled

---------

Co-authored-by: Rob Lourens <roblourens@gmail.com>
2025-03-08 18:58:26 +01:00
Aaron Munger
e5ac650981 bump default nb format version (#242741)
* bump default nb format version

* update tests

---------

Co-authored-by: amunger <>
2025-03-07 20:58:55 +01:00
Aaron Munger
469d54e912 call the generator function (#242912)
call the function

Co-authored-by: amunger <>
2025-03-07 10:54:22 -08:00
Raymond Zhao
54b12e5ec8 Copy UUID impl (#231347) 2025-03-03 09:29:59 -08:00
Benjamin Pasero
419e6aa2f3 debt - remove missing documentPaste proposal (#241019) 2025-02-17 17:02:04 +01:00
Peng Lyu
a2e99f9b09 Include send output to chat in context menu (#240850) 2025-02-14 16:43:17 -08:00
Oleg Solomko
1195e2cf77 fix the the the typos (#239646)
fix the `the the` -> `the` typos
2025-02-04 15:35:23 -08:00
Don Jayamanne
f4244472c7 Enable Serialize ipynb in worker (#239453) 2025-02-03 15:00:49 -08:00
Matt Bierner
4daea74ba9 Finalize paste api and drop api tweaks
Fixes #30066

This finalizes the documentPaste api. This api allows extensions to attach metadata on text copy and change how content is pasted. Some examples:

- Updating imports for pasted code
- Inserting an image as an attachment in notebooks
- Pasting files converts them to relative text paths
2025-01-07 14:57:16 -08:00
Don Jayamanne
8cc255e03a Ensure execution_count is cleared when clearing outputs (#237301) 2025-01-05 19:58:34 -08:00
Don Jayamanne
008340a55c Ensure notebook execution count is cleared only when necessary (#234776) 2024-11-27 18:45:53 +01:00
Matt Bierner
c83b443da0 Clean up support for paste edits (#234240)
- Allow setting an array of preferences for paste as keybindings
- Clarifies kinds used for core and extensions
- Exports text kind as API
2024-11-20 07:14:10 +01:00
Don Jayamanne
27d99fbee7 Set execution_count to null when clearning notebook outputs (#231806)
* Set execution_count to null when clearning notebook outputs

* Fix tests
2024-10-21 06:56:16 +02:00
Don Jayamanne
0ca72abae2 Exprimental ipynb serialization setting (#230669) 2024-10-06 20:10:10 -07:00
Johannes Rieken
cc7ba25b2d Merge pull request #230269 from microsoft/joh/sparkling-loon
eng - use `esModuleInterop` for extensions
2024-10-02 09:51:54 +02:00
Don Jayamanne
72113138d2 Update ipynb experiment setting description (#230282) 2024-10-02 08:12:03 +02:00
Johannes
e6f315d2fc eng - use esModuleInterop for extensions 2024-10-01 21:57:30 +02:00
Don Jayamanne
620fd6cb9a Support serialization of IPYNB in web worker (#230190) 2024-10-01 21:22:55 +10:00
Robo
9494a89080 chore: add npmrc to extensions folder (#230214) 2024-10-01 12:43:01 +02:00
Don Jayamanne
c35d5e21fc Exclude cells and indentAmount from notebook metadta diff view (#230173) 2024-09-30 15:50:47 -07:00
Matt Bierner
51fa4d0172 Fix more type assertions (#230156)
* Fix more type assertions

For #211878

* Fix type error
2024-09-30 14:17:06 -07:00
Don Jayamanne
c4645ea0ec Restore changes to ipynb extension to serialize notebook in node worker for desktop (#228319)
* Revert usage of node worker due to failing web compilation

* Revert "Revert usage of node worker due to failing web compilation"

This reverts commit 3190f58c7e.

* Ensure node worker is used only in desktop bundle of ipynb extension

---------

Co-authored-by: Aaron Munger <aamunger@microsoft.com>
2024-09-12 23:56:34 +02:00
Don Jayamanne
102ff8db3f Revert usage of node worker due to failing web compilation (#228318)
* Revert usage of node worker due to failing web compilation

* fix linter error
2024-09-12 17:44:02 +09:00
Aaron Munger
28692d5be4 Merge branch 'main' into notebook-serialization-worker 2024-09-11 14:27:43 -07:00
Don Jayamanne
edd3903933 Updates 2024-09-10 01:19:53 +10:00
hj
88d7b97c93 chore: rm unreached ignore items when build extensions. (#227906)
chore: rm unreached ignore items when compiling extensions.
2024-09-09 10:32:51 +00:00
Don Jayamanne
692656799a Safer way to determine whether node or browser 2024-09-09 12:07:43 +10:00
Don Jayamanne
1865c2979d Import node worker 2024-09-09 11:48:21 +10:00
Don Jayamanne
ddd0f1fe34 Updates to perform all operations in worker 2024-09-09 11:37:44 +10:00
Peng Lyu
fc8fda56e5 fix worker import 2024-09-06 22:16:04 -07:00
Peng Lyu
65f36ead2a Merge remote-tracking branch 'origin/main' into pr/nojaf/226632 2024-09-06 11:39:00 -07:00
Robo
b5a6aa14a8 feat: switch to npm as default package manager (#226927)
* feat: move from yarn to npm

* chore: skip yarn.lock files

* fix: playwright download

* chore: fix compile and hygiene

* chore: bump vsce@2.17.0

Refs 8b49e9dfdf

* test: update results for bat and sh colorizer tests

* fix: add missing lock files for windows

* fix: switch to legacy-peer-deps

* chore: update markdown-it@14.1.0

Refs 737c95a129

esbuild step in extensions-ci-pr was previously using markdown-it
from root which had userland punycode and was able to compile successfully.

* ci: increase pr timeout for windows integration tests

* chore: fix product build

* build: ignore extension dev dependency for rcedit

* build: fix working directory inside container

* build: fix dependency generation

* npm: update dependencies

* ci: use global npmrc

* ci: update cache

* ci: setup global npmrc for private npm auth

* build: fix extension bundling

* chore: sync npm dependencies

* ci: debug env variables for container

* ci: fix win32 cli pipeline

* build: fix npmrc config usage for build/ and remote/ dirs

* fix: windows build

* fix: container builds

* fix: markdown-language-features tests and bundling

```
[03:58:22] Error: Command failed: /Users/demohan/.nvm/versions/node/v20.15.1/bin/node /Users/demohan/github/vscode/extensions/markdown-language-features/esbuild-notebook.js --outputRoot /Users/demohan/github/vscode/.build/extensions/markdown-language-features
✘ [ERROR] Could not resolve "punycode"

    extensions/markdown-language-features/node_modules/markdown-it/lib/index.js:14:27:
      14 │ var punycode     = require('punycode');
         ╵                            ~~~~~~~~~~

  The package "punycode" wasn't found on the file system but is built into node. Are you trying to bundle for node? You can use "platform: 'node'" to do that, which will remove this error.
```

Adds userland package based on beed9aee2c

* fix: container builds for distro

* chore: update yarn occurrences

* fixup! chore: bump vsce@2.17.0

Uses the closest version to `main` branch that does not
include d3cc84cdec
while still having the fix 8b49e9dfdf

* chore: sync npm dependencies

* chore: sync npm dependencies

* chore: sync npm dependencies

* chore: throw error when yarn is used for installation

* chore: add review feedback

* chore: switch exec => run where needed

* chore: npm sync dependencies

* fix: markdown-language-features bundling

```
✘ [ERROR] Could not resolve "punycode"

    extensions/markdown-language-features/node_modules/markdown-it/lib/index.js:14:27:
      14 │ var punycode     = require('punycode');
         ╵                            ~~~~~~~~~~

  The package "punycode" wasn't found on the file system but is built into node. Are you trying to bundle for node? You can use "platform: 'node'" to do that, which will remove this error.
```

Adds missing userland package based on markdown-it/markdown-it@beed9ae,
can be removed once we update markdown-it >= 14.1.0

* ci: rename no-yarn-lock-changes.yml

* chore: sync npm dependencies

* ci: restore no-yarn-lock-changes.yml

We can disable it in a separate PR to keep the required
checks happy and also need workflow edit perms.

* chore: sync npm dependencies

* ci: rebuild cache

* ci: fix no-package-lock-changes.yml

* chore: bump distro

* chore: rm yarn.lock files

* chore: rm yarn.lock files without dependencies

* chore: add vscode-selfhost-import-aid to postinstall dirs

* chore: bump distro
2024-09-06 22:18:02 +09:00