Назад

generaltranslation v8

Brian Lou avatarBrian Lou
generaltranslation8.0.0apitranslation

Обзор

В generaltranslation v8 мы вносим значительные изменения в API и объявляем некоторые функции API и эндпоинты устаревшими.

Старые версии API больше не будут поддерживаться.

Версии generaltranslation ниже 7.5, скорее всего, будут вызывать ошибки. Версии gtx-cli ниже 2.1.5, скорее всего, будут вызывать ошибки.


Мотивация

Чтобы повысить удобство для разработчиков, упростить дальнейшую разработку и облегчить управление переводами, мы добавляем поддержку ветвления и объявляем устаревшими некоторые API-эндпоинты, которые больше не используются.


Возможности

Новые функции API поддерживают ветвление, что позволяет создавать разные переводы для разных веток проекта.

Теперь каждый файл привязан к ветке. Версионирование файлов теперь определяется по branchId, fileId и versionId.

Ранее переводы файлов были привязаны к одной ветке. Кэшированные переводы файлов по умолчанию использовали последнюю обновлённую версию файла.

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

Новая система версионирования соответствует модели ветвления Git:

  • Обновление исходного файла в ветке создаёт новую версию файла.
  • Слияние ветки с main создаёт связь между исходным файлом в ветке main и исходным файлом в объединённой ветке.
    • В дальнейшем переводы будут учитывать переводы из обеих веток.
  • Переключение на ветку создаёт новую версию файла
    • Переводы в этой ветке будут использовать предыдущие переводы из ветки main.

Чтобы включить эту возможность, добавьте флаг --enable-branching к команде gtx-cli translate в последней версии gtx-cli.

По умолчанию ветвление отключено, и все файлы проекта привязаны к ветке main.

Чтобы использовать эту возможность, ваша организация должна быть на платном тарифе.

Изменения

generaltranslation

  • checkTranslationStatus помечен как устаревший
  • downloadFile помечен как устаревший
  • downloadTranslatedFile переименован в downloadFile
    • В зависимости от того, указана ли локаль, будет скачан либо исходный файл, либо соответствующий перевод
  • Изменены параметры downloadFile и downloadFileBatch
  • enqueueEntries помечен как устаревший
  • Изменены параметры enqueueFiles (добавлены branchIds)
  • fetchTranslations помечен как устаревший
  • shouldSetupProject помечен как устаревший
  • Изменены параметры submitUserEditDiffs (добавлены branchIds, поля id сделаны обязательными)
  • Изменены параметры uploadSourceFiles (добавлены branchIds)
  • Изменены параметры uploadTranslations (добавлены branchIds)
  • Изменены параметры querySourceFile (добавлены branchIds)
  • Добавлен checkJobStatus
  • Добавлен queryFileData
  • checkSetupStatus помечен как устаревший (используйте checkJobStatus)
  • checkFileTranslations помечен как устаревший (используйте queryFileData)

gtx-cli

  • Добавлен флаг --enable-branching в команду translate
  • Добавлен флаг --branch в команду translate
    • (Необязательно) Переопределяет ветку, используемую для перевода
  • Добавлен флаг --disable-branch-detection в команду translate
    • (Необязательно) В этом случае CLI не будет автоматически пытаться определить, какие ветки использовать.
    • Используйте этот флаг, если git не установлен или проект не является git-репозиторием.
  • Улучшены отслеживание прогресса перевода и логирование
  • Улучшена обработка ошибок перевода
  • Оптимизирована производительность API, чтобы избежать ненужной загрузки файлов через API

gt-sanity

  • Обновлено до последней версии generaltranslation
  • По умолчанию переводы используют ветку main.
    • Поддержка ветвления для предпросмотра черновиков документов будет добавлена в одном из следующих релизов.