mirror of
https://github.com/microsoft/vscode.git
synced 2025-12-10 00:27:05 -06:00
Page:
Publish vscode types
Pages
Accessibility Guidelines
Adopting Multi Root Workspace APIs
Automated Issue Triaging
Build Champion
Build and run 32bit Code OSS on Windows
Code Editor Roadmap
Coding Guidelines
Color customization color id changes
Commit Signing
Community Issue Tracking
Contributor License Agreement
Copilot Issues
Cross Compiling for Debian Based Linux
Custom eslint rules
Dealing with Test Flakiness
December Pre Release
December Test Plan
Design Goals
Development Process
Differences between the repository and Visual Studio Code
Editor decorations & colors
Endgame testing and verification
Explain extension causes high cpu load
Extension API guidelines
Extension API process
Feature Areas
Feedback Channels
File Watcher Internals
File Watcher Issues
Git & SCM Issues
Home
How to Contribute
IME Test
Insiders Release Notes
Interactive Window Documentation
Inventory of performance marks
Issue Grooming
Issue Tracking
Issues Triaging
Iteration Plans
Keybinding Issues
Known issues
Lists And Trees
Native Crash Issues
Notebook Smoke Test
Notebook documentation
Notebook layout
November Plan
Performance Issues (old)
Performance Issues
Pointer Device & Touch support
Publish vscode types
Related Projects
Release Process
Removing Insiders
Roadmap 2017
Roadmap 2018
Roadmap 2019
Roadmap 2020
Roadmap
Roadmap‐2021‐2022
Running the Endgame
Runtime debugging
Sanity Check
Screen Reader Test
Search Issues
Selfhosting on Windows WSL
Semantic Highlighting Overview
Setting Descriptions
Smoke Test
Source Code Organization
Submitting Bugs and Suggestions
Terminal Issues
TypeScript Issues
UX
VS Code Speech
Virtual Workspaces
Working Copies
Working with xterm.js
Writing Test Plan Items
Writing Tests
[DEV] Perf Tools for VS Code Development
[DEV] Programming advice and tips & tricks
[WIP] Code Editor Design Doc
[WIP] Design Checklist
[WIP] Design Principles
[dev perf] PerformanceError and unresponsive renderer telemetry
Clone
9
Publish vscode types
Ulugbek Abdullaev edited this page 2023-11-21 17:49:54 +01:00
Table of Contents
We are using @types/vscode for publishing vscode.d.ts. See https://github.com/Microsoft/vscode/issues/70175 for details.
Note: The steps in the bottom section refer to a CI task that is currently broken. @roblourens is trying to fix it. Until then, we will submit the PR to update the types manually. Just do this carefully- once published, we cannot unpublish a
@types/vscodeversion.
Example of PR when releasing 1.84 - https://github.com/DefinitelyTyped/DefinitelyTyped/pull/67287/files.
- Create your own fork of https://github.com/DefinitelyTyped/DefinitelyTyped, and create a PR branch
- Update
types/vscode/index.d.tsby copying the vscode.d.ts from our release branch. But leave the comment header in place -- we mean this one:
/**
* Type Definition for Visual Studio Code <Major Version>.<Minor Version> Extension API
* See https://code.visualstudio.com/api for more information
*/
- Update the version number in the comment header to the newly published vscode version number
- Update the minor version in
"version"property intypes/vscode/package.json, e.g.,1.83.9999to1.84.9999(9999is not just an example) - Submit the PR
- If there are any lint failures in the CI job for the PR, you can disable tests in either the
tslint.jsonor.eslintrc.jsonfiles. But first check to make sure that the lint failure isn't pointing out a real issue in ourvscode.d.tsor with the copy/paste job.
- If there are any lint failures in the CI job for the PR, you can disable tests in either the
- Ask either @jrieken or @kieferrm to merge the PR.
@types/vscodewill be published in ~10 minutes.- Make sure a correct version of
@types/vscodewas published, e.g., if you're releasing VS Code 1.84, you should see@types/vscodeversion 1.84.0 here
Recovery
- We don't easily have the ability to publish a patch release for a previous minor release - e.g. once 1.75.0 is published, we can't publish a 1.74.1. In theory we could merge a PR to change the version in main back to 1.74, which would publish a 1.74 patch release, then merge another PR to move it back to 1.75, which would publish an unnecessary 1.75.1. But if you need to do this, check with a DefinitelyTyped maintainer that this will actually work as expected.
- Per npm rules, we can't unpublish packages since
@types/vscodehas dependent packages. - However, we can mark packages as deprecated with a warning that is shown when it is installed.
Project Management
- Roadmap
- Iteration Plans
- Development Process
- Issue Tracking
- Build Champion
- Release Process
- Running the Endgame
- Related Projects
Contributing
- How to Contribute
- Submitting Bugs and Suggestions
- Feedback Channels
- Source Code Organization
- Coding Guidelines
- Testing
- Dealing with Test Flakiness
- Contributor License Agreement
- Extension API Guidelines
- Accessibility Guidelines
- Custom ESLint rules
Documentation