Titanium JIRA Archive
Titanium SDK/CLI (TIMOB)

[TIMOB-26331] Windows: Improve build/launch time via Titanium CLI

GitHub Issuen/a
TypeImprovement
PriorityHigh
StatusClosed
ResolutionFixed
Resolution Date2018-10-04T02:03:52.000+0000
Affected Version/sRelease 7.3.0
Fix Version/sRelease 7.5.0
ComponentsWindows
Labelsn/a
ReporterKota Iguchi
AssigneeKota Iguchi
Created2018-08-23T03:21:45.000+0000
Updated2018-10-08T09:48:51.000+0000

Description

Building/launching apps via CLI is much slower than Visual Studio. I suspect, Titanium Windows CLI is slower because we usually launch external tools (.exe) in order to get information/build/launch projects and then read/parse standard outputs/errors to get the results. I would expect Visual Studio doesn't do such a thing but uses public/private API to deal with them such as MSBuild API.

Attachments

FileDateSize
36292AF6-868B-455C-89BA-65F361FAEE9E.png2018-08-23T03:21:23.000+0000247646

Comments

  1. Kota Iguchi 2018-09-10

    https://github.com/appcelerator/titanium_mobile_windows/pull/1282

    Things that work

    - Reduced re-build time on device by stopping unnecessary clean build - Reduced development build (local/device) time by stopping unnecessary bundle package - Reduced build time by stopping unnecessary cmake invocation from msbuild - Reduced build time by stopping unnecessary compilation for C++ files Overall this reduces 15-30 seconds build/launch time (40~% improvement).

    Things that do not work

    - Moving to native [MSBuild API](https://docs.microsoft.com/en-us/visualstudio/msbuild/msbuild-api?view=vs-2017) instead of invoking msbuild command does not quite work to reduce build time. - Moving to native [package deployment API](https://docs.microsoft.com/en-us/windows/desktop/appxpkg/package-deployment-api) instead of invoking WinAppDeployCmd command does not quite work to reduce deployment time.

    Another solution regarding development "productivity"

    I would suggest leveraging liveview rather than recompiling projects in order to improve development productivity. I even expect it works faster than Visual Studio to preview your changes!

    CLEAN BUILD

    BEFORE

       [INFO]  Project built successfully in 1m 9s 450ms
       [INFO]  Finished launching the application in 1m 27s 387ms
       

    AFTER

       [INFO]  Project built successfully in 55s 204ms
       [INFO]  Finished launching the application in 1m 10s 142ms
       

    REBUILD

    BEFORE

       [INFO]  Project built successfully in 47s 360ms
       [INFO]  Finished launching the application in 1m 8s 970ms
       

    AFTER

       [INFO]  Project built successfully in 27s 715ms
       [INFO]  Finished launching the application in 40s 950ms
       
  2. Samir Mohammed 2018-10-03

    FR has passed, waiting on Jenkins.
  3. Samir Mohammed 2018-10-08

    Closing ticket, Verified fix in SDK Version 7.5.0.v20181005164109 Test and other information can be found at: https://github.com/appcelerator/titanium_mobile_windows/pull/1282

JSON Source