appc-compat

1.0.3 • Public • Published

Appcelerator CLI Compatibility

Since 4.0, the Appcelerator Platform has a single appc CLI that bundles local versions of the former ti, alloy and acs CLI. You can still use the embedded CLIs by calling appc ti instead of ti. You can also still install the other three CLIs directly from NPM, in particular to work on projects that you have not (yet) migrated from the OSS software to the Appcelerator Platform.

Some community tools like TiNy and TiShadow relied on these old CLIs and will now have to work in environments where either or both the new unified and old global CLIs are installed. This module and CLI takes care of that.

Module API

The primary use of this package is to be used as a module, which will try to use the former global CLIs and fall back to the unified.

var compat = require('appc-compat');

compat.ti(['info', '-t', 'ios'], {
    // options
}, function(err, out, code) {
    // do something
});

Other available methods are:

  • compat.spawn(cmd, args, opts, cb);
  • compat.spawnSync(cmd, args, opts);
  • compat.tiSync(args, opts);
  • compat.titanium(args, opts, cb);
  • compat.titaniumSync(args, opts);
  • compat.alloy(args, opts, cb);
  • compat.alloySync(args, opts);
  • compat.acs(args, opts, cb);
  • compat.acsSync(args, opts);

You can pass preferAppc:true in the opts argument to first try the unified CLI and fall back to the former global CLIs.

Finally, you can check the existence of various CLIs via these boolean properties:

  • compat.hasAppc;
  • compat.hasTi;, compat.hasTitanium;
  • compat.hasAlloy;
  • compat.hasAcs;

CLI

The package also installs a new appc-compat CLI, which will try to use the former global CLIs and fall back to the unified.

$ appc-compat ti info

Or pass the --prefer-appc option to first try the unified CLI and fall back to the former global CLIs:

$ appc-compat ti info --prefer-appc

Alias

If you want the convenience of the former shorter CLIs for those embeded in the new unified CLI just use a bash alias in your ~/.bash_profile:

alias ti='appc ti'
alias alloy='appc alloy'
alias acs='appc acs'

Don't forget to:

source ~/.bash_profile

Package Sidebar

Install

npm i appc-compat

Weekly Downloads

3

Version

1.0.3

License

Apache-2.0

Last publish

Collaborators

  • fokkezb