gina 0.7.3-alpha.1 → 0.7.4-alpha.1

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 (633) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/README.md +40 -40
  3. package/ROADMAP.md +1 -0
  4. package/bin/cli +29 -0
  5. package/bin/cmd +34 -25
  6. package/bin/gina +55 -15
  7. package/framework/v0.7.4-alpha.1/VERSION +1 -0
  8. package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/plugin/dist/vendor/gina/js/gina.js +44 -8
  9. package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/plugin/dist/vendor/gina/js/gina.min.js +602 -602
  10. package/framework/v0.7.4-alpha.1/core/asset/plugin/dist/vendor/gina/js/gina.min.js.br +0 -0
  11. package/framework/v0.7.4-alpha.1/core/asset/plugin/dist/vendor/gina/js/gina.min.js.gz +0 -0
  12. package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/config.js +5 -0
  13. package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/controller/controller.js +39 -6
  14. package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/controller/controller.render-swig.js +14 -1
  15. package/framework/v0.7.4-alpha.1/core/controller/preload-hints.js +230 -0
  16. package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/validator/src/main.js +26 -4
  17. package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/server.js +181 -19
  18. package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/conf/templates.json +2 -1
  19. package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/connector/add.js +1 -1
  20. package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/connector/help.txt +6 -5
  21. package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/help.txt +5 -1
  22. package/framework/v0.7.4-alpha.1/lib/cmd/framework/inc/listen-error.js +217 -0
  23. package/framework/v0.7.4-alpha.1/lib/cmd/framework/inc/ps-titles.js +193 -0
  24. package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/gina-framework.1.md +2 -0
  25. package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/gina.1.md +4 -0
  26. package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/package.json +1 -1
  27. package/gna.js +4 -4
  28. package/llms.txt +5 -5
  29. package/package.json +3 -3
  30. package/schema/settings.json +5 -0
  31. package/types/index.d.ts +1 -0
  32. package/utils/helper.js +33 -0
  33. package/framework/v0.7.3-alpha.1/VERSION +0 -1
  34. package/framework/v0.7.3-alpha.1/core/asset/plugin/dist/vendor/gina/js/gina.min.js.br +0 -0
  35. package/framework/v0.7.3-alpha.1/core/asset/plugin/dist/vendor/gina/js/gina.min.js.gz +0 -0
  36. package/framework/v0.7.3-alpha.1/lib/cmd/framework/inc/ps-titles.js +0 -113
  37. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/AUTHORS +0 -0
  38. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/LICENSE +0 -0
  39. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/html/nolayout.html +0 -0
  40. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/html/static.html +0 -0
  41. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/img/android-chrome-192x192.png +0 -0
  42. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/img/android-chrome-512x512.png +0 -0
  43. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/img/apple-touch-icon.png +0 -0
  44. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/img/favicon-16x16.png +0 -0
  45. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/img/favicon-32x32.png +0 -0
  46. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/img/favicon.ico +0 -0
  47. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/plugin/README.md +0 -0
  48. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/plugin/dist/vendor/gina/beemaster/beemaster.css +0 -0
  49. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/plugin/dist/vendor/gina/beemaster/beemaster.js +0 -0
  50. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/plugin/dist/vendor/gina/beemaster/index.html +0 -0
  51. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/plugin/dist/vendor/gina/css/gina.min.css +0 -0
  52. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/plugin/dist/vendor/gina/css/gina.min.css.br +0 -0
  53. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/plugin/dist/vendor/gina/css/gina.min.css.gz +0 -0
  54. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/plugin/dist/vendor/gina/html/statusbar.html +0 -0
  55. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/plugin/dist/vendor/gina/html/statusbar.html.br +0 -0
  56. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/plugin/dist/vendor/gina/html/statusbar.html.gz +0 -0
  57. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/plugin/dist/vendor/gina/inspector/have_heart_one-webfont.woff2 +0 -0
  58. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/plugin/dist/vendor/gina/inspector/index.html +0 -0
  59. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/plugin/dist/vendor/gina/inspector/inspector.css +0 -0
  60. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/plugin/dist/vendor/gina/inspector/inspector.js +0 -0
  61. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/plugin/dist/vendor/gina/inspector/logo.svg +0 -0
  62. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +0 -0
  63. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.br +0 -0
  64. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.gz +0 -0
  65. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/config.requirements-anchor.js +0 -0
  66. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/ai/index.js +0 -0
  67. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/ai/lib/connector.js +0 -0
  68. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/couchbase/index.js +0 -0
  69. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/couchbase/lib/connector.js +0 -0
  70. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/couchbase/lib/connector.v3.js +0 -0
  71. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/couchbase/lib/connector.v4.js +0 -0
  72. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/couchbase/lib/n1ql.js +0 -0
  73. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/couchbase/lib/session-store.js +0 -0
  74. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/couchbase/lib/session-store.v3.js +0 -0
  75. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/couchbase/lib/session-store.v4.js +0 -0
  76. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/couchbase/lib/storage-store.js +0 -0
  77. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/duckdb/index.js +0 -0
  78. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/duckdb/lib/connector.js +0 -0
  79. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/mongodb/index.js +0 -0
  80. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/mongodb/lib/connector.js +0 -0
  81. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/mongodb/lib/job-store.js +0 -0
  82. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/mongodb/lib/pipeline-loader.js +0 -0
  83. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/mongodb/lib/session-store.js +0 -0
  84. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/mysql/index.js +0 -0
  85. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/mysql/lib/connector.js +0 -0
  86. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/param-redact.js +0 -0
  87. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/postgresql/index.js +0 -0
  88. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/postgresql/lib/connector.js +0 -0
  89. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/redis/index.js +0 -0
  90. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/redis/lib/connector.js +0 -0
  91. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/redis/lib/job-store.js +0 -0
  92. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/redis/lib/kv-store.js +0 -0
  93. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/redis/lib/render-cache-store.js +0 -0
  94. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/redis/lib/session-store.js +0 -0
  95. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/scylladb/index.js +0 -0
  96. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/scylladb/lib/connector.js +0 -0
  97. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/scylladb/lib/session-store.js +0 -0
  98. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/settle-once.js +0 -0
  99. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/sql-parser.js +0 -0
  100. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/sqlite/index.js +0 -0
  101. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/sqlite/lib/connector.js +0 -0
  102. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/sqlite/lib/job-store.js +0 -0
  103. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/sqlite/lib/kv-store.js +0 -0
  104. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/connectors/sqlite/lib/session-store.js +0 -0
  105. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/content.encoding +0 -0
  106. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/controller/controller.framework.js +0 -0
  107. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/controller/controller.render-json.js +0 -0
  108. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/controller/controller.render-nunjucks-async.js +0 -0
  109. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/controller/controller.render-nunjucks.js +0 -0
  110. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/controller/controller.render-stream.js +0 -0
  111. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/controller/controller.render-swig-async.js +0 -0
  112. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/controller/controller.render-v1.js +0 -0
  113. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/controller/controller.render-xml.js +0 -0
  114. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/controller/index.js +0 -0
  115. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/controller/inline-script.js +0 -0
  116. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/controller/inspector-window-emit.js +0 -0
  117. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/controller/release-banner.js +0 -0
  118. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/dev/index.js +0 -0
  119. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/dev/lib/class.js +0 -0
  120. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/dev/lib/factory.js +0 -0
  121. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/dev/lib/tools.js +0 -0
  122. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/gna.js +0 -0
  123. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/locales/README.md +0 -0
  124. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/locales/currency.json +0 -0
  125. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/locales/dist/language/en.json +0 -0
  126. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/locales/dist/language/fr.json +0 -0
  127. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/locales/dist/region/en.json +0 -0
  128. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/locales/dist/region/fr.json +0 -0
  129. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/locales/index.js +0 -0
  130. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/mime.types +0 -0
  131. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/model/entity.js +0 -0
  132. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/model/index.js +0 -0
  133. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/model/template/entityFactory.js +0 -0
  134. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/model/template/index.js +0 -0
  135. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/README.md +0 -0
  136. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/index.js +0 -0
  137. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/csrf/README.md +0 -0
  138. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/csrf/package.json +0 -0
  139. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/csrf/src/main.js +0 -0
  140. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/README.md +0 -0
  141. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/coep/README.md +0 -0
  142. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/coep/package.json +0 -0
  143. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/coep/src/main.js +0 -0
  144. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/coop/README.md +0 -0
  145. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/coop/package.json +0 -0
  146. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/coop/src/main.js +0 -0
  147. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/corp/README.md +0 -0
  148. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/corp/package.json +0 -0
  149. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/corp/src/main.js +0 -0
  150. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/csp/README.md +0 -0
  151. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/csp/package.json +0 -0
  152. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/csp/src/main.js +0 -0
  153. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/hide-powered-by/README.md +0 -0
  154. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/hide-powered-by/package.json +0 -0
  155. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/hide-powered-by/src/main.js +0 -0
  156. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/hsts/README.md +0 -0
  157. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/hsts/package.json +0 -0
  158. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/hsts/src/main.js +0 -0
  159. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/origin-agent-cluster/README.md +0 -0
  160. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/origin-agent-cluster/package.json +0 -0
  161. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/origin-agent-cluster/src/main.js +0 -0
  162. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/package.json +0 -0
  163. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/referrer-policy/README.md +0 -0
  164. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/referrer-policy/package.json +0 -0
  165. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/referrer-policy/src/main.js +0 -0
  166. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/src/main.js +0 -0
  167. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/x-content-type-options/README.md +0 -0
  168. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/x-content-type-options/package.json +0 -0
  169. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/x-content-type-options/src/main.js +0 -0
  170. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/x-dns-prefetch-control/README.md +0 -0
  171. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/x-dns-prefetch-control/package.json +0 -0
  172. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/x-dns-prefetch-control/src/main.js +0 -0
  173. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/x-download-options/README.md +0 -0
  174. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/x-download-options/package.json +0 -0
  175. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/x-download-options/src/main.js +0 -0
  176. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/x-frame-options/README.md +0 -0
  177. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/x-frame-options/package.json +0 -0
  178. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/x-frame-options/src/main.js +0 -0
  179. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/README.md +0 -0
  180. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/package.json +0 -0
  181. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/src/main.js +0 -0
  182. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/x-xss-protection/README.md +0 -0
  183. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/x-xss-protection/package.json +0 -0
  184. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/security-headers/x-xss-protection/src/main.js +0 -0
  185. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/session/README.md +0 -0
  186. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/session/package.json +0 -0
  187. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/session/src/main.js +0 -0
  188. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/storage/README.md +0 -0
  189. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/storage/build.json +0 -0
  190. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/storage/package.json +0 -0
  191. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/storage/src/main.js +0 -0
  192. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/validator/README.md +0 -0
  193. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/validator/build.json +0 -0
  194. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/validator/package.json +0 -0
  195. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/plugins/lib/validator/src/form-validator.js +0 -0
  196. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/router.js +0 -0
  197. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/server.express.js +0 -0
  198. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/server.isaac.js +0 -0
  199. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/server.isaac.rapid-reset.js +0 -0
  200. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/server.route-candidates.js +0 -0
  201. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/status.codes +0 -0
  202. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/_gitignore +0 -0
  203. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle/config/app.json +0 -0
  204. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle/config/connectors.json +0 -0
  205. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle/config/routing.json +0 -0
  206. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle/config/settings.json +0 -0
  207. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle/config/settings.server.json +0 -0
  208. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle/config/templates.json +0 -0
  209. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle/config/watchers.json +0 -0
  210. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle/controllers/controller.content.js +0 -0
  211. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
  212. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle/controllers/setup.js +0 -0
  213. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle/index.js +0 -0
  214. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle/locales/en.json +0 -0
  215. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
  216. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle_public/css/default.css +0 -0
  217. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle_public/css/home.css +0 -0
  218. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
  219. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
  220. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle_public/js/components/x-checklist.js +0 -0
  221. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
  222. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle_public/manifest.webmanifest +0 -0
  223. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle_public/readme.md +0 -0
  224. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle_public/sw.js +0 -0
  225. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
  226. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle_templates/html/content/homepage.html +0 -0
  227. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle_templates/html/includes/error-msg-noscript.html +0 -0
  228. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle_templates/html/includes/error-msg-outdated-browser.html +0 -0
  229. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle_templates/html/includes/x-checklist.html +0 -0
  230. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/boilerplate/bundle_templates/html/layouts/main.html +0 -0
  231. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/command/gina.bat.tpl +0 -0
  232. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/command/gina.tpl +0 -0
  233. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/conf/env.json +0 -0
  234. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/conf/manifest.json +0 -0
  235. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/conf/package.json +0 -0
  236. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/conf/settings.json +0 -0
  237. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/conf/statics.json +0 -0
  238. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/error/client/json/401.json +0 -0
  239. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/error/client/json/403.json +0 -0
  240. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/error/client/json/404.json +0 -0
  241. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/error/server/html/50x.html +0 -0
  242. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/error/server/json/500.json +0 -0
  243. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/error/server/json/503.json +0 -0
  244. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/core/template/extensions/logger/config.json +0 -0
  245. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/helpers/console.js +0 -0
  246. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/helpers/context.js +0 -0
  247. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/helpers/data/LICENSE +0 -0
  248. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/helpers/data/README.md +0 -0
  249. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/helpers/data/package.json +0 -0
  250. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/helpers/data/src/main.js +0 -0
  251. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/helpers/dateFormat.js +0 -0
  252. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/helpers/index.js +0 -0
  253. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/helpers/json/LICENSE +0 -0
  254. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/helpers/json/README.md +0 -0
  255. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/helpers/json/package.json +0 -0
  256. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/helpers/json/src/main.js +0 -0
  257. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/helpers/path.js +0 -0
  258. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/helpers/plugins/README.md +0 -0
  259. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/helpers/plugins/package.json +0 -0
  260. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/helpers/plugins/src/api-error.js +0 -0
  261. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/helpers/plugins/src/main.js +0 -0
  262. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/helpers/prototypes.js +0 -0
  263. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/helpers/task.js +0 -0
  264. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/helpers/text.js +0 -0
  265. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/admin/package.json +0 -0
  266. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/admin/src/main.js +0 -0
  267. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/archiver/README.md +0 -0
  268. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/archiver/build.json +0 -0
  269. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/archiver/package.json +0 -0
  270. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/archiver/src/dep/jszip.min.js +0 -0
  271. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/archiver/src/main.js +0 -0
  272. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/async/package.json +0 -0
  273. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/async/src/main.js +0 -0
  274. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/audit/package.json +0 -0
  275. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/audit/src/main.js +0 -0
  276. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/audit-store.js +0 -0
  277. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/authn/package.json +0 -0
  278. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/authn/src/lockout.js +0 -0
  279. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/authn/src/main.js +0 -0
  280. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/authn/src/totp.js +0 -0
  281. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/authz-gate/package.json +0 -0
  282. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/authz-gate/src/main.js +0 -0
  283. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cache/README.md +0 -0
  284. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cache/build.json +0 -0
  285. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cache/package.json +0 -0
  286. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cache/src/main.js +0 -0
  287. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/aliases.json +0 -0
  288. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/audit/arguments.json +0 -0
  289. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/audit/help.txt +0 -0
  290. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/audit/verify.js +0 -0
  291. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/add.js +0 -0
  292. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/arguments.json +0 -0
  293. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/build.js +0 -0
  294. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/copy.js +0 -0
  295. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/cp.js +0 -0
  296. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/help.js +0 -0
  297. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/help.txt +0 -0
  298. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/inc/boot-lines.js +0 -0
  299. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/inc/name-rewrite.js +0 -0
  300. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/inc/name.js +0 -0
  301. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/list.js +0 -0
  302. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/man.js +0 -0
  303. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/mcp-start.js +0 -0
  304. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/mcp.js +0 -0
  305. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/oas.js +0 -0
  306. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/openapi.js +0 -0
  307. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/remove.js +0 -0
  308. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/rename.js +0 -0
  309. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/restart.js +0 -0
  310. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/rm.js +0 -0
  311. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/start.js +0 -0
  312. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/status.js +0 -0
  313. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/stop.js +0 -0
  314. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/bundle/types.js +0 -0
  315. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/cache/arguments.json +0 -0
  316. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/cache/clear.js +0 -0
  317. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/cache/help.txt +0 -0
  318. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/cache/stats.js +0 -0
  319. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/connector/arguments.json +0 -0
  320. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/connector/help.js +0 -0
  321. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/connector/infer.js +0 -0
  322. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/connector/list.js +0 -0
  323. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/connector/migrate.js +0 -0
  324. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/connector/models.js +0 -0
  325. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/connector/remove.js +0 -0
  326. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/connector/rm.js +0 -0
  327. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/connector/test.js +0 -0
  328. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/container/arguments.json +0 -0
  329. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/container/help.js +0 -0
  330. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/container/help.txt +0 -0
  331. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/container/man.js +0 -0
  332. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/container/ps.js +0 -0
  333. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/container/stop.js +0 -0
  334. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/controller/add.js +0 -0
  335. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/controller/arguments.json +0 -0
  336. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/controller/help.txt +0 -0
  337. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/controller/inc/args.js +0 -0
  338. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/controller/inc/namespace.js +0 -0
  339. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/controller/inc/reference-rewrite.js +0 -0
  340. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/controller/inc/reference-scan.js +0 -0
  341. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/controller/inc/scaffold.js +0 -0
  342. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/controller/remove.js +0 -0
  343. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/controller/rename.js +0 -0
  344. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/controller/rm.js +0 -0
  345. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/env/add.js +0 -0
  346. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/env/get.js +0 -0
  347. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/env/help.js +0 -0
  348. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/env/help.txt +0 -0
  349. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/env/inc/name.js +0 -0
  350. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/env/link-dev.js +0 -0
  351. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/env/list.js +0 -0
  352. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/env/remove.js +0 -0
  353. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/env/rm.js +0 -0
  354. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/env/set.js +0 -0
  355. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/env/unset.js +0 -0
  356. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/env/use.js +0 -0
  357. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/add.js +0 -0
  358. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/arguments.json +0 -0
  359. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/build.js +0 -0
  360. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/dot.js +0 -0
  361. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/get.js +0 -0
  362. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/help.js +0 -0
  363. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/init.js +0 -0
  364. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/link-node-modules.js +0 -0
  365. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/link.js +0 -0
  366. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/list.js +0 -0
  367. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/man.js +0 -0
  368. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/msg.json +0 -0
  369. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/open.js +0 -0
  370. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/remove.js +0 -0
  371. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/reset.js +0 -0
  372. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/restart.js +0 -0
  373. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/set.js +0 -0
  374. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/start.js +0 -0
  375. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/status.js +0 -0
  376. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/stop.js +0 -0
  377. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/tail.js +0 -0
  378. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/update.js +0 -0
  379. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/framework/version.js +0 -0
  380. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/gina-dev.1.md +0 -0
  381. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/helper.js +0 -0
  382. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/i18n/add.js +0 -0
  383. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/i18n/arguments.json +0 -0
  384. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/i18n/export.js +0 -0
  385. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/i18n/help.js +0 -0
  386. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/i18n/help.txt +0 -0
  387. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/i18n/import.js +0 -0
  388. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/i18n/scan.js +0 -0
  389. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/image/_host.js +0 -0
  390. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/image/arguments.json +0 -0
  391. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/image/build.js +0 -0
  392. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/image/help.js +0 -0
  393. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/image/help.txt +0 -0
  394. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/image/list.js +0 -0
  395. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/image/man.js +0 -0
  396. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/image/rm.js +0 -0
  397. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/image/run.js +0 -0
  398. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/index.js +0 -0
  399. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/inspector/help.js +0 -0
  400. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/inspector/help.txt +0 -0
  401. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/inspector/open.js +0 -0
  402. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/man-render.js +0 -0
  403. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/minion/arguments.json +0 -0
  404. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/minion/help.js +0 -0
  405. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/minion/help.txt +0 -0
  406. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/minion/kill.js +0 -0
  407. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/minion/list.js +0 -0
  408. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/msg.json +0 -0
  409. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/port/help.js +0 -0
  410. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/port/help.txt +0 -0
  411. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/port/inc/scan.js +0 -0
  412. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/port/list.js +0 -0
  413. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/port/reset.js +0 -0
  414. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/port/set.js +0 -0
  415. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/project/add.js +0 -0
  416. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/project/arguments.json +0 -0
  417. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/project/backup.js +0 -0
  418. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/project/build.js +0 -0
  419. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/project/help.js +0 -0
  420. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/project/help.txt +0 -0
  421. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/project/import.js +0 -0
  422. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/project/inc/name.js +0 -0
  423. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/project/list.js +0 -0
  424. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/project/man.js +0 -0
  425. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/project/move.js +0 -0
  426. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/project/remove.js +0 -0
  427. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/project/rename.js +0 -0
  428. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/project/restart.js +0 -0
  429. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/project/restore.js +0 -0
  430. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/project/rm.js +0 -0
  431. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/project/start.js +0 -0
  432. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/project/status.js +0 -0
  433. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/project/stop.js +0 -0
  434. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/protocol/arguments.json +0 -0
  435. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/protocol/help.js +0 -0
  436. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/protocol/help.txt +0 -0
  437. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/protocol/list.js +0 -0
  438. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/protocol/remove.js +0 -0
  439. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/protocol/set.js +0 -0
  440. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/scope/add.js +0 -0
  441. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/scope/help.js +0 -0
  442. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/scope/help.txt +0 -0
  443. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/scope/inc/name.js +0 -0
  444. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/scope/link-local.js +0 -0
  445. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/scope/link-production.js +0 -0
  446. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/scope/list.js +0 -0
  447. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/scope/remove.js +0 -0
  448. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/scope/rm.js +0 -0
  449. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/scope/use.js +0 -0
  450. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/secrets/arguments.json +0 -0
  451. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/secrets/check.js +0 -0
  452. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/secrets/help.js +0 -0
  453. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/secrets/help.txt +0 -0
  454. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/secrets/scan.js +0 -0
  455. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/service/help.js +0 -0
  456. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/service/help.txt +0 -0
  457. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/service/list.js +0 -0
  458. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/service/man.js +0 -0
  459. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/service/start.js +0 -0
  460. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/storage/arguments.json +0 -0
  461. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/storage/gc.js +0 -0
  462. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/storage/help.txt +0 -0
  463. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/storage/stats.js +0 -0
  464. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/storage/verify.js +0 -0
  465. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd/view/add.js +0 -0
  466. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd-status-format/package.json +0 -0
  467. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cmd-status-format/src/main.js +0 -0
  468. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/collection/README.md +0 -0
  469. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/collection/build.json +0 -0
  470. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/collection/package.json +0 -0
  471. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/collection/src/main.js +0 -0
  472. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/conf-view/package.json +0 -0
  473. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/conf-view/src/main.js +0 -0
  474. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/config.js +0 -0
  475. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/connector-config/package.json +0 -0
  476. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/connector-config/src/main.js +0 -0
  477. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/connector-error/package.json +0 -0
  478. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/connector-error/src/main.js +0 -0
  479. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/connector-registry/package.json +0 -0
  480. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/connector-registry/src/main.js +0 -0
  481. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cron/README.md +0 -0
  482. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cron/package.json +0 -0
  483. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/cron/src/main.js +0 -0
  484. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/domain/LICENSE +0 -0
  485. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/domain/README.md +0 -0
  486. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/domain/package.json +0 -0
  487. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/domain/src/main.js +0 -0
  488. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/dto/package.json +0 -0
  489. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/dto/src/main.js +0 -0
  490. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/dto-pipe/package.json +0 -0
  491. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/dto-pipe/src/main.js +0 -0
  492. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/dto-types/package.json +0 -0
  493. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/dto-types/src/main.js +0 -0
  494. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/duration/package.json +0 -0
  495. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/duration/src/main.js +0 -0
  496. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/error-ref/package.json +0 -0
  497. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/error-ref/src/main.js +0 -0
  498. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/generator/index.js +0 -0
  499. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/i18n/package.json +0 -0
  500. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/i18n/src/main.js +0 -0
  501. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/idempotency/package.json +0 -0
  502. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/idempotency/src/main.js +0 -0
  503. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/image-build/package.json +0 -0
  504. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/image-build/src/main.js +0 -0
  505. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/index.js +0 -0
  506. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/inherits/LICENSE +0 -0
  507. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/inherits/README.md +0 -0
  508. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/inherits/package.json +0 -0
  509. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/inherits/src/main.js +0 -0
  510. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/inspector-events/package.json +0 -0
  511. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/inspector-events/src/main.js +0 -0
  512. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/inspector-redact/package.json +0 -0
  513. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/inspector-redact/src/main.js +0 -0
  514. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/instrument/package.json +0 -0
  515. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/instrument/src/main.js +0 -0
  516. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/job/package.json +0 -0
  517. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/job/src/main.js +0 -0
  518. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/job-store.js +0 -0
  519. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/json-config-header/package.json +0 -0
  520. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/json-config-header/src/main.js +0 -0
  521. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/kv/package.json +0 -0
  522. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/kv/src/main.js +0 -0
  523. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/kv-store.js +0 -0
  524. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/lane/package.json +0 -0
  525. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/lane/src/main.js +0 -0
  526. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/loading-state/package.json +0 -0
  527. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/loading-state/src/main.js +0 -0
  528. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/logger/README.md +0 -0
  529. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/logger/package.json +0 -0
  530. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/logger/src/containers/default/index.js +0 -0
  531. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/logger/src/containers/file/index.js +0 -0
  532. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/logger/src/containers/mq/index.js +0 -0
  533. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/logger/src/containers/mq/listener.js +0 -0
  534. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/logger/src/containers/mq/speaker.js +0 -0
  535. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/logger/src/helper.js +0 -0
  536. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/logger/src/main.js +0 -0
  537. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/logger/src/redact.js +0 -0
  538. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/maintenance/package.json +0 -0
  539. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/maintenance/src/main.js +0 -0
  540. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/math/index.js +0 -0
  541. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/mcp-dispatch/package.json +0 -0
  542. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/mcp-dispatch/src/main.js +0 -0
  543. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/mcp-http/package.json +0 -0
  544. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/mcp-http/src/main.js +0 -0
  545. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/mcp-server/package.json +0 -0
  546. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/mcp-server/src/main.js +0 -0
  547. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/merge/README.md +0 -0
  548. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/merge/package.json +0 -0
  549. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/merge/src/main.js +0 -0
  550. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/message-validator/package.json +0 -0
  551. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/message-validator/src/main.js +0 -0
  552. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/metrics/package.json +0 -0
  553. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/metrics/src/main.js +0 -0
  554. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/model.js +0 -0
  555. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/money/package.json +0 -0
  556. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/money/src/main.js +0 -0
  557. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/multipart/package.json +0 -0
  558. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/multipart/src/main.js +0 -0
  559. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/net-locality/package.json +0 -0
  560. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/net-locality/src/main.js +0 -0
  561. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/nunjucks-filters/README.md +0 -0
  562. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/nunjucks-filters/package.json +0 -0
  563. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/nunjucks-filters/src/main.js +0 -0
  564. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/nunjucks-resolver/package.json +0 -0
  565. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/nunjucks-resolver/src/main.js +0 -0
  566. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/priority/package.json +0 -0
  567. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/priority/src/main.js +0 -0
  568. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/proc.js +0 -0
  569. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/push/package.json +0 -0
  570. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/push/src/main.js +0 -0
  571. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/rate-limit/package.json +0 -0
  572. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/rate-limit/src/main.js +0 -0
  573. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/release-watch/package.json +0 -0
  574. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/release-watch/src/main.js +0 -0
  575. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/render-cache/package.json +0 -0
  576. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/render-cache/src/main.js +0 -0
  577. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/render-cache-store.js +0 -0
  578. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/routing/README.md +0 -0
  579. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/routing/build.json +0 -0
  580. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/routing/package.json +0 -0
  581. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/routing/src/main.js +0 -0
  582. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/routing-introspect/package.json +0 -0
  583. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/routing-introspect/src/main.js +0 -0
  584. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/secrets/package.json +0 -0
  585. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/secrets/src/backends/env.js +0 -0
  586. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/secrets/src/backends/exec.js +0 -0
  587. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/secrets/src/backends/file.js +0 -0
  588. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/secrets/src/declaration.js +0 -0
  589. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/secrets/src/env-file.js +0 -0
  590. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/secrets/src/main.js +0 -0
  591. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/secrets/src/sources.js +0 -0
  592. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/security-headers-emitter/package.json +0 -0
  593. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/security-headers-emitter/src/main.js +0 -0
  594. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/session-lifetime/package.json +0 -0
  595. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/session-lifetime/src/main.js +0 -0
  596. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/session-store.js +0 -0
  597. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/shell.js +0 -0
  598. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/sqlite-driver.js +0 -0
  599. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/sri/package.json +0 -0
  600. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/sri/src/main.js +0 -0
  601. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/state.js +0 -0
  602. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/storage/package.json +0 -0
  603. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/storage/src/local-cas.js +0 -0
  604. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/storage/src/local-stream.js +0 -0
  605. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/storage/src/local.js +0 -0
  606. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/storage/src/main.js +0 -0
  607. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/storage/src/meta-store.js +0 -0
  608. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/storage/src/s3.js +0 -0
  609. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/storage/src/util.js +0 -0
  610. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/storage-store.js +0 -0
  611. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/swig-filters/README.md +0 -0
  612. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/swig-filters/package.json +0 -0
  613. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/swig-filters/src/main.js +0 -0
  614. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/swig-resolver/package.json +0 -0
  615. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/swig-resolver/src/main.js +0 -0
  616. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/template-loaders/package.json +0 -0
  617. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/template-loaders/src/loaders/http.js +0 -0
  618. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/template-loaders/src/loaders/memory.js +0 -0
  619. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/template-loaders/src/main.js +0 -0
  620. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/url/README.md +0 -0
  621. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/url/index.js +0 -0
  622. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/url/routing.json +0 -0
  623. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/uuid/package.json +0 -0
  624. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/uuid/src/main.js +0 -0
  625. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/validator.js +0 -0
  626. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/watcher/package.json +0 -0
  627. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/watcher/src/main.js +0 -0
  628. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/ws-framing/package.json +0 -0
  629. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/ws-framing/src/main.js +0 -0
  630. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/ws-query/package.json +0 -0
  631. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/ws-query/src/main.js +0 -0
  632. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/ws-session/package.json +0 -0
  633. /package/framework/{v0.7.3-alpha.1 → v0.7.4-alpha.1}/lib/ws-session/src/main.js +0 -0
