[ALOY-692] Alloy error output truncated with SDK < 3.0 on Windows

GitHub Issuen/a
ResolutionWon't Fix
Resolution Date2014-01-20T22:32:32.000+0000
Affected Version/sAlloy 1.1.2
Fix Version/sn/a
ReporterFederico Casali
AssigneeTony Lukasavage


Problem description

When building using TiSDK < 3.0.0 , the error message displayed on console is not complete on Windows


Build a project with Alloy 1.0.0 and TiSDK 2.1.4 Expected result: build fails with error message:
[ERROR] Alloy 1.0.0+ requires Titanium SDK 3.0.0 or higher.
[ERROR] Version "2.1.4.GA" was found in the "sdk-version" field of your tiapp.xml.
[ERROR] If you are building with the old titanium.py script and are specifying an SDK version 
[ERROR] as a CLI argument that is different than the one in your tiapp.xml, please change the
[ERROR] version in your tiapp.xml file. 
[ERROR] Alloy compile failed
Result: on Windows machines, the error message is not complete. However it still contains the first line which include the main information.
[ERROR] Alloy 1.0.0+ requires Titanium SDK 3.0.0 or higher.
[ERROR] Alloy compile failed
On OS X and Linux machines is displayed correctly


Screen Shot 2013-02-14 at 12.14.32 PM.png2013-02-14T17:14:18.000+000032122
Screen Shot 2013-02-14 at 12.14.43 PM.png2013-02-14T17:14:18.000+000031288


  1. Tony Lukasavage 2013-02-14 Federico, based on the logged work on this ticket, I found that this only occurs to the output when run through TiStudio. You should likely make this a TISTUD ticket to make them aware of it. The attached images show it working correctly in the CLI, truncating the output in TiStudio.
  2. Chris Barber 2013-06-05 I was able to reproduce this and track down the source of the problem. Alloy's plugin.py has a check_output() function that subprocesses the Alloy CLI. It appears the problem occurs when a build fails and control is returned to the Python script where it detects the error, but doesn't seem to flush the output from the subprocess. I tinkered with it and couldn't get it to output, but that's probably more of a factor of my lack of Python knowledge. You can either elect to fix it -or- wait until the new Android build is done and rip out all of this legacy Python stuff.
  3. Tony Lukasavage 2013-06-06 [~cbarber] There is roughly a 99.9999999997% chance that I'll wait. :)
  4. Chris Barber 2013-06-06 [~tlukasavage], good idea! :)
  5. Tony Lukasavage 2014-01-20 Since Alloy 1.2.0, only TiSDK 3.0.0+ is supported.

JSON Source