-
Notifications
You must be signed in to change notification settings - Fork 8
Move to new eng package #324
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR migrates three packages (vscode-processutils, vscode-inproc-mcp, vscode-docker-registries, and vscode-container-client) to use a new centralized engineering package (@microsoft/vscode-azext-eng) for ESLint configuration and tooling. The migration includes updating to ESLint v9's flat config format, improving type safety, and modernizing code patterns.
Key Changes:
- Migration from legacy
.eslintrc.jsonto moderneslint.config.mjs(ESLint flat config) - Consolidation of dev dependencies into the new
@microsoft/vscode-azext-engpackage - Type safety improvements:
any→unknown,||→??, improved type guards - Removal of redundant
asynckeywords and Promise wrapping
Reviewed changes
Copilot reviewed 67 out of 68 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
package.json |
Replaced individual ESLint/testing dependencies with @microsoft/[email protected] |
packages/*/eslint.config.mjs |
Added new flat ESLint configurations using shared presets |
packages/*/.eslintrc.json |
Removed legacy ESLint configurations |
packages/*/.eslintignore |
Removed legacy ignore files (handled by flat config) |
packages/*/.npmignore |
Added exclusions for new config files and source maps |
| Type guard functions | Improved from any to unknown with proper type narrowing |
| Nullish coalescing | Changed ` |
| Async methods | Removed unnecessary async keywords where methods just return Promises |
| Test files | Removed unused error parameters and improved type assertions |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Plus a few other things I did:
*.mapinto the.npmignores, so that source maps aren't in the tgz. They were interfering with debugging.RegistryV2DataProvider.tsincluding some mostly-transparent bugsconditionalwhich is a very confusing methodvscode-processutils, else linting does not work for the packages that depend on it