package/CHANGELOG.md CHANGED
@@ -6,6 +6,28 @@ adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html),
6
6
  and is generated by [Changie](https://github.com/miniscruff/changie).
7
7
 
8
8
 
9
+ ## 0.7.3 - 2026-10-05
10
+ ### Fixed
11
+ * A `GINA_VERSION` that names no installed framework version is now refused before the command runs, whether it was exported or set with `--version=<v>`: the CLI exits 1 with a message naming the path it expected and, for a version number, the `env -u GINA_VERSION gina framework:add <version>` command that installs it side by side. Before, only the installed package's own version was checked, so an exported `GINA_VERSION=latest` (or `--version=latest`, or a version number that is not installed) went on to migrate `~/.gina` to that phantom version (a `latest` entry in `main.json` and `gina.db`, an empty `~/.gina/latest/` directory, `gina version` printing `vlatest`) and the command carried on. A version installed side by side with `framework:add` is accepted as before. A `--<name>=<value>` argument also keeps its value exactly as given: when the flag name had no hyphen of its own, the value's first hyphen was turned into `_`, so `--version=0.7.2-alpha.2` arrived as `0.7.2_alpha.2`. Entries an earlier run already wrote are not removed. Takes effect on the next `gina` command. (#B584)
12
+ * `gina start` (and `gina framework:start`) now exits non-zero when the framework stops before it is ready: with the framework's own exit code, with 1 when that code was 0, or with 128 plus the signal number when a signal stopped it (137 for SIGKILL). It used to exit 0, so a script that tests the exit code read success on a refused `GINA_VERSION` or an error while the framework boots, and a framework killed by a signal made the command crash with a TypeError instead. A start that reaches the ready line, or finds the framework already running, still exits 0. (#B759)
13
+ * A warning on standard error, such as a deprecation notice, no longer aborts `gina start`. The command exited 1 as soon as the framework printed a line containing "warning" before it was ready, and the framework, cut off from its output, then stopped, so the start failed. The warning is now printed and the start carries on; a debugger line or "address already in use" still ends it with exit 1. (#B760)
14
+ * A staged upload's `send()` no longer reads the event being dispatched when it runs. The upload group now comes from the file input the virtual upload form stages for, so `gina.validator.$forms[<virtual form id>].send(formData)` called outside that input's change event stages the file in the input's group: outside any event it used to fail with a TypeError while the request still went out with no multipart boundary and no group, and inside an unrelated event it took that event's element's group. A `send()` with no data now sends an empty body instead of throwing and leaving the form marked as sending. Selecting or dropping a file was not affected. (#B758)
15
+ * After a client navigation (`data-gina-nav`) that closes an open popin, focus now lands on the swapped region and the page keeps the navigation's scroll position, as after any other swap. The popin used to be closed after the region was focused, so closing it returned focus to the popin's trigger and scrolled the page back to it, with modal and non-modal popins alike. (#B762)
16
+ * `gina start` no longer reports another program on the framework port as a running framework. When the port was already in use, it trusted any `~/.gina/procs.json` entry for it without checking: a port held by another program read « already running » (with « PID `null` » when no entry named the port), a stale entry left by a stopped framework was reported as running under a dead pid, and both exited 0 while a half-started framework kept the MQ port busy; any other error opening the port, such as EACCES, made `gina start` hang. « Already running » now needs a recorded pid that is a running gina framework, on Node or Bun. Otherwise the start prints the cause, the fix (`gina framework:set --port=<port>`) and, outside Windows, an `lsof` command that finds the program holding the port, then exits 1 and releases the MQ port; any other error opening the port exits 1 with that error. (#B761)
17
+ * A URL both declared in `templates.json` and written in the layout now appears once in the `link` header of an HTML page, instead of twice. (#B767)
18
+ * The stylesheets (`<link rel="stylesheet">`) and scripts (`<script src>`) written in a layout are now hinted in the `link` header of an HTML page, with `as=style` and `as=script`; they never got an `as`, so they were never hinted. A tag the browser could not match a preload to is left out: one carrying `integrity` or `crossorigin`, a stylesheet whose `media` is not `all` or `screen`, an alternate stylesheet, or a `type="module"` or `nomodule` script. (#B766)
19
+ * The automatic preload hints of an `http/2.0` bundle in production, the 103 Early Hints and the `link` header of the 200, are now limited to `templates.json > preloadHintsMaxSize` bytes, 1,024 by default (`0` = no limit), keeping their entries in order and stopping at the last one that fits; `preloadHintsEnabled: false` sends neither. Both keys can be set in `_common` or in a page's own entry. The hints had no limit, so behind a proxy with a small response-header buffer (nginx's `proxy_buffer_size` is one memory page, 4 KiB on most Linux hosts) a page that declared many stylesheets and scripts, or whose layout held many images, was answered 502 « upstream sent too big header ». This is a behaviour change: such pages now send fewer hints, and the assets left out still load once the browser reads the page. Raise the limit only when every proxy in front of the bundle has room for it. (#B765)
20
+ * `self.setEarlyHints([a, b])` now sends both entries over HTTP/1.1 (when `server.earlyHintsOverHTTP1` is `true`). It joined the entries with `, ` into one string, which Node.js checks as a single link value and refused, so an explicit hint with several entries was silently never sent over HTTP/1.1; each entry is now handed to Node.js separately. An entry whose parameter holds a space, such as an `imagesrcset`, is still refused by Node.js and drops that 103. (#B770)
21
+ * An `http/2.0` bundle in production no longer sends 103 Early Hints over HTTP/1.1 unless `settings.json > server.earlyHintsOverHTTP1` is `true`. Since 0.6.28 it sent its automatic 103 over HTTP/1.1 too, where it reaches a reverse proxy rather than a browser (browsers act on a 103 only over HTTP/2 and HTTP/3), and nginx older than 1.29, the versions Ubuntu 22.04 and 24.04 and Debian 12 package, takes an upstream 103 for the final response: every HTML page behind it failed (in Chromium: `ERR_HTTP2_PROTOCOL_ERROR`). This is a behaviour change, and it applies to `self.setEarlyHints()` too: a browser connected to the bundle over HTTP/2 gets its 103 as before, and behind a proxy that talks HTTP/1.1 to the bundle the 103 now stops. Turn the key on only behind a proxy that passes 103 responses on (nginx 1.29 or later with `early_hints`, Apache). (#B771)
22
+ * A page entry in `templates.json` that sets a `_common` switch to `false` (`assetVersioningEnabled`, `preloadHintsEnabled`, …) now keeps it: it used to get `_common`'s `true` back. For `javascriptsDeferEnabled`, such a page's scripts now go before `</body>` without `defer`, as documented, instead of in `<head>` with it. (#B772)
23
+ * More of the assets written in a layout get a preload hint in the `link` header of an `http/2.0` page's 200. The layout was read one source line at a time, keeping the last URL on the line, so tags sharing a line were read as one: `<img src="a.png"><script src="b.js"></script>` preloaded the script as an image and left the image out, a stylesheet followed by an image on one line lost both, a one-line `<picture>` lost its `<img>` and gave its `<source>`'s `srcset` to the next image, and a minified layout got no hint at all. Each tag is now read on its own, a start tag written over several lines included; the hints stay within `preloadHintsMaxSize`. (#B768)
24
+ * Under a webroot other than `/`, an asset URL written in a layout with the webroot, such as `{{ page.environment.webroot }}img/logo.png`, now gets its preload hint, behind a path-prefixing proxy too. Such a URL never matched a file, so it got no hint, and a stylesheet linked that way was never read for its `url()` references. (#B769)
25
+ * The `ginaEnabled` key is removed from the framework's `templates.json` baseline. It never had any effect, although the `templates.json` reference said that `false` keeps gina's CSS and JS out of a page and hides the dev toolbar; a bundle that sets it keeps working, the key being ignored as before. To hide the dev status bar on a page, render it with `self.render(data, false)`; to keep gina's own CSS and JS out of a page, set its `javascriptsExcluded` and `stylesheetsExcluded` to `"**"`, which leaves out `_common`'s stylesheets and scripts too. (#B773)
26
+ * A page no longer answers 500 on an `http/2.0` bundle, in dev and in production, when its layout links a stylesheet by hand whose CSS holds an unquoted `url(#id)`, such as the SVG reference in `fill: url(#grad)`, or a `url()` with no dot in its path. The scan that lists the `url()` references of a layout's stylesheets for the Inspector threw on them; it now skips what it cannot read. (#B774)
27
+ * A page no longer answers 500 on an `http/2.0` bundle when the first asset of its layout is an `<img>` with a `srcset` and no `src`. The layout scan kept the previous tag's URL, so such a tag first in a layout threw, and a later one overwrote the previous image's entry; a tag with no `src` or `href` now gets no hint and leaves the other entries alone. (#B775)
28
+ * A layout image keeps its preload hint when one of the layout's stylesheets names the same file in a CSS `url()`: the stylesheet's reference replaced the image's entry, the one that carries the hint. (#B776)
29
+ * A bundle installed under a directory whose name holds `404` now gets its layout preload hints, as does an asset named like `error-404.png`: the layout scan took any file path holding `404` for a missing file. (#B777)
30
+
9
31
  ## 0.7.2 - 2026-10-03
10
32
  ### Added
11
33
  * Versioned asset URLs, so browsers can keep a bundle's scripts and stylesheets for a year: in production, the `<link>` and `<script>` tags gina writes from `templates.json` (and their HTTP/2 preload hints) end in `?v=` plus the first 10 hex characters of the file's SHA-384, and the statics gina serves answer `Cache-Control: public, max-age=31536000, immutable` when the token names the file's current bytes, `no-cache` for any other token, and exactly as before without one. The client routing table is fetched the same way, its token carried on gina's own script tag. A deploy that changes a file changes its URL, so a returning visitor fetches it once and no stale copy survives. On by default; `assetVersioningEnabled: false` in `templates.json > _common` keeps the plain URLs. Not versioned: dev mode, renders without a layout, `isExternalPlugin` scripts, hand-written tags. A front server that serves the statics, such as nginx, should send requests that carry a token to the bundle, which checks it (see the statics reference). Restart the bundle to pick it up; if your build copies `gina.min.js` into your own static files, rebuild that copy before the restart: an older copy compares script URLs exactly, so it can run a script twice when a popin or a swapped region includes a file the page loaded under its versioned URL. (#P48)
package/README.md CHANGED
@@ -68,46 +68,46 @@ open https://localhost:3100
68
68
 
69
69
  > **npm 12+** blocks install scripts by default, and gina's post-install bootstraps `~/.gina` and the framework dependencies. Install with `npm install -g gina@latest --allow-scripts=gina`, or allow it once for all global installs with `npm config set allow-scripts=gina --location=user`. (Not needed on npm ≤ 11.)
70
70
 
71
- ## What's in 0.7.2
72
-
73
- > **Restart your bundles *and* rebuild them.** The staged-upload, popin and asset-URL
74
- > changes are browser-bundled, so `gina.min.js` changed and `gina bundle:restart`
75
- > alone leaves the old client running: rebuild each consuming bundle, then restart
76
- > it. If your build copies `gina.min.js` into your own static files, rebuild that
77
- > copy before the restart.
78
-
79
- > **Read before upgrading — some changes can change an answer.** In production, the
80
- > asset URLs gina writes now carry a `?v=` content token, and the statics it serves
81
- > answer `Cache-Control: public, max-age=31536000, immutable` when the token matches.
82
- > This is on by default: `assetVersioningEnabled: false` in `templates.json > _common`
83
- > keeps the plain URLs, and a front server that serves your statics should send
84
- > tokened requests to the bundle. A staged-upload transport failure now says the
85
- > request "did not complete", the upload form of a staged input whose name has no
86
- > brackets gets a new id (`gina-upload-<name>-<form id>`), and a route whose `param`
87
- > already used a key named `lane` for its own data now declares a fast-lane route.
88
- > The [migration notes](https://gina.io/docs/migration) list every behaviour change.
89
-
90
- **The staged-uploads release.** The four reports of issue #83 lead it: the
91
- staged-upload error slot rendered a server's error text as markup (an advisory), a
92
- form posted a file input's `C:\fakepath\` placeholder, a submit could leave while
93
- its upload was still running, and a request that failed in transit said it never
94
- reached the server. Five more staged-upload and popin fixes found on the way, two
95
- new features — versioned asset URLs that browsers keep for a year, and an opt-in
96
- fast lane that answers a JSON route without building a controller — and fixes to
97
- precompressed statics, HTTP/2 error metrics and the SQLite session store. Full
98
- detail in [CHANGELOG.md](./CHANGELOG.md).
99
-
100
- - **Security — a staged upload's error message is shown as text (#B727).** The upload error slot used `innerHTML`, so a proxy's or WAF's HTML error page, or a server error that echoes request text such as a rejected filename, became live markup in the page.
101
- - **Security — the `engine.io` floor rises to `^6.6.10` (#S12).** On an existing session, a transport-upgrade request could crash a bundle whose `settings.json` sets `ioServer.integrationMode` to `"attach"` (GHSA-2gc4-cqfq-p2gv); an install of this version can no longer resolve an affected release.
102
- - **Added — versioned asset URLs (#P48).** In production the `<link>` and `<script>` tags gina writes from `templates.json`, their preload hints and the client routing table carry a content token, and the statics gina serves answer `immutable` for a year when the token names the file's current bytes, so a deploy that changes a file changes its URL. On by default.
103
- - **Added — the fast lane (#P49).** A JSON route can name a function in the bundle's `lanes/` directory (`"param": { "lane": "users", "control": "list" }`) and skip the controller: a median 0.39 times the CPU of the controller route, about 150 µs less per request, in the measurement. Opt-in; this release refuses a lane route that declares a gate.
104
- - **Fixed — staged uploads, issue #83 parts 1–3 (#B724, #B725, #B726).** A transport failure says the request did not complete (overridable as `gina.config.a11y.transportError`), a staged file input's placeholder value is no longer posted, and a submit made during an upload waits for it, then sends once with its metadata.
105
- - **Fixed — staged uploads: choosing another file during an upload, an input without an error element, same-named inputs in two forms, and an input in a reopened popin (#B729, #B731, #B732, #B733).**
106
- - **Fixed — `gina.popin.close(name)` tears down the popin's forms (#B756).** After a reopen they were left unbound.
107
- - **Fixed — precompressed statics: a `.gz` copy goes out as `Content-Encoding: gzip`, and statics vary on `Accept-Encoding` (#B742, #B743).**
108
- - **Fixed — on HTTP/2, an error answer is counted with its own status in the metrics, and no `headersSent` error follows a sent response (#B749, #B750).**
109
- - **Fixed — the SQLite session store reads its path from `file` (#D47).** A path in `database`, as the docs showed, stopped the boot.
110
- - **Fixed — a page whose query string ends in the routing table's path is answered by the page (#P48).**
71
+ ## What's in 0.7.3
72
+
73
+ > **Restart your bundles *and* rebuild them.** Two client fixes, focus after a
74
+ > client navigation that closes a popin and a staged upload's `send()`, are
75
+ > browser-bundled, so `gina.min.js` changed and `gina bundle:restart` alone leaves
76
+ > the old client running: rebuild each consuming bundle, then restart it. If your
77
+ > build copies `gina.min.js` into your own static files, rebuild that copy before
78
+ > the restart.
79
+
80
+ > **Read before upgrading — some changes can change an answer.** In production, an
81
+ > `http/2.0` bundle no longer sends 103 Early Hints over HTTP/1.1 unless
82
+ > `settings.json > server.earlyHintsOverHTTP1` is `true`, and its preload hints are
83
+ > limited to `templates.json > preloadHintsMaxSize` bytes, 1,024 by default, so a
84
+ > page that declares many stylesheets and scripts sends fewer hints. `gina start`
85
+ > now exits non-zero when the framework does not start or another program holds
86
+ > its port, a `GINA_VERSION` (or `--version=`) that names no installed framework is
87
+ > refused with exit 1, and a page's own `false` in `templates.json` now overrides a
88
+ > `_common` switch. The [migration notes](https://gina.io/docs/migration) list every
89
+ > behaviour change.
90
+
91
+ **The preload-hints release.** It leads with two fixes for pages behind a reverse
92
+ proxy. Since 0.6.28 an `http/2.0` bundle sent its 103 Early Hints over HTTP/1.1
93
+ too, and nginx older than 1.29 (the Ubuntu 22.04 and 24.04 and Debian 12 packages)
94
+ takes an upstream 103 for the final response, so every HTML page behind it failed;
95
+ and a page with many preload hints could outgrow a proxy's header buffer and
96
+ answer 502. The layout scan that feeds those hints now reads each tag on its own,
97
+ three layout shapes that answered 500 now render, and `gina start` reports a
98
+ framework that did not start. Full detail in [CHANGELOG.md](./CHANGELOG.md).
99
+
100
+ - **Fixed — no 103 Early Hints over HTTP/1.1 by default (#B771).** Behind nginx older than 1.29, every HTML page of an `http/2.0` bundle failed (`ERR_HTTP2_PROTOCOL_ERROR` in Chromium). Browsers act on a 103 only over HTTP/2 and HTTP/3, so a browser connected to the bundle over HTTP/2 gets it as before; `server.earlyHintsOverHTTP1: true` brings it back behind a proxy that passes 103 responses on.
101
+ - **Fixed — preload hints are limited to 1,024 bytes (#B765).** A page with many hints was answered 502 « upstream sent too big header » behind a proxy with a small response-header buffer. The hints keep their order and stop at the last entry that fits; `preloadHintsMaxSize` raises the limit (`0` = none) and `preloadHintsEnabled: false` sends none.
102
+ - **Fixed — the stylesheets and scripts written in a layout get a hint, a URL is hinted once, and `self.setEarlyHints([a, b])` sends both entries over HTTP/1.1 (#B766, #B767, #B770).**
103
+ - **Fixed — more of a layout's assets get a hint (#B768, #B769, #B776, #B777).** Tags sharing a line, a one-line `<picture>` and a minified layout are read tag by tag; a URL written with a webroot other than `/`, an image a stylesheet also names in a `url()`, and the assets of a bundle installed under a directory whose name holds `404` get their hints.
104
+ - **Fixed — a page no longer answers 500 because of its layout's assets (#B774, #B775).** A stylesheet linked by hand with an unquoted `url(#id)` or a `url()` with no dot in its path, or a first layout asset that is an `<img>` with a `srcset` and no `src`, made the page answer 500.
105
+ - **Fixed — a page's own `false` overrides a `_common` switch in `templates.json` (#B772).** For `javascriptsDeferEnabled`, such a page's scripts now go before `</body>` without `defer`, as documented.
106
+ - **Fixed — `gina start` exits non-zero when the framework does not start (#B759, #B760, #B761).** It exits with the framework's own exit code, or 128 plus the signal number; another program on the framework port is no longer reported as a running framework; and a warning on standard error no longer aborts the start.
107
+ - **Fixed — a `GINA_VERSION` that names no installed framework is refused (#B584).** It used to migrate `~/.gina` to that version.
108
+ - **Fixed — after a client navigation that closes a popin, focus lands on the swapped region (#B762).**
109
+ - **Fixed — a staged upload's `send()` no longer reads the event being dispatched when it runs (#B758).** Called from your own code, it failed with a TypeError or took another element's upload group.
110
+ - **Fixed — `ginaEnabled` is gone from the framework's `templates.json` baseline and from its reference (#B773).** It never had any effect.
111
111
 
112
112
  ## Documentation
113
113
 
package/ROADMAP.md CHANGED
@@ -89,6 +89,7 @@ This roadmap covers planned features, architectural improvements, new connectors
89
89
  | **Q4 2026** | `0.7.0` ✅ | **Performance**: the inter-bundle throughput arc closes — a candidate index narrows the cold route match to the rules whose URL could match, the warm route cache becomes one constant-time map, an HTTP/2 `self.query()` answer without a `status` field no longer gets `status: 200` added nor a warning logged per call, and the arc's exit benchmark is published (its first five slices shipped in `0.6.33`). **Security**: seven fixes — a `GET` could run a route's `DELETE` action for any client, including from another site; on Express 5 one body-less request could stop the bundle; a stack passed as an error message reached the client; `gina tail --follow` re-ran a start command from the shared tmp directory; a long `X-Forwarded-Prefix` header could tie up an isaac bundle; a malformed frame on the loopback log listener stopped the framework daemon; and the browser bundle no longer carries any dynamic-code call, so custom validators compile without `eval`. **Added**: a boot warning for a Swig bundle that leaves `settings.swig.autoescape` unset (the default becomes `true` in `0.8.0`), and one for routing `requirements` regexes that are not anchored. **Fixed**: the first gina commands after a minor-version upgrade; a `405` lists the allowed methods, and a `HEAD` works on every `GET` route and gives the action `req.get`; on Express, a URL carrying a query string resolves; with `autoescape: true`, Swig pages keep their CSS and JavaScript; `env:add <env> @<project>`, `project:rename`, the values of `project:add`'s flags, six CLI commands that did not exit, and a path with a space in the install, `port:reset` and `bundle:restart`; the path helper's failed copies; the scaffolded Couchbase `pingInterval`. **ISO 27001 supplier evidence**: a published OpenSSF Scorecard and the controller-side error-message sanitizer. **New minor version**: settings move to `~/.gina/0.7/` — an npm install resets the networking and directory settings and the log level to their defaults, while Bun, a `gina-container` image or a git checkout carries them over and resets only the log level; culture, timezone, default environment and scope carry over on every path — and a `^0.6.x` dependency range does not resolve `0.7.0`. 25 fragments; restart **and rebuild** — the browser bundle changed. |
90
90
  | **Q4 2026** | `0.7.1` ✅ | **Security**: five advisories — behind a reverse proxy on the bundle's own host, the admin `/_gina/*` endpoints and `/_gina/metrics` admitted every client the proxy relayed; the cross-origin write guard in front of the `/_gina/*` control endpoints missed a leading path segment, the endpoint path at the end of a query string and another letter case; one `GET` of the client routing table spelled in another letter case stopped an isaac bundle; command output logs and the log-listener port file left the shared temp directory; and `settings.swig.autoescape: true` is applied on npm installs — plus CLI hardening: commands that start other gina commands, and an isaac bundle's boot, no longer build shell command lines, and the CLI matches names literally in its registry lookups. **Changed**: new project and bundle names follow a naming rule; less work per routed request — about a third less CPU on a JSON route — and an instance of an `inherits()` class no longer carries its own `prototype`. **Fixed**: the built-in `/_gina/*` endpoints answer a URL with a query string and the health check answers `HEAD`; a page whose query string ends in an endpoint path gets the page; isaac's own event streams answer HTTP/2; the maintenance IP allowlist on an isaac bundle serving HTTP/1.1; the storage endpoints during a maintenance window, and `storage:gc --dry-run` and `--driver=` against a running bundle; a JSON body sent to a control toggle on express; a daemon-started bundle's boot warnings in the `bundle:start` output; project commands from a path with a space, `bundle:stop`'s pid file, lookups that took one name for another extending it, and a `--restart-pid` flag; the Inspector's target URL with a query string; a bundle with templates walking the call stack on every request; the output cache read while disabled; and the path helper's per-path registry. 34 fragments; restart **and rebuild** — the browser bundle changed — and restart the framework daemon and any running `gina tail`. |
91
91
  | **Q4 2026** | `0.7.2` ✅ | **Security**: a staged upload's error message is rendered as text — the upload error slot used `innerHTML`, so a proxy's HTML error page, or a server error echoing request text such as a rejected filename, became live markup in the page — and the `engine.io` floor rises to `^6.6.10`, so an install can no longer resolve a release whose transport-upgrade handling could crash an attach-mode bundle. **Added**: versioned asset URLs — in production the asset tags gina writes and the client routing table carry a content token, and the statics gina serves answer `immutable` for a year when it matches (on by default); the fast lane — a JSON route can name a function in the bundle's `lanes/` directory and skip the controller (opt-in; about 150 µs less CPU per request in the measurement). **Fixed**: staged uploads — a request that fails in transit says it did not complete, and the text can be translated; a staged file input's placeholder value is no longer posted; a submit made during an upload waits for it; choosing another file during an upload stages it; a staging error reaches the on-error callback without an error element; same-named staged inputs in two forms keep their uploads apart; a staged input works again after its popin is reopened, and `gina.popin.close(name)` tears down the popin's forms; a precompressed `.gz` static is sent as `Content-Encoding: gzip` and statics vary on `Accept-Encoding`; HTTP/2 error answers are counted with their status in the metrics; no `headersSent` error after a sent response; the SQLite session store reads its path from `file`; and a page whose query string ends in the routing table's path gets the page. 17 fragments; restart **and rebuild** — the browser bundle changed. |
92
+ | **Q4 2026** | `0.7.3` ✅ | **Fixed**: behind a reverse proxy, an `http/2.0` bundle in production no longer sends 103 Early Hints over HTTP/1.1 unless `server.earlyHintsOverHTTP1` is `true` (since 0.6.28, nginx older than 1.29 took that 103 for the final response, so every HTML page behind it failed), and its preload hints are limited to `templates.json > preloadHintsMaxSize`, 1,024 bytes by default, so a page no longer outgrows a proxy's header buffer and answers 502; the layout scan reads each tag on its own, so tags sharing a line, a minified layout, webroot-form URLs and the stylesheets and scripts written in a layout get their hints, and a URL is hinted once; three layout shapes that answered 500 now render; a page's own `false` overrides a `_common` switch; `gina start` exits non-zero when the framework does not start or another program holds its port, and a warning no longer aborts it; a `GINA_VERSION` that names no installed framework is refused; after a client navigation that closes a popin, focus stays on the swapped region; a staged upload's `send()` no longer reads the event being dispatched; `ginaEnabled`, never read, is gone. 19 fragments; restart **and rebuild** — the browser bundle changed. |
92
93
  | **2027** | `0.7.x` | Performance — remaining measure-gated candidates: multipart & WebSocket fast paths, render/log cleanups, SIMD scanner (the render-path deep-clone & id-mint reduction shipped early in `0.6.2` with a measured 4.4× render-throughput gain; the profiling baseline itself also shipped in `0.6.2`; the per-request configuration view — `getConfig()` without the deep clone — shipped in `0.6.30`) · ISO 27001 supplier evidence — an SBOM attached to every release, once releases are cut by the CI release workflow · Beemaster admin + visual translation editor (moved from `0.6.x`) |
93
94
  | **2027** | `0.8.0` | **Swig output auto-escaping on by default** — `settings.swig.autoescape` becomes `true` when a bundle leaves it unset (prepared in `0.7.0`: a boot warning, the scaffold, the asset-tag fix). ⚠️ The financial-messaging content first planned here was **delivered early in `0.6.25` (2026-09-03)**: XML request/response handling · pluggable message-schema validation · IBAN/BIC validation rules · money & ISO 4217 minor-unit utilities · idempotency keys. |
94
95
  | **2027** | `0.9.0` | Financial-integration heavyweights — entity-layer datastore transaction seam · message-queue connector family (AMQP / Kafka / IBM MQ) |
package/bin/cli CHANGED
@@ -337,6 +337,35 @@ async function onExec() {
337
337
 
338
338
 
339
339
  filterArgs();// jshint ignore:line
340
+
341
+ // #B584 — refuse a GINA_VERSION that names no installed framework, before
342
+ // the command runs. The guard at the top of this file only sees a version
343
+ // that is already in the framework environment: an exported GINA_VERSION
344
+ // is imported after it, and a `--version=<v>` flag is promoted by
345
+ // filterArgs() just above. Past that guard, the framework init migrated
346
+ // ~/.gina to the phantom version (a `latest` key in every per-version
347
+ // dict, an empty <home>/latest/) and the command carried on. A version
348
+ // installed side by side (`framework:add` links it under
349
+ // <gina>/framework/v<version>) is accepted as before.
350
+ var requestedVersion = getEnvVar('GINA_VERSION');// jshint ignore:line
351
+ if (
352
+ typeof(requestedVersion) != 'undefined'
353
+ && requestedVersion !== version
354
+ && !fs.existsSync(ginaPath + '/framework/v' + requestedVersion)
355
+ ) {
356
+ var refusal = 'gina: framework version ' + requestedVersion + ' is not installed (expected at ' + ginaPath + '/framework/v' + requestedVersion + ').\n'
357
+ + 'GINA_VERSION, exported or set with --version=, must name an installed framework version; the installed package version is ' + packObj.version + '. Unset or correct it.\n';
358
+ // The install hint only for a value `framework:add` accepts — the
359
+ // plain `gina framework:add` hint would itself be refused while the
360
+ // variable is exported.
361
+ if ( /^\d+\.\d+\.\d+(-[0-9A-Za-z.-]+)?$/.test(requestedVersion) ) {
362
+ refusal += 'To install it side by side:\n $ env -u GINA_VERSION gina framework:add ' + requestedVersion + '\n';
363
+ }
364
+ // Synchronous: a pipe write is asynchronous and process.exit() would drop it.
365
+ fs.writeSync(2, refusal);
366
+ process.exit(1);
367
+ }
368
+
340
369
  //check for $HOME path, alert if empty.
341
370
  if (!home) {
342
371
  console.error('No ' + ((isWin32) ? 'USERPROFILE' : 'HOME') + ' path found.');
package/bin/cmd CHANGED
@@ -121,32 +121,41 @@ function Cmd(opt, runOffine) {
121
121
 
122
122
 
123
123
  framework.on('error', function(err) {
124
- if (err.code === 'EADDRINUSE') {
125
- if (process.argv[2] == 'framework:start') {
126
- var pid = null;
127
- var port = err.port || getEnvVar('GINA_PORT');// jshint ignore:line
128
- var procsFile = _(getEnvVar('GINA_HOMEDIR') +'/procs.json', true);// jshint ignore:line
129
- if ( new _(procsFile).existsSync() ) {
130
- var runningProcs = requireJSON(procsFile);// jshint ignore:line
131
- for (let i in runningProcs) {
132
- if (runningProcs[i].port == port) {
133
- pid = runningProcs[i].pid;
134
- break;
135
- }
136
- }
137
- }
138
- if (!pid) {
139
- console.warn('Framework already running on port`'+ opt.port +'`. Use `gina status` to get the PID to kill.');
140
- return;
141
- }
142
-
143
- console.warn('Framework already running on port `'+ opt.port +'`: [ '+ pid+' ]');
144
- } else {
145
-
146
- }
147
- } else {
148
- console.emerg('Could not start framework. ', err.stack)
124
+ // #B761 — an error once the socket listens (an accept failure such as EMFILE) does not
125
+ // mean the start failed: the running framework logs it and keeps serving, as before.
126
+ if (framework.listening) {
127
+ console.emerg('Could not start framework. ', err.stack);
128
+ return;
129
+ }
130
+ // #B761 — was: on EADDRINUSE under framework:start, any procs.json entry for the port
131
+ // was trusted without a check (« already running » naming even a dead pid), no entry
132
+ // logged « already running » without a pid and returned, and any other listen error was
133
+ // only logged. The process never ended: `gina start` exited 0 with a half-started daemon
134
+ // holding the MQ port, or hung (EACCES). inc/listen-error.js now decides: « already
135
+ // running » only for a recorded pid that is alive and a framework daemon (titled
136
+ // gina-v<version>, or on Bun still running bin/cli start); otherwise the reason on
137
+ // stderr and exit 1, which frees the MQ port (bin/cli's exit handler).
138
+ // procs.json is machine-written JSON; it is parsed here rather than with requireJSON(),
139
+ // which exits the process on a file it cannot read or parse.
140
+ var procsFile = _(getEnvVar('GINA_HOMEDIR') +'/procs.json', true);// jshint ignore:line
141
+ var procs = null;
142
+ try {
143
+ procs = JSON.parse(fs.readFileSync(procsFile, 'utf8'));
144
+ } catch (procsErr) {
145
+ procs = null;
146
+ }
147
+ var decision = require(local.frameworkPath + '/lib/cmd/framework/inc/listen-error').decide(err, {
148
+ command : process.argv[2],
149
+ port : err.port || local.port,
150
+ procsFile : procsFile,
151
+ procs : procs
152
+ });
153
+ if (decision.action === 'already-running') {
154
+ console.warn('Framework already running on port `'+ decision.port +'`: [ '+ decision.pid +' ]');
155
+ return;
149
156
  }
157
+ fs.writeSync(2, decision.message + '\n');
158
+ process.exit(1);
150
159
  });
151
160
 
152
161
  // The command socket is a local control plane: a connection to it
package/bin/gina CHANGED
@@ -98,14 +98,12 @@ function runAsSubProcess() {
98
98
 
99
99
  // If framework is already running
100
100
  if ( new RegExp('Framework already running','gmi').test(data) ) {
101
- pid = ''+data.match(/\[\s+\d+\s+\]/);
102
- if (pid && pid.length > 0) {
103
- if (Array.isArray(pid) ) {
104
- pid = pid[0].replace(/\[|\]|\s+/g, '');
105
- } else {
106
- pid = pid.replace(/\[|\]|\s+/g, '');
107
- }
108
-
101
+ // #B761 — was: `pid = ''+data.match(/\[\s+\d+\s+\]/)`: a line without a pid made the
102
+ // string « null », so it printed « …with PID `null` » and the branch without a pid was
103
+ // unreachable (the Array.isArray branch was dead: the value was always a string).
104
+ var pidMatch = data.match(/\[\s+(\d+)\s+\]/);
105
+ if (pidMatch) {
106
+ pid = pidMatch[1];
109
107
  console.info('Gina server is already running with PID `'+ pid +'`');
110
108
  } else {
111
109
  console.info('Gina server is already running');
@@ -127,7 +125,14 @@ function runAsSubProcess() {
127
125
  if (/ExperimentalWarning/.test(error)) {
128
126
  return;
129
127
  }
130
- if (/Debugger listening|Debugger attached|Warning|address already in use/i.test(error)) {
128
+ // #B760 — `Warning` was in this pattern too, matched case-insensitively, so a benign
129
+ // notice before the ready line (a deprecation, a MaxListeners warning, or Node's
130
+ // « (Use `node --trace-warnings …` » line) made the wrapper exit 1 at once, and the daemon
131
+ // child, its pipes gone, then died on its next write (EPIPE): the start was aborted. A
132
+ // warning is now printed below like any other stderr output, and the start ends on the
133
+ // ready line or on the child's exit (#B759).
134
+ // was: if (/Debugger listening|Debugger attached|Warning|address already in use/i.test(error)) {
135
+ if (/Debugger listening|Debugger attached|address already in use/i.test(error)) {
131
136
  console.warn(error);
132
137
  return process.exit(1);
133
138
  }
@@ -135,16 +140,51 @@ function runAsSubProcess() {
135
140
  });
136
141
 
137
142
 
138
- child.on('exit', function(code, signal) {
139
- // handles only signals that cannot be caught or ignored
140
- // ref.: `framework/<version>/lib/proc.js`
141
- if (/(SIGKILL|SIGSTOP)/i.test(signal)) {
142
- console.emerg('[' + this.pid + '] exiting with signal: ', signal);
143
- return;
143
+ // #B759 — the child ended before the ready or already-running line (both exit above).
144
+ // The old `exit` handler only logged SIGKILL/SIGSTOP, through a `console.emerg` that does
145
+ // not exist on this global console (it threw), so otherwise the wrapper's event loop ran dry
146
+ // and `gina start` exited 0 on a refused or failed start. `close` fires once the child's
147
+ // stdout and stderr are drained, so everything it printed (the #B584 refusal, a stack) is
148
+ // relayed first; `process.exitCode` lets the wrapper's own pending writes flush.
149
+ child.on('close', function(code, signal) {
150
+ if (signal) {
151
+ fs.writeSync(2, 'gina: the framework was stopped by ' + signal + ' before it was ready.\n');
152
+ } else if (code === 0) {
153
+ fs.writeSync(2, 'gina: the framework exited before it was ready (exit code 0).\n');
144
154
  }
155
+ process.exitCode = exitCodeBeforeReady(code, signal);
145
156
  });
146
157
  }
147
158
 
159
+ /**
160
+ * #B759 — the exit code `gina start` returns when the daemon child ends before it reported
161
+ * « Framework ready for connections » or « Framework already running » (both exit 0 on their
162
+ * own, so they never get here).
163
+ *
164
+ * @inner
165
+ * @private
166
+ * @param {?number} code - The child's exit code; null when a signal ended it
167
+ * @param {?string} signal - The signal that ended the child; null when it exited
168
+ * @returns {number} The child's code when it is not 0; 128 + the signal number when a signal
169
+ * ended it (137 for SIGKILL), or 1 for a signal with no known number; 1 when the child
170
+ * exited 0 without reporting ready
171
+ *
172
+ * @example
173
+ * exitCodeBeforeReady(3, null); // 3
174
+ * exitCodeBeforeReady(null, 'SIGKILL'); // 137
175
+ * exitCodeBeforeReady(0, null); // 1
176
+ */
177
+ function exitCodeBeforeReady(code, signal) {
178
+ if (typeof code === 'number' && code !== 0) {
179
+ return code;
180
+ }
181
+ if (signal) {
182
+ var signo = require('os').constants.signals[signal];
183
+ return (typeof signo === 'number') ? 128 + signo : 1;
184
+ }
185
+ return 1;
186
+ }
187
+
148
188
  /**
149
189
  * Will spawn gina CLI with its arguments
150
190
  * This is done to allow gina to run in background
@@ -0,0 +1 @@
1
+ 0.7.4-alpha.1
@@ -16116,9 +16116,17 @@ function ValidatorPlugin(rules, data, formId, culture) {
16116
16116
  * send
16117
16117
  * N.B.: no validation here; if you want to validate against rules, use `.submit()` or `.validateFormById(formId)` before
16118
16118
  *
16119
+ * Reads nothing from the event being dispatched when it runs (#B758): with no `data` it
16120
+ * sends an empty body, and a staged upload's group comes from the file input its virtual
16121
+ * upload form stages for (`data-gina-form-upload-group`, `untagged` when unset).
16119
16122
  *
16120
- * @param {object} data - FormData object (https://developer.mozilla.org/en-US/docs/Web/API/FormData/Using_FormData_Objects)
16123
+ * @param {object|FormData} [data] - the payload: a plain object (sent as JSON) or a FormData object (https://developer.mozilla.org/en-US/docs/Web/API/FormData/Using_FormData_Objects); omitted, an empty body is sent
16121
16124
  * @param {object} [ options ] : { isSynchrone: false, withCredentials: true, withRateLimit: true }
16125
+ * @returns {void}
16126
+ *
16127
+ * @example
16128
+ * // after your own validation, post the form's data over AJAX
16129
+ * gina.validator.$forms['signup'].send(result.toData());
16122
16130
  * */
16123
16131
  var send = function(data, options) {
16124
16132
 
@@ -17413,8 +17421,12 @@ function ValidatorPlugin(rules, data, formId, culture) {
17413
17421
 
17414
17422
 
17415
17423
  // sending
17416
- if (!data)
17417
- data = event.detail.data;
17424
+ // #B758 — a no-data send() no longer reads `event.detail.data` from the implicit
17425
+ // global `event`: outside a dispatch it is undefined, so the call threw here, after
17426
+ // `isSending` was claimed above, and left the form in sending. A no-data call now
17427
+ // takes the empty-body branch below; nothing in gina calls send() without data.
17428
+ // was: if (!data)
17429
+ // was: data = event.detail.data;
17418
17430
 
17419
17431
  if (data) {
17420
17432
 
@@ -17430,7 +17442,17 @@ function ValidatorPlugin(rules, data, formId, culture) {
17430
17442
  if ( !(data instanceof FormData) ) {
17431
17443
  data = JSON.stringify(data)
17432
17444
  } else {
17433
- var uploadGroup = event.currentTarget.getAttribute('data-gina-form-upload-group') || 'untagged';
17445
+ // #B758 — the group comes from the file input this virtual upload form
17446
+ // stages for (`uploadProperties.uploadTriggerId`), not from the implicit
17447
+ // global `event`: the picker and the dropzone call send() inside that
17448
+ // input's change dispatch, but a direct `$forms[<virtual id>].send(formData)`
17449
+ // ran outside any dispatch (a TypeError, reported as a staging error) or
17450
+ // inside an unrelated one (that event's element's group, silently).
17451
+ // was: var uploadGroup = event.currentTarget.getAttribute('data-gina-form-upload-group') || 'untagged';
17452
+ var $uploadGroupInput = ( $target.uploadProperties && $target.uploadProperties.uploadTriggerId )
17453
+ ? document.getElementById($target.uploadProperties.uploadTriggerId)
17454
+ : null;
17455
+ var uploadGroup = ( $uploadGroupInput && $uploadGroupInput.getAttribute('data-gina-form-upload-group') ) || 'untagged';
17434
17456
  for (var [key, value] of data.entries() ) {
17435
17457
  // file upload case
17436
17458
  if (value instanceof File) {
@@ -30556,6 +30578,11 @@ define('gina/nav', [ 'require', 'lib/merge', 'lib/uuid', 'utils/events', 'utils/
30556
30578
  * would have unloaded it, and after a fragment swap it would sit over
30557
30579
  * content it no longer belongs to.
30558
30580
  *
30581
+ * `applyFragment()` calls it BEFORE it moves focus and scroll (#B762):
30582
+ * closing a popin returns focus to the popin's trigger, which scrolls
30583
+ * the page to it, and while a popin is open the page outside it is
30584
+ * inert, so the region cannot take focus until the popin is closed.
30585
+ *
30559
30586
  * @inner
30560
30587
  * @private
30561
30588
  */
@@ -30590,9 +30617,11 @@ define('gina/nav', [ 'require', 'lib/merge', 'lib/uuid', 'utils/events', 'utils/
30590
30617
  /**
30591
30618
  * Applies a fetched fragment: swaps the region content, applies the
30592
30619
  * optional `[data-gina-nav-title]` document title, pushes/updates
30593
- * history, restores scroll and focus, closes any open popin, binds the
30594
- * new region (scripts, opted-in forms, links — the shared `bindRegion()`
30595
- * policy) and fires `success`.
30620
+ * history, closes any open popin, moves focus to the region and applies
30621
+ * the scroll decision, binds the new region (scripts, opted-in forms,
30622
+ * links — the shared `bindRegion()` policy) and fires `success`. The
30623
+ * popin closes before the focus and scroll (#B762), so the region keeps
30624
+ * the focus and the navigation's scroll position stands.
30596
30625
  *
30597
30626
  * @inner
30598
30627
  * @private
@@ -30625,6 +30654,13 @@ define('gina/nav', [ 'require', 'lib/merge', 'lib/uuid', 'utils/events', 'utils/
30625
30654
  }
30626
30655
  _currentUrl = window.location.pathname + window.location.search;
30627
30656
 
30657
+ // #B762 — close the active popin BEFORE the focus and scroll below.
30658
+ // The close returns focus to the popin's trigger (scrolling the page
30659
+ // to it), and while a popin is open the page outside it is inert, so
30660
+ // the region's focus() did nothing: closed after them, the popin left
30661
+ // focus on its trigger and the page scrolled back down to it.
30662
+ closeActivePopin();
30663
+
30628
30664
  // Focus first (preventScroll where supported), then the explicit
30629
30665
  // scroll decision wins: restored position on popstate, `#hash`
30630
30666
  // target or top on a forward navigation.
@@ -30649,7 +30685,7 @@ define('gina/nav', [ 'require', 'lib/merge', 'lib/uuid', 'utils/events', 'utils/
30649
30685
  }
30650
30686
  }
30651
30687
 
30652
- closeActivePopin();
30688
+ // was: closeActivePopin(); — here, after the focus and scroll (#B762)
30653
30689
  // #gh76 — the one region-binding policy nav shares with the validator's
30654
30690
  // form-answer swaps (utils/dom). Forms follow the #B549 opt-in gate here
30655
30691
  // too: a bare id-bearing form in a fragment used to be bound — and its