gina 0.1.1-alpha.157 → 0.1.1-alpha.159

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 (308) hide show
  1. package/LICENSE +1 -1
  2. package/README-4Contributors.md +30 -0
  3. package/README.md +36 -17
  4. package/bin/cli +41 -18
  5. package/bin/cli-debug +46 -15
  6. package/bin/gina +8 -3
  7. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/AUTHORS +0 -0
  8. package/framework/{v0.1.1-alpha.157/lib/inherits → v0.1.1-alpha.159}/LICENSE +1 -1
  9. package/framework/v0.1.1-alpha.159/VERSION +1 -0
  10. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/html/nolayout.html +0 -0
  11. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/html/static.html +0 -0
  12. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/img/android-chrome-192x192.png +0 -0
  13. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/img/android-chrome-512x512.png +0 -0
  14. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/img/apple-touch-icon.png +0 -0
  15. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/img/favicon-16x16.png +0 -0
  16. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/img/favicon-32x32.png +0 -0
  17. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/img/favicon.ico +0 -0
  18. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/plugin/dist/gina.js +779 -769
  19. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/plugin/dist/gina.js.map +3 -3
  20. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/plugin/dist/gina.min.css +0 -0
  21. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/plugin/dist/gina.min.css.map +0 -0
  22. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/plugin/dist/gina.min.js +138 -138
  23. package/framework/v0.1.1-alpha.159/core/asset/plugin/dist/gina.min.js.map +8 -0
  24. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/plugin/dist/gina.onload.min.js +0 -0
  25. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/plugin/dist/gina.onload.min.js.map +0 -0
  26. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/plugin/dist/toolbar/css/toolbar-min.css +0 -0
  27. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/plugin/dist/toolbar/css/toolbar.css +0 -0
  28. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/plugin/dist/toolbar/css/toolbar.css.map +0 -0
  29. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/plugin/dist/toolbar/js/jquery-3.1.0.min.js +0 -0
  30. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/plugin/dist/toolbar/main.js +0 -0
  31. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/plugin/dist/toolbar/toolbar.html +0 -0
  32. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/plugin/readme.md +0 -0
  33. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/asset/plugin/uuid.json +0 -0
  34. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/config.js +1 -1
  35. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/connectors/couchbase/index.js +21 -7
  36. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/connectors/couchbase/lib/connector.js +0 -0
  37. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/connectors/couchbase/lib/connector.v2.js +0 -0
  38. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/connectors/couchbase/lib/connector.v3.js +0 -0
  39. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/connectors/couchbase/lib/connector.v4.js +9 -2
  40. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/connectors/couchbase/lib/n1ql.js +0 -0
  41. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/connectors/couchbase/lib/session-store.js +0 -0
  42. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/connectors/couchbase/lib/session-store.v2.js +0 -0
  43. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/connectors/couchbase/lib/session-store.v3.js +0 -0
  44. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/connectors/couchbase/lib/session-store.v4.js +0 -0
  45. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/controller/controller.framework.js +0 -0
  46. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/controller/controller.js +5 -2
  47. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/controller/index.js +0 -0
  48. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/deps/busboy/.travis.yml +0 -0
  49. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/deps/busboy/LICENSE +0 -0
  50. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/deps/busboy/README.md +0 -0
  51. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/deps/busboy/deps/encoding/encoding-indexes.js +0 -0
  52. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/deps/busboy/deps/encoding/encoding.js +0 -0
  53. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/deps/busboy/lib/main.js +0 -0
  54. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/deps/busboy/lib/types/multipart.js +0 -0
  55. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/deps/busboy/lib/types/urlencoded.js +0 -0
  56. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/deps/busboy/lib/utils.js +0 -0
  57. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/deps/busboy/package.json +0 -0
  58. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/deps/swig-client/swig-2.0.0.min.js +0 -0
  59. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/dev/index.js +1 -1
  60. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/dev/lib/class.js +0 -0
  61. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/dev/lib/factory.js +1 -1
  62. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/dev/lib/tools.js +0 -0
  63. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/gna.js +1 -1
  64. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/locales/README.md +0 -0
  65. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/locales/currency.json +0 -0
  66. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/locales/dist/language/en.json +0 -0
  67. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/locales/dist/language/fr.json +0 -0
  68. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/locales/dist/region/en.json +0 -0
  69. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/locales/dist/region/fr.json +0 -0
  70. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/locales/index.js +2 -2
  71. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/locales/src/make.js +0 -0
  72. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/locales/src/resources/currency.csv +0 -0
  73. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/locales/src/resources/region.csv +0 -0
  74. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/locales/src/resources/region.mapping.json +0 -0
  75. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/mime.types +0 -0
  76. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/model/entity.js +1 -1
  77. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/model/index.js +4 -3
  78. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/model/template/entityFactory.js +1 -1
  79. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/model/template/index.js +1 -1
  80. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/plugins/README.md +0 -0
  81. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/plugins/index.js +1 -1
  82. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/plugins/lib/file/README.md +0 -0
  83. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/plugins/lib/file/build.json +0 -0
  84. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/plugins/lib/file/package.json +1 -1
  85. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/plugins/lib/intl/README.md +0 -0
  86. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/plugins/lib/intl/build.json +0 -0
  87. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/plugins/lib/intl/package.json +1 -1
  88. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/plugins/lib/intl/src/main.js +0 -0
  89. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/plugins/lib/storage/README.md +0 -0
  90. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/plugins/lib/storage/build.json +0 -0
  91. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/plugins/lib/storage/package.json +1 -1
  92. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/plugins/lib/storage/src/main.js +0 -0
  93. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/plugins/lib/validator/README.md +0 -0
  94. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/plugins/lib/validator/build.json +0 -0
  95. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/plugins/lib/validator/package.json +1 -1
  96. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/plugins/lib/validator/src/form-validator.js +0 -0
  97. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/plugins/lib/validator/src/main.js +0 -0
  98. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/router.js +1 -1
  99. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/server.express.js +0 -0
  100. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/server.isaac.js +0 -0
  101. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/server.js +25 -24
  102. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/status.codes +0 -0
  103. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/boilerplate/bundle/config/app.json +0 -0
  104. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/boilerplate/bundle/config/routing.json +0 -0
  105. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/boilerplate/bundle/config/settings.json +0 -0
  106. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/boilerplate/bundle/config/settings.server.json +0 -0
  107. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/boilerplate/bundle/config/templates.json +0 -0
  108. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/boilerplate/bundle/controllers/controller.content.js +0 -0
  109. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
  110. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/boilerplate/bundle/controllers/setup.js +0 -0
  111. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/boilerplate/bundle/index.js +0 -0
  112. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
  113. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/boilerplate/bundle_public/css/default.css +0 -0
  114. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
  115. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
  116. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
  117. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/boilerplate/bundle_public/readme.md +0 -0
  118. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
  119. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/boilerplate/bundle_templates/html/content/homepage.html +0 -0
  120. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/boilerplate/bundle_templates/html/includes/error-msg-noscript.html +0 -0
  121. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/boilerplate/bundle_templates/html/includes/error-msg-outdated-browser.html +0 -0
  122. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/boilerplate/bundle_templates/html/layouts/main.html +0 -0
  123. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/command/gina.bat.tpl +0 -0
  124. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/command/gina.tpl +1 -1
  125. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/conf/env.json +0 -0
  126. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/conf/manifest.json +0 -0
  127. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/conf/package.json +0 -0
  128. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/conf/settings.json +0 -0
  129. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/conf/statics.json +0 -0
  130. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/conf/templates.json +0 -0
  131. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/error/client/json/401.json +0 -0
  132. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/error/client/json/403.json +0 -0
  133. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/error/client/json/404.json +0 -0
  134. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/error/server/html/50x.html +0 -0
  135. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/error/server/json/500.json +0 -0
  136. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/error/server/json/503.json +0 -0
  137. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/core/template/extensions/logger/config.json +0 -0
  138. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/helpers/console.js +1 -1
  139. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/helpers/context.js +1 -1
  140. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/helpers/dateFormat.js +1 -1
  141. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/helpers/index.js +1 -1
  142. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/helpers/json/README.md +0 -0
  143. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/helpers/json/package.json +1 -1
  144. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/helpers/json/src/main.js +22 -22
  145. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/helpers/path.js +1 -1
  146. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/helpers/plugins/README.md +0 -0
  147. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/helpers/plugins/package.json +1 -1
  148. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/helpers/plugins/src/api-error.js +0 -0
  149. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/helpers/plugins/src/main.js +2 -2
  150. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/helpers/prototypes.js +0 -0
  151. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/helpers/task.js +0 -0
  152. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/helpers/text.js +1 -1
  153. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/archiver/README.md +0 -0
  154. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/archiver/build.json +0 -0
  155. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/archiver/package.json +1 -1
  156. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/archiver/src/dep/jszip.min.js +0 -0
  157. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/archiver/src/main.js +167 -167
  158. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/aliases.json +0 -0
  159. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/bundle/add.js +0 -0
  160. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/bundle/arguments.json +0 -0
  161. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/bundle/copy.js +0 -0
  162. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/bundle/cp.js +0 -0
  163. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/bundle/help.js +0 -0
  164. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/bundle/help.txt +0 -0
  165. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/bundle/list.js +0 -0
  166. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/bundle/remove.js +0 -0
  167. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/bundle/rename.js +0 -0
  168. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/bundle/restart.js +0 -0
  169. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/bundle/rm.js +0 -0
  170. package/framework/v0.1.1-alpha.159/lib/cmd/bundle/start.js +605 -0
  171. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/bundle/status.js +0 -0
  172. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/bundle/stop.js +0 -0
  173. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/env/add.js +0 -0
  174. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/env/get.js +0 -0
  175. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/env/help.js +0 -0
  176. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/env/help.txt +0 -0
  177. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/env/link-dev.js +0 -0
  178. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/env/list.js +0 -0
  179. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/env/remove.js +0 -0
  180. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/env/rm.js +0 -0
  181. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/env/set.js +0 -0
  182. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/env/unset.js +0 -0
  183. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/env/use.js +0 -0
  184. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/framework/build.js +0 -0
  185. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/framework/dot.js +0 -0
  186. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/framework/get.js +0 -0
  187. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/framework/help.js +0 -0
  188. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/framework/help.txt +0 -0
  189. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/framework/init.js +147 -4
  190. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/framework/link-node-modules.js +0 -0
  191. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/framework/link.js +0 -0
  192. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/framework/msg.json +0 -0
  193. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/framework/open.js +0 -0
  194. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/framework/restart.js +6 -2
  195. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/framework/set.js +0 -0
  196. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/framework/start.js +0 -0
  197. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/framework/status.js +0 -0
  198. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/framework/stop.js +0 -0
  199. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/framework/tail.js +36 -3
  200. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/framework/update.js +0 -0
  201. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/framework/version.js +0 -0
  202. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/gina-dev.1.md +0 -0
  203. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/gina-framework.1.md +0 -0
  204. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/gina.1.md +0 -0
  205. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/helper.js +0 -0
  206. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/index.js +1 -1
  207. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/msg.json +0 -0
  208. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/port/help.js +0 -0
  209. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/port/help.txt +0 -0
  210. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/port/inc/scan.js +0 -0
  211. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/port/list.js +0 -0
  212. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/port/reset.js +0 -0
  213. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/port/set.js +0 -0
  214. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/project/add.js +0 -0
  215. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/project/arguments.json +0 -0
  216. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/project/build.js +0 -0
  217. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/project/help.js +0 -0
  218. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/project/help.txt +0 -0
  219. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/project/import.js +0 -0
  220. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/project/list.js +16 -2
  221. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/project/move.js +0 -0
  222. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/project/remove.js +0 -0
  223. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/project/rename.js +0 -0
  224. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/project/restart.js +0 -0
  225. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/project/rm.js +0 -0
  226. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/project/start.js +0 -0
  227. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/project/status.js +0 -0
  228. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/project/stop.js +0 -0
  229. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/protocol/help.js +0 -0
  230. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/protocol/help.txt +0 -0
  231. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/protocol/list.js +0 -0
  232. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/protocol/set.js +0 -0
  233. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/scope/help.js +0 -0
  234. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/scope/help.txt +0 -0
  235. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/scope/link-local.js +0 -0
  236. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/scope/list.js +0 -0
  237. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/scope/remove.js +0 -0
  238. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/scope/rm.js +0 -0
  239. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/scope/set.js +0 -0
  240. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/scope/unset.js +0 -0
  241. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/scope/use.js +0 -0
  242. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cmd/view/add.js +0 -0
  243. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/collection/README.md +0 -0
  244. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/collection/build.json +0 -0
  245. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/collection/package.json +1 -1
  246. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/collection/src/main.js +0 -0
  247. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/config.js +2 -1
  248. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cron/README.md +0 -0
  249. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cron/package.json +1 -1
  250. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/cron/src/main.js +0 -0
  251. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/generator/index.js +1 -1
  252. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/index.js +1 -1
  253. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159/lib/inherits}/LICENSE +1 -1
  254. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/inherits/README.md +0 -0
  255. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/inherits/example/inheriting_eventemitter.js +0 -0
  256. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/inherits/example/protected_inheritance.js +0 -0
  257. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/inherits/example/simple_inheritance.js +0 -0
  258. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/inherits/example/super_attribute_overridden_by_child_on_init.js +0 -0
  259. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/inherits/package.json +1 -1
  260. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/inherits/src/main.js +1 -1
  261. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/logger/README.md +0 -0
  262. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/logger/package.json +1 -1
  263. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/logger/src/containers/default/index.js +0 -0
  264. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/logger/src/containers/file/index.js +0 -0
  265. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/logger/src/containers/file/lib/logrotator/README.md +0 -0
  266. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/logger/src/containers/file/lib/logrotator/index.js +0 -0
  267. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/logger/src/containers/mq/index.js +0 -0
  268. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/logger/src/containers/mq/listener.js +0 -0
  269. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/logger/src/containers/mq/speaker.js +0 -0
  270. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/logger/src/helper.js +1 -1
  271. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/logger/src/main.js +1 -1
  272. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/math/index.js +7 -7
  273. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/merge/README.md +0 -0
  274. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/merge/example/merge.js +0 -0
  275. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/merge/example/merge_2_literal objects.js +0 -0
  276. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/merge/example/merge_and_preserve_first.js +0 -0
  277. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/merge/package.json +1 -1
  278. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/merge/src/main.js +0 -0
  279. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/model.js +9 -9
  280. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/proc.js +8 -4
  281. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/routing/README.md +0 -0
  282. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/routing/build.json +0 -0
  283. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/routing/package.json +1 -1
  284. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/routing/src/main.js +258 -258
  285. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/session-store.js +6 -6
  286. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/shell.js +0 -0
  287. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/swig-filters/README.md +0 -0
  288. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/swig-filters/package.json +1 -1
  289. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/swig-filters/src/main.js +1 -1
  290. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/url/README.md +0 -0
  291. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/url/index.js +0 -0
  292. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/url/mocks.json +0 -0
  293. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/url/routing.json +0 -0
  294. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/url/test.js +0 -0
  295. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/lib/validator.js +0 -0
  296. package/framework/{v0.1.1-alpha.157 → v0.1.1-alpha.159}/package.json +0 -0
  297. package/package.json +6 -6
  298. package/resources/home/main.json +25 -0
  299. package/resources/home/settings.json +2 -0
  300. package/resources/package.json.template +1 -1
  301. package/script/post_install.js +1 -1
  302. package/script/post_publish.js +1 -1
  303. package/script/pre_install.js +1 -1
  304. package/script/prepare_version.js +1 -1
  305. package/utils/helper.js +0 -141
  306. package/framework/v0.1.1-alpha.157/VERSION +0 -1
  307. package/framework/v0.1.1-alpha.157/core/asset/plugin/dist/gina.min.js.map +0 -8
  308. package/framework/v0.1.1-alpha.157/lib/cmd/bundle/start.js +0 -420
