Transifex Client Updates: Branch Support, Parallel Requests, and More

Transifex Client Updates: Branch Support, Parallel Requests, and More
Mike Giannakopoulos
April 2, 2018
3 min read

Many of you rely on the Transifex command-line client as a part of your localization workflow. To make it more powerful and user friendly, we released v0.13.0 and v.0.13.1 of the Transifex client earlier this year.

Today, we’re releasing v0.13.2 to improve the client’s performance.

Here’s a look at what’s new in these three releases.

CLI v0.13.x updates

Translate branch-specific versions of files

Depending on your workflow, you may want translations to start before a feature branch is merged into the mainline branch so translations are done by the time you’re ready to deploy.

To support this type of use case, we’ve added support for branches for the tx push and tx pull commands. With the -b or --branch option, you can now push and pull branch-specific versions of your files.

$ tx push -s -b dashboard_update

Push and pull files more quickly

By default, the client makes requests to Transifex serially. This means if you have many files, it could take some time to push or pull them.

Now you can use the --parallel option to push or pull several files in parallel.

$ tx pull -a –parallel

When you use this option, you should see a 2 to 3x improvement in upload and download speeds. (Just be careful when using this option with many files as it may cause you to hit your API rate limits.)

Easier client configuration

Some of your projects might have many source files. In this past, this meant you would have to run tx set again and again to configure the client to work with each file.

As of v0.13.0 of the client, you can configure the client for use with hundreds of files using a new subcommand, mapping-bulk:

$ tx config mapping-bulk -p myproject --source-language en --type MD -f '.md' --source-file-dir ./locale --expression '<path_expression>'

You may have noticed that the example above used tx config and not tx set. That’s because we’ve renamed the tx set command to make it more intuitive. Additionally, we’ve changed the --auto-local and --auto-remote from options to subcommands: mapping and mapping-remote.

The flags are still supported, though we’d recommend using the subcommands going forward.

Other changes and bug fixes

In addition to the changes above, we made other tweaks and squashed some bugs:

  • There’s a new, optional interactive onboarding experience to guide you through the initial setup of the client.
  • The algorithm for locating translation files has been optimized to improve performance in cases where you have many files in your working directory.
  • The tx init command now supports a --no-interactive override for better compatibility with CI tools.
  • The client will return non-zero exit codes on errors.
  • General improvements to error messages.

Update your Transifex client

We hope these updates will make your experience with the client even better. Upgrade to the latest version of the Transifex client and let us know what you think.

P.S. If you have suggestions for the client or would like to contribute to it, check out the Transifex client GitHub repository.

Start your localization journey
Bring your brand to the world and create global experiences with the power of AI.
Mike Giannakopoulos
FacebookgithubGoogle+Fill 88Twitter