gina 0.6.5 → 0.6.6

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 (562) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/README.md +23 -36
  3. package/ROADMAP.md +1 -0
  4. package/framework/v0.6.6/VERSION +1 -0
  5. package/framework/{v0.6.5 → v0.6.6}/core/asset/plugin/dist/vendor/gina/js/gina.js +84 -25
  6. package/framework/v0.6.6/core/asset/plugin/dist/vendor/gina/js/gina.min.js +643 -0
  7. package/framework/v0.6.6/core/asset/plugin/dist/vendor/gina/js/gina.min.js.br +0 -0
  8. package/framework/v0.6.6/core/asset/plugin/dist/vendor/gina/js/gina.min.js.gz +0 -0
  9. package/framework/{v0.6.5 → v0.6.6}/lib/logger/src/containers/file/index.js +9 -5
  10. package/framework/v0.6.6/lib/logger/src/containers/mq/speaker.js +439 -0
  11. package/framework/{v0.6.5 → v0.6.6}/lib/net-locality/src/main.js +48 -2
  12. package/framework/{v0.6.5 → v0.6.6}/package.json +1 -1
  13. package/gna.js +4 -4
  14. package/llms.txt +30 -30
  15. package/package.json +3 -3
  16. package/framework/v0.6.5/VERSION +0 -1
  17. package/framework/v0.6.5/core/asset/plugin/dist/vendor/gina/js/gina.min.js +0 -643
  18. package/framework/v0.6.5/core/asset/plugin/dist/vendor/gina/js/gina.min.js.br +0 -0
  19. package/framework/v0.6.5/core/asset/plugin/dist/vendor/gina/js/gina.min.js.gz +0 -0
  20. package/framework/v0.6.5/lib/logger/src/containers/mq/speaker.js +0 -242
  21. /package/framework/{v0.6.5 → v0.6.6}/AUTHORS +0 -0
  22. /package/framework/{v0.6.5 → v0.6.6}/LICENSE +0 -0
  23. /package/framework/{v0.6.5 → v0.6.6}/core/asset/html/nolayout.html +0 -0
  24. /package/framework/{v0.6.5 → v0.6.6}/core/asset/html/static.html +0 -0
  25. /package/framework/{v0.6.5 → v0.6.6}/core/asset/img/android-chrome-192x192.png +0 -0
  26. /package/framework/{v0.6.5 → v0.6.6}/core/asset/img/android-chrome-512x512.png +0 -0
  27. /package/framework/{v0.6.5 → v0.6.6}/core/asset/img/apple-touch-icon.png +0 -0
  28. /package/framework/{v0.6.5 → v0.6.6}/core/asset/img/favicon-16x16.png +0 -0
  29. /package/framework/{v0.6.5 → v0.6.6}/core/asset/img/favicon-32x32.png +0 -0
  30. /package/framework/{v0.6.5 → v0.6.6}/core/asset/img/favicon.ico +0 -0
  31. /package/framework/{v0.6.5 → v0.6.6}/core/asset/plugin/README.md +0 -0
  32. /package/framework/{v0.6.5 → v0.6.6}/core/asset/plugin/dist/vendor/gina/beemaster/beemaster.css +0 -0
  33. /package/framework/{v0.6.5 → v0.6.6}/core/asset/plugin/dist/vendor/gina/beemaster/beemaster.js +0 -0
  34. /package/framework/{v0.6.5 → v0.6.6}/core/asset/plugin/dist/vendor/gina/beemaster/index.html +0 -0
  35. /package/framework/{v0.6.5 → v0.6.6}/core/asset/plugin/dist/vendor/gina/css/gina.min.css +0 -0
  36. /package/framework/{v0.6.5 → v0.6.6}/core/asset/plugin/dist/vendor/gina/css/gina.min.css.br +0 -0
  37. /package/framework/{v0.6.5 → v0.6.6}/core/asset/plugin/dist/vendor/gina/css/gina.min.css.gz +0 -0
  38. /package/framework/{v0.6.5 → v0.6.6}/core/asset/plugin/dist/vendor/gina/html/statusbar.html +0 -0
  39. /package/framework/{v0.6.5 → v0.6.6}/core/asset/plugin/dist/vendor/gina/html/statusbar.html.br +0 -0
  40. /package/framework/{v0.6.5 → v0.6.6}/core/asset/plugin/dist/vendor/gina/html/statusbar.html.gz +0 -0
  41. /package/framework/{v0.6.5 → v0.6.6}/core/asset/plugin/dist/vendor/gina/inspector/have_heart_one-webfont.woff2 +0 -0
  42. /package/framework/{v0.6.5 → v0.6.6}/core/asset/plugin/dist/vendor/gina/inspector/index.html +0 -0
  43. /package/framework/{v0.6.5 → v0.6.6}/core/asset/plugin/dist/vendor/gina/inspector/inspector.css +0 -0
  44. /package/framework/{v0.6.5 → v0.6.6}/core/asset/plugin/dist/vendor/gina/inspector/inspector.js +0 -0
  45. /package/framework/{v0.6.5 → v0.6.6}/core/asset/plugin/dist/vendor/gina/inspector/logo.svg +0 -0
  46. /package/framework/{v0.6.5 → v0.6.6}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +0 -0
  47. /package/framework/{v0.6.5 → v0.6.6}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.br +0 -0
  48. /package/framework/{v0.6.5 → v0.6.6}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.gz +0 -0
  49. /package/framework/{v0.6.5 → v0.6.6}/core/config.js +0 -0
  50. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/ai/index.js +0 -0
  51. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/ai/lib/connector.js +0 -0
  52. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/couchbase/index.js +0 -0
  53. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/couchbase/lib/connector.js +0 -0
  54. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/couchbase/lib/connector.v3.js +0 -0
  55. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/couchbase/lib/connector.v4.js +0 -0
  56. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/couchbase/lib/n1ql.js +0 -0
  57. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/couchbase/lib/session-store.js +0 -0
  58. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/couchbase/lib/session-store.v3.js +0 -0
  59. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/couchbase/lib/session-store.v4.js +0 -0
  60. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/duckdb/index.js +0 -0
  61. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/duckdb/lib/connector.js +0 -0
  62. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/mongodb/index.js +0 -0
  63. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/mongodb/lib/connector.js +0 -0
  64. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/mongodb/lib/job-store.js +0 -0
  65. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/mongodb/lib/pipeline-loader.js +0 -0
  66. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/mongodb/lib/session-store.js +0 -0
  67. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/mysql/index.js +0 -0
  68. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/mysql/lib/connector.js +0 -0
  69. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/postgresql/index.js +0 -0
  70. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/postgresql/lib/connector.js +0 -0
  71. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/redis/index.js +0 -0
  72. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/redis/lib/connector.js +0 -0
  73. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/redis/lib/job-store.js +0 -0
  74. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/redis/lib/render-cache-store.js +0 -0
  75. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/redis/lib/session-store.js +0 -0
  76. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/scylladb/index.js +0 -0
  77. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/scylladb/lib/connector.js +0 -0
  78. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/scylladb/lib/session-store.js +0 -0
  79. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/sql-parser.js +0 -0
  80. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/sqlite/index.js +0 -0
  81. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/sqlite/lib/connector.js +0 -0
  82. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/sqlite/lib/job-store.js +0 -0
  83. /package/framework/{v0.6.5 → v0.6.6}/core/connectors/sqlite/lib/session-store.js +0 -0
  84. /package/framework/{v0.6.5 → v0.6.6}/core/content.encoding +0 -0
  85. /package/framework/{v0.6.5 → v0.6.6}/core/controller/controller.framework.js +0 -0
  86. /package/framework/{v0.6.5 → v0.6.6}/core/controller/controller.js +0 -0
  87. /package/framework/{v0.6.5 → v0.6.6}/core/controller/controller.render-json.js +0 -0
  88. /package/framework/{v0.6.5 → v0.6.6}/core/controller/controller.render-nunjucks-async.js +0 -0
  89. /package/framework/{v0.6.5 → v0.6.6}/core/controller/controller.render-nunjucks.js +0 -0
  90. /package/framework/{v0.6.5 → v0.6.6}/core/controller/controller.render-stream.js +0 -0
  91. /package/framework/{v0.6.5 → v0.6.6}/core/controller/controller.render-swig-async.js +0 -0
  92. /package/framework/{v0.6.5 → v0.6.6}/core/controller/controller.render-swig.js +0 -0
  93. /package/framework/{v0.6.5 → v0.6.6}/core/controller/controller.render-v1.js +0 -0
  94. /package/framework/{v0.6.5 → v0.6.6}/core/controller/index.js +0 -0
  95. /package/framework/{v0.6.5 → v0.6.6}/core/controller/inspector-window-emit.js +0 -0
  96. /package/framework/{v0.6.5 → v0.6.6}/core/controller/release-banner.js +0 -0
  97. /package/framework/{v0.6.5 → v0.6.6}/core/dev/index.js +0 -0
  98. /package/framework/{v0.6.5 → v0.6.6}/core/dev/lib/class.js +0 -0
  99. /package/framework/{v0.6.5 → v0.6.6}/core/dev/lib/factory.js +0 -0
  100. /package/framework/{v0.6.5 → v0.6.6}/core/dev/lib/tools.js +0 -0
  101. /package/framework/{v0.6.5 → v0.6.6}/core/gna.js +0 -0
  102. /package/framework/{v0.6.5 → v0.6.6}/core/locales/README.md +0 -0
  103. /package/framework/{v0.6.5 → v0.6.6}/core/locales/currency.json +0 -0
  104. /package/framework/{v0.6.5 → v0.6.6}/core/locales/dist/language/en.json +0 -0
  105. /package/framework/{v0.6.5 → v0.6.6}/core/locales/dist/language/fr.json +0 -0
  106. /package/framework/{v0.6.5 → v0.6.6}/core/locales/dist/region/en.json +0 -0
  107. /package/framework/{v0.6.5 → v0.6.6}/core/locales/dist/region/fr.json +0 -0
  108. /package/framework/{v0.6.5 → v0.6.6}/core/locales/index.js +0 -0
  109. /package/framework/{v0.6.5 → v0.6.6}/core/mime.types +0 -0
  110. /package/framework/{v0.6.5 → v0.6.6}/core/model/entity.js +0 -0
  111. /package/framework/{v0.6.5 → v0.6.6}/core/model/index.js +0 -0
  112. /package/framework/{v0.6.5 → v0.6.6}/core/model/template/entityFactory.js +0 -0
  113. /package/framework/{v0.6.5 → v0.6.6}/core/model/template/index.js +0 -0
  114. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/README.md +0 -0
  115. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/index.js +0 -0
  116. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/csrf/README.md +0 -0
  117. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/csrf/package.json +0 -0
  118. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/csrf/src/main.js +0 -0
  119. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/README.md +0 -0
  120. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/coep/README.md +0 -0
  121. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/coep/package.json +0 -0
  122. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/coep/src/main.js +0 -0
  123. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/coop/README.md +0 -0
  124. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/coop/package.json +0 -0
  125. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/coop/src/main.js +0 -0
  126. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/corp/README.md +0 -0
  127. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/corp/package.json +0 -0
  128. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/corp/src/main.js +0 -0
  129. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/csp/README.md +0 -0
  130. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/csp/package.json +0 -0
  131. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/csp/src/main.js +0 -0
  132. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/hide-powered-by/README.md +0 -0
  133. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/hide-powered-by/package.json +0 -0
  134. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/hide-powered-by/src/main.js +0 -0
  135. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/hsts/README.md +0 -0
  136. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/hsts/package.json +0 -0
  137. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/hsts/src/main.js +0 -0
  138. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/origin-agent-cluster/README.md +0 -0
  139. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/origin-agent-cluster/package.json +0 -0
  140. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/origin-agent-cluster/src/main.js +0 -0
  141. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/package.json +0 -0
  142. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/referrer-policy/README.md +0 -0
  143. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/referrer-policy/package.json +0 -0
  144. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/referrer-policy/src/main.js +0 -0
  145. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/src/main.js +0 -0
  146. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/x-content-type-options/README.md +0 -0
  147. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/x-content-type-options/package.json +0 -0
  148. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/x-content-type-options/src/main.js +0 -0
  149. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/x-dns-prefetch-control/README.md +0 -0
  150. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/x-dns-prefetch-control/package.json +0 -0
  151. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/x-dns-prefetch-control/src/main.js +0 -0
  152. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/x-download-options/README.md +0 -0
  153. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/x-download-options/package.json +0 -0
  154. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/x-download-options/src/main.js +0 -0
  155. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/x-frame-options/README.md +0 -0
  156. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/x-frame-options/package.json +0 -0
  157. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/x-frame-options/src/main.js +0 -0
  158. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/README.md +0 -0
  159. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/package.json +0 -0
  160. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/src/main.js +0 -0
  161. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/x-xss-protection/README.md +0 -0
  162. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/x-xss-protection/package.json +0 -0
  163. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/security-headers/x-xss-protection/src/main.js +0 -0
  164. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/session/README.md +0 -0
  165. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/session/package.json +0 -0
  166. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/session/src/main.js +0 -0
  167. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/storage/README.md +0 -0
  168. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/storage/build.json +0 -0
  169. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/storage/package.json +0 -0
  170. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/storage/src/main.js +0 -0
  171. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/validator/README.md +0 -0
  172. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/validator/build.json +0 -0
  173. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/validator/package.json +0 -0
  174. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/validator/src/form-validator.js +0 -0
  175. /package/framework/{v0.6.5 → v0.6.6}/core/plugins/lib/validator/src/main.js +0 -0
  176. /package/framework/{v0.6.5 → v0.6.6}/core/router.js +0 -0
  177. /package/framework/{v0.6.5 → v0.6.6}/core/server.express.js +0 -0
  178. /package/framework/{v0.6.5 → v0.6.6}/core/server.isaac.js +0 -0
  179. /package/framework/{v0.6.5 → v0.6.6}/core/server.js +0 -0
  180. /package/framework/{v0.6.5 → v0.6.6}/core/status.codes +0 -0
  181. /package/framework/{v0.6.5 → v0.6.6}/core/template/_gitignore +0 -0
  182. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle/config/app.json +0 -0
  183. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle/config/connectors.json +0 -0
  184. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle/config/routing.json +0 -0
  185. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle/config/settings.json +0 -0
  186. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle/config/settings.server.json +0 -0
  187. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle/config/templates.json +0 -0
  188. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle/config/watchers.json +0 -0
  189. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle/controllers/controller.content.js +0 -0
  190. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
  191. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle/controllers/setup.js +0 -0
  192. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle/index.js +0 -0
  193. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle/locales/en.json +0 -0
  194. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
  195. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle_public/css/default.css +0 -0
  196. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle_public/css/home.css +0 -0
  197. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
  198. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
  199. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle_public/js/components/x-checklist.js +0 -0
  200. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
  201. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle_public/manifest.webmanifest +0 -0
  202. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle_public/readme.md +0 -0
  203. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle_public/sw.js +0 -0
  204. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
  205. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle_templates/html/content/homepage.html +0 -0
  206. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle_templates/html/includes/error-msg-noscript.html +0 -0
  207. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle_templates/html/includes/error-msg-outdated-browser.html +0 -0
  208. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle_templates/html/includes/x-checklist.html +0 -0
  209. /package/framework/{v0.6.5 → v0.6.6}/core/template/boilerplate/bundle_templates/html/layouts/main.html +0 -0
  210. /package/framework/{v0.6.5 → v0.6.6}/core/template/command/gina.bat.tpl +0 -0
  211. /package/framework/{v0.6.5 → v0.6.6}/core/template/command/gina.tpl +0 -0
  212. /package/framework/{v0.6.5 → v0.6.6}/core/template/conf/env.json +0 -0
  213. /package/framework/{v0.6.5 → v0.6.6}/core/template/conf/manifest.json +0 -0
  214. /package/framework/{v0.6.5 → v0.6.6}/core/template/conf/package.json +0 -0
  215. /package/framework/{v0.6.5 → v0.6.6}/core/template/conf/settings.json +0 -0
  216. /package/framework/{v0.6.5 → v0.6.6}/core/template/conf/statics.json +0 -0
  217. /package/framework/{v0.6.5 → v0.6.6}/core/template/conf/templates.json +0 -0
  218. /package/framework/{v0.6.5 → v0.6.6}/core/template/error/client/json/401.json +0 -0
  219. /package/framework/{v0.6.5 → v0.6.6}/core/template/error/client/json/403.json +0 -0
  220. /package/framework/{v0.6.5 → v0.6.6}/core/template/error/client/json/404.json +0 -0
  221. /package/framework/{v0.6.5 → v0.6.6}/core/template/error/server/html/50x.html +0 -0
  222. /package/framework/{v0.6.5 → v0.6.6}/core/template/error/server/json/500.json +0 -0
  223. /package/framework/{v0.6.5 → v0.6.6}/core/template/error/server/json/503.json +0 -0
  224. /package/framework/{v0.6.5 → v0.6.6}/core/template/extensions/logger/config.json +0 -0
  225. /package/framework/{v0.6.5 → v0.6.6}/helpers/console.js +0 -0
  226. /package/framework/{v0.6.5 → v0.6.6}/helpers/context.js +0 -0
  227. /package/framework/{v0.6.5 → v0.6.6}/helpers/data/LICENSE +0 -0
  228. /package/framework/{v0.6.5 → v0.6.6}/helpers/data/README.md +0 -0
  229. /package/framework/{v0.6.5 → v0.6.6}/helpers/data/package.json +0 -0
  230. /package/framework/{v0.6.5 → v0.6.6}/helpers/data/src/main.js +0 -0
  231. /package/framework/{v0.6.5 → v0.6.6}/helpers/dateFormat.js +0 -0
  232. /package/framework/{v0.6.5 → v0.6.6}/helpers/index.js +0 -0
  233. /package/framework/{v0.6.5 → v0.6.6}/helpers/json/LICENSE +0 -0
  234. /package/framework/{v0.6.5 → v0.6.6}/helpers/json/README.md +0 -0
  235. /package/framework/{v0.6.5 → v0.6.6}/helpers/json/package.json +0 -0
  236. /package/framework/{v0.6.5 → v0.6.6}/helpers/json/src/main.js +0 -0
  237. /package/framework/{v0.6.5 → v0.6.6}/helpers/path.js +0 -0
  238. /package/framework/{v0.6.5 → v0.6.6}/helpers/plugins/README.md +0 -0
  239. /package/framework/{v0.6.5 → v0.6.6}/helpers/plugins/package.json +0 -0
  240. /package/framework/{v0.6.5 → v0.6.6}/helpers/plugins/src/api-error.js +0 -0
  241. /package/framework/{v0.6.5 → v0.6.6}/helpers/plugins/src/main.js +0 -0
  242. /package/framework/{v0.6.5 → v0.6.6}/helpers/prototypes.js +0 -0
  243. /package/framework/{v0.6.5 → v0.6.6}/helpers/task.js +0 -0
  244. /package/framework/{v0.6.5 → v0.6.6}/helpers/text.js +0 -0
  245. /package/framework/{v0.6.5 → v0.6.6}/lib/admin/package.json +0 -0
  246. /package/framework/{v0.6.5 → v0.6.6}/lib/admin/src/main.js +0 -0
  247. /package/framework/{v0.6.5 → v0.6.6}/lib/archiver/README.md +0 -0
  248. /package/framework/{v0.6.5 → v0.6.6}/lib/archiver/build.json +0 -0
  249. /package/framework/{v0.6.5 → v0.6.6}/lib/archiver/package.json +0 -0
  250. /package/framework/{v0.6.5 → v0.6.6}/lib/archiver/src/dep/jszip.min.js +0 -0
  251. /package/framework/{v0.6.5 → v0.6.6}/lib/archiver/src/main.js +0 -0
  252. /package/framework/{v0.6.5 → v0.6.6}/lib/async/package.json +0 -0
  253. /package/framework/{v0.6.5 → v0.6.6}/lib/async/src/main.js +0 -0
  254. /package/framework/{v0.6.5 → v0.6.6}/lib/audit/package.json +0 -0
  255. /package/framework/{v0.6.5 → v0.6.6}/lib/audit/src/main.js +0 -0
  256. /package/framework/{v0.6.5 → v0.6.6}/lib/audit-store.js +0 -0
  257. /package/framework/{v0.6.5 → v0.6.6}/lib/authn/package.json +0 -0
  258. /package/framework/{v0.6.5 → v0.6.6}/lib/authn/src/lockout.js +0 -0
  259. /package/framework/{v0.6.5 → v0.6.6}/lib/authn/src/main.js +0 -0
  260. /package/framework/{v0.6.5 → v0.6.6}/lib/authn/src/totp.js +0 -0
  261. /package/framework/{v0.6.5 → v0.6.6}/lib/authz-gate/package.json +0 -0
  262. /package/framework/{v0.6.5 → v0.6.6}/lib/authz-gate/src/main.js +0 -0
  263. /package/framework/{v0.6.5 → v0.6.6}/lib/cache/README.md +0 -0
  264. /package/framework/{v0.6.5 → v0.6.6}/lib/cache/build.json +0 -0
  265. /package/framework/{v0.6.5 → v0.6.6}/lib/cache/package.json +0 -0
  266. /package/framework/{v0.6.5 → v0.6.6}/lib/cache/src/main.js +0 -0
  267. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/aliases.json +0 -0
  268. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/audit/arguments.json +0 -0
  269. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/audit/help.txt +0 -0
  270. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/audit/verify.js +0 -0
  271. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/add.js +0 -0
  272. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/arguments.json +0 -0
  273. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/build.js +0 -0
  274. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/copy.js +0 -0
  275. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/cp.js +0 -0
  276. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/help.js +0 -0
  277. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/help.txt +0 -0
  278. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/inc/name-rewrite.js +0 -0
  279. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/list.js +0 -0
  280. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/man.js +0 -0
  281. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/mcp-start.js +0 -0
  282. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/mcp.js +0 -0
  283. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/oas.js +0 -0
  284. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/openapi.js +0 -0
  285. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/remove.js +0 -0
  286. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/rename.js +0 -0
  287. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/restart.js +0 -0
  288. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/rm.js +0 -0
  289. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/start.js +0 -0
  290. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/status.js +0 -0
  291. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/stop.js +0 -0
  292. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/bundle/types.js +0 -0
  293. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/cache/arguments.json +0 -0
  294. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/cache/clear.js +0 -0
  295. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/cache/help.txt +0 -0
  296. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/cache/stats.js +0 -0
  297. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/connector/add.js +0 -0
  298. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/connector/arguments.json +0 -0
  299. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/connector/help.js +0 -0
  300. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/connector/help.txt +0 -0
  301. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/connector/infer.js +0 -0
  302. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/connector/list.js +0 -0
  303. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/connector/migrate.js +0 -0
  304. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/connector/models.js +0 -0
  305. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/connector/remove.js +0 -0
  306. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/connector/rm.js +0 -0
  307. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/connector/test.js +0 -0
  308. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/container/arguments.json +0 -0
  309. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/container/help.js +0 -0
  310. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/container/help.txt +0 -0
  311. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/container/man.js +0 -0
  312. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/container/ps.js +0 -0
  313. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/container/stop.js +0 -0
  314. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/controller/add.js +0 -0
  315. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/controller/arguments.json +0 -0
  316. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/controller/help.txt +0 -0
  317. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/controller/inc/args.js +0 -0
  318. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/controller/inc/namespace.js +0 -0
  319. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/controller/inc/reference-rewrite.js +0 -0
  320. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/controller/inc/reference-scan.js +0 -0
  321. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/controller/inc/scaffold.js +0 -0
  322. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/controller/remove.js +0 -0
  323. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/controller/rename.js +0 -0
  324. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/controller/rm.js +0 -0
  325. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/env/add.js +0 -0
  326. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/env/get.js +0 -0
  327. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/env/help.js +0 -0
  328. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/env/help.txt +0 -0
  329. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/env/link-dev.js +0 -0
  330. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/env/list.js +0 -0
  331. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/env/remove.js +0 -0
  332. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/env/rm.js +0 -0
  333. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/env/set.js +0 -0
  334. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/env/unset.js +0 -0
  335. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/env/use.js +0 -0
  336. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/add.js +0 -0
  337. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/arguments.json +0 -0
  338. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/build.js +0 -0
  339. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/dot.js +0 -0
  340. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/get.js +0 -0
  341. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/help.js +0 -0
  342. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/help.txt +0 -0
  343. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/init.js +0 -0
  344. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/link-node-modules.js +0 -0
  345. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/link.js +0 -0
  346. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/list.js +0 -0
  347. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/man.js +0 -0
  348. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/msg.json +0 -0
  349. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/open.js +0 -0
  350. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/remove.js +0 -0
  351. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/reset.js +0 -0
  352. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/restart.js +0 -0
  353. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/set.js +0 -0
  354. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/start.js +0 -0
  355. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/status.js +0 -0
  356. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/stop.js +0 -0
  357. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/tail.js +0 -0
  358. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/update.js +0 -0
  359. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/framework/version.js +0 -0
  360. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/gina-dev.1.md +0 -0
  361. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/gina-framework.1.md +0 -0
  362. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/gina.1.md +0 -0
  363. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/helper.js +0 -0
  364. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/i18n/add.js +0 -0
  365. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/i18n/arguments.json +0 -0
  366. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/i18n/export.js +0 -0
  367. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/i18n/help.js +0 -0
  368. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/i18n/help.txt +0 -0
  369. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/i18n/import.js +0 -0
  370. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/i18n/scan.js +0 -0
  371. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/image/_host.js +0 -0
  372. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/image/arguments.json +0 -0
  373. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/image/build.js +0 -0
  374. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/image/help.js +0 -0
  375. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/image/help.txt +0 -0
  376. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/image/list.js +0 -0
  377. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/image/man.js +0 -0
  378. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/image/rm.js +0 -0
  379. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/image/run.js +0 -0
  380. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/index.js +0 -0
  381. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/inspector/help.js +0 -0
  382. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/inspector/help.txt +0 -0
  383. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/inspector/open.js +0 -0
  384. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/man-render.js +0 -0
  385. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/minion/arguments.json +0 -0
  386. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/minion/help.js +0 -0
  387. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/minion/help.txt +0 -0
  388. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/minion/kill.js +0 -0
  389. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/minion/list.js +0 -0
  390. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/msg.json +0 -0
  391. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/port/help.js +0 -0
  392. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/port/help.txt +0 -0
  393. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/port/inc/scan.js +0 -0
  394. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/port/list.js +0 -0
  395. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/port/reset.js +0 -0
  396. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/port/set.js +0 -0
  397. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/project/add.js +0 -0
  398. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/project/arguments.json +0 -0
  399. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/project/backup.js +0 -0
  400. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/project/build.js +0 -0
  401. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/project/help.js +0 -0
  402. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/project/help.txt +0 -0
  403. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/project/import.js +0 -0
  404. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/project/list.js +0 -0
  405. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/project/man.js +0 -0
  406. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/project/move.js +0 -0
  407. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/project/remove.js +0 -0
  408. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/project/rename.js +0 -0
  409. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/project/restart.js +0 -0
  410. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/project/restore.js +0 -0
  411. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/project/rm.js +0 -0
  412. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/project/start.js +0 -0
  413. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/project/status.js +0 -0
  414. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/project/stop.js +0 -0
  415. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/protocol/arguments.json +0 -0
  416. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/protocol/help.js +0 -0
  417. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/protocol/help.txt +0 -0
  418. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/protocol/list.js +0 -0
  419. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/protocol/remove.js +0 -0
  420. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/protocol/set.js +0 -0
  421. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/scope/add.js +0 -0
  422. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/scope/help.js +0 -0
  423. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/scope/help.txt +0 -0
  424. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/scope/link-local.js +0 -0
  425. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/scope/link-production.js +0 -0
  426. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/scope/list.js +0 -0
  427. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/scope/remove.js +0 -0
  428. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/scope/rm.js +0 -0
  429. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/scope/use.js +0 -0
  430. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/secrets/arguments.json +0 -0
  431. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/secrets/check.js +0 -0
  432. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/secrets/help.js +0 -0
  433. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/secrets/help.txt +0 -0
  434. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/secrets/scan.js +0 -0
  435. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/service/help.js +0 -0
  436. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/service/help.txt +0 -0
  437. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/service/list.js +0 -0
  438. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/service/man.js +0 -0
  439. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/service/start.js +0 -0
  440. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd/view/add.js +0 -0
  441. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd-status-format/package.json +0 -0
  442. /package/framework/{v0.6.5 → v0.6.6}/lib/cmd-status-format/src/main.js +0 -0
  443. /package/framework/{v0.6.5 → v0.6.6}/lib/collection/README.md +0 -0
  444. /package/framework/{v0.6.5 → v0.6.6}/lib/collection/build.json +0 -0
  445. /package/framework/{v0.6.5 → v0.6.6}/lib/collection/package.json +0 -0
  446. /package/framework/{v0.6.5 → v0.6.6}/lib/collection/src/main.js +0 -0
  447. /package/framework/{v0.6.5 → v0.6.6}/lib/config.js +0 -0
  448. /package/framework/{v0.6.5 → v0.6.6}/lib/connector-config/package.json +0 -0
  449. /package/framework/{v0.6.5 → v0.6.6}/lib/connector-config/src/main.js +0 -0
  450. /package/framework/{v0.6.5 → v0.6.6}/lib/connector-error/package.json +0 -0
  451. /package/framework/{v0.6.5 → v0.6.6}/lib/connector-error/src/main.js +0 -0
  452. /package/framework/{v0.6.5 → v0.6.6}/lib/connector-registry/package.json +0 -0
  453. /package/framework/{v0.6.5 → v0.6.6}/lib/connector-registry/src/main.js +0 -0
  454. /package/framework/{v0.6.5 → v0.6.6}/lib/cron/README.md +0 -0
  455. /package/framework/{v0.6.5 → v0.6.6}/lib/cron/package.json +0 -0
  456. /package/framework/{v0.6.5 → v0.6.6}/lib/cron/src/main.js +0 -0
  457. /package/framework/{v0.6.5 → v0.6.6}/lib/domain/LICENSE +0 -0
  458. /package/framework/{v0.6.5 → v0.6.6}/lib/domain/README.md +0 -0
  459. /package/framework/{v0.6.5 → v0.6.6}/lib/domain/package.json +0 -0
  460. /package/framework/{v0.6.5 → v0.6.6}/lib/domain/src/main.js +0 -0
  461. /package/framework/{v0.6.5 → v0.6.6}/lib/dto/package.json +0 -0
  462. /package/framework/{v0.6.5 → v0.6.6}/lib/dto/src/main.js +0 -0
  463. /package/framework/{v0.6.5 → v0.6.6}/lib/dto-pipe/package.json +0 -0
  464. /package/framework/{v0.6.5 → v0.6.6}/lib/dto-pipe/src/main.js +0 -0
  465. /package/framework/{v0.6.5 → v0.6.6}/lib/dto-types/package.json +0 -0
  466. /package/framework/{v0.6.5 → v0.6.6}/lib/dto-types/src/main.js +0 -0
  467. /package/framework/{v0.6.5 → v0.6.6}/lib/generator/index.js +0 -0
  468. /package/framework/{v0.6.5 → v0.6.6}/lib/i18n/package.json +0 -0
  469. /package/framework/{v0.6.5 → v0.6.6}/lib/i18n/src/main.js +0 -0
  470. /package/framework/{v0.6.5 → v0.6.6}/lib/image-build/package.json +0 -0
  471. /package/framework/{v0.6.5 → v0.6.6}/lib/image-build/src/main.js +0 -0
  472. /package/framework/{v0.6.5 → v0.6.6}/lib/index.js +0 -0
  473. /package/framework/{v0.6.5 → v0.6.6}/lib/inherits/LICENSE +0 -0
  474. /package/framework/{v0.6.5 → v0.6.6}/lib/inherits/README.md +0 -0
  475. /package/framework/{v0.6.5 → v0.6.6}/lib/inherits/package.json +0 -0
  476. /package/framework/{v0.6.5 → v0.6.6}/lib/inherits/src/main.js +0 -0
  477. /package/framework/{v0.6.5 → v0.6.6}/lib/inspector-events/package.json +0 -0
  478. /package/framework/{v0.6.5 → v0.6.6}/lib/inspector-events/src/main.js +0 -0
  479. /package/framework/{v0.6.5 → v0.6.6}/lib/inspector-redact/package.json +0 -0
  480. /package/framework/{v0.6.5 → v0.6.6}/lib/inspector-redact/src/main.js +0 -0
  481. /package/framework/{v0.6.5 → v0.6.6}/lib/instrument/package.json +0 -0
  482. /package/framework/{v0.6.5 → v0.6.6}/lib/instrument/src/main.js +0 -0
  483. /package/framework/{v0.6.5 → v0.6.6}/lib/job/package.json +0 -0
  484. /package/framework/{v0.6.5 → v0.6.6}/lib/job/src/main.js +0 -0
  485. /package/framework/{v0.6.5 → v0.6.6}/lib/job-store.js +0 -0
  486. /package/framework/{v0.6.5 → v0.6.6}/lib/json-config-header/package.json +0 -0
  487. /package/framework/{v0.6.5 → v0.6.6}/lib/json-config-header/src/main.js +0 -0
  488. /package/framework/{v0.6.5 → v0.6.6}/lib/loading-state/package.json +0 -0
  489. /package/framework/{v0.6.5 → v0.6.6}/lib/loading-state/src/main.js +0 -0
  490. /package/framework/{v0.6.5 → v0.6.6}/lib/logger/README.md +0 -0
  491. /package/framework/{v0.6.5 → v0.6.6}/lib/logger/package.json +0 -0
  492. /package/framework/{v0.6.5 → v0.6.6}/lib/logger/src/containers/default/index.js +0 -0
  493. /package/framework/{v0.6.5 → v0.6.6}/lib/logger/src/containers/file/lib/logrotator/README.md +0 -0
  494. /package/framework/{v0.6.5 → v0.6.6}/lib/logger/src/containers/file/lib/logrotator/index.js +0 -0
  495. /package/framework/{v0.6.5 → v0.6.6}/lib/logger/src/containers/mq/index.js +0 -0
  496. /package/framework/{v0.6.5 → v0.6.6}/lib/logger/src/containers/mq/listener.js +0 -0
  497. /package/framework/{v0.6.5 → v0.6.6}/lib/logger/src/helper.js +0 -0
  498. /package/framework/{v0.6.5 → v0.6.6}/lib/logger/src/main.js +0 -0
  499. /package/framework/{v0.6.5 → v0.6.6}/lib/math/index.js +0 -0
  500. /package/framework/{v0.6.5 → v0.6.6}/lib/mcp-dispatch/package.json +0 -0
  501. /package/framework/{v0.6.5 → v0.6.6}/lib/mcp-dispatch/src/main.js +0 -0
  502. /package/framework/{v0.6.5 → v0.6.6}/lib/mcp-http/package.json +0 -0
  503. /package/framework/{v0.6.5 → v0.6.6}/lib/mcp-http/src/main.js +0 -0
  504. /package/framework/{v0.6.5 → v0.6.6}/lib/mcp-server/package.json +0 -0
  505. /package/framework/{v0.6.5 → v0.6.6}/lib/mcp-server/src/main.js +0 -0
  506. /package/framework/{v0.6.5 → v0.6.6}/lib/merge/README.md +0 -0
  507. /package/framework/{v0.6.5 → v0.6.6}/lib/merge/package.json +0 -0
  508. /package/framework/{v0.6.5 → v0.6.6}/lib/merge/src/main.js +0 -0
  509. /package/framework/{v0.6.5 → v0.6.6}/lib/metrics/package.json +0 -0
  510. /package/framework/{v0.6.5 → v0.6.6}/lib/metrics/src/main.js +0 -0
  511. /package/framework/{v0.6.5 → v0.6.6}/lib/model.js +0 -0
  512. /package/framework/{v0.6.5 → v0.6.6}/lib/net-locality/package.json +0 -0
  513. /package/framework/{v0.6.5 → v0.6.6}/lib/nunjucks-filters/README.md +0 -0
  514. /package/framework/{v0.6.5 → v0.6.6}/lib/nunjucks-filters/package.json +0 -0
  515. /package/framework/{v0.6.5 → v0.6.6}/lib/nunjucks-filters/src/main.js +0 -0
  516. /package/framework/{v0.6.5 → v0.6.6}/lib/nunjucks-resolver/package.json +0 -0
  517. /package/framework/{v0.6.5 → v0.6.6}/lib/nunjucks-resolver/src/main.js +0 -0
  518. /package/framework/{v0.6.5 → v0.6.6}/lib/proc.js +0 -0
  519. /package/framework/{v0.6.5 → v0.6.6}/lib/release-watch/package.json +0 -0
  520. /package/framework/{v0.6.5 → v0.6.6}/lib/release-watch/src/main.js +0 -0
  521. /package/framework/{v0.6.5 → v0.6.6}/lib/render-cache/package.json +0 -0
  522. /package/framework/{v0.6.5 → v0.6.6}/lib/render-cache/src/main.js +0 -0
  523. /package/framework/{v0.6.5 → v0.6.6}/lib/render-cache-store.js +0 -0
  524. /package/framework/{v0.6.5 → v0.6.6}/lib/routing/README.md +0 -0
  525. /package/framework/{v0.6.5 → v0.6.6}/lib/routing/build.json +0 -0
  526. /package/framework/{v0.6.5 → v0.6.6}/lib/routing/package.json +0 -0
  527. /package/framework/{v0.6.5 → v0.6.6}/lib/routing/src/main.js +0 -0
  528. /package/framework/{v0.6.5 → v0.6.6}/lib/routing/src/radix.js +0 -0
  529. /package/framework/{v0.6.5 → v0.6.6}/lib/routing-introspect/package.json +0 -0
  530. /package/framework/{v0.6.5 → v0.6.6}/lib/routing-introspect/src/main.js +0 -0
  531. /package/framework/{v0.6.5 → v0.6.6}/lib/secrets/package.json +0 -0
  532. /package/framework/{v0.6.5 → v0.6.6}/lib/secrets/src/backends/env.js +0 -0
  533. /package/framework/{v0.6.5 → v0.6.6}/lib/secrets/src/backends/file.js +0 -0
  534. /package/framework/{v0.6.5 → v0.6.6}/lib/secrets/src/env-file.js +0 -0
  535. /package/framework/{v0.6.5 → v0.6.6}/lib/secrets/src/main.js +0 -0
  536. /package/framework/{v0.6.5 → v0.6.6}/lib/session-store.js +0 -0
  537. /package/framework/{v0.6.5 → v0.6.6}/lib/shell.js +0 -0
  538. /package/framework/{v0.6.5 → v0.6.6}/lib/sqlite-driver.js +0 -0
  539. /package/framework/{v0.6.5 → v0.6.6}/lib/state.js +0 -0
  540. /package/framework/{v0.6.5 → v0.6.6}/lib/swig-filters/README.md +0 -0
  541. /package/framework/{v0.6.5 → v0.6.6}/lib/swig-filters/package.json +0 -0
  542. /package/framework/{v0.6.5 → v0.6.6}/lib/swig-filters/src/main.js +0 -0
  543. /package/framework/{v0.6.5 → v0.6.6}/lib/swig-resolver/package.json +0 -0
  544. /package/framework/{v0.6.5 → v0.6.6}/lib/swig-resolver/src/main.js +0 -0
  545. /package/framework/{v0.6.5 → v0.6.6}/lib/template-loaders/package.json +0 -0
  546. /package/framework/{v0.6.5 → v0.6.6}/lib/template-loaders/src/loaders/http.js +0 -0
  547. /package/framework/{v0.6.5 → v0.6.6}/lib/template-loaders/src/loaders/memory.js +0 -0
  548. /package/framework/{v0.6.5 → v0.6.6}/lib/template-loaders/src/main.js +0 -0
  549. /package/framework/{v0.6.5 → v0.6.6}/lib/url/README.md +0 -0
  550. /package/framework/{v0.6.5 → v0.6.6}/lib/url/index.js +0 -0
  551. /package/framework/{v0.6.5 → v0.6.6}/lib/url/routing.json +0 -0
  552. /package/framework/{v0.6.5 → v0.6.6}/lib/uuid/package.json +0 -0
  553. /package/framework/{v0.6.5 → v0.6.6}/lib/uuid/src/main.js +0 -0
  554. /package/framework/{v0.6.5 → v0.6.6}/lib/validator.js +0 -0
  555. /package/framework/{v0.6.5 → v0.6.6}/lib/watcher/package.json +0 -0
  556. /package/framework/{v0.6.5 → v0.6.6}/lib/watcher/src/main.js +0 -0
  557. /package/framework/{v0.6.5 → v0.6.6}/lib/ws-framing/package.json +0 -0
  558. /package/framework/{v0.6.5 → v0.6.6}/lib/ws-framing/src/main.js +0 -0
  559. /package/framework/{v0.6.5 → v0.6.6}/lib/ws-query/package.json +0 -0
  560. /package/framework/{v0.6.5 → v0.6.6}/lib/ws-query/src/main.js +0 -0
  561. /package/framework/{v0.6.5 → v0.6.6}/lib/ws-session/package.json +0 -0
  562. /package/framework/{v0.6.5 → v0.6.6}/lib/ws-session/src/main.js +0 -0