@@ -0,0 +1,605 @@
1
+ const fs = require('fs');
2
+ const { EventEmitter } = require('events');
3
+ const { spawn } = require('child_process');
4
+ const { execSync } = require('child_process');
5
+ const util = require('util');
6
+ const promisify = require('util').promisify;
7
+
8
+ var CmdHelper = require('./../helper');
9
+ // `lib` is previously defiened as this file is required by anoth
10
+ // for user output
11
+ var terminal = lib.logger;
12
+ // for logs/tail output thru the parent
13
+ var console = null;
14
+
15
+ /**
16
+ * Start a given bundle or start all bundles at once
17
+ *
18
+ *
19
+ * e.g.
20
+ * gina bundle:start <bundle_name> @<project_name>
21
+ *
22
+ * // start all bundles within the project
23
+ * gina bundle:start @<project_name>
24
+ * or
25
+ * gina bundle:start @<project_name> --max-old-space-size=4096 --inspect=5858
26
+ *
27
+ *
28
+ * If you want to inspect/debug here, you first need to restart gina with `--inspect-gina`
29
+ * gina start --inspect-gina
30
+ * then
31
+ * gina bundle:start <bundle_name> @<project_name> --max-old-space-size=4096 --inspect=5858
32
+ *
33
+ * */
34
+ function Start(opt, cmd) {
35
+ var self = {};
36
+ // terminal.register(console, opt.client.write);
37
+
38
+
39
+ var init = function(opt, cmd) {
40
+
41
+ // import CMD helpers
42
+ new CmdHelper(self, opt.client, { port: opt.debugPort, brkEnabled: opt.debugBrkEnabled });
43
+
44
+ // check CMD configuration
45
+ if (!isCmdConfigured()) return false;
46
+
47
+
48
+ // start all bundles
49
+ opt.onlineCount = 0;
50
+ opt.notStarted = [];
51
+
52
+ if (!self.name) {
53
+ start(opt, cmd, 0);
54
+ } else {
55
+ start(opt, cmd);
56
+ }
57
+ }
58
+
59
+ var checkArchAgainstNodeModules = function(opt, cb) {
60
+
61
+ var currentArch = GINA_ARCH
62
+ , currentPlatform = GINA_PLATFORM
63
+ , projectObj = self.projects[ self.projectName ]
64
+ , packagePathObj = new _(projectObj.path +'/package.json', true)
65
+ , packagePath = packagePathObj.toString()
66
+ ;
67
+
68
+ if ( !packagePathObj.existsSync() ) {
69
+ terminal.warn('[checkArchAgainstNodeModules] File`'+packagePath +'` not found');
70
+ return cb(false);
71
+ }
72
+
73
+
74
+ var isNodeModulesReinstallNeeded = false;
75
+ var nodeModulesPathObj = new _(projectObj.path +'/node_modules', true);
76
+
77
+ var projectArchFileObj = new _(projectObj.path +'/.gna/arch', true);
78
+ var projectArchFile = projectArchFileObj.toString();
79
+ var projectPlatformFileObj = new _(projectObj.path +'/.gna/platform', true);
80
+ var projectPlatformFile = projectPlatformFileObj.toString();
81
+ var nodeModulesContentArr = ( nodeModulesPathObj.existsSync() ) ? fs.readdirSync(nodeModulesPathObj.toString()) : [];
82
+ var newNodeModulesContentArr = [], n = 0;
83
+ for (let f in nodeModulesContentArr) {
84
+ if (/^\./.test(nodeModulesContentArr[f]) ) {
85
+ continue
86
+ }
87
+ newNodeModulesContentArr[n] = nodeModulesContentArr[f];
88
+ }
89
+ nodeModulesContentArr = newNodeModulesContentArr.slice();
90
+ newNodeModulesContentArr = null;
91
+
92
+ var pack = requireJSON(packagePath);
93
+
94
+ if (
95
+ !projectArchFileObj.existsSync()
96
+ ||
97
+ !projectPlatformFileObj.existsSync()
98
+ ||
99
+ projectArchFileObj.existsSync() && fs.readFileSync(projectArchFile).toString() != currentArch
100
+ ||
101
+ projectPlatformFileObj.existsSync() && fs.readFileSync(projectPlatformFile).toString() != currentPlatform
102
+ ||
103
+ !nodeModulesPathObj.existsSync()
104
+ ||
105
+ nodeModulesPathObj.existsSync()
106
+ && !nodeModulesContentArr.length
107
+ ||
108
+ nodeModulesPathObj.existsSync()
109
+ && nodeModulesContentArr.length == 1
110
+ && nodeModulesContentArr[0] == 'gina'
111
+ && typeof(pack.dependencies) != 'object'
112
+ && pack.dependencies.count() > 0
113
+ ) {
114
+ isNodeModulesReinstallNeeded = true;
115
+ }
116
+
117
+ opt.client.write('\nArch: '+ currentArch);
118
+ // opt.client.write('\nprojectArchFile: '+ projectArchFile);
119
+ opt.client.write('\nPlatform: '+ currentPlatform);
120
+ opt.client.write('\nisNodeModulesReinstallNeeded: '+ isNodeModulesReinstallNeeded);
121
+
122
+ // TODO - Do we want this for production ?
123
+ if (isNodeModulesReinstallNeeded) {
124
+ // remove node_modules
125
+ if ( nodeModulesPathObj.existsSync() ) {
126
+ nodeModulesPathObj.rmSync();
127
+ }
128
+ }
129
+
130
+ // reinstall node_modules if needed
131
+ if ( isNodeModulesReinstallNeeded ) {
132
+ var initialDir = process.cwd();
133
+ var npmCmd = ( isWin32() ) ? 'npm.cmd install' : 'npm install';
134
+ process.chdir( _(projectObj.path, true) );
135
+
136
+ opt.client.write('\nRe-installing node_modules to match arch & platform');
137
+ opt.client.write('\nrunning: `'+ npmCmd +'` from '+ process.cwd() );
138
+ opt.client.write('\nrunning using TMPDIR: '+ _(getTmpDir(), true) );
139
+ var oldConfigGlobal = process.env.npm_config_global;
140
+ process.env.npm_config_global = false;
141
+ var result = null; resultError = false;
142
+ try {
143
+ result = execSync(npmCmd).toString();
144
+ var ginaBin = execSync('which gina').toString().trim();
145
+ execSync(ginaBin +' framework:link @'+ self.projectName);
146
+ } catch (err) {
147
+ resultError = err;
148
+ }
149
+
150
+ process.chdir(initialDir);
151
+ process.env.npm_config_global = oldConfigGlobal;
152
+
153
+ if (resultError) {
154
+ opt.msg = resultError.stack || resultError.message || resultError;
155
+ return cb(resultError);
156
+ // return end(opt, cmd)
157
+ }
158
+
159
+ opt.client.write('\n'+result);
160
+
161
+ opt.client.write('\r\nPlease wait...');
162
+
163
+ // handle node_modules installed
164
+ var e = new EventEmitter();
165
+ var trigger = self.projectName +'_'+ self.name +'#node-modules-installed';
166
+ var nIntervId = null;
167
+
168
+ e.once(trigger, function onBundleStarted(done) {
169
+ clearInterval(nIntervId);
170
+ nIntervId = null;
171
+
172
+ opt.client.write('\nOk, I am ready :)');
173
+ lib.generator.createFileFromDataSync(GINA_ARCH, projectArchFile);
174
+ lib.generator.createFileFromDataSync(GINA_PLATFORM, projectPlatformFile);
175
+ setTimeout(() => {
176
+ done(false)
177
+ }, 1000);
178
+
179
+ });
180
+
181
+ var nodeModulesPath = nodeModulesPathObj.toString();
182
+ var found = false;
183
+ nIntervId = setInterval(() => {
184
+ // Check for modules availability
185
+ found = new _(nodeModulesPath +'/gina', true).existsSync();
186
+
187
+ if ( found ) {
188
+ clearInterval(nIntervId);
189
+ e.emit(trigger, cb)
190
+ }
191
+ }, 200);
192
+
193
+ return;
194
+ }
195
+
196
+ cb(false);
197
+ }
198
+
199
+
200
+
201
+ var start = function(opt, cmd, bundleIndex) {
202
+
203
+ // getting the debug port
204
+ var debugStr = null;
205
+ if ( /\-\-(inspect|debug)/.test(opt.argv.join(',')) ) {
206
+ var pArr = null;
207
+ for (let i = 0, len = opt.argv.length; i<len; i++) {
208
+ if ( /\-\-(inspect|debug)/.test(opt.argv[i]) ) {
209
+ pArr = opt.argv[i].replace(/\s+/g, '').split(/=/);
210
+ opt.debugBrkEnabled = /\-brk/.test(pArr[0]);
211
+ opt.debugPort = pArr[1];
212
+ debugStr = opt.argv[i];
213
+ break;
214
+ }
215
+ }
216
+ }
217
+
218
+
219
+ var isBulkStart = (typeof(bundleIndex) != 'undefined') ? true : false;
220
+
221
+ var bundle = (isBulkStart) ? self.bundles[bundleIndex] : self.name;
222
+ // terminal.debug('bundle -> ', bundle);
223
+ var env = ( typeof(self.bundlesByProject[self.projectName][bundle].def_env) != 'undefined') ? self.bundlesByProject[self.projectName][bundle].def_env : self.defaultEnv;
224
+ // terminal.debug('env -> ', env);
225
+ var protocol = self.bundlesByProject[self.projectName][bundle].def_protocol;
226
+ // terminal.debug('protocol -> ', protocol);
227
+ var scheme = self.bundlesByProject[self.projectName][bundle].def_scheme;
228
+ // terminal.debug('scheme -> ', scheme);
229
+ var bundlePort = self.portsReverseData[bundle + '@' + self.projectName][env][protocol][scheme];
230
+ // terminal.debug('port -> ', bundlePort);
231
+
232
+ var msg = null;
233
+ if ( !isBulkStart && !isDefined('bundle', bundle) ) {
234
+ msg = 'Bundle [ '+ bundle +' ] is not registered inside `@'+ self.projectName +'`';
235
+ terminal.error(msg);
236
+ // opt.client.write(msg);
237
+ // // CMD exit
238
+ // opt.client.emit('end');
239
+
240
+ opt.msg = msg;
241
+ return end(opt, cmd, isBulkStart, bundleIndex, true)
242
+ }
243
+
244
+ var isStarting = false
245
+ , params = null
246
+ , index = null
247
+ , i = null
248
+ , len = null
249
+ ;
250
+
251
+ isRealApp(bundle, function(err, appPath){
252
+ if (err) {
253
+ terminal.error(err.stack||err.message)
254
+ } else {
255
+ if (isStarting)
256
+ return;
257
+
258
+
259
+ var proceedToStart = function(nodeModulesErr) {
260
+ if (nodeModulesErr) {
261
+ opt.msg = nodeModulesErr.stack;
262
+ return end(opt, cmd, isBulkStart, bundleIndex, true)
263
+ }
264
+
265
+
266
+ msg = 'Trying to start bundle [ ' + bundle + '@' + self.projectName + ' ]';
267
+ if (opt.debugPort) {
268
+ msg += ' (debug port: '+ opt.debugPort +')'
269
+ }
270
+ // To gina log
271
+ terminal.info(msg);
272
+ // to the terminal stdout
273
+ opt.client.write('\n\r'+msg);
274
+
275
+
276
+
277
+ process.list = (process.list == undefined) ? [] : process.list;
278
+ setContext('processList', process.list);
279
+ setContext('ginaProcess', process.pid);
280
+ setContext('debugPort', opt.debugPort);
281
+ setContext('debugBrkEnabled', opt.debugBrkEnabled);
282
+
283
+ params = [
284
+ // node arguments will be passed by gina
285
+ appPath,
286
+ JSON.stringify(getContext()), //Passing context to child.
287
+ self.projectName, // project name
288
+ bundle// bundle name
289
+ ];
290
+
291
+ // injecting node arguments
292
+ index = 0; i = 0; len = self.nodeParams.length;
293
+ if (len > 0) {
294
+ for (; i < len; ++i) {
295
+ params.splice(index, 0, self.nodeParams[i]);
296
+ ++index
297
+ }
298
+ }
299
+
300
+ i = 0; len = params.length;
301
+ for (; i < len; ++i) {
302
+ if (params[i] == '') {
303
+ params.splice(i, 1);
304
+ }
305
+ }
306
+
307
+
308
+ var child = spawn(opt.argv[0], params,
309
+ {
310
+ detached: true
311
+ }
312
+ );
313
+
314
+ child.stdout.setEncoding('utf8');//Set encoding.
315
+
316
+ // CMD Auto Exit
317
+ var retry = 0, maxRetry = 15, maxTimeout = (self.debugBrkEnabled) ? 1200000 : 4000;
318
+ var timerId = setInterval(function() {
319
+ if (!isStarting ) {
320
+ ++retry;
321
+ //opt.client.write('what is wrong ? '+ retry);
322
+ } else {
323
+ clearInterval(timerId);
324
+ }
325
+
326
+ if (retry > maxRetry) {
327
+ clearInterval(timerId);
328
+ opt.client.write('Sorry my friend, this is taking too long ! Terminating. Check your logs.');
329
+ child.kill('SIGKILL');
330
+ if (!opt.client.destroyed) {
331
+ opt.client.emit('exit');
332
+ opt.client.emit('end');
333
+ }
334
+
335
+
336
+ //end(opt, cmd, isBulkStart, bundleIndex);
337
+ }
338
+ }, maxTimeout);
339
+
340
+ var checkCaseCount = 2
341
+ // The 2 flags we need to free the child.stdout if we do not want the command to wait for a timeout
342
+ // NB.: you can place flag by using terminal.notice
343
+ , checkCaseRe = new RegExp('('+bundle + '@' + self.projectName + ' mounted !|Bundle started !)', 'g')
344
+ , url = null
345
+ , debuggerOn = null
346
+ ;
347
+ var port = '', errorFound = false;
348
+ child.stdout.on('data', function(data) {
349
+ // terminal.log(data);
350
+
351
+ // handle errors
352
+ if ( /EADDRINUSE.*port/i.test(data) && !errorFound ) {
353
+ terminal.log(data);
354
+ // kill the bundle starting process first
355
+ child.kill('SIGKILL');
356
+
357
+ errorFound = true;
358
+ //opt.client.write(data);
359
+ try {
360
+ port = ' #'+ data.match(/port\":\s+\d+/)[0].split(/\:/)[1].trim() +' ';
361
+ opt.client.write(' [ ' + bundle + '@' + self.projectName + ' ] has already been started, or port'+ port+'might be busy');
362
+
363
+ } catch(_err) {
364
+ opt.client.write(_err);
365
+ }
366
+
367
+
368
+ ++opt.onlineCount;
369
+ end(opt, cmd, isBulkStart, bundleIndex);
370
+ clearInterval(timerId);
371
+
372
+ return;
373
+ }
374
+
375
+ // catch fatal errors to exit
376
+ if ( /(\[|\[\s+)emerg/.test(data) ) {
377
+ terminal.log(data);
378
+
379
+ // kill the bundle starting process first
380
+ child.kill('SIGKILL');
381
+
382
+ opt.notStarted.push(bundle + '@' + self.projectName);
383
+ opt.client.write(' [ ' + bundle + '@' + self.projectName + ' ] aborted :( \n => Check your logs to see why.');
384
+
385
+ ++opt.onlineCount;
386
+ end(opt, cmd, isBulkStart, bundleIndex);
387
+ clearInterval(timerId);
388
+
389
+ return;
390
+ }
391
+
392
+ // Expecting 2 flags (checkCaseCount) to free the child stdout !!
393
+ // terminal.debug('BO case count '+ checkCaseCount);
394
+ var _matched = data.match(checkCaseRe);
395
+ if ( _matched ) {
396
+ // terminal.warn('case count: '+ checkCaseCount +'\nMatched: '+ _matched.length + '\n'+ checkCaseRe +'\n-> '+ data + '<-\n');
397
+ checkCaseCount -= _matched.length;
398
+ }
399
+ // terminal.debug('EO case count: '+ checkCaseCount + ' -> '+ data);
400
+
401
+ // cache bundle state info given by the server while starting
402
+ if ( !debuggerOn && new RegExp('Debugger listening on','gmi').test(data)) {
403
+ debuggerOn = '\n ' + data.match(new RegExp('Debugger listening on .*','gmi'));
404
+ }
405
+ if ( !url && new RegExp('This way please','gmi').test(data)) {
406
+ url = '\n ' + data.match(new RegExp('This way please -> .*','gmi'));
407
+ }
408
+
409
+
410
+
411
+ if (!opt.client.destroyed && !isStarting && !checkCaseCount) {
412
+ isStarting = true;
413
+ clearInterval(timerId);
414
+ ++opt.onlineCount;
415
+
416
+ if (!debuggerOn) {
417
+ debuggerOn = ''
418
+ }
419
+
420
+ // resume logging
421
+ process.emit('gina#bundle-logging', GINA_MQ_PORT, GINA_HOST_V4, bundle + '@' + self.projectName);
422
+ terminal.debug('Sent: gina#bundle-logging');
423
+
424
+
425
+ opt.client.write(' [ ' + bundle + '@' + self.projectName + ' ] started V(-.o)V'+ url + debuggerOn);
426
+
427
+
428
+ end(opt, cmd, isBulkStart, bundleIndex);
429
+ return;
430
+ }
431
+
432
+ return;
433
+
434
+ });
435
+
436
+ //when an exception is thrown, it is sent to the client
437
+ child.stderr.setEncoding('utf8');
438
+ var error = null, onException = false;
439
+ child.stderr.on('data', function(err) {
440
+ error = err.toString();
441
+
442
+ if (/Waiting for the debugger to disconnect.../.test(error) ) { // dual debug --inspect-gina && --inspect
443
+ onException = true;
444
+ }
445
+
446
+ if (/Debugger listening|Debugger attached|Warning|address already in use/i.test(error)) {
447
+
448
+ if (!opt.client.destroyed) {
449
+ opt.client.write(error);
450
+ }
451
+ }
452
+
453
+ terminal.error(error);
454
+ });
455
+
456
+ child.on('exit', function(code, signal) {
457
+ // handles only signals that cannot be cannot be caught or ignored
458
+ // ref.: `framework/<version>/lib/proc.js`
459
+ if (onException) { // dual debug --inspect-gina && --inspect
460
+ return end(opt, cmd, isBulkStart, bundleIndex);
461
+ }
462
+ if (/(SIGKILL|SIGSTOP)/i.test(signal)) {
463
+ terminal.emerg('[' + this.pid + '] `'+ self.name +'@'+ self.projectName +'` exiting with signal: ', signal);
464
+ cmd.proc.dismiss(this.pid, signal);
465
+ return;
466
+ }
467
+
468
+ });
469
+
470
+ } // EO proceedToStart
471
+
472
+ checkArchAgainstNodeModules(opt, proceedToStart);
473
+
474
+ } // EO Else
475
+
476
+ });//EO isRealApp
477
+
478
+ } //EO start
479
+
480
+
481
+
482
+
483
+ var end = function (opt, cmd, isBulkStart, i, error) {
484
+ if ( typeof(opt.msg) != 'undefined' ) {
485
+ opt.client.write('\n\r'+ opt.msg);
486
+ }
487
+
488
+ isBulkStart = ( typeof(isBulkStart) == 'undefined' ) ? false : isBulkStart;
489
+ if (isBulkStart) {
490
+ ++i;
491
+ if ( typeof(self.bundles[i]) != 'undefined' ) {
492
+ start(opt, cmd, i)
493
+ } else {
494
+ opt.client.write('\n\r[ Online ] '+ opt.onlineCount +'/'+ self.bundles.length);
495
+ var notStartedMsg = '\nCould not start: \n - '+ opt.notStarted.join('\n');
496
+ opt.client.write(notStartedMsg);
497
+
498
+ // TODO - 2023-01-08 Remove this if not needed
499
+ // if ( typeof(error) != 'undefined' && !new RegExp('gina-v').test(process.title) ) { // will also stop the framework !!!
500
+ // process.exit(1);
501
+ // }
502
+
503
+ if (!opt.client.destroyed)
504
+ opt.client.emit('end');
505
+ }
506
+ return;
507
+ }
508
+
509
+ // TODO - 2023-01-08 Remove this if not needed
510
+ // if ( typeof(error) != 'undefined' && !new RegExp('gina-v').test(process.title) ) { // will also stop the framework !!!
511
+ // process.exit(1);
512
+ // }
513
+
514
+ if (!opt.client.destroyed)
515
+ opt.client.emit('end');
516
+ // Force exit in case process is stuck
517
+ setTimeout(() => {
518
+ if (!opt.client.destroyed) {
519
+ opt.client.emit('exit');
520
+ }
521
+ }, 150);
522
+ }
523
+
524
+
525
+
526
+ var isRealApp = function(bundle, callback) {
527
+ var p = null
528
+ , d = null
529
+ , env = self.projects[self.projectName]['def_env']
530
+ , isDev = ( self.projects[self.projectName]['dev_env'] == env ) ? true : false
531
+ , root = self.projectLocation
532
+ , bundleDir = null
533
+ , bundlesPath = null
534
+ , bundleInit = null
535
+ ;
536
+
537
+ try {
538
+ //This is mostly for dev.
539
+ var pkg = requireJSON( _(root+ '/manifest.json', true) ).bundles;
540
+ if ( typeof(pkg[bundle].version) == 'undefined' && typeof(pkg[bundle].tag) != 'undefined') {
541
+ pkg[bundle].version = pkg[bundle].tag
542
+ }
543
+
544
+ var path = null, version = null;
545
+ if (
546
+ pkg[bundle] != 'undefined' && pkg[bundle]['src'] != 'undefined' && isDev
547
+ ) {
548
+ path = pkg[bundle].src;
549
+
550
+ p = _( root +'/'+ path );//path.replace('/' + bundle, '')
551
+ d = _( root +'/'+ path + '/index.js' );
552
+
553
+ bundleDir = path.replace('/' + bundle, '');
554
+ setContext('bundle_dir', bundleDir);
555
+ bundlesPath = _( root +'/'+ bundleDir );
556
+ bundleInit = d;
557
+
558
+ } else {
559
+ //Others releases.
560
+ path = 'releases/'+ bundle +'/' + env +'/'+ pkg[bundle].version;
561
+ version = pkg[bundle].version;
562
+ p = _( root +'/'+ path );//path.replace('/' + bundle, '')
563
+ d = _( root +'/'+ path + '/index.js' );
564
+
565
+ bundleDir = path;
566
+ bundlesPath = _(root + '/'+ bundleDir);
567
+ bundleInit = d;
568
+ }
569
+
570
+ } catch (err) {
571
+ // default bundlesPath.
572
+ // TODO - log warn ?
573
+ terminal.warn(err.stack||err.message);
574
+ bundleDir = 'bundles';
575
+ bundlesPath = _(root +'/'+ bundleDir);
576
+ p = _(root +'/'+ bundleDir +'/'+ bundle);
577
+ d = _(root + '/'+ bundleDir +'/'+ bundle + '/index.js');
578
+ bundleInit = d;
579
+ }
580
+
581
+ //Checking root.
582
+ if ( new _(d, true).existsSync() ) {
583
+ //checking bundle directory.
584
+ fs.stat(p, function(err, stats) {
585
+ if (err) {
586
+ callback(err)
587
+ } else {
588
+
589
+ if (stats.isDirectory()) {
590
+ callback(false, d)
591
+ } else {
592
+ callback(new Error('[ ' + d + ' ] is not a directory'))
593
+ }
594
+ }
595
+ })
596
+ }
597
+ else {
598
+ callback(new Error('[ ' + d + ' ] does not exists'))
599
+ }
600
+ }
601
+
602
+
603
+ init(opt, cmd)
604
+ }
605
+ module.exports = Start;