gina 0.1.1-alpha.15 → 0.1.1-alpha.150

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (322) hide show
  1. package/AUTHORS +2 -1
  2. package/README.md +170 -19
  3. package/bin/cli +129 -55
  4. package/bin/cli-debug +4 -4
  5. package/bin/cmd +40 -18
  6. package/bin/gina +40 -34
  7. package/{framework/v0.1.1-alpha.15/core/template/command/gina.bat.tpl → bin/gina.bat} +0 -0
  8. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/AUTHORS +0 -0
  9. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/LICENSE +0 -0
  10. package/framework/v0.1.1-alpha.150/VERSION +1 -0
  11. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/asset/html/nolayout.html +0 -0
  12. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/asset/html/static.html +0 -0
  13. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/asset/img/android-chrome-192x192.png +0 -0
  14. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/asset/img/android-chrome-512x512.png +0 -0
  15. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/asset/img/apple-touch-icon.png +0 -0
  16. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/asset/img/favicon-16x16.png +0 -0
  17. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/asset/img/favicon-32x32.png +0 -0
  18. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/asset/img/favicon.ico +0 -0
  19. package/framework/{v0.1.1-alpha.15/core/asset/js → v0.1.1-alpha.150/core/asset}/plugin/dist/gina.js +109 -106
  20. package/framework/{v0.1.1-alpha.15/core/asset/js → v0.1.1-alpha.150/core/asset}/plugin/dist/gina.js.map +0 -0
  21. package/framework/{v0.1.1-alpha.15/core/asset/js → v0.1.1-alpha.150/core/asset}/plugin/dist/gina.min.css +0 -0
  22. package/framework/{v0.1.1-alpha.15/core/asset/js → v0.1.1-alpha.150/core/asset}/plugin/dist/gina.min.css.map +0 -0
  23. package/framework/v0.1.1-alpha.150/core/asset/plugin/dist/gina.min.js +739 -0
  24. package/framework/v0.1.1-alpha.150/core/asset/plugin/dist/gina.min.js.map +8 -0
  25. package/framework/{v0.1.1-alpha.15/core/asset/js → v0.1.1-alpha.150/core/asset}/plugin/dist/gina.onload.min.js +0 -0
  26. package/framework/{v0.1.1-alpha.15/core/asset/js → v0.1.1-alpha.150/core/asset}/plugin/dist/gina.onload.min.js.map +0 -0
  27. package/framework/v0.1.1-alpha.150/core/asset/plugin/dist/toolbar/css/toolbar-min.css +1 -0
  28. package/framework/v0.1.1-alpha.150/core/asset/plugin/dist/toolbar/css/toolbar.css +3 -0
  29. package/framework/v0.1.1-alpha.150/core/asset/plugin/dist/toolbar/css/toolbar.css.map +1 -0
  30. package/framework/v0.1.1-alpha.150/core/asset/plugin/dist/toolbar/js/jquery-3.1.0.min.js +4 -0
  31. package/framework/v0.1.1-alpha.150/core/asset/plugin/dist/toolbar/main.js +1542 -0
  32. package/framework/v0.1.1-alpha.150/core/asset/plugin/dist/toolbar/toolbar.html +251 -0
  33. package/framework/{v0.1.1-alpha.15/core/asset/js → v0.1.1-alpha.150/core/asset}/plugin/readme.md +6 -6
  34. package/framework/{v0.1.1-alpha.15/core/asset/js → v0.1.1-alpha.150/core/asset}/plugin/uuid.json +0 -0
  35. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/config.js +28 -13
  36. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/connectors/couchbase/index.js +310 -215
  37. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/connectors/couchbase/lib/connector.js +6 -4
  38. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/connectors/couchbase/lib/connector.v2.js +47 -47
  39. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/connectors/couchbase/lib/connector.v3.js +0 -0
  40. package/framework/v0.1.1-alpha.150/core/connectors/couchbase/lib/connector.v4.js +377 -0
  41. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/connectors/couchbase/lib/n1ql.js +3 -2
  42. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/connectors/couchbase/lib/session-store.js +6 -5
  43. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/connectors/couchbase/lib/session-store.v2.js +0 -0
  44. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/connectors/couchbase/lib/session-store.v3.js +0 -0
  45. package/framework/v0.1.1-alpha.150/core/connectors/couchbase/lib/session-store.v4.js +362 -0
  46. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/controller/controller.framework.js +0 -0
  47. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/controller/controller.js +686 -675
  48. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/controller/index.js +0 -0
  49. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/deps/busboy/.travis.yml +0 -0
  50. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/deps/busboy/LICENSE +0 -0
  51. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/deps/busboy/README.md +0 -0
  52. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/deps/busboy/deps/encoding/encoding-indexes.js +0 -0
  53. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/deps/busboy/deps/encoding/encoding.js +0 -0
  54. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/deps/busboy/lib/main.js +0 -0
  55. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/deps/busboy/lib/types/multipart.js +0 -0
  56. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/deps/busboy/lib/types/urlencoded.js +0 -0
  57. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/deps/busboy/lib/utils.js +0 -0
  58. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/deps/busboy/package.json +0 -0
  59. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/deps/swig-client/swig-2.0.0.min.js +0 -0
  60. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/dev/index.js +0 -0
  61. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/dev/lib/class.js +0 -0
  62. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/dev/lib/factory.js +0 -0
  63. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/dev/lib/tools.js +0 -0
  64. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/gna.js +2 -3
  65. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/locales/README.md +0 -0
  66. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/locales/currency.json +0 -0
  67. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/locales/dist/language/en.json +0 -0
  68. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/locales/dist/language/fr.json +0 -0
  69. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/locales/dist/region/en.json +0 -0
  70. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/locales/dist/region/fr.json +0 -0
  71. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/locales/index.js +0 -0
  72. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/locales/src/make.js +0 -0
  73. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/locales/src/resources/currency.csv +0 -0
  74. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/locales/src/resources/region.csv +0 -0
  75. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/locales/src/resources/region.mapping.json +0 -0
  76. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/mime.types +0 -0
  77. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/model/entity.js +80 -60
  78. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/model/index.js +4 -4
  79. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/model/template/entityFactory.js +0 -0
  80. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/model/template/index.js +0 -0
  81. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/plugins/README.md +0 -0
  82. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/plugins/index.js +0 -0
  83. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/plugins/lib/file/README.md +0 -0
  84. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/plugins/lib/file/build.json +0 -0
  85. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/plugins/lib/file/package.json +0 -0
  86. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/plugins/lib/intl/README.md +0 -0
  87. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/plugins/lib/intl/build.json +0 -0
  88. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/plugins/lib/intl/package.json +0 -0
  89. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/plugins/lib/intl/src/main.js +0 -0
  90. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/plugins/lib/storage/README.md +0 -0
  91. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/plugins/lib/storage/build.json +0 -0
  92. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/plugins/lib/storage/package.json +0 -0
  93. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/plugins/lib/storage/src/main.js +0 -0
  94. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/plugins/lib/validator/README.md +0 -0
  95. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/plugins/lib/validator/build.json +0 -0
  96. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/plugins/lib/validator/package.json +0 -0
  97. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/plugins/lib/validator/src/form-validator.js +0 -0
  98. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/plugins/lib/validator/src/main.js +0 -0
  99. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/router.js +91 -78
  100. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/server.express.js +0 -0
  101. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/server.isaac.js +117 -108
  102. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/server.js +2 -1
  103. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/status.codes +0 -0
  104. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/boilerplate/bundle/config/app.json +0 -0
  105. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/boilerplate/bundle/config/routing.json +0 -0
  106. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/boilerplate/bundle/config/settings.json +0 -0
  107. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/boilerplate/bundle/config/settings.server.json +0 -0
  108. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/boilerplate/bundle/config/templates.json +4 -4
  109. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/boilerplate/bundle/controllers/controller.content.js +0 -0
  110. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
  111. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/boilerplate/bundle/controllers/setup.js +0 -0
  112. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/boilerplate/bundle/index.js +0 -0
  113. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
  114. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/boilerplate/bundle_public/css/default.css +0 -0
  115. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
  116. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
  117. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
  118. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/boilerplate/bundle_public/readme.md +0 -0
  119. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
  120. package/framework/v0.1.1-alpha.150/core/template/boilerplate/bundle_templates/html/content/homepage.html +8 -0
  121. package/framework/v0.1.1-alpha.150/core/template/boilerplate/bundle_templates/html/includes/error-msg-noscript.html +11 -0
  122. package/framework/v0.1.1-alpha.150/core/template/boilerplate/bundle_templates/html/includes/error-msg-outdated-browser.html +8 -0
  123. package/framework/{v0.1.1-alpha.15/core/template/boilerplate/bundle_templates/html/layout → v0.1.1-alpha.150/core/template/boilerplate/bundle_templates/html/layouts}/main.html +10 -3
  124. package/framework/v0.1.1-alpha.150/core/template/command/gina.bat.tpl +8 -0
  125. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/command/gina.tpl +0 -0
  126. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/conf/env.json +0 -0
  127. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/conf/manifest.json +0 -0
  128. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/conf/package.json +0 -0
  129. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/conf/settings.json +0 -0
  130. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/conf/statics.json +3 -3
  131. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/conf/templates.json +2 -2
  132. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/error/client/json/401.json +0 -0
  133. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/error/client/json/403.json +0 -0
  134. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/error/client/json/404.json +0 -0
  135. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/error/server/html/50x.html +0 -0
  136. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/error/server/json/500.json +0 -0
  137. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/error/server/json/503.json +0 -0
  138. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/core/template/extensions/logger/config.json +0 -0
  139. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/helpers/console.js +0 -0
  140. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/helpers/context.js +144 -4
  141. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/helpers/dateFormat.js +3 -1
  142. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/helpers/index.js +9 -4
  143. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/helpers/json/README.md +0 -0
  144. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/helpers/json/package.json +0 -0
  145. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/helpers/json/src/main.js +0 -0
  146. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/helpers/path.js +142 -88
  147. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/helpers/plugins/README.md +0 -0
  148. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/helpers/plugins/package.json +0 -0
  149. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/helpers/plugins/src/api-error.js +23 -23
  150. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/helpers/plugins/src/main.js +0 -0
  151. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/helpers/prototypes.js +35 -36
  152. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/helpers/task.js +21 -14
  153. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/helpers/text.js +0 -0
  154. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/archiver/README.md +0 -0
  155. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/archiver/build.json +0 -0
  156. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/archiver/package.json +0 -0
  157. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/archiver/src/dep/jszip.min.js +0 -0
  158. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/archiver/src/main.js +0 -0
  159. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/aliases.json +4 -1
  160. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/bundle/add.js +43 -17
  161. package/framework/v0.1.1-alpha.150/lib/cmd/bundle/arguments.json +6 -0
  162. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/bundle/copy.js +0 -0
  163. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/bundle/cp.js +0 -0
  164. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/bundle/help.js +0 -0
  165. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/bundle/help.txt +2 -2
  166. package/framework/v0.1.1-alpha.150/lib/cmd/bundle/list.js +176 -0
  167. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/bundle/remove.js +22 -22
  168. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/bundle/rename.js +0 -0
  169. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/bundle/restart.js +0 -0
  170. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/bundle/rm.js +0 -0
  171. package/framework/v0.1.1-alpha.150/lib/cmd/bundle/start.js +420 -0
  172. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/bundle/status.js +0 -0
  173. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/bundle/stop.js +93 -74
  174. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/env/add.js +0 -0
  175. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/env/get.js +0 -0
  176. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/env/help.js +0 -0
  177. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/env/help.txt +0 -0
  178. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/env/link-dev.js +0 -0
  179. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/env/list.js +0 -0
  180. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/env/remove.js +0 -0
  181. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/env/rm.js +0 -0
  182. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/env/set.js +0 -0
  183. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/env/unset.js +0 -0
  184. package/framework/{v0.1.1-alpha.15/lib/cmd/scope → v0.1.1-alpha.150/lib/cmd/env}/use.js +21 -1
  185. package/framework/v0.1.1-alpha.150/lib/cmd/framework/build.js +85 -0
  186. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/framework/dot.js +0 -0
  187. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/framework/get.js +0 -0
  188. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/framework/help.js +0 -0
  189. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/framework/help.txt +0 -0
  190. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/framework/init.js +70 -16
  191. package/framework/v0.1.1-alpha.150/lib/cmd/framework/link-node-modules.js +86 -0
  192. package/framework/v0.1.1-alpha.150/lib/cmd/framework/link.js +94 -0
  193. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/framework/msg.json +0 -0
  194. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/framework/open.js +15 -0
  195. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/framework/restart.js +53 -25
  196. package/framework/v0.1.1-alpha.150/lib/cmd/framework/set.js +264 -0
  197. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/framework/start.js +35 -12
  198. package/framework/v0.1.1-alpha.150/lib/cmd/framework/status.js +138 -0
  199. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/framework/stop.js +44 -28
  200. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/framework/tail.js +113 -61
  201. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/framework/update.js +0 -0
  202. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/framework/version.js +12 -3
  203. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/gina-dev.1.md +0 -0
  204. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/gina-framework.1.md +0 -0
  205. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/gina.1.md +0 -0
  206. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/helper.js +74 -5
  207. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/index.js +21 -21
  208. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/msg.json +0 -0
  209. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/port/help.js +0 -0
  210. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/port/help.txt +0 -0
  211. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/port/inc/scan.js +32 -17
  212. package/framework/v0.1.1-alpha.150/lib/cmd/port/list.js +446 -0
  213. package/framework/v0.1.1-alpha.150/lib/cmd/port/reset.js +426 -0
  214. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/port/set.js +0 -0
  215. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/project/add.js +145 -121
  216. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/project/arguments.json +0 -0
  217. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/project/build.js +0 -0
  218. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/project/help.js +0 -0
  219. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/project/help.txt +0 -0
  220. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/project/import.js +0 -0
  221. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/project/list.js +0 -0
  222. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/project/move.js +0 -0
  223. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/project/remove.js +17 -17
  224. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/project/rename.js +0 -0
  225. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/project/restart.js +0 -0
  226. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/project/rm.js +0 -0
  227. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/project/start.js +0 -0
  228. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/project/status.js +0 -0
  229. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/project/stop.js +0 -0
  230. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/protocol/help.js +0 -0
  231. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/protocol/help.txt +0 -0
  232. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/protocol/list.js +0 -0
  233. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/protocol/set.js +239 -201
  234. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/scope/help.js +0 -0
  235. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/scope/help.txt +0 -0
  236. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/scope/link-local.js +0 -0
  237. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/scope/list.js +0 -0
  238. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/scope/remove.js +0 -0
  239. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/scope/rm.js +0 -0
  240. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/scope/set.js +0 -0
  241. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/scope/unset.js +0 -0
  242. package/framework/{v0.1.1-alpha.15/lib/cmd/env → v0.1.1-alpha.150/lib/cmd/scope}/use.js +0 -0
  243. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cmd/view/add.js +34 -9
  244. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/collection/README.md +0 -0
  245. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/collection/build.json +0 -0
  246. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/collection/package.json +0 -0
  247. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/collection/src/main.js +0 -0
  248. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/config.js +0 -0
  249. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cron/README.md +0 -0
  250. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cron/package.json +0 -0
  251. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/cron/src/main.js +0 -0
  252. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/generator/index.js +0 -0
  253. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/index.js +0 -0
  254. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/inherits/LICENSE +0 -0
  255. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/inherits/README.md +0 -0
  256. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/inherits/example/inheriting_eventemitter.js +0 -0
  257. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/inherits/example/protected_inheritance.js +0 -0
  258. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/inherits/example/simple_inheritance.js +0 -0
  259. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/inherits/example/super_attribute_overridden_by_child_on_init.js +0 -0
  260. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/inherits/package.json +0 -0
  261. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/inherits/src/main.js +0 -0
  262. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/logger/README.md +0 -0
  263. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/logger/package.json +0 -0
  264. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/logger/src/containers/default/index.js +13 -2
  265. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/logger/src/containers/file/index.js +105 -14
  266. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/logger/src/containers/file/lib/logrotator/README.md +0 -0
  267. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/logger/src/containers/file/lib/logrotator/index.js +0 -0
  268. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/logger/src/containers/mq/index.js +2 -1
  269. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/logger/src/containers/mq/listener.js +16 -14
  270. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/logger/src/containers/mq/speaker.js +32 -3
  271. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/logger/src/helper.js +19 -0
  272. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/logger/src/main.js +4 -1
  273. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/math/index.js +0 -0
  274. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/merge/README.md +0 -0
  275. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/merge/example/merge.js +0 -0
  276. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/merge/example/merge_2_literal objects.js +0 -0
  277. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/merge/example/merge_and_preserve_first.js +0 -0
  278. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/merge/package.json +0 -0
  279. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/merge/src/main.js +0 -0
  280. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/model.js +0 -0
  281. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/proc.js +69 -45
  282. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/routing/README.md +0 -0
  283. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/routing/build.json +0 -0
  284. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/routing/package.json +0 -0
  285. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/routing/src/main.js +0 -0
  286. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/session-store.js +0 -0
  287. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/shell.js +3 -3
  288. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/swig-filters/README.md +0 -0
  289. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/swig-filters/package.json +0 -0
  290. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/swig-filters/src/main.js +54 -51
  291. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/url/README.md +0 -0
  292. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/url/index.js +0 -0
  293. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/url/mocks.json +0 -0
  294. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/url/routing.json +0 -0
  295. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/url/test.js +0 -0
  296. package/framework/{v0.1.1-alpha.15 → v0.1.1-alpha.150}/lib/validator.js +0 -0
  297. package/framework/v0.1.1-alpha.150/package.json +14 -0
  298. package/package.json +30 -21
  299. package/resources/home/main.json +19 -1
  300. package/resources/home/settings.json +5 -0
  301. package/resources/home/user/extensions/logger/default/config.json +1 -1
  302. package/resources/package.json.template +28 -17
  303. package/script/post_install.js +398 -120
  304. package/script/post_publish.js +185 -0
  305. package/script/pre_install.js +424 -76
  306. package/script/prepare_version.js +151 -21
  307. package/utils/helper.js +230 -44
  308. package/utils/prototypes.js +9 -9
  309. package/utils/prototypes.json_clone.js +31 -31
  310. package/doc/framework/cli/doc.json +0 -9
  311. package/doc/framework/index.md +0 -60
  312. package/framework/v0.1.1-alpha.15/VERSION +0 -1
  313. package/framework/v0.1.1-alpha.15/core/asset/js/plugin/dist/gina.min.js +0 -736
  314. package/framework/v0.1.1-alpha.15/core/asset/js/plugin/dist/gina.min.js.map +0 -56
  315. package/framework/v0.1.1-alpha.15/core/template/boilerplate/bundle_templates/html/homepage.html +0 -4
  316. package/framework/v0.1.1-alpha.15/lib/cmd/bundle/arguments.json +0 -4
  317. package/framework/v0.1.1-alpha.15/lib/cmd/bundle/list.js +0 -129
  318. package/framework/v0.1.1-alpha.15/lib/cmd/bundle/start.js +0 -394
  319. package/framework/v0.1.1-alpha.15/lib/cmd/framework/set.js +0 -161
  320. package/framework/v0.1.1-alpha.15/lib/cmd/framework/status.js +0 -72
  321. package/framework/v0.1.1-alpha.15/lib/cmd/port/list.js +0 -176
  322. package/framework/v0.1.1-alpha.15/package.json +0 -14
