[TIMOB-11152] Tooling: don't rebuild local project app if project is not dirty
GitHub Issue | n/a |
---|---|
Type | New Feature |
Priority | Low |
Status | Closed |
Resolution | Fixed |
Resolution Date | 2016-08-24T21:27:16.000+0000 |
Affected Version/s | Release 2.1.2, Release 3.0.0 |
Fix Version/s | Release 5.0.0 |
Components | Tooling |
Labels | android-device-debugger, ios-device-debugger, qe-and090112, qe-ios090112, stud-performance-100112 |
Reporter | Dustin Hyde |
Assignee | Eric Merriman |
Created | 2012-09-25T23:54:29.000+0000 |
Updated | 2017-03-21T20:32:16.000+0000 |
Description
Currently, if a project has not been edited, and build is called, the entire project rebuilds. We could detect if destination app matches last build in project to enhance build time. This is particularly relevant for device debugging.
Steps to Reproduce:
1. Open Titanium Studio.
2. Import KitchenSink.
3. Run on Device (Android or iOS) and wait for process to complete.
4. Run on Device again.
Actual Result:
App is rebuilt, could take around 30 seconds.
Expected Result:
App should not be rebuilt, should take 1 second.
This cannot be fixed for iOS. Still need to investigate Android.
We introduced improved differential builds in Titanium SDK 3.0.0 in the iOS build rewrite. Android got improvements in 3.2.0 when we rewrote the Android build. Then in Titanium SDK 5.0.0, iOS's differential builds system got a major upgrade. Android is still doing unnecessary work, but it's better than the Python-scripts. In any case, both iOS and Android builds check like 2 dozen things before rebuilding with Xcode/javac.
Closing ticket as fixed.