generaltranslation v8
Обзор
В 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.
- Поддержка ветвления для предпросмотра черновиков документов будет добавлена в одном из следующих релизов.