Commit Graph

34 Commits (1d64cc51d839f4dc54571574218cc188a376c582)

Author SHA1 Message Date
Matt Bierner f22a1167e4 More fixes 2024-10-02 17:22:33 -07:00
Sandeep Somavarapu 841d51da29
write our own little gulp-eslint which takes the eslint from our workspace root (#230115) 2024-09-30 15:36:25 +02: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
Matt Bierner d40b1530c7
Replace typescript-formatter (#211810)
The typescript-formatter package isn't being maintained (lots of old PRs) and has broken in the most recent version of TS

Long term we may explore switching to another formatter, but for now I've hook up the basic formatter logic for our hygiene scripts
2024-05-01 23:35:58 +02:00
Rob Lourens 7b22c151b3 Merge remote-tracking branch 'origin/main' into roblou/chat-agent-hover 2024-04-19 11:30:40 -07:00
Daniel Imms da16e8c6e0
Make unicode file lint rule more strict 2023-11-27 11:57:32 -08:00
Daniel Imms 55e5f527ca
Move Korean alt char handling into new file 2023-10-28 07:22:20 -07:00
Connor Peet 6a847ba6d1
eng: add support for snapshot tests (#190444)
* eng: add support for snapshot tests

This adds Jest-like support for snapshot testing.
Developers can do something like:

```js
await assertSnapshot(myComplexObject)
```

The first time this is run, the snapshot expectation file is written
to a `__snapshots__` directory beside the test file. Subsequent runs
will compare the object to the snapshot, and fail if it doesn't match.

You can see an example of this in the test for snapshots themselves!

After a successful run, any unused snapshots are cleaned up. On a failed
run, a gitignored `.actual` snapshot file is created beside the
snapshot for easy processing and inspection.

Shortly I will do some integration with the selfhost test extension to
allow developers to easily update snapshots from the vscode UI.

For #189680

cc @ulugbekna @hediet

* fix async stacktraces getting clobbered

* random fixes

* comment out leak detector, for now

* add option to snapshot file extension
2023-08-15 12:03:51 -07:00
Martin Aeschlimann 3f5600c324
Improve stylelint variable checking (#178002) 2023-03-22 14:59:25 +01:00
Martin Aeschlimann 780b2f5758
add linter for css variable names (#176769) 2023-03-10 07:33:02 -08:00
Connor Peet a9e38fe925
ignore rust code when doing hygenie check 2022-09-20 08:49:29 -07:00
Matt Bierner 5e92794be6
Re-enable running our eslint rules using ts-node (#159495)
Resubmission of #157532 with the following changes:

- Use `eslint-plugin-local` instead of `yarn` link to run our plugins
- Move our plugins to a top level `.eslintplugin` dir (as required by `eslint-plugin-local`)
- Update all names to `local/`
2022-08-30 08:40:04 +02:00
Matt Bierner 9e5248072a
Fix ts-node for eslint (#159483)
Bumps the cachesalt to make sure ts-node is installed
2022-08-29 20:51:12 +02:00
Matt Bierner 5b21c7f28b
Run our custom eslint rules using ts-node (#157532)
* Run our custom eslint rules using ts-node

Use `ts-node` to run our custom eslint rules.  This lets us delete the pre-compiled js. It also means you can don't have to compile the rules while editing them

As part of this change, I've also switched us to using an eslint plugin instead of a rulesDir. This is now the preferred way to ship custom rules

* Fix two more disables

* Move ts-node to project root

* Enable transpileOnly
2022-08-29 09:39:09 -07:00
Johannes 0656d21d11
auto-fixed prefer-const violation 2022-06-08 17:49:21 +02:00
Rob Lourens 55abdaee3e
Render outputs a viewport above as well as below (#149879)
* Also render outputs/markdowns a viewport above the current viewport, as well as below
Towards #148164

* Update docs and add background color to svg
2022-05-19 22:12:43 +00:00
Johannes Rieken 4f62f9b594
make sure unicode stream emits files again 2022-02-04 15:38:33 +01:00
Johannes Rieken eb0935b068
fix precommit hook, fyi @joaomoreno 2022-02-04 11:56:13 +01:00
João Moreno 7455bc43ad
unify eslint filters (#142063) 2022-02-03 08:12:23 -08:00
Alex Dima a704a69394
Enforce that source code uses a small subset of Unicode 2021-11-03 23:34:41 +01:00
Alexandru Dima d21d85a3fc
Fix precommit hook on Windows 2021-01-25 17:46:09 +01:00
João Moreno 3b03189afa
Restore extensions in core (#114921)
* bring back grammar extensions

* fix hygiene

* Revert "pull themes from the marketplace"

This reverts commit 0738f76dac.
2021-01-25 17:07:56 +01:00
João Moreno c6ceb1ab2e isolate eslint from hygiene 2021-01-07 09:15:05 +01:00
João Moreno cb67fffb94 improve hygiene glob patterns 2021-01-06 20:36:37 +01:00
Matt Bierner 3ed300eb9d
Add simple browser extension (#109276)
* Add support for TS's Hierarchical refactorings API

https://github.com/microsoft/TypeScript/pull/41975

* Add simple browser extension

This change adds a new 'simple browser' extension. This extension uses a webview to render webpages directly in VS Code. We plan on using it for optionally previewing local servers in both desktop and codespaces

The browser itself has a number of limitations due to the security around iframes:

- It traps keyboard focus
- We can't detect if a page fails to load
- We can't track the current url of the iframe

* Add experimental alert when the iframe is focused

* Disable events on focus warning

* Hooking up simple browser to opener
2021-01-04 19:06:53 -08:00
Alexandru Dima 9945754a62
Add editor smoke test (ported from `monaco-editor`) 2020-12-28 21:44:42 +01:00
Alexandru Dima c1eb24b027
Load expensive node modules lazily 2020-12-22 19:55:56 +01:00
Matt Bierner 04ec120e2c Exclude dist from eslint and hygine
These files come from the web builds
2020-12-09 18:45:54 -08:00
Jackson Kearl e3105b9453 Add jpg exclude to hygene 2020-11-30 20:56:50 -08:00
Christof Marti 0c2c8dd8b8 Inline allOf clauses for additionalProperties: false (fixes microsoft/vscode-remote-release#2967) 2020-11-17 11:16:37 +01:00
João Moreno 96d03d1ecc
Linux Snap: Prevent GDK_PIXBUF env from leaking out (#109608)
* update hygiene file

* snap: do not let GDK_PIXBUF leak out

fixes #100940

* 💄
2020-10-29 14:13:22 +01:00
Sandeep Somavarapu 88144f6d31 Fix #80698
- Inline semver
2020-10-26 12:12:07 +01:00
João Moreno 337189842e
fix lint errors 2020-09-22 14:37:04 +02:00
João Moreno 0ca320561a
isolate hygiene 2020-09-22 11:12:35 +02:00