Model kompatibilitas ekstensi untuk Visual Studio

Visual Studio 2026 memperkenalkan model kompatibilitas berbasis versi API yang mengurangi kebutuhan akan pembaruan ekstensi di seluruh rilis utama. Ekstensi VSIX yang dibuat untuk Visual Studio 2022 terus berfungsi di Visual Studio 2026 tanpa perubahan saat menargetkan API yang didukung.

Gambaran Umum

Ekstensi lama mendeklarasikan kompatibilitas dengan menentukan rentang versi produk Visual Studio dalam manifes VSIX, biasanya memerlukan perubahan terikat atas untuk setiap rilis utama baru. Mulai visual Studio 2026, kompatibilitas didorong oleh dukungan versi API alih-alih versi produk, sehingga sebagian besar ekstensi Visual Studio 2022 dapat dimuat di Visual Studio 2026 tanpa menerbitkan ulang.

Prinsip utama

  • Ekstensi mendeklarasikan versi API, bukan versi produk. Pada waktu pemuatan, Visual Studio mengevaluasi versi API target ekstensi dan hanya memuat ekstensi yang kompatibel.

  • API yang stabil menghindari perubahan yang memutuskan kompatibilitas. Kecuali untuk pergeseran platform utama (seperti perpindahan ke 64-bit di Visual Studio 2022), platform ini bertujuan untuk mempertahankan kompatibilitas mundur untuk API yang stabil.

  • API baru bersifat aditif dan pratinjau terlebih dahulu. API Pratinjau bisa diubah atau dihapus, dan tidak didukung untuk ekstensi produksi atau penerbitan di Visual Studio Marketplace.

Dampak pada ekstensi yang ada

Jika ekstensi VSIX Anda berfungsi di Visual Studio 2022, tidak ada perubahan yang diperlukan untuk Visual Studio 2026. Visual Studio 2026:

  • Mendukung API versi 17.x.
  • Mengevaluasi kompatibilitas hanya menggunakan batas bawah rentang versi target penginstalan.
  • Mengabaikan batas atas rentang.

Example

Ekstensi dengan target penginstalan ini berjalan di Visual Studio 2022 dan Visual Studio 2026:

<InstallationTarget
  Id="Microsoft.VisualStudio.Community"
  Version="[17.0,18.0)" />

Ekstensi baru yang dibuat di Visual Studio 2026

Saat Anda membuat ekstensi di Visual Studio 2026, manifes VSIX dikonfigurasi dengan batas bawah 17.0 dan tanpa batas atas:

<InstallationTarget
  Id="Microsoft.VisualStudio.Community"
  Version="[17.0,)" />

Konfigurasi ini memungkinkan ekstensi berjalan pada Visual Studio 2022 dan Visual Studio 2026 tanpa modifikasi.

Pengujian dan pemecahan masalah

Bahkan jika tidak ada perubahan yang diharapkan, uji ekstensi Anda di Visual Studio 2026 untuk menangkap:

  • Perubahan perilaku.
  • Masalah platform.
  • Penggunaan API yang tidak didukung.

Jika Anda mengalami masalah platform, laporkan dengan Laporkan Masalah di Visual Studio.

Ekstensi berbasis MSI

Model kompatibilitas hanya berlaku untuk ekstensi VSIX. Untuk ekstensi terdistribusi MSI:

  • Visual Studio tidak mengelola penginstalan atau kompatibilitas.
  • Anda bertanggung jawab untuk mengadaptasi alat penginstal untuk Visual Studio 2026.
  • Migrasi otomatis dari versi Visual Studio yang lebih lama tidak berlaku.

Petunjuk / Saran

Adopsi VSIX untuk distribusi jika memungkinkan. Penginstalan berbasis MSI harus digunakan hanya untuk kebutuhan distribusi kustom.