From 509abfa3c860cc27508fbd4884fc87ce184871e0 Mon Sep 17 00:00:00 2001 From: Andrii Bodnar Date: Mon, 20 Jul 2026 11:11:04 +0300 Subject: [PATCH 1/5] chore: upgrade to Crowdin CLI 5 (5.0.0-next.3) for v3 pre-release - Bump Docker base image to crowdin/cli:5.0.0-next.3 - Document CLI 5 arg-level breaking changes in README - Update pre-translate examples to auto-translate (renamed in CLI 5) Co-Authored-By: Claude Opus 4.8 (1M context) --- Dockerfile | 2 +- README.md | 26 ++++++++++++++++---------- docs/AI.md | 8 ++++---- docs/EXAMPLES.md | 36 ++++++++++++++++++------------------ 4 files changed, 39 insertions(+), 33 deletions(-) diff --git a/Dockerfile b/Dockerfile index ca83eb8..7d59f85 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM crowdin/cli:4.15.1 +FROM crowdin/cli:5.0.0 RUN apk --no-cache add curl git git-lfs jq gnupg su-exec; diff --git a/README.md b/README.md index af10312..c0215d8 100644 --- a/README.md +++ b/README.md @@ -36,15 +36,21 @@ This action allows you to easily integrate and automate the localization of your - Creates a PR with the translations. - Run any [Crowdin CLI](https://crowdin.github.io/crowdin-cli/commands/crowdin) command. -> [!NOTE] -> A **v3 pre-release** of this action is available, running on [Crowdin CLI 5](https://github.com/crowdin/crowdin-cli/releases) - a complete rewrite that starts instantly and no longer requires Java. Most workflows carry over unchanged. To try it, pin the pre-release tag: +## Crowdin CLI 5 + +> [!IMPORTANT] +> This is a **pre-release** version of the action (`v3`) that runs on [Crowdin CLI 5](https://github.com/crowdin/crowdin-cli/releases) — a complete rewrite that starts instantly and no longer requires Java. The command tree, the `crowdin.yml` configuration file, and the exit codes stay the same, so most workflows carry over unchanged. > -> ```yaml -> # See the releases page for the latest pre-release tag: https://github.com/crowdin/github-action/releases -> - uses: crowdin/github-action@v3.0.0-next.3 -> ``` +> If you pass custom arguments via `command`, `command_args`, or any `*_args` input, review the following breaking changes: > -> Review the [Crowdin CLI 5 breaking changes](https://github.com/crowdin/crowdin-cli/discussions/1043) before upgrading. `@v2` remains the recommended stable version. +> - The `pre-translate` command is now `auto-translate` (no alias). +> - `auto-translate`: the `--translate-untranslated-only` option was removed — use `--scope` instead (untranslated is the default). +> - `--plain` was removed — use the global `--output plain` option instead. +> - Redundant negatable flags were removed — only the form that changes the default behavior is kept (e.g. `--auto-update` was removed while `--no-auto-update` stays; `--no-auto-approve-imported`, `--no-import-eq-suggestions`, `--no-translate-hidden`, and `--no-auto-tag` were removed). The defaults are unchanged, so simply drop the removed form. +> - `--preserve-hierarchy` was removed — set `preserve_hierarchy: true` in your configuration file instead (`--no-preserve-hierarchy` still works). +> +> See the [Crowdin CLI 5 release notes](https://github.com/crowdin/crowdin-cli/releases) for the full list of changes. + ## Usage @@ -70,7 +76,7 @@ jobs: uses: actions/checkout@v7 - name: crowdin action - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v3.0.0-next.0 with: upload_sources: true upload_translations: false @@ -223,9 +229,9 @@ You can also run any other Crowdin CLI command by specifying the `command` and ` ```yaml - name: crowdin action - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v3.0.0-next.0 with: - command: 'pre-translate' + command: 'auto-translate' command_args: '-l uk --method tm --branch main' # Access the command output in subsequent steps (optional) diff --git a/docs/AI.md b/docs/AI.md index a9543a8..4fc4a44 100644 --- a/docs/AI.md +++ b/docs/AI.md @@ -49,7 +49,7 @@ jobs: - uses: actions/checkout@v7 - name: Upload Sources to Crowdin - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v3.0.0-next.0 with: upload_sources: true upload_translations: false @@ -62,16 +62,16 @@ jobs: CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} - name: Pre-translate with AI - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v3.0.0-next.0 with: - command: 'pre-translate' + command: 'auto-translate' command_args: '--method ai --ai-prompt=${{ secrets.PROMPT_ID }}' env: CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }} CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} - name: Download Translations from Crowdin - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v3.0.0-next.0 with: upload_sources: false upload_translations: false diff --git a/docs/EXAMPLES.md b/docs/EXAMPLES.md index 9d918c0..a6f2c2f 100644 --- a/docs/EXAMPLES.md +++ b/docs/EXAMPLES.md @@ -51,7 +51,7 @@ jobs: uses: actions/checkout@v7 - name: Synchronize with Crowdin - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v3.0.0-next.0 with: upload_sources: true upload_translations: true @@ -85,7 +85,7 @@ jobs: uses: actions/checkout@v7 - name: Synchronize with Crowdin - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v3.0.0-next.0 with: upload_sources: true upload_translations: false @@ -117,7 +117,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin sync - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v3.0.0-next.0 with: upload_sources: true upload_translations: false @@ -151,7 +151,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin push - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v3.0.0-next.0 with: upload_sources: true upload_translations: false @@ -178,7 +178,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin push - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v3.0.0-next.0 with: upload_sources: true upload_translations: false @@ -224,7 +224,7 @@ jobs: restore-keys: crowdin-${{ github.ref_name }}- - name: Crowdin push - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v3.0.0-next.0 with: upload_sources: true upload_translations: false @@ -263,7 +263,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin pull - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v3.0.0-next.0 with: upload_sources: false upload_translations: false @@ -298,7 +298,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin pull - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v3.0.0-next.0 with: download_translations: false download_bundle: 1 @@ -334,7 +334,7 @@ jobs: uses: actions/checkout@v7 - name: Synchronize with Crowdin - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v3.0.0-next.0 with: upload_sources: true upload_translations: true @@ -364,7 +364,7 @@ By default, the Action looks for the `crowdin.yml` file in the repository root. # ... - name: Crowdin - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v3.0.0-next.0 with: config: '.github/crowdin.yml' #... @@ -396,7 +396,7 @@ jobs: uses: actions/checkout@v7 - name: Matrix - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v3.0.0-next.0 with: upload_sources: false upload_translations: false @@ -442,7 +442,7 @@ jobs: fetch-depth: 0 - name: Synchronize with Crowdin - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v3.0.0-next.0 with: upload_sources: true upload_translations: true @@ -527,7 +527,7 @@ There is a possibility to get the URL, number, and creation status of the Pull R ```yaml # ... - name: Crowdin - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v3.0.0-next.0 id: crowdin-download with: download_translations: true @@ -588,7 +588,7 @@ jobs: permission-pull-requests: write - name: Synchronize with Crowdin - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v3.0.0-next.0 with: upload_sources: true download_translations: true @@ -627,7 +627,7 @@ jobs: uses: actions/checkout@v7 - name: Check translation progress - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v3.0.0-next.0 with: command: 'status translation' command_args: '--fail-if-incomplete' @@ -654,16 +654,16 @@ jobs: uses: actions/checkout@v7 - name: Pre-translate - uses: crowdin/github-action@v2 + uses: crowdin/github-action@v3.0.0-next.0 with: - command: 'pre-translate' + command: 'auto-translate' command_args: '--language uk --method tm' env: CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }} CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} ``` -Visit the [official documentation](https://crowdin.github.io/crowdin-cli/commands/crowdin-pre-translate) to learn more about the available pre-translation options. +Visit the [official documentation](https://crowdin.github.io/crowdin-cli/commands/crowdin-auto-translate) to learn more about the available pre-translation options. ### Run test workflows on all commits of a PR From f3c56a995c61677b79643b17993313fbb36704ca Mon Sep 17 00:00:00 2001 From: Andrii Bodnar Date: Wed, 22 Jul 2026 12:29:39 +0300 Subject: [PATCH 2/5] chore: v3.0.0-next.1 --- README.md | 4 ++-- docs/AI.md | 6 +++--- docs/EXAMPLES.md | 32 ++++++++++++++++---------------- 3 files changed, 21 insertions(+), 21 deletions(-) diff --git a/README.md b/README.md index c0215d8..d119b5c 100644 --- a/README.md +++ b/README.md @@ -76,7 +76,7 @@ jobs: uses: actions/checkout@v7 - name: crowdin action - uses: crowdin/github-action@v3.0.0-next.0 + uses: crowdin/github-action@v3.0.0-next.1 with: upload_sources: true upload_translations: false @@ -229,7 +229,7 @@ You can also run any other Crowdin CLI command by specifying the `command` and ` ```yaml - name: crowdin action - uses: crowdin/github-action@v3.0.0-next.0 + uses: crowdin/github-action@v3.0.0-next.1 with: command: 'auto-translate' command_args: '-l uk --method tm --branch main' diff --git a/docs/AI.md b/docs/AI.md index 4fc4a44..e8bfb4b 100644 --- a/docs/AI.md +++ b/docs/AI.md @@ -49,7 +49,7 @@ jobs: - uses: actions/checkout@v7 - name: Upload Sources to Crowdin - uses: crowdin/github-action@v3.0.0-next.0 + uses: crowdin/github-action@v3.0.0-next.1 with: upload_sources: true upload_translations: false @@ -62,7 +62,7 @@ jobs: CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} - name: Pre-translate with AI - uses: crowdin/github-action@v3.0.0-next.0 + uses: crowdin/github-action@v3.0.0-next.1 with: command: 'auto-translate' command_args: '--method ai --ai-prompt=${{ secrets.PROMPT_ID }}' @@ -71,7 +71,7 @@ jobs: CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} - name: Download Translations from Crowdin - uses: crowdin/github-action@v3.0.0-next.0 + uses: crowdin/github-action@v3.0.0-next.1 with: upload_sources: false upload_translations: false diff --git a/docs/EXAMPLES.md b/docs/EXAMPLES.md index a6f2c2f..3141c7e 100644 --- a/docs/EXAMPLES.md +++ b/docs/EXAMPLES.md @@ -51,7 +51,7 @@ jobs: uses: actions/checkout@v7 - name: Synchronize with Crowdin - uses: crowdin/github-action@v3.0.0-next.0 + uses: crowdin/github-action@v3.0.0-next.1 with: upload_sources: true upload_translations: true @@ -85,7 +85,7 @@ jobs: uses: actions/checkout@v7 - name: Synchronize with Crowdin - uses: crowdin/github-action@v3.0.0-next.0 + uses: crowdin/github-action@v3.0.0-next.1 with: upload_sources: true upload_translations: false @@ -117,7 +117,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin sync - uses: crowdin/github-action@v3.0.0-next.0 + uses: crowdin/github-action@v3.0.0-next.1 with: upload_sources: true upload_translations: false @@ -151,7 +151,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin push - uses: crowdin/github-action@v3.0.0-next.0 + uses: crowdin/github-action@v3.0.0-next.1 with: upload_sources: true upload_translations: false @@ -178,7 +178,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin push - uses: crowdin/github-action@v3.0.0-next.0 + uses: crowdin/github-action@v3.0.0-next.1 with: upload_sources: true upload_translations: false @@ -224,7 +224,7 @@ jobs: restore-keys: crowdin-${{ github.ref_name }}- - name: Crowdin push - uses: crowdin/github-action@v3.0.0-next.0 + uses: crowdin/github-action@v3.0.0-next.1 with: upload_sources: true upload_translations: false @@ -263,7 +263,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin pull - uses: crowdin/github-action@v3.0.0-next.0 + uses: crowdin/github-action@v3.0.0-next.1 with: upload_sources: false upload_translations: false @@ -298,7 +298,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin pull - uses: crowdin/github-action@v3.0.0-next.0 + uses: crowdin/github-action@v3.0.0-next.1 with: download_translations: false download_bundle: 1 @@ -334,7 +334,7 @@ jobs: uses: actions/checkout@v7 - name: Synchronize with Crowdin - uses: crowdin/github-action@v3.0.0-next.0 + uses: crowdin/github-action@v3.0.0-next.1 with: upload_sources: true upload_translations: true @@ -364,7 +364,7 @@ By default, the Action looks for the `crowdin.yml` file in the repository root. # ... - name: Crowdin - uses: crowdin/github-action@v3.0.0-next.0 + uses: crowdin/github-action@v3.0.0-next.1 with: config: '.github/crowdin.yml' #... @@ -396,7 +396,7 @@ jobs: uses: actions/checkout@v7 - name: Matrix - uses: crowdin/github-action@v3.0.0-next.0 + uses: crowdin/github-action@v3.0.0-next.1 with: upload_sources: false upload_translations: false @@ -442,7 +442,7 @@ jobs: fetch-depth: 0 - name: Synchronize with Crowdin - uses: crowdin/github-action@v3.0.0-next.0 + uses: crowdin/github-action@v3.0.0-next.1 with: upload_sources: true upload_translations: true @@ -527,7 +527,7 @@ There is a possibility to get the URL, number, and creation status of the Pull R ```yaml # ... - name: Crowdin - uses: crowdin/github-action@v3.0.0-next.0 + uses: crowdin/github-action@v3.0.0-next.1 id: crowdin-download with: download_translations: true @@ -588,7 +588,7 @@ jobs: permission-pull-requests: write - name: Synchronize with Crowdin - uses: crowdin/github-action@v3.0.0-next.0 + uses: crowdin/github-action@v3.0.0-next.1 with: upload_sources: true download_translations: true @@ -627,7 +627,7 @@ jobs: uses: actions/checkout@v7 - name: Check translation progress - uses: crowdin/github-action@v3.0.0-next.0 + uses: crowdin/github-action@v3.0.0-next.1 with: command: 'status translation' command_args: '--fail-if-incomplete' @@ -654,7 +654,7 @@ jobs: uses: actions/checkout@v7 - name: Pre-translate - uses: crowdin/github-action@v3.0.0-next.0 + uses: crowdin/github-action@v3.0.0-next.1 with: command: 'auto-translate' command_args: '--language uk --method tm' From 1a148f40f35bd182ea8e700a14aa1b65845c5f2b Mon Sep 17 00:00:00 2001 From: Andrii Bodnar Date: Thu, 23 Jul 2026 14:44:21 +0300 Subject: [PATCH 3/5] chore: v3.0.0-next.2 --- README.md | 4 ++-- docs/AI.md | 6 +++--- docs/EXAMPLES.md | 32 ++++++++++++++++---------------- 3 files changed, 21 insertions(+), 21 deletions(-) diff --git a/README.md b/README.md index d119b5c..d3a80b8 100644 --- a/README.md +++ b/README.md @@ -76,7 +76,7 @@ jobs: uses: actions/checkout@v7 - name: crowdin action - uses: crowdin/github-action@v3.0.0-next.1 + uses: crowdin/github-action@v3.0.0-next.2 with: upload_sources: true upload_translations: false @@ -229,7 +229,7 @@ You can also run any other Crowdin CLI command by specifying the `command` and ` ```yaml - name: crowdin action - uses: crowdin/github-action@v3.0.0-next.1 + uses: crowdin/github-action@v3.0.0-next.2 with: command: 'auto-translate' command_args: '-l uk --method tm --branch main' diff --git a/docs/AI.md b/docs/AI.md index e8bfb4b..32b5a0b 100644 --- a/docs/AI.md +++ b/docs/AI.md @@ -49,7 +49,7 @@ jobs: - uses: actions/checkout@v7 - name: Upload Sources to Crowdin - uses: crowdin/github-action@v3.0.0-next.1 + uses: crowdin/github-action@v3.0.0-next.2 with: upload_sources: true upload_translations: false @@ -62,7 +62,7 @@ jobs: CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} - name: Pre-translate with AI - uses: crowdin/github-action@v3.0.0-next.1 + uses: crowdin/github-action@v3.0.0-next.2 with: command: 'auto-translate' command_args: '--method ai --ai-prompt=${{ secrets.PROMPT_ID }}' @@ -71,7 +71,7 @@ jobs: CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} - name: Download Translations from Crowdin - uses: crowdin/github-action@v3.0.0-next.1 + uses: crowdin/github-action@v3.0.0-next.2 with: upload_sources: false upload_translations: false diff --git a/docs/EXAMPLES.md b/docs/EXAMPLES.md index 3141c7e..ccd88a3 100644 --- a/docs/EXAMPLES.md +++ b/docs/EXAMPLES.md @@ -51,7 +51,7 @@ jobs: uses: actions/checkout@v7 - name: Synchronize with Crowdin - uses: crowdin/github-action@v3.0.0-next.1 + uses: crowdin/github-action@v3.0.0-next.2 with: upload_sources: true upload_translations: true @@ -85,7 +85,7 @@ jobs: uses: actions/checkout@v7 - name: Synchronize with Crowdin - uses: crowdin/github-action@v3.0.0-next.1 + uses: crowdin/github-action@v3.0.0-next.2 with: upload_sources: true upload_translations: false @@ -117,7 +117,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin sync - uses: crowdin/github-action@v3.0.0-next.1 + uses: crowdin/github-action@v3.0.0-next.2 with: upload_sources: true upload_translations: false @@ -151,7 +151,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin push - uses: crowdin/github-action@v3.0.0-next.1 + uses: crowdin/github-action@v3.0.0-next.2 with: upload_sources: true upload_translations: false @@ -178,7 +178,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin push - uses: crowdin/github-action@v3.0.0-next.1 + uses: crowdin/github-action@v3.0.0-next.2 with: upload_sources: true upload_translations: false @@ -224,7 +224,7 @@ jobs: restore-keys: crowdin-${{ github.ref_name }}- - name: Crowdin push - uses: crowdin/github-action@v3.0.0-next.1 + uses: crowdin/github-action@v3.0.0-next.2 with: upload_sources: true upload_translations: false @@ -263,7 +263,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin pull - uses: crowdin/github-action@v3.0.0-next.1 + uses: crowdin/github-action@v3.0.0-next.2 with: upload_sources: false upload_translations: false @@ -298,7 +298,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin pull - uses: crowdin/github-action@v3.0.0-next.1 + uses: crowdin/github-action@v3.0.0-next.2 with: download_translations: false download_bundle: 1 @@ -334,7 +334,7 @@ jobs: uses: actions/checkout@v7 - name: Synchronize with Crowdin - uses: crowdin/github-action@v3.0.0-next.1 + uses: crowdin/github-action@v3.0.0-next.2 with: upload_sources: true upload_translations: true @@ -364,7 +364,7 @@ By default, the Action looks for the `crowdin.yml` file in the repository root. # ... - name: Crowdin - uses: crowdin/github-action@v3.0.0-next.1 + uses: crowdin/github-action@v3.0.0-next.2 with: config: '.github/crowdin.yml' #... @@ -396,7 +396,7 @@ jobs: uses: actions/checkout@v7 - name: Matrix - uses: crowdin/github-action@v3.0.0-next.1 + uses: crowdin/github-action@v3.0.0-next.2 with: upload_sources: false upload_translations: false @@ -442,7 +442,7 @@ jobs: fetch-depth: 0 - name: Synchronize with Crowdin - uses: crowdin/github-action@v3.0.0-next.1 + uses: crowdin/github-action@v3.0.0-next.2 with: upload_sources: true upload_translations: true @@ -527,7 +527,7 @@ There is a possibility to get the URL, number, and creation status of the Pull R ```yaml # ... - name: Crowdin - uses: crowdin/github-action@v3.0.0-next.1 + uses: crowdin/github-action@v3.0.0-next.2 id: crowdin-download with: download_translations: true @@ -588,7 +588,7 @@ jobs: permission-pull-requests: write - name: Synchronize with Crowdin - uses: crowdin/github-action@v3.0.0-next.1 + uses: crowdin/github-action@v3.0.0-next.2 with: upload_sources: true download_translations: true @@ -627,7 +627,7 @@ jobs: uses: actions/checkout@v7 - name: Check translation progress - uses: crowdin/github-action@v3.0.0-next.1 + uses: crowdin/github-action@v3.0.0-next.2 with: command: 'status translation' command_args: '--fail-if-incomplete' @@ -654,7 +654,7 @@ jobs: uses: actions/checkout@v7 - name: Pre-translate - uses: crowdin/github-action@v3.0.0-next.1 + uses: crowdin/github-action@v3.0.0-next.2 with: command: 'auto-translate' command_args: '--language uk --method tm' From 673b1e43aef6dfe0cef9edee7b8bec6c16c3a75c Mon Sep 17 00:00:00 2001 From: Andrii Bodnar <29282228+andrii-bodnar@users.noreply.github.com> Date: Thu, 13 Aug 2026 14:34:38 +0300 Subject: [PATCH 4/5] chore: v3.0.0-next.3 Co-Authored-By: Claude Opus 5 (1M context) --- README.md | 4 ++-- docs/AI.md | 6 +++--- docs/EXAMPLES.md | 32 ++++++++++++++++---------------- 3 files changed, 21 insertions(+), 21 deletions(-) diff --git a/README.md b/README.md index d3a80b8..f05c401 100644 --- a/README.md +++ b/README.md @@ -76,7 +76,7 @@ jobs: uses: actions/checkout@v7 - name: crowdin action - uses: crowdin/github-action@v3.0.0-next.2 + uses: crowdin/github-action@v3.0.0-next.3 with: upload_sources: true upload_translations: false @@ -229,7 +229,7 @@ You can also run any other Crowdin CLI command by specifying the `command` and ` ```yaml - name: crowdin action - uses: crowdin/github-action@v3.0.0-next.2 + uses: crowdin/github-action@v3.0.0-next.3 with: command: 'auto-translate' command_args: '-l uk --method tm --branch main' diff --git a/docs/AI.md b/docs/AI.md index 32b5a0b..8433a86 100644 --- a/docs/AI.md +++ b/docs/AI.md @@ -49,7 +49,7 @@ jobs: - uses: actions/checkout@v7 - name: Upload Sources to Crowdin - uses: crowdin/github-action@v3.0.0-next.2 + uses: crowdin/github-action@v3.0.0-next.3 with: upload_sources: true upload_translations: false @@ -62,7 +62,7 @@ jobs: CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} - name: Pre-translate with AI - uses: crowdin/github-action@v3.0.0-next.2 + uses: crowdin/github-action@v3.0.0-next.3 with: command: 'auto-translate' command_args: '--method ai --ai-prompt=${{ secrets.PROMPT_ID }}' @@ -71,7 +71,7 @@ jobs: CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} - name: Download Translations from Crowdin - uses: crowdin/github-action@v3.0.0-next.2 + uses: crowdin/github-action@v3.0.0-next.3 with: upload_sources: false upload_translations: false diff --git a/docs/EXAMPLES.md b/docs/EXAMPLES.md index ccd88a3..de8674a 100644 --- a/docs/EXAMPLES.md +++ b/docs/EXAMPLES.md @@ -51,7 +51,7 @@ jobs: uses: actions/checkout@v7 - name: Synchronize with Crowdin - uses: crowdin/github-action@v3.0.0-next.2 + uses: crowdin/github-action@v3.0.0-next.3 with: upload_sources: true upload_translations: true @@ -85,7 +85,7 @@ jobs: uses: actions/checkout@v7 - name: Synchronize with Crowdin - uses: crowdin/github-action@v3.0.0-next.2 + uses: crowdin/github-action@v3.0.0-next.3 with: upload_sources: true upload_translations: false @@ -117,7 +117,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin sync - uses: crowdin/github-action@v3.0.0-next.2 + uses: crowdin/github-action@v3.0.0-next.3 with: upload_sources: true upload_translations: false @@ -151,7 +151,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin push - uses: crowdin/github-action@v3.0.0-next.2 + uses: crowdin/github-action@v3.0.0-next.3 with: upload_sources: true upload_translations: false @@ -178,7 +178,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin push - uses: crowdin/github-action@v3.0.0-next.2 + uses: crowdin/github-action@v3.0.0-next.3 with: upload_sources: true upload_translations: false @@ -224,7 +224,7 @@ jobs: restore-keys: crowdin-${{ github.ref_name }}- - name: Crowdin push - uses: crowdin/github-action@v3.0.0-next.2 + uses: crowdin/github-action@v3.0.0-next.3 with: upload_sources: true upload_translations: false @@ -263,7 +263,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin pull - uses: crowdin/github-action@v3.0.0-next.2 + uses: crowdin/github-action@v3.0.0-next.3 with: upload_sources: false upload_translations: false @@ -298,7 +298,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin pull - uses: crowdin/github-action@v3.0.0-next.2 + uses: crowdin/github-action@v3.0.0-next.3 with: download_translations: false download_bundle: 1 @@ -334,7 +334,7 @@ jobs: uses: actions/checkout@v7 - name: Synchronize with Crowdin - uses: crowdin/github-action@v3.0.0-next.2 + uses: crowdin/github-action@v3.0.0-next.3 with: upload_sources: true upload_translations: true @@ -364,7 +364,7 @@ By default, the Action looks for the `crowdin.yml` file in the repository root. # ... - name: Crowdin - uses: crowdin/github-action@v3.0.0-next.2 + uses: crowdin/github-action@v3.0.0-next.3 with: config: '.github/crowdin.yml' #... @@ -396,7 +396,7 @@ jobs: uses: actions/checkout@v7 - name: Matrix - uses: crowdin/github-action@v3.0.0-next.2 + uses: crowdin/github-action@v3.0.0-next.3 with: upload_sources: false upload_translations: false @@ -442,7 +442,7 @@ jobs: fetch-depth: 0 - name: Synchronize with Crowdin - uses: crowdin/github-action@v3.0.0-next.2 + uses: crowdin/github-action@v3.0.0-next.3 with: upload_sources: true upload_translations: true @@ -527,7 +527,7 @@ There is a possibility to get the URL, number, and creation status of the Pull R ```yaml # ... - name: Crowdin - uses: crowdin/github-action@v3.0.0-next.2 + uses: crowdin/github-action@v3.0.0-next.3 id: crowdin-download with: download_translations: true @@ -588,7 +588,7 @@ jobs: permission-pull-requests: write - name: Synchronize with Crowdin - uses: crowdin/github-action@v3.0.0-next.2 + uses: crowdin/github-action@v3.0.0-next.3 with: upload_sources: true download_translations: true @@ -627,7 +627,7 @@ jobs: uses: actions/checkout@v7 - name: Check translation progress - uses: crowdin/github-action@v3.0.0-next.2 + uses: crowdin/github-action@v3.0.0-next.3 with: command: 'status translation' command_args: '--fail-if-incomplete' @@ -654,7 +654,7 @@ jobs: uses: actions/checkout@v7 - name: Pre-translate - uses: crowdin/github-action@v3.0.0-next.2 + uses: crowdin/github-action@v3.0.0-next.3 with: command: 'auto-translate' command_args: '--language uk --method tm' From c3ec72e51b2a25100803c9de37889f8a450fab99 Mon Sep 17 00:00:00 2001 From: Andrii Bodnar <29282228+andrii-bodnar@users.noreply.github.com> Date: Wed, 26 Aug 2026 17:04:15 +0300 Subject: [PATCH 5/5] chore: v3.0.0 Co-Authored-By: Claude Fable 5 --- README.md | 6 +++--- docs/AI.md | 6 +++--- docs/EXAMPLES.md | 32 ++++++++++++++++---------------- 3 files changed, 22 insertions(+), 22 deletions(-) diff --git a/README.md b/README.md index f05c401..570dec2 100644 --- a/README.md +++ b/README.md @@ -39,7 +39,7 @@ This action allows you to easily integrate and automate the localization of your ## Crowdin CLI 5 > [!IMPORTANT] -> This is a **pre-release** version of the action (`v3`) that runs on [Crowdin CLI 5](https://github.com/crowdin/crowdin-cli/releases) — a complete rewrite that starts instantly and no longer requires Java. The command tree, the `crowdin.yml` configuration file, and the exit codes stay the same, so most workflows carry over unchanged. +> The `v3` version of the action runs on [Crowdin CLI 5](https://github.com/crowdin/crowdin-cli/releases) — a complete rewrite that starts instantly and no longer requires Java. The commands, the `crowdin.yml` configuration file, and the exit codes stay the same, so most workflows carry over unchanged when upgrading from `v2`. > > If you pass custom arguments via `command`, `command_args`, or any `*_args` input, review the following breaking changes: > @@ -76,7 +76,7 @@ jobs: uses: actions/checkout@v7 - name: crowdin action - uses: crowdin/github-action@v3.0.0-next.3 + uses: crowdin/github-action@v3 with: upload_sources: true upload_translations: false @@ -229,7 +229,7 @@ You can also run any other Crowdin CLI command by specifying the `command` and ` ```yaml - name: crowdin action - uses: crowdin/github-action@v3.0.0-next.3 + uses: crowdin/github-action@v3 with: command: 'auto-translate' command_args: '-l uk --method tm --branch main' diff --git a/docs/AI.md b/docs/AI.md index 8433a86..1feaf3b 100644 --- a/docs/AI.md +++ b/docs/AI.md @@ -49,7 +49,7 @@ jobs: - uses: actions/checkout@v7 - name: Upload Sources to Crowdin - uses: crowdin/github-action@v3.0.0-next.3 + uses: crowdin/github-action@v3 with: upload_sources: true upload_translations: false @@ -62,7 +62,7 @@ jobs: CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} - name: Pre-translate with AI - uses: crowdin/github-action@v3.0.0-next.3 + uses: crowdin/github-action@v3 with: command: 'auto-translate' command_args: '--method ai --ai-prompt=${{ secrets.PROMPT_ID }}' @@ -71,7 +71,7 @@ jobs: CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }} - name: Download Translations from Crowdin - uses: crowdin/github-action@v3.0.0-next.3 + uses: crowdin/github-action@v3 with: upload_sources: false upload_translations: false diff --git a/docs/EXAMPLES.md b/docs/EXAMPLES.md index de8674a..2fccc47 100644 --- a/docs/EXAMPLES.md +++ b/docs/EXAMPLES.md @@ -51,7 +51,7 @@ jobs: uses: actions/checkout@v7 - name: Synchronize with Crowdin - uses: crowdin/github-action@v3.0.0-next.3 + uses: crowdin/github-action@v3 with: upload_sources: true upload_translations: true @@ -85,7 +85,7 @@ jobs: uses: actions/checkout@v7 - name: Synchronize with Crowdin - uses: crowdin/github-action@v3.0.0-next.3 + uses: crowdin/github-action@v3 with: upload_sources: true upload_translations: false @@ -117,7 +117,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin sync - uses: crowdin/github-action@v3.0.0-next.3 + uses: crowdin/github-action@v3 with: upload_sources: true upload_translations: false @@ -151,7 +151,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin push - uses: crowdin/github-action@v3.0.0-next.3 + uses: crowdin/github-action@v3 with: upload_sources: true upload_translations: false @@ -178,7 +178,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin push - uses: crowdin/github-action@v3.0.0-next.3 + uses: crowdin/github-action@v3 with: upload_sources: true upload_translations: false @@ -224,7 +224,7 @@ jobs: restore-keys: crowdin-${{ github.ref_name }}- - name: Crowdin push - uses: crowdin/github-action@v3.0.0-next.3 + uses: crowdin/github-action@v3 with: upload_sources: true upload_translations: false @@ -263,7 +263,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin pull - uses: crowdin/github-action@v3.0.0-next.3 + uses: crowdin/github-action@v3 with: upload_sources: false upload_translations: false @@ -298,7 +298,7 @@ jobs: uses: actions/checkout@v7 - name: Crowdin pull - uses: crowdin/github-action@v3.0.0-next.3 + uses: crowdin/github-action@v3 with: download_translations: false download_bundle: 1 @@ -334,7 +334,7 @@ jobs: uses: actions/checkout@v7 - name: Synchronize with Crowdin - uses: crowdin/github-action@v3.0.0-next.3 + uses: crowdin/github-action@v3 with: upload_sources: true upload_translations: true @@ -364,7 +364,7 @@ By default, the Action looks for the `crowdin.yml` file in the repository root. # ... - name: Crowdin - uses: crowdin/github-action@v3.0.0-next.3 + uses: crowdin/github-action@v3 with: config: '.github/crowdin.yml' #... @@ -396,7 +396,7 @@ jobs: uses: actions/checkout@v7 - name: Matrix - uses: crowdin/github-action@v3.0.0-next.3 + uses: crowdin/github-action@v3 with: upload_sources: false upload_translations: false @@ -442,7 +442,7 @@ jobs: fetch-depth: 0 - name: Synchronize with Crowdin - uses: crowdin/github-action@v3.0.0-next.3 + uses: crowdin/github-action@v3 with: upload_sources: true upload_translations: true @@ -527,7 +527,7 @@ There is a possibility to get the URL, number, and creation status of the Pull R ```yaml # ... - name: Crowdin - uses: crowdin/github-action@v3.0.0-next.3 + uses: crowdin/github-action@v3 id: crowdin-download with: download_translations: true @@ -588,7 +588,7 @@ jobs: permission-pull-requests: write - name: Synchronize with Crowdin - uses: crowdin/github-action@v3.0.0-next.3 + uses: crowdin/github-action@v3 with: upload_sources: true download_translations: true @@ -627,7 +627,7 @@ jobs: uses: actions/checkout@v7 - name: Check translation progress - uses: crowdin/github-action@v3.0.0-next.3 + uses: crowdin/github-action@v3 with: command: 'status translation' command_args: '--fail-if-incomplete' @@ -654,7 +654,7 @@ jobs: uses: actions/checkout@v7 - name: Pre-translate - uses: crowdin/github-action@v3.0.0-next.3 + uses: crowdin/github-action@v3 with: command: 'auto-translate' command_args: '--language uk --method tm'