@@ -186,11 +186,15 @@ function FileContainer(opt, loggers) {
186
186
  function onPayload(opt, isResuming) {
187
187
  // console.debug('mqFile options: ', JSON.stringify(opt, null, 2));
188
188
  var port = opt.mqPort || getEnvVar('GINA_MQ_PORT') || 8125;// jshint ignore:line
189
- // #B160 — the MQ listener binds `bind_host` (loopback by default):
190
- // dial it when host_v4 is one of this machine's own addresses.
191
- var host = netLocality.resolveDialHost(
192
- opt.hostV4 || getEnvVar('GINA_HOST_V4') || '127.0.0.1',
193
- opt.bindHost || getEnvVar('GINA_BIND_HOST')
189
+ // #B320 — like the MQ speaker, this container's listener is co-located
190
+ // by construction, so `host_v4` (advertisement state — foreign on a
191
+ // shared or stale `~/.gina`, incl. the value the `gina#bundle-logging`
192
+ // event carries) is not an input of the dial. Dial what the local
193
+ // daemon binds; env first, matching the bind side's own precedence
194
+ // (init.js #B161) and covering the early-call construction window.
195
+ var host = netLocality.resolveLocalDialHost(
196
+ ((typeof getEnvVar === 'function' && getEnvVar('GINA_BIND_HOST')) || process.env.GINA_BIND_HOST || null)
197
+ || opt.bindHost
194
198
  );// jshint ignore:line
195
199
  var clientOptions = {
196
200
  host : host,
@@ -0,0 +1,439 @@
1
+ 'use strict';
2
+ // Imports
3
+ const net = require('net');
4
+ // #B160 — control-plane dial-host resolution (pure, no framework globals)
5
+ var netLocality = require(__dirname + '/../../../../net-locality');
6
+ // var fs = require('fs');
7
+ // var util = require('util');
8
+
9
+ function MQSpeaker(opt, loggers, cb) {
10
+ var self = {
11
+ name: 'MQSpeaker'
12
+ };
13
+ var loggerHelper = require(__dirname +'/../../helper.js')(opt, loggers);
14
+ var format = loggerHelper.format;
15
+
16
+
17
+
18
+ /**
19
+ * Resolves the framework's connection settings, then starts the speaker.
20
+ *
21
+ * Runs before the framework globals are guaranteed to exist (see the
22
+ * "hack for early calls" block below), so every global read is guarded.
23
+ *
24
+ * @inner
25
+ * @param {object} opt - Logger options; mqPort/hostV4/bindHost are filled in here.
26
+ * @param {function} cb - Passed through to startMQSpeaker.
27
+ * @returns {*} Whatever startMQSpeaker() returns.
28
+ *
29
+ * @example
30
+ * init({ }, function(err, speaker) { });
31
+ */
32
+ function init(opt, cb) {
33
+
34
+ // ---------- BO - hack for early calls
35
+ var isWin32 = (process.platform === 'win32') ? true : false;
36
+ var binPath = __dirname +'/../../../../../../../';
37
+ var ginaPath = (binPath.replace(/\\/g, '/')).replace('/bin', '');
38
+ ginaPath = (isWin32) ? ginaPath.replace(/\//g, '\\') : ginaPath;
39
+ // loading pack
40
+ var pack = ginaPath + '/package.json';
41
+ pack = (isWin32) ? pack.replace(/\//g, '\\') : pack;
42
+ var packObj = require(pack);
43
+ var version = packObj.version;// jshint ignore:line
44
+ // var frameworkPath = ginaPath + '/framework/v' + version;
45
+
46
+
47
+ var shortVersion = version.split('.');
48
+ shortVersion.splice(2);
49
+ shortVersion = shortVersion.join('.');
50
+
51
+ var settings = { mq_port: 8125, host_v4: '127.0.0.1' };
52
+ try {
53
+ // #B160-sibling (3) — honour GINA_HOMEDIR so an isolated home resolves
54
+ // its OWN settings instead of the invoking user's. The variable already
55
+ // carries the `/.gina` segment (bin/cli, bin/gina-init both compose it
56
+ // as `home + '/.gina'`), so it replaces that whole prefix, not just the
57
+ // home.
58
+ // Three tiers, and process.env is load-bearing rather than defensive:
59
+ // this container is constructed BEFORE bin/cli imports the OS env into
60
+ // process.gina (measured: process.gina is empty here, while
61
+ // process.env.GINA_HOMEDIR still holds the value), so the framework-env
62
+ // tier alone would never fire on the CLI path. Framework env still wins
63
+ // where it is populated (bundle processes, gina-container), matching the
64
+ // two-tier read used by the secrets backend and resolveHttpHost.
65
+ var _ginaHome = (typeof getEnvVar === 'function' && getEnvVar('GINA_HOMEDIR'))
66
+ || process.env.GINA_HOMEDIR
67
+ || (getUserHome() + '/.gina');
68
+ settings = require( _ginaHome + '/' + shortVersion + '/settings.json');
69
+ } catch (err) {}
70
+
71
+ // Guard: settings.mq_port may be an unresolved template placeholder (e.g. '${}'
72
+ // from a broken W2 migration write). Convert to int and fall back to 8125 if invalid.
73
+ var _mqPort = ~~settings.mq_port;
74
+ opt.mqPort = (_mqPort > 0 && _mqPort < 65536) ? _mqPort : 8125;
75
+ opt.hostV4 = settings.host_v4;
76
+ // #B160 — carry the daemon's bind address so startMQSpeaker() can
77
+ // dial locally when host_v4 names one of this machine's interfaces.
78
+ opt.bindHost = settings.bind_host;
79
+ // ---------- EO - hack for early calls
80
+
81
+ return startMQSpeaker(opt, cb);
82
+ }
83
+
84
+
85
+ /**
86
+ * Opens the speaker's connection to the MQ listener, and KEEPS it — every
87
+ * dial after the first is a reconnect (#B323).
88
+ *
89
+ * What the caller receives is a stable transport FACADE, not the socket.
90
+ * The sole consumer (`mq/index.js`) captures this return once, at
91
+ * logger-construction time, and holds it for the life of the process — so
92
+ * a speaker that swapped its socket without a facade would leave that
93
+ * consumer writing into the dead one forever. `write()` therefore
94
+ * delegates to whichever socket is current, and reports `false` while the
95
+ * speaker is down.
96
+ *
97
+ * The socket is `unref`'d: a logging transport must never be the reason a
98
+ * process stays alive. Processes that legitimately run long hold the event
99
+ * loop open by their own means — a bundle keeps it alive with its HTTP
100
+ * server (`core/server.js` owns the single `listen()` call for both
101
+ * engines) — so unref'ing costs them nothing while it stops the speaker
102
+ * from outliving its host. The redial timer below is unref'd for exactly
103
+ * the same reason, which is what keeps the reconnect loop from resurrecting
104
+ * the #B276 hang in short-lived CLIs.
105
+ *
106
+ * @inner
107
+ * @param {object} opt - Logger options; `mqPort`/`bindHost` are read here
108
+ * (`hostV4` is deliberately NOT — see the #B320 note at the dial).
109
+ * @param {function} [cb] - Called ONCE, on the FIRST outcome only:
110
+ * `(false, client)` on connect, `(err)` on failure. Later reconnects — and
111
+ * their failures — never re-invoke it, so a caller cannot be surprised by
112
+ * a second settle hours into the process.
113
+ * @returns {object} A stable transport facade: `{ write: function }`.
114
+ * `write()` returns the underlying socket's backpressure boolean, or
115
+ * `false` when the speaker is currently down (the frame is dropped).
116
+ *
117
+ * @example
118
+ * var transport = startMQSpeaker({ mqPort: 8125, bindHost: '127.0.0.1' });
119
+ * transport.write('{"level":"info","content":"hello"}\r\n');
120
+ */
121
+ function startMQSpeaker(opt, cb) {
122
+ var port = opt.mqPort || 8125;// jshint ignore:line
123
+ // #B320 — the speaker's listener is CO-LOCATED BY CONSTRUCTION (started
124
+ // by this install's `bin/cli`), so `host_v4` is not an input of this
125
+ // dial at all: it is advertisement state, and on a shared or stale
126
+ // `~/.gina` it can name ANOTHER machine — #B160's remote-unchanged rule
127
+ // then shipped every log frame there while the connect read healthy.
128
+ // Dial what the local daemon binds instead. The env tier mirrors the
129
+ // GINA_HOMEDIR ladder above (and the bind side's own precedence,
130
+ // init.js #B161): process.env is load-bearing for the early-call
131
+ // window in which this container is constructed.
132
+ var _envBindHost = (typeof getEnvVar === 'function' && getEnvVar('GINA_BIND_HOST'))
133
+ || process.env.GINA_BIND_HOST || null;
134
+ var host = netLocality.resolveLocalDialHost(_envBindHost || opt.bindHost);// jshint ignore:line
135
+ // #B323 — state shared by every dial this speaker makes. Before this,
136
+ // `startMQSpeaker` opened exactly one socket and handed it out; there
137
+ // was no state to share because there was no second attempt, and a
138
+ // speaker that lost its connection stayed silent for the life of the
139
+ // process.
140
+ var current = null; // the socket write() delegates to right now
141
+ var attempts = 0; // CONSECUTIVE failed dials; reset on connect
142
+ var redialTimer = null;
143
+ var cbCalled = false;
144
+ var everConnected = false;
145
+ var warnedDown = false;
146
+
147
+ /**
148
+ * Invokes the caller's callback at most once, on the first outcome.
149
+ *
150
+ * A reconnecting speaker settles repeatedly; a callback contract does
151
+ * not. This flag is what stops an `(err)` from arriving hours after
152
+ * `(false, client)` already did.
153
+ *
154
+ * @inner
155
+ * @param {(string|boolean)} err - Error text, or `false` on connect.
156
+ * @param {object} [client] - The connected socket, on the success path.
157
+ * @returns {void}
158
+ *
159
+ * @example
160
+ * settle(false, client); // the first connect wins
161
+ * settle('ECONNREFUSED'); // ignored once the line above has run
162
+ */
163
+ function settle(err, client) {
164
+ if ( cbCalled || !cb ) {
165
+ return;
166
+ }
167
+ cbCalled = true;
168
+ cb(err, client);
169
+ }
170
+
171
+ /**
172
+ * Arms the next dial, backing off exponentially, capped at 30s.
173
+ *
174
+ * The timer is `unref`'d, which is what keeps the reconnect loop from
175
+ * resurrecting the #B276 hang: a process with nothing else to do exits
176
+ * instead of waiting on it, so a short-lived CLI retries only for as
177
+ * long as it was going to live anyway. A bundle — whose HTTP server
178
+ * holds the loop — keeps retrying at a ≤30s cadence and HEALS on its
179
+ * own if a listener appears later.
180
+ *
181
+ * @inner
182
+ * @returns {void}
183
+ *
184
+ * @example
185
+ * scheduleRedial(); // 500ms, then 1s, 2s, 4s … capped at 30s
186
+ */
187
+ function scheduleRedial() {
188
+ if ( redialTimer ) {
189
+ return;
190
+ }
191
+ var delay = Math.min(500 * Math.pow(2, attempts), 30000);
192
+ attempts++;
193
+ redialTimer = setTimeout(function () {
194
+ redialTimer = null;
195
+ dial();
196
+ }, delay);
197
+ redialTimer.unref();
198
+ }
199
+
200
+ /**
201
+ * Opens ONE connection to the listener and wires its whole lifecycle.
202
+ *
203
+ * Runs once at startup and again for every reconnect. `clientOptions`
204
+ * is rebuilt per dial deliberately: the listener mints a fresh
205
+ * `sessionId` per connection, and the handshake in the `data` handler
206
+ * only fires while `clientOptions.sessionId` is still unset — so a
207
+ * shared object would make every reconnect skip its own
208
+ * acknowledgement and never register its loggers.
209
+ *
210
+ * @inner
211
+ * @returns {void}
212
+ *
213
+ * @example
214
+ * dial(); // adopts the new socket as `current`, synchronously
215
+ */
216
+ function dial() {
217
+ var clientOptions = {
218
+ host : host,
219
+ port : port,
220
+ request : 'report'
221
+ };
222
+ var client = net.createConnection(clientOptions, () => {
223
+ // 'connect' listener.
224
+ attempts = 0;
225
+ warnedDown = false;
226
+ // send request
227
+ client.write( JSON.stringify(clientOptions) +'\r\n');
228
+
229
+ // #B323 — name a reconnect for what it is, so an operator
230
+ // reading the log can tell a fresh boot from a recovered one.
231
+ var notice = (everConnected)
232
+ ? '[MQSpeaker] reconnected to server on host: '
233
+ : '[MQSpeaker] connected to server on host: ';
234
+ console.info(notice + host +' & port: '+ port +' :) ');
235
+ everConnected = true;
236
+
237
+ settle(false, client);
238
+ });
239
+ // #B323 — the socket becomes `current` at DIAL time, not at connect
240
+ // time: a net.Socket QUEUES writes made while it is still
241
+ // connecting and flushes them once it is up, which is exactly how
242
+ // the frames a bundle logs DURING its own mount survive. Adopting
243
+ // on 'connect' instead would silently drop that entire window —
244
+ // the same frames #B323 was filed to stop losing.
245
+ current = client;
246
+ // #B276 — the logger is a load-time singleton (`lib/index.js` requires it
247
+ // eagerly, `main.js` invokes `Logger()` at module scope), so this socket is
248
+ // opened by the mere act of requiring the framework — including on a boot
249
+ // that is about to throw for want of a bundle context. Without unref, that
250
+ // documented throw becomes unrecoverable: the caller catches the error and
251
+ // the process still cannot exit, because the socket keeps the loop alive.
252
+ // Only bites when something is actually listening on the MQ port; with
253
+ // nothing there the connection is refused and the handle closes itself.
254
+ client.unref();
255
+ // #B318 — `unref()` covers the socket HANDLE but NOT the pending
256
+ // `TCPConnectWrap` REQUEST, and a pending request keeps the event loop
257
+ // alive on its own. The comment above is correct only for the two states
258
+ // it names: a completed connect, and a REFUSED one (reachable host, no
259
+ // listener — the peer sends RST, the handle closes itself). It misses the
260
+ // third: an UNREACHABLE host (powered off, black-holed, a stale
261
+ // `host_v4` left behind by a DHCP reassignment) answers nothing at all,
262
+ // so the connect stays pending for the OS timeout — ~75s on macOS — and
263
+ // the process cannot exit for that whole window. That is exactly the
264
+ // hang #B276 set out to remove, surviving in the one state neither the
265
+ // fix nor its comment considered.
266
+ //
267
+ // The deadline below is itself `unref`'d, so it never keeps the loop
268
+ // alive either: it can only fire while something ELSE is holding the
269
+ // loop open, which during a stalled dial is precisely the connect
270
+ // request it exists to cancel. `destroy(err)` emits `error`, so the
271
+ // outcome flows through the established handler below — same callback
272
+ // contract, same warn text, no new egress path.
273
+ //
274
+ // #B323 — the verdict is deferred one event-loop PHASE, and that
275
+ // deferral is the whole fix. `client.connecting` does not flip when
276
+ // the kernel completes the connect; it flips when the POLL phase
277
+ // runs `afterConnect`. A timer fires in the TIMERS phase, which
278
+ // precedes poll — so on any boot that blocks the loop past the
279
+ // deadline (a bundle mount off a network filesystem, every
280
+ // Kubernetes-class start), the loop resumes, runs the overdue
281
+ // deadline FIRST, and reads `connecting === true` on a connection
282
+ // the kernel established seconds ago. It then destroyed a perfectly
283
+ // live speaker, and with no reconnect the bundle logged nowhere for
284
+ // the rest of its life. Re-checking from `setImmediate` moves the
285
+ // read to the CHECK phase, which runs AFTER poll: a queued
286
+ // `afterConnect` has been processed by then, so a completed connect
287
+ // survives while a genuinely pending one still reads `connecting`
288
+ // and still dies on schedule. Measured both directions — a
289
+ // kernel-completed dial reads true at timers / false at check, a
290
+ // black-holed one reads true at both — so this corrects the safety
291
+ // claim the guard above used to make ("it destroys only while
292
+ // connecting") without weakening the no-hang contract it exists for.
293
+ var connectDeadline = setTimeout(function () {
294
+ setImmediate(function () {
295
+ if (!client.connecting) { return; }
296
+ client.destroy(new Error(
297
+ 'connect ETIMEDOUT ' + host + ':' + port +
298
+ ' - MQ host unreachable; giving up (logging transport only)'
299
+ ));
300
+ });
301
+ }, opt.mqConnectTimeout || 2000);
302
+ connectDeadline.unref();
303
+ client.once('connect', function () { clearTimeout(connectDeadline); });
304
+ client.once('error', function () { clearTimeout(connectDeadline); });
305
+ client.on('error', (data) => {
306
+ var err = data.toString();
307
+ if (cb) {
308
+ // The callback owns error reporting for this speaker, as it
309
+ // always has — it just settles once now (#B323).
310
+ return settle(err);
311
+ }
312
+
313
+ //console.error('[MQSpeaker] (error): ' + err);
314
+ // Identical to console.error
315
+ // But if have to use this one since it can be called from a
316
+ // spawned commande line like `npm install` post_install script
317
+ // console.debug('=> ', process.argv);
318
+ // #B323 — one warn per OUTAGE, not one per attempt. The redial
319
+ // below runs for the life of the process, so an un-gated warn
320
+ // would turn a boot with no listener into a log line every 30s
321
+ // forever. The flag is cleared on connect, so a LATER outage
322
+ // still announces itself once.
323
+ if ( warnedDown ) {
324
+ return;
325
+ }
326
+ warnedDown = true;
327
+ if ( !/(\/bin\/cli|\/bin\/gina)$/.test(process.argv[1]) ) {
328
+ process.stdout.write( format(opt.name, 'warn', '[MQSpeaker] ' + err) );
329
+ }
330
+
331
+ });
332
+
333
+ var payloads = null, i = null;
334
+ client.on('data', (data) => {
335
+ //console.log('[MQSpeaker] (data): ' + data.toString());
336
+ payloads = data.toString();
337
+
338
+ // from speakers & tail
339
+ if ( /^(\{\"|\[\{\")/.test(payloads) ) {
340
+ payloads = payloads.split(/\r\n/g);
341
+ //console.log(payloads);
342
+ i = -1;
343
+ while(i < payloads.length) {
344
+ i++;
345
+ let payload = payloads[i];
346
+ if (
347
+ /^\{/.test(payload) && /\}$/.test(payload)
348
+ || /^\[\{/.test(payload) && /\}\]$/.test(payload)
349
+ ) {
350
+ let pl = null;
351
+ try {
352
+ pl = JSON.parse(payload);
353
+ } catch(plErr) {
354
+ process.stdout.write( '[MQSpeaker] (exception) '+ payload +'\n' );
355
+ continue;
356
+ }
357
+
358
+
359
+ if ( pl.sessionId && !clientOptions.sessionId ) {
360
+ // configuring
361
+ clientOptions.sessionId = pl.sessionId;
362
+ clientOptions.loggers = loggers;
363
+
364
+ // acknowledging
365
+ client.write( JSON.stringify(clientOptions) +'\r\n');
366
+ }
367
+
368
+ if (!pl.content) {
369
+ // debug only
370
+ //process.stdout.write( '[MQSpeaker] (undefined content) '+ JSON.stringify(pl, null) +'\n' );
371
+ continue;
372
+ }
373
+
374
+ // debug only when starting the framework with: ./bin/cli start >/usr/local/tmp/gina-smaple.log 2>&1
375
+ // process.stdout.write( '[MQSpeaker] '+ pl.content +'\n' );
376
+ }
377
+ }
378
+
379
+ return
380
+ }
381
+
382
+ // regular messages
383
+ process.stdout.write( '[MQSpeaker] '+ payloads +'\n' );
384
+
385
+ });
386
+ client.on('end', () => {
387
+ console.debug('[MQSpeaker] disconnected from server');
388
+ });
389
+ client.on('close', () => {
390
+ // #B323 — only the CURRENT socket may arm a redial. A
391
+ // superseded one closes too (it was destroyed after its
392
+ // replacement had already been adopted), and letting that close
393
+ // schedule a dial would stack a second connection on top of a
394
+ // healthy speaker. This is also what makes the whole loop
395
+ // self-limiting: exactly one socket is live at a time.
396
+ if ( current !== client ) {
397
+ return;
398
+ }
399
+ current = null;
400
+ scheduleRedial();
401
+ });
402
+ }
403
+
404
+ // #B323 — the stable facade. `mq/index.js` captures this ONCE, at
405
+ // logger-construction time, and holds it for the life of the process,
406
+ // so the reconnect above is only reachable through an indirection the
407
+ // consumer cannot outlive.
408
+ var transport = {
409
+ /**
410
+ * Writes one frame to whichever connection is current.
411
+ *
412
+ * @param {string} chunk - The serialised frame, `\r\n`-terminated.
413
+ * @returns {boolean} The socket's own backpressure signal, or
414
+ * `false` when the speaker is down and the frame was dropped.
415
+ *
416
+ * @example
417
+ * transport.write('{"level":"info","content":"hello"}\r\n');
418
+ */
419
+ write: function (chunk) {
420
+ if ( current && current.writable ) {
421
+ return current.write(chunk);
422
+ }
423
+ // #B323 — down: DROP the frame rather than queue it. An
424
+ // unbounded buffer behind an outage of unknown length is a
425
+ // memory leak wearing a logging transport's clothes, and the
426
+ // `default` (stdout) flow carries these same lines regardless.
427
+ return false;
428
+ }
429
+ };
430
+
431
+ dial();
432
+
433
+ return transport;
434
+ }
435
+
436
+
437
+ return init(opt, cb);
438
+ }
439
+ module.exports = MQSpeaker;
@@ -168,7 +168,53 @@ var resolveDialHost = function(hostV4, bindHost, interfaces) {
168
168
  return '127.0.0.1';
169
169
  };
170
170
 
171
+ /**
172
+ * Resolves the dial target for a client whose server is CO-LOCATED BY
173
+ * CONSTRUCTION — the MQ speaker and the MQ file container, whose listener is
174
+ * started by the same install's daemon (`bin/cli`). `host_v4` is deliberately
175
+ * NOT an input: it is self-describing advertisement state ("the address
176
+ * EXTERNAL clients use to reach this machine"), never a dial target for an
177
+ * intra-host transport. #B320 — on a `~/.gina` shared across hosts (or after
178
+ * a stale address is left behind), `host_v4` can name ANOTHER machine, and
179
+ * `resolveDialHost`'s remote-unchanged rule then ships every log frame to
180
+ * that machine while the local connection story reads healthy.
181
+ *
182
+ * Rules, in order:
183
+ * 1. `bindHost` is a concrete, non-wildcard address of THIS machine → dial
184
+ * it (required when the daemon binds a specific non-loopback interface,
185
+ * where loopback would be refused).
186
+ * 2. Anything else → `127.0.0.1`. A wildcard bind includes loopback; a
187
+ * FOREIGN or unverifiable `bindHost` (shared/stale state again) refuses
188
+ * to leave the host — a loud local ECONNREFUSED beats silently
189
+ * delivering logs to another machine.
190
+ *
191
+ * @param {string} bindHost - The daemon's `bind_host`, when known
192
+ * @param {object} [interfaces] - `os.networkInterfaces()`-shaped map; used by
193
+ * tests for determinism. Defaults to the live `os.networkInterfaces()`.
194
+ * @returns {string} The host to dial
195
+ *
196
+ * @example
197
+ * resolveLocalDialHost('0.0.0.0'); // '127.0.0.1' (wildcard bind)
198
+ * resolveLocalDialHost(undefined); // '127.0.0.1' (default bind)
199
+ * resolveLocalDialHost('192.168.1.20'); // '192.168.1.20' when local,
200
+ * // '127.0.0.1' when not
201
+ */
202
+ var resolveLocalDialHost = function(bindHost, interfaces) {
203
+ if ( typeof(bindHost) !== 'string' || bindHost === '' ) {
204
+ return '127.0.0.1';
205
+ }
206
+ var b = normalizeHost(bindHost);
207
+ if ( isWildcard(b) ) {
208
+ return '127.0.0.1';
209
+ }
210
+ if ( !isLocalAddress(b, interfaces) ) {
211
+ return '127.0.0.1';
212
+ }
213
+ return bindHost;
214
+ };
215
+
171
216
  module.exports = {
172
- isLocalAddress : isLocalAddress,
173
- resolveDialHost : resolveDialHost
217
+ isLocalAddress : isLocalAddress,
218
+ resolveDialHost : resolveDialHost,
219
+ resolveLocalDialHost : resolveLocalDialHost
174
220
  };
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gina-framework",
3
- "version": "0.6.5",
3
+ "version": "0.6.6",
4
4
  "dependencies": {
5
5
  "@rhinostone/busboy": "^1.6.1",
6
6
  "@rhinostone/swig": "^2.7.2",
package/gna.js CHANGED
@@ -15,14 +15,14 @@
15
15
  'use strict';
16
16
 
17
17
  // Framework core — the main gna module (lifecycle hooks, lib, etc.)
18
- var _gna = require('./framework/v0.6.5/core/gna');
18
+ var _gna = require('./framework/v0.6.6/core/gna');
19
19
 
20
20
  // SuperController and EntitySuper — loaded from their source modules
21
- var SuperController = require('./framework/v0.6.5/core/controller');
22
- var EntitySuper = require('./framework/v0.6.5/core/model/entity');
21
+ var SuperController = require('./framework/v0.6.6/core/controller');
22
+ var EntitySuper = require('./framework/v0.6.6/core/model/entity');
23
23
 
24
24
  // uuid — from the lib registry
25
- var uuid = require('./framework/v0.6.5/lib/uuid');
25
+ var uuid = require('./framework/v0.6.6/lib/uuid');
26
26
 
27
27
  module.exports = {
28
28