Skip to content

Releases: Smartling/smartling-cli

3.4

02 Jun 13:45
9625f9a

Choose a tag to compare

Smartling CLI 3.4

New: glossaries command group

Manage Smartling glossaries directly from the CLI - create them, and move terms in and out in CSV, XLSX, or TBX formats.

  • smartling-cli glossaries create <name> - create a glossary with one or more locales, an optional description, and fallback-locale mappings (--locale, --description, --fallback-locale).
  • smartling-cli glossaries list - list/search glossaries in the account, filterable by name (--name); supports simple, table, and json output.
  • smartling-cli glossaries export <uid|name> [outFile] - export glossary entries to CSV / XLSX / TBX, with locale selection (--locale), TBX version (--tbx-version), and rich --filter-* options (query, entry state, labels, created/modified date & user, and more). If outFile is omitted it writes to <glossaryUID>.<file-type>.
  • smartling-cli glossaries import <uid|name> <inFile> - upload a CSV / XLSX / TBX file into an existing glossary, with --archive-mode and --media-type override; the import is confirmed and polled to completion, reporting entry changes and warnings.

All four commands accept a glossary by UID or name, honor smartling.yml configuration (including --account fallback), and support the global --output format flag.

3.3.1

25 May 17:17
1dce03d

Choose a tag to compare

Smartling CLI 3.3.1

Bug fix - files push, files pull, and other file commands failed with parameter AccountUID cannot be empty for users whose smartling.yml does not include account_id. No config changes required to upgrade.

3.3

25 May 16:45
0eab8c1

Choose a tag to compare

3.3

Smartling CLI 3.3

Migrated to GoReleaser for cross-platform builds.

3.2

19 May 16:50
4080343

Choose a tag to compare

3.2

Smartling CLI 3.2

New Features

  • jobs progress command - track translation progress for a job (CON-1896, #95)
  • Bulk download of files attached to a job (RPS-10045, #101)
  • Account and project information banner shown at startup with --show-config (RPS-10094, #103)

Technical

  • Smaller release binaries via build flags (#102)

3.0

13 May 17:36
e69a880

Choose a tag to compare

3.0

Smartling CLI 3.0

New Features

  • upload/download aliases for push/pull commands (#88)
  • --nojob option for the upload command to skip job creation (CON-1842, #91)
  • --all option for the download command to fetch all files (CON-1843, #93)
  • Job information returned after upload (CON-1837, #89)

Improvements

  • Updated output format for mt translate (CON-1844, #90)
  • Parameter validation for commands (CON-1846, #92)
  • Informative log message when no file is downloaded (CON-1870, #94)
  • Updated documentation for file commands

Technical

  • Upgraded to Go 1.26.2 (#98)
  • Updated Smartling API SDK: FileDownload.includeOriginalStrings is now a pointer (#97)
  • Switched to io.ReadCloser for file streams (#96)

2.5

05 Sep 14:42

Choose a tag to compare

2.5

Changed

  • Updated documentation formatting for better readability
  • Enhanced command documentation (#81)
  • Upgraded Cobra CLI to version v1.10.1.

New Features

  • Generated Markdown documentation optimized for large language models (LLMs).

2.4.1

25 Aug 21:01
1ccdf51

Choose a tag to compare

What's Changed

  • Override file type implemented in #87

2.4

18 Aug 19:23
0ee9071

Choose a tag to compare

2.4

Bug Fixes

  • Updated a list of supported file types. Additionally, improved file type handling for the mt and file commands. (#86)

2.3

08 Aug 15:43
f934889

Choose a tag to compare

2.3

Bug Fixes

  • Fixed the files push command to support file upload directives.

2.2

21 Jul 15:01

Choose a tag to compare

2.2

New Features

Job-based File Uploads: The files push command now uploads all files as part of a Smartling Job by default. This provides better organization and workflow management for translation projects.

Learn more about Smartling Jobs:

Breaking Changes

The files push command includes one new flag and two updated flags:

New Flag

  • -j, --job <job name> - Specifies the Smartling translation job name or job UID. All files upload to this job. If not specified, defaults to "CLI uploads".

Updated Flags

  • -z, --authorize - Automatically authorizes the job with uploaded files and specified locales. Without this flag, the job remains unauthorized.
  • -l, --locale <locale code> - Adds files to the job for the specified locale only. Without this flag, files are added for all project locales. Can be used multiple times: --locale fr --locale de -l es.

Recommended Usage

smartling-cli files push <file> <uri> --job <job name> [--authorize] [--locale <locale>] [flags]

Backward Compatibility

CLI v2.2 maintains compatibility with the previous files push format. However, we recommend updating to the new format.

Legacy Command Behavior

smartling-cli files push <file> <uri>

When using the legacy format (without job name and locale):

  • Creates or reuses a job named "CLI uploads"
  • Attaches the file to all project locales
  • Leaves the job unauthorized

Migration Guide

  1. Add the --job flag to existing commands and specify a job name or UID

    • The same job name can be used across multiple CLI calls
    • CLI searches by job name and reuses existing jobs
    • If a job with the same name exists in Canceled or Closed state, a new job is created with a timestamp suffix
  2. Review locale targeting by explicitly adding the --locale flag if you need specific locales

    • Without --locale, CLI targets all project locales
  3. Consider authorization by adding the --authorize flag if you want automatic content authorization

    • Without --authorize, jobs remain unauthorized and require manual authorization