Матрица поддержки

Точно знайте Что поддерживает Coroid

Эта матрица — самый наглядный обзор текущей поддержки языковых серверов, процессов сборки, сред тестирования и контейнеризованной проверки. Там, где требуется настройка, мы указываем это прямо.

LSP
5
Языки с текущей поддержкой
Сборка
4
Языки с текущей поддержкой
Docker
8
Языки с текущей поддержкой

Текущая совместимость

Используйте это как рабочий контракт на то, что Coroid может инспектировать, собирать и проверять сегодня.

ПоддерживаетсяЧастичноТребуется настройкаПланируется

TypeScript / JavaScript

Next.jsReactViteNode.js
  • Сегодня — самая полная поддержка от начала до конца, включая LSP, сборки и проверку в браузере.
LSP
Поддерживается
Сборка
Поддерживается
Тестирование
Поддерживается
Docker
Поддерживается

Мобильный TypeScript

ExpoReact NativeЛогика приложения на TypeScript
  • Проекты Expo и React Native поддерживаются через инструментарий TypeScript/Node. Проверка типов и тесты Jest возможны локально; для сборки в эмуляторе, на устройстве и в магазине требуется настройка платформы.
LSP
Поддерживается
Сборка
Частично
Тестирование
Поддерживается
Docker
Частично

Python

DjangoFlaskFastAPIrequirements.txt / pyproject
  • Поддержка Python LSP доступна; наиболее эффективна работа с рантаймами Django, Flask и FastAPI.
LSP
Поддерживается
Сборка
Частично
Тестирование
Частично
Docker
Поддерживается

Java

Spring BootQuarkusMicronautMavenGradle
  • Java теперь поддерживает LSP и контейнерные потоки на основе Maven. Gradle и частные артефакты лучше рассматривать как частичную поддержку с явной настройкой.
LSP
Поддерживается
Сборка
Поддерживается
Тестирование
Частично
Docker
Частично

.NET / C#

ASP.NET Coredotnet CLINuGet.sln / .csproj
  • .NET поддерживает LSP, потоки восстановления/сборки и запуск Docker ориентированный на ASP.NET. Для невеб-проектов возможности проверки времени выполнения более ограничены.
LSP
Поддерживается
Сборка
Поддерживается
Тестирование
Частично
Docker
Частично

Go

Gin / Go HTTPgo.mod
  • Сборка Go и запуск контейнеров просты. Полноценная поддержка семантического языкового сервера пока отсутствует.
LSP
Планируется
Сборка
Поддерживается
Тестирование
Частично
Docker
Поддерживается

PHP

LaravelSymfonyComposer
  • Для Laravel и Symfony существует запуск Docker специфичный для фреймворков, но семантический инструментарий и более широкая проверка остаются частичными.
LSP
Планируется
Сборка
Частично
Тестирование
Частично
Docker
Поддерживается

Ruby

RailsBundler
  • Проекты Rails можно запустить в Docker, но поддержка языкового сервера и глубокого покрытия сборки/тестов всё ещё ограничена.
LSP
Планируется
Сборка
Частично
Тестирование
Частично
Docker
Поддерживается

Возможно, потребуется дополнительная настройка

Для частных пакетных репозиториев требуются явные учетные данные

Зависимости из частных репозиториев Maven и NuGet будут работать при условии внедрения учетных данных репозитория или полных конфигурационных данных в среду выполнения задач. Coroid не пытается угадать параметры аутентификации частных репозиториев.

Для настройки конкретных репозиториев доступны хуки инициализации

Если для репозитория требуется дополнительная подготовка перед процессом восстановления или сборки, Coroid может выполнять скрипты или команды инициализации перед стандартной цепочкой установки/сборки/запуска.

Для работы с Java лучше всего подходят обертки или стандартные проекты Maven

Поддержка Maven реализована напрямую, а репозитории с обертками являются наиболее надежным вариантом. Поддержка Gradle наиболее эффективна при наличии зафиксированной обертки.

Проверка среды выполнения .NET зависит от наличия четко определенной точки входа в веб-приложение

Проекты ASP.NET Core с четко определенным исполняемым файлом проекта наилучшим образом подходят для проверки среды выполнения в контейнерах.

Для нативной сборки мобильных приложений необходимы инструменты платформы

Код Expo на TypeScript можно проверять на типы и тестировать без использования эмуляторов. Для сборки приложений для iOS на симуляторе/устройстве требуются macOS и Xcode; для сборки Android необходимы Android SDK или раннер, совместимый с Expo.

Работает лучше всего, когда

  • В вашем репозитории используются стандартные обёртки, такие как mvnw или gradlew, где это актуально.
  • Файлы блокировки зависимостей и манифесты актуальны и зафиксированы в репозитории.
  • Учётные данные частных поставщиков добавляются как переменные окружения, а не сохраняются в локальных настройках.
  • Любые разовые шаги восстановления или генерации кода описаны в скрипте инициализации, а не передаются устно.

Совместимость максимальна, если в репозиториях есть стандартные обертки, файлы блокировок, четкие точки входа и явные учетные данные для закрытых зависимостей.