Gaia/Build/Roadmap
Gaia build system meeting note
First half of 2014
Since we found build scripts still isn’t easy to modify on bug 964216 and had bug 897352 for copying all apps into build_stage/ directory, we should consider refactoring build system to get clearer build process. please get more information on Gaia/Build/Refactoring Plan
Second half of 2014
we almost have done all refactoring work in first half of 2014. For second half, our goal is enable building gaia by firefox extension and add test case for it to ensure it won't be broken again.
- Follow-up refactoring
bug 1010095 - [Build] extract |getImagePathByResolution| and |isExcludedFromZip| from webapp-zip to another rule |post-process|bug 987487 - [Gaia] [Build] Refactoring webapp-optimize.js and unit testsbug 1015041 - Migrate code for pseudo localization from l10n.js to multilocale.js
- Features & Enhancement
bug 1022516 - Re-enable gaia-build extensionbug 1021051 - Merge build script for a faster build systembug 1021569 - rewrite clear-stage-app in javascriptbug 1017490 - rewrite clock build script in javascriptbug 1028085 - rewrite Makefile of camera app in javascriptbug 1029959 - remove Makefile of findmydevicebug 1029966 - rewrite settings build script in javascriptbug 1029967 - rewrite Makefile in email app in javascriptbug 1053703 - Merge pre-app.js, app.js and post-app.js to one javascript file
bug 1019058 - Incremental build for single app is slowbug 1021481 - Handle app:// protocol for DEBUG=1 modebug 969215 - execute |make| should only build specific apps we modifiedbug 1041463 - Include a shared CSS file with @import rulebug 1070442 - Support building gaia apps in parallel
2015
Refactoring Build System to Node.js
https://wiki.mozilla.org/Gaia/Build/RefactoringToNodejs
Refactoring
ID | Summary | Assigned to | Status | Resolution |
---|---|---|---|---|
955988 | [meta] Running build scripts on node.js | Ricky Chien [:rickychien] (inactive) | RESOLVED | FIXED |
968654 | [meta] Refactoring gaia build system | Ricky Chien [:rickychien] (inactive) | RESOLVED | FIXED |
972228 | Verify default file content in non-distribution test | Ricky Chien [:rickychien] (inactive) | RESOLVED | FIXED |
973786 | Access files from build_stage for DEBUG=1 mode | Ricky Chien [:rickychien] (inactive) | RESOLVED | INVALID |
1103844 | Introduce sinon.js into build system unit test | RESOLVED | WONTFIX |
5 Total; 0 Open (0%); 5 Resolved (100%); 0 Verified (0%);
Performance
ID | Summary | Assigned to | Status | Resolution |
---|---|---|---|---|
1108946 | Improve the speed of webapp-zip.js | RESOLVED | WONTFIX | |
1108955 | Improve the speed of build_stage | RESOLVED | FIXED | |
1113464 | Improve the speed of rebuild | Ricky Chien [:rickychien] (inactive) | RESOLVED | WONTFIX |
3 Total; 0 Open (0%); 3 Resolved (100%); 0 Verified (0%);
Feature
ID | Summary | Assigned to | Status | Resolution |
---|---|---|---|---|
1101387 | [Build] New makefile target to create the "gaia.zip" | (Inactive after June) George Duan [:gduan] [:喬智] | RESOLVED | FIXED |
1101388 | [Build] Add the flash script for "gaia.zip" | RESOLVED | WONTFIX | |
1108947 | Get rid of DEBUG mode and httpd server | RESOLVED | WONTFIX |
3 Total; 0 Open (0%); 3 Resolved (100%); 0 Verified (0%);
Stabilization
ID | Summary | Assigned to | Status | Resolution |
---|---|---|---|---|
1007689 | Intermittent build failure: build/utils-xpc.js :: getFileContent :: line 63 | Ricky Chien [:rickychien] (inactive) | RESOLVED | FIXED |
1024047 | Intermittent build.test.js | Node modules tests make node_modules from github or git mirror | Ricky Chien [:rickychien] (inactive) | RESOLVED | FIXED |
1059447 | Gaia build unit tests are perma-failing | Ricky Chien [:rickychien] (inactive) | RESOLVED | WORKSFORME |
1059449 | Un-hide Gaia Build Unit tests when they meet visibility standards | Ricky Chien [:rickychien] (inactive) | RESOLVED | FIXED |
1059455 | Un-hide the Gaia Build tests when they meet visibility standards | Ricky Chien [:rickychien] (inactive) | RESOLVED | FIXED |
1072842 | Add TRY_ENV=1 for unit/integration test of gaia build system (Gbu/Gb) | Ricky Chien [:rickychien] (inactive) | RESOLVED | FIXED |
1112490 | Parallel build should output a make error when an error is thrown by app | Ricky Chien [:rickychien] (inactive) | RESOLVED | FIXED |
7 Total; 0 Open (0%); 7 Resolved (100%); 0 Verified (0%);
Backlog
- bug 970748 - rewrite optimizejar.py in javascript
- Run build script on node.js
Related issues
bug 1011738- Theme support for b2g/gaia- https://wiki.mozilla.org/FirefoxOS/v3/LondonIdeators#Refactor_the_build_system