@@ -34,7 +34,7 @@ function Remove(opt, cmd) {
34
34
  console.error('project path not defined in ~/.gina/projects.json for [ '+ self.projectName + ' ]');
35
35
  process.exit(1)
36
36
  }
37
-
37
+
38
38
  if (isDefined('project', self.projectName)) {
39
39
  removeBundle(0)
40
40
  } else {
@@ -52,8 +52,8 @@ function Remove(opt, cmd) {
52
52
 
53
53
  //var Proc = require( getPath('gina').lib + '/proc');
54
54
 
55
-
56
-
55
+
56
+
57
57
  }
58
58
 
59
59
  var removeBundle = function (b) {
@@ -69,7 +69,7 @@ function Remove(opt, cmd) {
69
69
 
70
70
 
71
71
  if (local.force) {
72
- // remove without checking
72
+ // remove without checking
73
73
  remove(local.bundle)
74
74
  } else {
75
75
  check()
@@ -80,7 +80,7 @@ function Remove(opt, cmd) {
80
80
  var check = function() {
81
81
 
82
82
 
83
- rl.setPrompt('['+ local.bundle +'@'+ self.projectName +'] Also remove bundle files ? (Y/n):');
83
+ rl.setPrompt('['+ local.bundle +'@'+ self.projectName +'] Also remove bundle files ? (Y/n):\n');
84
84
 
85
85
  rl.prompt();
86
86
 
@@ -113,26 +113,26 @@ function Remove(opt, cmd) {
113
113
  process.exit(0)
114
114
  })
115
115
  }
116
-
116
+
117
117
  var remove = function (bundle) {
118
-
118
+
119
119
  // reload assets context with changes
120
120
  loadAssets();
121
-
121
+
122
122
  var hasFolder = true, folderPath = null, folder = null;
123
123
  console.debug('Removing bundle: ', bundle);
124
124
  try {
125
125
  folderPath = _(self.projects[self.projectName].path + '/' + self.projectData.bundles[bundle].src, true);
126
126
  folder = new _(folderPath);
127
-
127
+
128
128
  if ( !folder.isValidPath() ) {
129
129
  console.warn('`'+ folder.toString() +'` is not a valid path')
130
130
  } else {
131
-
131
+
132
132
  // removing mounting point: just in case
133
133
  var coreEnv = getCoreEnv(bundle);
134
134
  new _(coreEnv.mountPath +'/'+ bundle, true).rmSync();
135
-
135
+
136
136
  // removing folder
137
137
  folder = folder.rmSync();
138
138
  if (folder instanceof Error) {
@@ -143,8 +143,8 @@ function Remove(opt, cmd) {
143
143
  } catch(folderException) {
144
144
  hasFolder = false;
145
145
  }
146
-
147
-
146
+
147
+
148
148
 
149
149
  // updating project env
150
150
  if ( typeof(self.envData) != 'undefined' && typeof(self.envData[bundle]) != 'undefined' ) (
@@ -162,8 +162,8 @@ function Remove(opt, cmd) {
162
162
  , re = null
163
163
  ;
164
164
 
165
- for (let protocol in ports) {
166
- for (let scheme in ports[protocol]) {
165
+ for (let protocol in ports) {
166
+ for (let scheme in ports[protocol]) {
167
167
  for (let port in ports[protocol][scheme]) {
168
168
  re = new RegExp(bundle +"\@"+ self.projectName +"\/");
169
169
  if ( re.test(ports[protocol][scheme][port]) ) {
@@ -172,7 +172,7 @@ function Remove(opt, cmd) {
172
172
  }
173
173
  }
174
174
  }
175
-
175
+
176
176
  for (let bundleAddress in portsReverse) {
177
177
  re = new RegExp(bundle +"\@"+ self.projectName);
178
178
  if ( re.test(bundleAddress) ) {
@@ -183,7 +183,7 @@ function Remove(opt, cmd) {
183
183
  // now writing
184
184
  lib.generator.createFileFromDataSync(ports, self.portsPath);
185
185
  lib.generator.createFileFromDataSync(portsReverse, self.portsReversePath);
186
-
186
+
187
187
  // env
188
188
  // var envData = JSON.clone(self.envData);
189
189
  // if ( typeof(envData[bundle]) != 'undefined' ) {
@@ -192,8 +192,8 @@ function Remove(opt, cmd) {
192
192
  self.envData,
193
193
  self.envPath
194
194
  );
195
- // }
196
-
195
+ // }
196
+
197
197
  // manifest
198
198
  // var projectData = JSON.clone(self.projectData);
199
199
  // if ( typeof(projectData.bundles) != 'undefined' && typeof(projectData.bundles[bundle]) != 'undefined' ) {
@@ -206,10 +206,10 @@ function Remove(opt, cmd) {
206
206
  self.projectPath
207
207
  );
208
208
  // }
209
-
209
+
210
210
 
211
211
  console.log('Bundle [ '+ bundle+'@'+self.projectName+' ] removed');
212
-
212
+
213
213
 
214
214
  ++local.b;
215
215
  removeBundle(local.b);
@@ -218,7 +218,7 @@ function Remove(opt, cmd) {
218
218
 
219
219
  var end = function() {
220
220
 
221
-
221
+
222
222
 
223
223
  process.exit(0)
224
224
  };
@@ -0,0 +1,420 @@
1
+ const { debug } = require('console');
2
+ var fs = require('fs');
3
+ const { spawn } = require('child_process');
4
+
5
+ var CmdHelper = require('./../helper');
6
+ var console = lib.logger;
7
+ /**
8
+ * Start a given bundle or start all bundles at once
9
+ *
10
+ * e.g.
11
+ * gina bundle:start <bundle_name> @<project_name>
12
+ *
13
+ * // start all bundles within the project
14
+ * gina bundle:start @<project_name>
15
+ * or
16
+ * gina bundle:start @<project_name> --max-old-space-size=4096 --inspect=5858
17
+ *
18
+ * */
19
+ function Start(opt, cmd) {
20
+ var self = {};
21
+
22
+
23
+ var init = function(opt, cmd) {
24
+
25
+ // import CMD helpers
26
+ new CmdHelper(self, opt.client, { port: opt.debugPort, brkEnabled: opt.debugBrkEnabled });
27
+
28
+ // check CMD configuration
29
+ if (!isCmdConfigured()) return false;
30
+
31
+
32
+ // start all bundles
33
+ opt.onlineCount = 0;
34
+ opt.notStarted = [];
35
+
36
+ if (!self.name) {
37
+ start(opt, cmd, 0);
38
+ } else {
39
+ start(opt, cmd);
40
+ }
41
+ }
42
+
43
+ var start = function(opt, cmd, bundleIndex) {
44
+ // getting the debug port
45
+ var debugStr = null;
46
+ if ( /\-\-(inspect|debug)/.test(opt.argv.join(',')) ) {
47
+ var pArr = null;
48
+ for (let i = 0, len = opt.argv.length; i<len; i++) {
49
+ if ( /\-\-(inspect|debug)/.test(opt.argv[i]) ) {
50
+ pArr = opt.argv[i].replace(/\s+/g, '').split(/=/);
51
+ opt.debugBrkEnabled = /\-brk/.test(pArr[0]);
52
+ opt.debugPort = pArr[1];
53
+ debugStr = opt.argv[i];
54
+ break;
55
+ }
56
+ }
57
+ }
58
+
59
+
60
+ var isBulkStart = (typeof(bundleIndex) != 'undefined') ? true : false;
61
+
62
+ var bundle = (isBulkStart) ? self.bundles[bundleIndex] : self.name;
63
+ // console.debug('bundle -> ', bundle);
64
+ var env = ( typeof(self.bundlesByProject[self.projectName][bundle].def_env) != 'undefined') ? self.bundlesByProject[self.projectName][bundle].def_env : self.defaultEnv;
65
+ // console.debug('env -> ', env);
66
+ var protocol = self.bundlesByProject[self.projectName][bundle].def_protocol;
67
+ // console.debug('protocol -> ', protocol);
68
+ var scheme = self.bundlesByProject[self.projectName][bundle].def_scheme;
69
+ // console.debug('scheme -> ', scheme);
70
+ var bundlePort = self.portsReverseData[bundle + '@' + self.projectName][env][protocol][scheme];
71
+ // console.debug('port -> ', bundlePort);
72
+
73
+ var msg = null;
74
+ if ( !isBulkStart && !isDefined('bundle', bundle) ) {
75
+ msg = 'Bundle [ '+ bundle +' ] is not registered inside `@'+ self.projectName +'`';
76
+ console.error(msg);
77
+ // opt.client.write(msg);
78
+ // // CMD exit
79
+ // opt.client.emit('end');
80
+
81
+ opt.msg = msg;
82
+ return end(opt, cmd, isBulkStart, bundleIndex, true)
83
+ }
84
+
85
+ var isStarting = false
86
+ , params = null
87
+ , index = null
88
+ , i = null
89
+ , len = null
90
+ ;
91
+
92
+ isRealApp(bundle, function(err, appPath){
93
+ if (err) {
94
+ console.error(err.stack||err.message)
95
+ } else {
96
+ if (isStarting)
97
+ return;
98
+
99
+ msg = 'Trying to start bundle [ ' + bundle + '@' + self.projectName + ' ]';
100
+ if (opt.debugPort) {
101
+ msg += ' (debug port: '+ opt.debugPort +')'
102
+ }
103
+ // To gina log
104
+ console.info(msg);
105
+ // to the terminal stdout
106
+ opt.client.write('\n\r'+msg);
107
+
108
+ process.list = (process.list == undefined) ? [] : process.list;
109
+ setContext('processList', process.list);
110
+ setContext('ginaProcess', process.pid);
111
+ setContext('debugPort', opt.debugPort);
112
+ setContext('debugBrkEnabled', opt.debugBrkEnabled);
113
+
114
+ params = [
115
+ // node arguments will be passed by gina
116
+ appPath,
117
+ JSON.stringify(getContext()), //Passing context to child.
118
+ self.projectName, // project name
119
+ bundle// bundle name
120
+ ];
121
+
122
+ // injecting node arguments
123
+ index = 0; i = 0; len = self.nodeParams.length;
124
+ if (len > 0) {
125
+ for (; i < len; ++i) {
126
+ params.splice(index, 0, self.nodeParams[i]);
127
+ ++index
128
+ }
129
+ }
130
+
131
+ i = 0; len = params.length;
132
+ for (; i < len; ++i) {
133
+ if (params[i] == '') {
134
+ params.splice(i, 1);
135
+ }
136
+ }
137
+
138
+
139
+ var child = spawn(opt.argv[0], params,
140
+ {
141
+ detached: true
142
+ }
143
+ );
144
+
145
+ child.stdout.setEncoding('utf8');//Set encoding.
146
+
147
+ // CMD Auto Exit
148
+ var retry = 0, maxRetry = 15, maxTimeout = (self.debugBrkEnabled) ? 1200000 : 4000;
149
+ var timerId = setInterval(function() {
150
+ if (!isStarting ) {
151
+ ++retry;
152
+ //opt.client.write('what is wrong ? '+ retry);
153
+ } else {
154
+ clearInterval(timerId);
155
+ }
156
+
157
+ if (retry > maxRetry) {
158
+ clearInterval(timerId);
159
+ opt.client.write('Sorry my friend, this is taking too long ! Terminating. Check your logs.');
160
+ child.kill('SIGKILL');
161
+ if (!opt.client.destroyed) {
162
+ opt.client.emit('exit');
163
+ opt.client.emit('end');
164
+ }
165
+
166
+
167
+ //end(opt, cmd, isBulkStart, bundleIndex);
168
+ }
169
+ }, maxTimeout);
170
+
171
+ var checkCaseCount = 2
172
+ // The 2 flags we need to free the child.stdout if we do not want the command to wait for a timeout
173
+ // NB.: you can place flag by using console.notice
174
+ , checkCaseRe = new RegExp('('+bundle + '@' + self.projectName + ' mounted !|Bundle started !)', 'g')
175
+ , url = null
176
+ , debuggerOn = null
177
+ ;
178
+ var port = '', errorFound = false;
179
+ child.stdout.on('data', function(data) {
180
+ // console.log(data);
181
+
182
+ // handle errors
183
+ if ( /EADDRINUSE.*port/i.test(data) && !errorFound ) {
184
+ console.log(data);
185
+ // kill the bundle starting process first
186
+ child.kill('SIGKILL');
187
+
188
+ errorFound = true;
189
+ //opt.client.write(data);
190
+ try {
191
+ port = ' #'+ data.match(/port\":\s+\d+/)[0].split(/\:/)[1].trim() +' ';
192
+ opt.client.write(' [ ' + bundle + '@' + self.projectName + ' ] has already been started, or port'+ port+'might be busy');
193
+
194
+ } catch(_err) {
195
+ opt.client.write(_err);
196
+ }
197
+
198
+
199
+ ++opt.onlineCount;
200
+ end(opt, cmd, isBulkStart, bundleIndex);
201
+ clearInterval(timerId);
202
+
203
+ return;
204
+ }
205
+
206
+ // catch fatal errors to exit
207
+ if ( /(\[|\[\s+)emerg/.test(data) ) {
208
+ console.log(data);
209
+
210
+ // kill the bundle starting process first
211
+ child.kill('SIGKILL');
212
+
213
+ opt.notStarted.push(bundle + '@' + self.projectName);
214
+ opt.client.write(' [ ' + bundle + '@' + self.projectName + ' ] aborted :( \n => Check your logs to see why.');
215
+
216
+ ++opt.onlineCount;
217
+ end(opt, cmd, isBulkStart, bundleIndex);
218
+ clearInterval(timerId);
219
+
220
+ return;
221
+ }
222
+
223
+ // Expecting 2 flags (checkCaseCount) to free the child stdout !!
224
+ // console.debug('BO case count '+ checkCaseCount);
225
+ var _matched = data.match(checkCaseRe);
226
+ if ( _matched ) {
227
+ // console.warn('case count: '+ checkCaseCount +'\nMatched: '+ _matched.length + '\n'+ checkCaseRe +'\n-> '+ data + '<-\n');
228
+ checkCaseCount -= _matched.length;
229
+ }
230
+ // console.debug('EO case count: '+ checkCaseCount + ' -> '+ data);
231
+
232
+ // cache bundle state info given by the server while starting
233
+ if ( !debuggerOn && new RegExp('Debugger listening on','gmi').test(data)) {
234
+ debuggerOn = '\n ' + data.match(new RegExp('Debugger listening on .*','gmi'));
235
+ }
236
+ if ( !url && new RegExp('This way please','gmi').test(data)) {
237
+ url = '\n ' + data.match(new RegExp('This way please -> .*','gmi'));
238
+ }
239
+
240
+
241
+
242
+ if (!opt.client.destroyed && !isStarting && !checkCaseCount) {
243
+ isStarting = true;
244
+ clearInterval(timerId);
245
+ ++opt.onlineCount;
246
+
247
+ if (!debuggerOn) {
248
+ debuggerOn = ''
249
+ }
250
+
251
+ // resume logging
252
+ process.emit('gina#bundle-logging', GINA_MQ_PORT, GINA_HOST_V4, bundle + '@' + self.projectName);
253
+ console.debug('Sent: gina#bundle-logging');
254
+
255
+
256
+ opt.client.write(' [ ' + bundle + '@' + self.projectName + ' ] started V(-.o)V'+ url + debuggerOn);
257
+
258
+
259
+ end(opt, cmd, isBulkStart, bundleIndex);
260
+ return;
261
+ }
262
+
263
+ return;
264
+
265
+ });
266
+
267
+ //when an exception is thrown, it is sent to the client
268
+ child.stderr.setEncoding('utf8');
269
+ var error = null;
270
+ child.stderr.on('data', function(err) {
271
+ error = err.toString();
272
+
273
+ if (/Debugger listening|Debugger attached|Warning|address already in use/i.test(error)) {
274
+ console.warn(error);
275
+
276
+ if (!opt.client.destroyed) {
277
+ opt.client.write(error);
278
+ }
279
+
280
+ } else {
281
+ console.error(error);
282
+ }
283
+ });
284
+
285
+ child.on('exit', function(code, signal) {
286
+ // handles only signals that cannot be cannot be caught or ignored
287
+ // ref.: `framework/<version>/lib/proc.js`
288
+ if (/(SIGKILL|SIGSTOP)/i.test(signal)) {
289
+ console.emerg('[' + this.pid + '] `'+ self.name +'@'+ self.projectName +'` exiting with signal: ', signal);
290
+ cmd.proc.dismiss(this.pid, signal);
291
+ }
292
+ });
293
+
294
+
295
+ }
296
+
297
+ });//EO isRealApp
298
+
299
+ }
300
+
301
+
302
+ var end = function (opt, cmd, isBulkStart, i, error) {
303
+ if ( typeof(opt.msg) != 'undefined' ) {
304
+ opt.client.write('\n\r'+ opt.msg);
305
+ }
306
+ if (isBulkStart) {
307
+ ++i;
308
+ if ( typeof(self.bundles[i]) != 'undefined' ) {
309
+ start(opt, cmd, i)
310
+ } else {
311
+ opt.client.write('\n\r[ Online ] '+ opt.onlineCount +'/'+ self.bundles.length);
312
+ var notStartedMsg = '\nCould not start: \n - '+ opt.notStarted.join('\n');
313
+ opt.client.write(notStartedMsg);
314
+
315
+ if ( typeof(error) != 'undefined') {
316
+ process.exit(1);
317
+ }
318
+
319
+ if (!opt.client.destroyed)
320
+ opt.client.emit('end');
321
+ }
322
+ return;
323
+ }
324
+
325
+ if ( typeof(error) != 'undefined') {
326
+ process.exit(1);
327
+ }
328
+
329
+ if (!opt.client.destroyed)
330
+ opt.client.emit('end');
331
+ // Force exit in case process is stuck
332
+ setTimeout(() => {
333
+ if (!opt.client.destroyed) {
334
+ opt.client.emit('exit');
335
+ }
336
+ }, 150);
337
+ }
338
+
339
+
340
+
341
+ var isRealApp = function(bundle, callback) {
342
+ var p = null
343
+ , d = null
344
+ , env = self.projects[self.projectName]['def_env']
345
+ , isDev = ( self.projects[self.projectName]['dev_env'] == env ) ? true : false
346
+ , root = self.projectLocation
347
+ , bundleDir = null
348
+ , bundlesPath = null
349
+ , bundleInit = null
350
+ ;
351
+
352
+ try {
353
+ //This is mostly for dev.
354
+ var pkg = requireJSON( _(root+ '/manifest.json', true) ).bundles;
355
+ if ( typeof(pkg[bundle].version) == 'undefined' && typeof(pkg[bundle].tag) != 'undefined') {
356
+ pkg[bundle].version = pkg[bundle].tag
357
+ }
358
+
359
+ var path = null, version = null;
360
+ if (
361
+ pkg[bundle] != 'undefined' && pkg[bundle]['src'] != 'undefined' && isDev
362
+ ) {
363
+ path = pkg[bundle].src;
364
+
365
+ p = _( root +'/'+ path );//path.replace('/' + bundle, '')
366
+ d = _( root +'/'+ path + '/index.js' );
367
+
368
+ bundleDir = path.replace('/' + bundle, '');
369
+ setContext('bundle_dir', bundleDir);
370
+ bundlesPath = _( root +'/'+ bundleDir );
371
+ bundleInit = d;
372
+
373
+ } else {
374
+ //Others releases.
375
+ path = 'releases/'+ bundle +'/' + env +'/'+ pkg[bundle].version;
376
+ version = pkg[bundle].version;
377
+ p = _( root +'/'+ path );//path.replace('/' + bundle, '')
378
+ d = _( root +'/'+ path + '/index.js' );
379
+
380
+ bundleDir = path;
381
+ bundlesPath = _(root + '/'+ bundleDir);
382
+ bundleInit = d;
383
+ }
384
+
385
+ } catch (err) {
386
+ // default bundlesPath.
387
+ // TODO - log warn ?
388
+ console.warn(err.stack||err.message);
389
+ bundleDir = 'bundles';
390
+ bundlesPath = _(root +'/'+ bundleDir);
391
+ p = _(root +'/'+ bundleDir +'/'+ bundle);
392
+ d = _(root + '/'+ bundleDir +'/'+ bundle + '/index.js');
393
+ bundleInit = d;
394
+ }
395
+
396
+ //Checking root.
397
+ if ( new _(d, true).existsSync() ) {
398
+ //checking bundle directory.
399
+ fs.stat(p, function(err, stats) {
400
+ if (err) {
401
+ callback(err)
402
+ } else {
403
+
404
+ if (stats.isDirectory()) {
405
+ callback(false, d)
406
+ } else {
407
+ callback(new Error('[ ' + d + ' ] is not a directory'))
408
+ }
409
+ }
410
+ })
411
+ }
412
+ else {
413
+ callback(new Error('[ ' + d + ' ] does not exists'))
414
+ }
415
+ }
416
+
417
+
418
+ init(opt, cmd)
419
+ }
420
+ module.exports = Start;