Firma Microsoft wprowadziła zmiany w binarnych wersjach rozszerzenia Microsoft C/C++ Extension (ms-vscode.cpptools), które blokują jego działanie w forach otwartego edytora kodu VS Code (Visual Studio Code). Rozszerzenie jest zastrzeżone i jest używane do dodawania wsparcia dla języków C/C++ w VS Code. Po aktualizacji do wersji 1.24.5 użytkownicy edytorów VS Codium i Cursor, opartych na kodzie VS Code, napotkali niemożność dalszego korzystania z dodatku od Microsoft.
Inicjalizacja dodatku kończyła się błędem, informującym, że pakiet Microsoft C/C++ Extension może być używany tylko w Microsoft Visual Studio, Visual Studio for Mac, Visual Studio Code, Azure DevOps, Team Foundation Server oraz powiązanych produktach i usługach Microsoft. Aby wznowić pracę z projektami w C/C++, użytkownicy są zmuszeni do powrotu do starszej wersji oraz wyłączenia automatycznej instalacji dodatków w ustawieniach.

Wcześniej, we wrześniu 2020 roku, firma Microsoft dodała umowę licencyjną, która zabrania używania binarnych wersji dodatku w zewnętrznych produktach. Do tej pory ten wymóg pozostawał formalnością i nie prowadził do blokady. Dodatkowo, warunki korzystania z sklepu z dodatkami do VS Code zabraniały połączeń z forka, jednak twórcy forka Cursor korzystali z odwrotnego proxy, aby to obejść.
Część kodu rozszerzenia Microsoft C/C++ Extension pozostaje na licencji MIT, a ograniczenia dotyczą tylko rozszerzonych wersji binarnych dystrybuowanych przez sklep aplikacji Microsoft na podstawie oddzielnej licencji zastrzeżonej. Otwarty pozostaje jedynie komponent w języku TypeScript, podczas gdy podstawowa funkcjonalność Runtime jest zastrzeżona i dostarczana w formie binarnej.
Twórcy projektu Cursor wydali aktualizację, która tymczasowo rozwiązują problem, a w przyszłości zdecydowali się zrezygnować z używania zastrzeżonych dodatków Remote access, Pylance, C/C++ oraz C#. W następnej wersji planują uwzględnić rozwijane przez społeczność otwarte alternatywy. Podobny krok w kierunku otwartych odpowiedników planują także twórcy projektu VS Codium.
Źródło: opennet.ru
