New in Localazy CLI: Support for highly dynamic configurations in v1.6.4

๐Ÿ“Œ Use variables anywhere in localazy.json

Before 1.6.4., it was possible to pass additional parameters on the command line using -p for both download and upload. However, such parameters were only available in output path patterns, conditions, and transformations. They were still useful for dynamic configurations but quite constrained.

In 1.6.4., you can make your configuration highly dynamic by using additional parameters anywhere, as they are resolved before the JSON file is parsed.

Letโ€™s see a small example:

{
  "upload": {
	"files": "${reqModule}/src/locales/**/translations.json",
	// ...
  }
}

You can now upload specific folders by invoking Localazy CLI in these ways:

localazy upload -p reqModule:app localazy upload -p reqModule:library1 localazy upload -p reqModule:library2

Previously, this could be only achieved by using groups (but with a lot of repetitive code) or conditions which is more or less suboptimal.

๐Ÿ”„ Convert complex files

The so-called complex files are specific kinds of files on Localazy that represent a more complex structure than just a single file as we know it from the file system. A complex file can consist of several overlayed files at once. Itโ€™s primarily useful for highly specific situations, such as our Android SDK.

Until today, it wasnโ€™t possible to apply format conversions to complex files, thus limiting development on multiple platforms.

We have finished support for this feature, but itโ€™s still a bit experimental, so use it carefully ;-).

CLI now produces metadata files with sorted languages to avoid unnecessary diffs on commits.

๐Ÿ“‘ Report on missing groups

If you use non-existent groups on the command line, the CLI now fails with an error. This tiny change helps to debug complex configuration files.

You may miss release info for versions 1.6.1 - 1.6.3, but those were just about security patches for the dependencies.


This is a companion discussion topic for the original entry at https://localazy.com/blog/new-in-localazy-cli-support-for-highly-dynamic-configurations