gina 0.7.0 → 0.7.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.
- package/CHANGELOG.md +39 -0
- package/README.md +45 -61
- package/ROADMAP.md +3 -2
- package/bin/cli +5 -2
- package/bin/gina +10 -25
- package/framework/v0.7.1/VERSION +1 -0
- package/framework/{v0.7.0 → v0.7.1}/core/asset/plugin/dist/vendor/gina/inspector/inspector.js +21 -8
- package/framework/{v0.7.0 → v0.7.1}/core/asset/plugin/dist/vendor/gina/js/gina.js +8 -11
- package/framework/{v0.7.0 → v0.7.1}/core/asset/plugin/dist/vendor/gina/js/gina.min.js +160 -160
- package/framework/v0.7.1/core/asset/plugin/dist/vendor/gina/js/gina.min.js.br +0 -0
- package/framework/v0.7.1/core/asset/plugin/dist/vendor/gina/js/gina.min.js.gz +0 -0
- package/framework/{v0.7.0 → v0.7.1}/core/config.js +10 -1
- package/framework/{v0.7.0 → v0.7.1}/core/controller/controller.js +67 -15
- package/framework/{v0.7.0 → v0.7.1}/core/router.js +68 -8
- package/framework/{v0.7.0 → v0.7.1}/core/server.isaac.js +183 -45
- package/framework/{v0.7.0 → v0.7.1}/core/server.js +173 -55
- package/framework/{v0.7.0 → v0.7.1}/helpers/context.js +93 -32
- package/framework/{v0.7.0 → v0.7.1}/helpers/path.js +61 -43
- package/framework/{v0.7.0 → v0.7.1}/helpers/task.js +47 -35
- package/framework/v0.7.1/lib/admin/src/main.js +451 -0
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/add.js +24 -0
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/copy.js +14 -0
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/help.txt +11 -0
- package/framework/v0.7.1/lib/cmd/bundle/inc/boot-lines.js +263 -0
- package/framework/v0.7.1/lib/cmd/bundle/inc/name.js +70 -0
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/remove.js +8 -2
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/rename.js +14 -0
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/start.js +47 -12
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/stop.js +64 -8
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/env/remove.js +7 -2
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/add.js +37 -2
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/build.js +20 -5
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/dot.js +10 -4
- package/framework/v0.7.1/lib/cmd/framework/inc/ps-titles.js +113 -0
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/init.js +7 -2
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/link.js +10 -2
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/open.js +30 -6
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/restart.js +24 -69
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/start.js +6 -24
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/status.js +44 -25
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/tail.js +1 -1
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/helper.js +56 -13
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/inspector/help.txt +2 -1
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/inspector/open.js +93 -30
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/minion/kill.js +52 -25
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/port/list.js +15 -6
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/port/reset.js +11 -2
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/project/add.js +50 -1
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/project/help.txt +8 -8
- package/framework/v0.7.1/lib/cmd/project/inc/name.js +71 -0
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/project/remove.js +5 -1
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/project/rename.js +12 -0
- package/framework/v0.7.1/lib/cmd/project/restart.js +126 -0
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/project/restore.js +19 -0
- package/framework/v0.7.1/lib/cmd/project/start.js +125 -0
- package/framework/v0.7.1/lib/cmd/project/stop.js +98 -0
- package/framework/{v0.7.0 → v0.7.1}/lib/cmd/protocol/set.js +7 -2
- package/framework/{v0.7.0 → v0.7.1}/lib/inherits/src/main.js +8 -11
- package/framework/{v0.7.0 → v0.7.1}/lib/maintenance/src/main.js +3 -2
- package/framework/{v0.7.0 → v0.7.1}/lib/metrics/src/main.js +30 -6
- package/framework/{v0.7.0 → v0.7.1}/lib/shell.js +58 -25
- package/framework/{v0.7.0 → v0.7.1}/package.json +1 -1
- package/gna.js +4 -4
- package/llms.txt +13 -13
- package/package.json +4 -4
- package/schema/app.json +3 -3
- package/script/post_install.js +20 -2
- package/script/pre_install.js +31 -6
- package/utils/helper.js +21 -9
- package/framework/v0.7.0/VERSION +0 -1
- package/framework/v0.7.0/core/asset/plugin/dist/vendor/gina/js/gina.min.js.br +0 -0
- package/framework/v0.7.0/core/asset/plugin/dist/vendor/gina/js/gina.min.js.gz +0 -0
- package/framework/v0.7.0/lib/admin/src/main.js +0 -217
- package/framework/v0.7.0/lib/cmd/project/restart.js +0 -85
- package/framework/v0.7.0/lib/cmd/project/start.js +0 -85
- package/framework/v0.7.0/lib/cmd/project/stop.js +0 -66
- /package/framework/{v0.7.0 → v0.7.1}/AUTHORS +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/LICENSE +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/html/nolayout.html +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/html/static.html +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/img/android-chrome-192x192.png +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/img/android-chrome-512x512.png +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/img/apple-touch-icon.png +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/img/favicon-16x16.png +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/img/favicon-32x32.png +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/img/favicon.ico +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/plugin/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/plugin/dist/vendor/gina/beemaster/beemaster.css +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/plugin/dist/vendor/gina/beemaster/beemaster.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/plugin/dist/vendor/gina/beemaster/index.html +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/plugin/dist/vendor/gina/css/gina.min.css +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/plugin/dist/vendor/gina/css/gina.min.css.br +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/plugin/dist/vendor/gina/css/gina.min.css.gz +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/plugin/dist/vendor/gina/html/statusbar.html +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/plugin/dist/vendor/gina/html/statusbar.html.br +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/plugin/dist/vendor/gina/html/statusbar.html.gz +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/plugin/dist/vendor/gina/inspector/have_heart_one-webfont.woff2 +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/plugin/dist/vendor/gina/inspector/index.html +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/plugin/dist/vendor/gina/inspector/inspector.css +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/plugin/dist/vendor/gina/inspector/logo.svg +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.br +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.gz +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/config.requirements-anchor.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/ai/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/ai/lib/connector.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/couchbase/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/couchbase/lib/connector.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/couchbase/lib/connector.v3.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/couchbase/lib/connector.v4.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/couchbase/lib/n1ql.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/couchbase/lib/session-store.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/couchbase/lib/session-store.v3.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/couchbase/lib/session-store.v4.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/couchbase/lib/storage-store.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/duckdb/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/duckdb/lib/connector.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/mongodb/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/mongodb/lib/connector.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/mongodb/lib/job-store.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/mongodb/lib/pipeline-loader.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/mongodb/lib/session-store.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/mysql/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/mysql/lib/connector.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/param-redact.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/postgresql/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/postgresql/lib/connector.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/redis/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/redis/lib/connector.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/redis/lib/job-store.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/redis/lib/kv-store.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/redis/lib/render-cache-store.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/redis/lib/session-store.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/scylladb/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/scylladb/lib/connector.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/scylladb/lib/session-store.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/settle-once.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/sql-parser.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/sqlite/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/sqlite/lib/connector.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/sqlite/lib/job-store.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/sqlite/lib/kv-store.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/connectors/sqlite/lib/session-store.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/content.encoding +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/controller/controller.framework.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/controller/controller.render-json.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/controller/controller.render-nunjucks-async.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/controller/controller.render-nunjucks.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/controller/controller.render-stream.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/controller/controller.render-swig-async.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/controller/controller.render-swig.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/controller/controller.render-v1.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/controller/controller.render-xml.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/controller/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/controller/inline-script.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/controller/inspector-window-emit.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/controller/release-banner.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/dev/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/dev/lib/class.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/dev/lib/factory.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/dev/lib/tools.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/gna.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/locales/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/locales/currency.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/locales/dist/language/en.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/locales/dist/language/fr.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/locales/dist/region/en.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/locales/dist/region/fr.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/locales/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/mime.types +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/model/entity.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/model/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/model/template/entityFactory.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/model/template/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/csrf/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/csrf/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/csrf/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/coep/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/coep/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/coep/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/coop/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/coop/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/coop/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/corp/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/corp/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/corp/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/csp/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/csp/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/csp/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/hide-powered-by/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/hide-powered-by/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/hide-powered-by/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/hsts/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/hsts/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/hsts/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/origin-agent-cluster/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/origin-agent-cluster/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/origin-agent-cluster/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/referrer-policy/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/referrer-policy/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/referrer-policy/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/x-content-type-options/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/x-content-type-options/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/x-content-type-options/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/x-dns-prefetch-control/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/x-dns-prefetch-control/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/x-dns-prefetch-control/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/x-download-options/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/x-download-options/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/x-download-options/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/x-frame-options/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/x-frame-options/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/x-frame-options/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/x-xss-protection/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/x-xss-protection/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/security-headers/x-xss-protection/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/session/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/session/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/session/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/storage/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/storage/build.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/storage/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/storage/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/validator/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/validator/build.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/validator/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/validator/src/form-validator.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/plugins/lib/validator/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/server.express.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/server.isaac.rapid-reset.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/server.route-candidates.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/status.codes +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/_gitignore +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle/config/app.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle/config/connectors.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle/config/routing.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle/config/settings.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle/config/settings.server.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle/config/templates.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle/config/watchers.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle/controllers/controller.content.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle/controllers/setup.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle/locales/en.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle_public/css/default.css +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle_public/css/home.css +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle_public/js/components/x-checklist.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle_public/manifest.webmanifest +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle_public/readme.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle_public/sw.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle_templates/html/content/homepage.html +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle_templates/html/includes/error-msg-noscript.html +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle_templates/html/includes/error-msg-outdated-browser.html +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle_templates/html/includes/x-checklist.html +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/boilerplate/bundle_templates/html/layouts/main.html +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/command/gina.bat.tpl +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/command/gina.tpl +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/conf/env.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/conf/manifest.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/conf/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/conf/settings.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/conf/statics.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/conf/templates.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/error/client/json/401.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/error/client/json/403.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/error/client/json/404.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/error/server/html/50x.html +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/error/server/json/500.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/error/server/json/503.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/core/template/extensions/logger/config.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/helpers/console.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/helpers/data/LICENSE +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/helpers/data/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/helpers/data/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/helpers/data/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/helpers/dateFormat.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/helpers/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/helpers/json/LICENSE +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/helpers/json/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/helpers/json/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/helpers/json/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/helpers/plugins/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/helpers/plugins/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/helpers/plugins/src/api-error.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/helpers/plugins/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/helpers/prototypes.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/helpers/text.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/admin/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/archiver/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/archiver/build.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/archiver/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/archiver/src/dep/jszip.min.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/archiver/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/async/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/async/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/audit/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/audit/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/audit-store.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/authn/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/authn/src/lockout.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/authn/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/authn/src/totp.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/authz-gate/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/authz-gate/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cache/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cache/build.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cache/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cache/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/aliases.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/audit/arguments.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/audit/help.txt +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/audit/verify.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/arguments.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/build.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/cp.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/help.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/inc/name-rewrite.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/list.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/man.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/mcp-start.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/mcp.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/oas.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/openapi.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/restart.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/rm.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/status.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/bundle/types.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/cache/arguments.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/cache/clear.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/cache/help.txt +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/cache/stats.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/connector/add.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/connector/arguments.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/connector/help.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/connector/help.txt +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/connector/infer.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/connector/list.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/connector/migrate.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/connector/models.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/connector/remove.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/connector/rm.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/connector/test.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/container/arguments.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/container/help.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/container/help.txt +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/container/man.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/container/ps.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/container/stop.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/controller/add.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/controller/arguments.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/controller/help.txt +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/controller/inc/args.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/controller/inc/namespace.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/controller/inc/reference-rewrite.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/controller/inc/reference-scan.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/controller/inc/scaffold.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/controller/remove.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/controller/rename.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/controller/rm.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/env/add.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/env/get.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/env/help.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/env/help.txt +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/env/inc/name.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/env/link-dev.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/env/list.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/env/rm.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/env/set.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/env/unset.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/env/use.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/arguments.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/get.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/help.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/help.txt +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/link-node-modules.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/list.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/man.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/msg.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/remove.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/reset.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/set.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/stop.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/update.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/framework/version.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/gina-dev.1.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/gina-framework.1.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/gina.1.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/i18n/add.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/i18n/arguments.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/i18n/export.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/i18n/help.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/i18n/help.txt +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/i18n/import.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/i18n/scan.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/image/_host.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/image/arguments.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/image/build.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/image/help.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/image/help.txt +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/image/list.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/image/man.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/image/rm.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/image/run.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/inspector/help.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/man-render.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/minion/arguments.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/minion/help.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/minion/help.txt +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/minion/list.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/msg.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/port/help.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/port/help.txt +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/port/inc/scan.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/port/set.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/project/arguments.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/project/backup.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/project/build.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/project/help.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/project/import.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/project/list.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/project/man.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/project/move.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/project/rm.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/project/status.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/protocol/arguments.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/protocol/help.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/protocol/help.txt +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/protocol/list.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/protocol/remove.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/scope/add.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/scope/help.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/scope/help.txt +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/scope/inc/name.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/scope/link-local.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/scope/link-production.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/scope/list.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/scope/remove.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/scope/rm.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/scope/use.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/secrets/arguments.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/secrets/check.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/secrets/help.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/secrets/help.txt +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/secrets/scan.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/service/help.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/service/help.txt +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/service/list.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/service/man.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/service/start.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/storage/arguments.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/storage/gc.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/storage/help.txt +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/storage/stats.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/storage/verify.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd/view/add.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd-status-format/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cmd-status-format/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/collection/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/collection/build.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/collection/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/collection/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/conf-view/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/conf-view/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/config.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/connector-config/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/connector-config/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/connector-error/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/connector-error/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/connector-registry/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/connector-registry/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cron/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cron/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/cron/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/domain/LICENSE +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/domain/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/domain/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/domain/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/dto/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/dto/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/dto-pipe/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/dto-pipe/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/dto-types/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/dto-types/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/duration/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/duration/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/generator/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/i18n/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/i18n/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/idempotency/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/idempotency/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/image-build/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/image-build/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/inherits/LICENSE +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/inherits/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/inherits/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/inspector-events/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/inspector-events/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/inspector-redact/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/inspector-redact/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/instrument/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/instrument/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/job/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/job/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/job-store.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/json-config-header/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/json-config-header/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/kv/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/kv/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/kv-store.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/loading-state/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/loading-state/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/logger/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/logger/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/logger/src/containers/default/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/logger/src/containers/file/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/logger/src/containers/mq/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/logger/src/containers/mq/listener.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/logger/src/containers/mq/speaker.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/logger/src/helper.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/logger/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/logger/src/redact.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/maintenance/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/math/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/mcp-dispatch/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/mcp-dispatch/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/mcp-http/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/mcp-http/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/mcp-server/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/mcp-server/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/merge/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/merge/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/merge/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/message-validator/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/message-validator/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/metrics/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/model.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/money/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/money/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/multipart/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/multipart/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/net-locality/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/net-locality/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/nunjucks-filters/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/nunjucks-filters/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/nunjucks-filters/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/nunjucks-resolver/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/nunjucks-resolver/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/priority/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/priority/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/proc.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/push/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/push/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/rate-limit/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/rate-limit/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/release-watch/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/release-watch/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/render-cache/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/render-cache/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/render-cache-store.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/routing/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/routing/build.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/routing/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/routing/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/routing-introspect/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/routing-introspect/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/secrets/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/secrets/src/backends/env.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/secrets/src/backends/exec.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/secrets/src/backends/file.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/secrets/src/declaration.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/secrets/src/env-file.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/secrets/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/secrets/src/sources.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/security-headers-emitter/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/security-headers-emitter/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/session-lifetime/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/session-lifetime/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/session-store.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/sqlite-driver.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/sri/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/sri/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/state.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/storage/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/storage/src/local-cas.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/storage/src/local-stream.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/storage/src/local.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/storage/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/storage/src/meta-store.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/storage/src/s3.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/storage/src/util.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/storage-store.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/swig-filters/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/swig-filters/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/swig-filters/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/swig-resolver/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/swig-resolver/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/template-loaders/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/template-loaders/src/loaders/http.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/template-loaders/src/loaders/memory.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/template-loaders/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/url/README.md +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/url/index.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/url/routing.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/uuid/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/uuid/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/validator.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/watcher/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/watcher/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/ws-framing/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/ws-framing/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/ws-query/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/ws-query/src/main.js +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/ws-session/package.json +0 -0
- /package/framework/{v0.7.0 → v0.7.1}/lib/ws-session/src/main.js +0 -0
|
@@ -3,6 +3,9 @@ var fs = require('fs');
|
|
|
3
3
|
var CmdHelper = require('./../helper');
|
|
4
4
|
var console = lib.logger;
|
|
5
5
|
var Collection = lib.Collection;
|
|
6
|
+
// #B665 — every name below is matched literally: a `.` matched any character, and a `+`
|
|
7
|
+
// or `(` in a registered name broke the listing or threw.
|
|
8
|
+
var escapeRegex = require('./../bundle/inc/name-rewrite').escapeRegex;
|
|
6
9
|
|
|
7
10
|
/**
|
|
8
11
|
* @module gina/lib/cmd/port/list
|
|
@@ -278,7 +281,8 @@ function List(opt, cmd) {
|
|
|
278
281
|
let protocols = project.protocols;
|
|
279
282
|
let schemes = project.schemes;
|
|
280
283
|
|
|
281
|
-
re = new RegExp('\@' + projectName + '\/', '');// searching by projectName
|
|
284
|
+
// was: re = new RegExp('\@' + projectName + '\/', '');// searching by projectName
|
|
285
|
+
re = new RegExp('@' + escapeRegex(projectName) + '/', '');// searching by projectName
|
|
282
286
|
str += '------------------------------------\n\r';
|
|
283
287
|
if (!project.exists || project.exists && protocols.length == 0) {
|
|
284
288
|
str += '?! '
|
|
@@ -315,7 +319,8 @@ function List(opt, cmd) {
|
|
|
315
319
|
continue;
|
|
316
320
|
}
|
|
317
321
|
|
|
318
|
-
let re2 = new RegExp(_bundle +'\@' + projectName + '\/'+ _env, '');// searching by projectName
|
|
322
|
+
// was: let re2 = new RegExp(_bundle +'\@' + projectName + '\/'+ _env, '');// searching by projectName
|
|
323
|
+
let re2 = new RegExp(escapeRegex(_bundle +'@' + projectName + '/'+ _env), '');// searching by projectName
|
|
319
324
|
// if (re.test(self.portsData[protocol][scheme][port]) ) {
|
|
320
325
|
if (re2.test(self.portsData[protocol][scheme][port])) {
|
|
321
326
|
found = true;
|
|
@@ -391,7 +396,8 @@ function List(opt, cmd) {
|
|
|
391
396
|
continue;
|
|
392
397
|
}
|
|
393
398
|
str += ' [ ' + scheme + ' ]\n\r';
|
|
394
|
-
re = new RegExp('\@' + self.projectName + '\/', '');// searching by projectName
|
|
399
|
+
// was: re = new RegExp('\@' + self.projectName + '\/', '');// searching by projectName
|
|
400
|
+
re = new RegExp('@' + escapeRegex(self.projectName) + '/', '');// searching by projectName
|
|
395
401
|
for (let port in self.portsData[protocol][scheme]) {
|
|
396
402
|
let bundleEnv = self.portsData[protocol][scheme][port].replace(re, ':').split(/\:/);
|
|
397
403
|
let _bundle = bundleEnv[0];
|
|
@@ -400,7 +406,8 @@ function List(opt, cmd) {
|
|
|
400
406
|
continue;
|
|
401
407
|
}
|
|
402
408
|
|
|
403
|
-
let re2 = new RegExp(_bundle +'\@' + self.projectName + '\/'+ _env, '');// searching by projectName
|
|
409
|
+
// was: let re2 = new RegExp(_bundle +'\@' + self.projectName + '\/'+ _env, '');// searching by projectName
|
|
410
|
+
let re2 = new RegExp(escapeRegex(_bundle +'@' + self.projectName + '/'+ _env), '');// searching by projectName
|
|
404
411
|
if (re2.test(self.portsData[protocol][scheme][port])) {
|
|
405
412
|
|
|
406
413
|
str += '\n\r - ' + port + ' ' + self.portsData[protocol][scheme][port].replace(re, ' (') + ')';
|
|
@@ -460,14 +467,16 @@ function List(opt, cmd) {
|
|
|
460
467
|
let bundle = self.name;
|
|
461
468
|
found = false;
|
|
462
469
|
// re = new RegExp('^' + bundle + '\@', '');// searching by bundle name
|
|
463
|
-
re = new RegExp('^' + bundle + '\@' + self.projectName + '\/', '');// searching by projectName
|
|
470
|
+
// was: re = new RegExp('^' + bundle + '\@' + self.projectName + '\/', '');// searching by projectName
|
|
471
|
+
re = new RegExp('^' + escapeRegex(bundle + '@' + self.projectName + '/'), '');// searching by projectName
|
|
464
472
|
for (let port in self.portsData[protocol][scheme]) {
|
|
465
473
|
|
|
466
474
|
let bundleEnv = self.portsData[protocol][scheme][port].replace(re, '\:').split(/\:/);
|
|
467
475
|
let _bundle = bundleEnv[0] || bundle;
|
|
468
476
|
let _env = bundleEnv[1];
|
|
469
477
|
|
|
470
|
-
let re2 = new RegExp(_bundle +'\@' + self.projectName + '\/'+ _env, '');// searching by <bundle>@<projectName>
|
|
478
|
+
// was: let re2 = new RegExp(_bundle +'\@' + self.projectName + '\/'+ _env, '');// searching by <bundle>@<projectName>
|
|
479
|
+
let re2 = new RegExp(escapeRegex(_bundle +'@' + self.projectName + '/'+ _env), '');// searching by <bundle>@<projectName>
|
|
471
480
|
if (re2.test(self.portsData[protocol][scheme][port])) {
|
|
472
481
|
str += ' ' +scheme+ ' ' + port + ' ' + bundle + ' ' + self.portsData[protocol][scheme][port].replace(re, '').replace(/[-_a-z 0-9]+\//i, '(') + ')';
|
|
473
482
|
found = true;
|
|
@@ -5,6 +5,7 @@ const fs = require('fs');
|
|
|
5
5
|
var console = lib.logger;
|
|
6
6
|
var CmdHelper = require('./../helper');
|
|
7
7
|
var scan = require('../port/inc/scan');
|
|
8
|
+
var escapeRegex = require('./../bundle/inc/name-rewrite').escapeRegex;
|
|
8
9
|
const { setFips } = require('crypto');
|
|
9
10
|
|
|
10
11
|
/**
|
|
@@ -131,7 +132,11 @@ function Reset(opt, cmd) {
|
|
|
131
132
|
for (let protocol in ports) {
|
|
132
133
|
for (let scheme in ports[protocol]) {
|
|
133
134
|
for (let p in ports[protocol][scheme]) {
|
|
134
|
-
|
|
135
|
+
// #B665 — the names are matched literally, and the project must end at
|
|
136
|
+
// the `/` that follows it: `^api@shop` matched `api@shopping/dev`, whose
|
|
137
|
+
// ports went with this bundle's.
|
|
138
|
+
// was: let re = new RegExp('^'+ bundle +'@'+ project);
|
|
139
|
+
let re = new RegExp('^' + escapeRegex(bundle +'@'+ project +'/'));
|
|
135
140
|
if ( re.test( ports[protocol][scheme][p]) ) {
|
|
136
141
|
delete self.portsData[protocol][scheme][p]
|
|
137
142
|
}
|
|
@@ -321,7 +326,11 @@ function Reset(opt, cmd) {
|
|
|
321
326
|
|
|
322
327
|
// ports
|
|
323
328
|
portValue = local.bundle +'@'+ self.projectName +'/'+ envs[e];
|
|
324
|
-
|
|
329
|
+
// #B665 — matched as one whole JSON string of the registry text:
|
|
330
|
+
// unescaped and unanchored, `api@shop/dev` was found inside
|
|
331
|
+
// `"myapi@shop/devel"`, so its assignment was skipped as existing.
|
|
332
|
+
// was: re = new RegExp(portValue);
|
|
333
|
+
re = new RegExp(escapeRegex(JSON.stringify(portValue)));
|
|
325
334
|
|
|
326
335
|
|
|
327
336
|
if ( !re.test(portsListStr) ) {
|
|
@@ -11,6 +11,8 @@ var console = lib.logger;
|
|
|
11
11
|
var scan = require('../port/inc/scan');
|
|
12
12
|
var scopeName = require('../scope/inc/name');
|
|
13
13
|
var envName = require('../env/inc/name');
|
|
14
|
+
var projectNameRule = require('./inc/name');
|
|
15
|
+
var escapeRegex = require('./../bundle/inc/name-rewrite').escapeRegex;
|
|
14
16
|
|
|
15
17
|
/**
|
|
16
18
|
* @module gina/lib/cmd/project/add
|
|
@@ -67,6 +69,31 @@ function Add(opt, cmd) {
|
|
|
67
69
|
return ( typeof(arg) == 'string' && arg.indexOf(prefix) === 0 ) ? arg.substring(prefix.length) : null;
|
|
68
70
|
}
|
|
69
71
|
|
|
72
|
+
/**
|
|
73
|
+
* Whether `name` is already registered in the framework's `projects.json`, as an own
|
|
74
|
+
* key: a name every object inherits (`constructor`) is never a registration. `init()`
|
|
75
|
+
* reads the registry itself because the CLI bootstrap (`isCmdConfigured()`) loads it
|
|
76
|
+
* only later. A missing or unreadable registry counts as no registration, so the
|
|
77
|
+
* project-name rule then applies.
|
|
78
|
+
*
|
|
79
|
+
* @inner
|
|
80
|
+
* @private
|
|
81
|
+
* @param {string} name - Project name, without its `@`
|
|
82
|
+
* @returns {boolean} True when `projects.json` holds `name` as an own key
|
|
83
|
+
*
|
|
84
|
+
* @example
|
|
85
|
+
* isRegisteredProject('myproject') // → true once `gina project:add @myproject` has run
|
|
86
|
+
* isRegisteredProject('constructor') // → false: an inherited property is not a registration
|
|
87
|
+
*/
|
|
88
|
+
var isRegisteredProject = function(name) {
|
|
89
|
+
try {
|
|
90
|
+
var registry = requireJSON(_(GINA_HOMEDIR + '/projects.json', true));
|
|
91
|
+
return !!registry && Object.prototype.hasOwnProperty.call(registry, name);
|
|
92
|
+
} catch (err) {
|
|
93
|
+
return false;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
|
|
70
97
|
/**
|
|
71
98
|
* Parses argv flags, ensures the project directory exists, creates package.json,
|
|
72
99
|
* manifest.json, and env.json, optionally adding scope/env via sub-commands.
|
|
@@ -82,6 +109,10 @@ function Add(opt, cmd) {
|
|
|
82
109
|
* value that is not registered yet is registered by a `scope:add` / `env:add` child,
|
|
83
110
|
* spawned from an argument vector — never through a shell string.
|
|
84
111
|
*
|
|
112
|
+
* The project name itself gets the same treatment on `project:add` (#B665): a name
|
|
113
|
+
* not registered yet must pass the project-name rule (`inc/name.js`), or it is refused
|
|
114
|
+
* before anything is written, exit 1. A registered name, and `project:import`, skip it.
|
|
115
|
+
*
|
|
85
116
|
* @inner
|
|
86
117
|
* @private
|
|
87
118
|
*
|
|
@@ -90,6 +121,8 @@ function Add(opt, cmd) {
|
|
|
90
121
|
* // → registers `staging` and `qa` if missing, then the project
|
|
91
122
|
* // gina project:add @myproject --path=/srv/myproject --scope='x;touch y'
|
|
92
123
|
* // → '"x;touch y" is not a valid scope name: …', exit 1, nothing written
|
|
124
|
+
* // gina project:add @My.Project --path=/srv/my-project
|
|
125
|
+
* // → '"My.Project" is not a valid project name: …', exit 1, nothing written
|
|
93
126
|
*/
|
|
94
127
|
var init = function() {
|
|
95
128
|
|
|
@@ -143,6 +176,18 @@ function Add(opt, cmd) {
|
|
|
143
176
|
console.error( envName.describeInvalidEnvName(self.env) );
|
|
144
177
|
process.exit(1)
|
|
145
178
|
}
|
|
179
|
+
|
|
180
|
+
// #B665 — a NEW project name must pass the project-name rule (`inc/name.js`)
|
|
181
|
+
// before anything is written: the CLI bootstrap below checks only its first
|
|
182
|
+
// character, and creates the `--path` directory. A name already registered
|
|
183
|
+
// keeps working, so re-running `project:add` on it goes on as before.
|
|
184
|
+
if ( /^@/.test(process.argv[3]) ) {
|
|
185
|
+
let candidate = process.argv[3].substring(1);
|
|
186
|
+
if ( !isRegisteredProject(candidate) && !projectNameRule.isValidProjectName(candidate) ) {
|
|
187
|
+
console.error( projectNameRule.describeInvalidProjectName(candidate) );
|
|
188
|
+
process.exit(1)
|
|
189
|
+
}
|
|
190
|
+
}
|
|
146
191
|
}
|
|
147
192
|
|
|
148
193
|
// check CMD configuration
|
|
@@ -884,7 +929,11 @@ function Add(opt, cmd) {
|
|
|
884
929
|
|
|
885
930
|
// ports
|
|
886
931
|
portValue = local.bundle +'@'+ self.projectName +'/'+ envs[e];
|
|
887
|
-
|
|
932
|
+
// #B665 — matched as one whole JSON string of the registry text:
|
|
933
|
+
// unescaped and unanchored, `api@shop/dev` was found inside
|
|
934
|
+
// `"myapi@shop/devel"`, so its assignment was skipped as existing.
|
|
935
|
+
// was: re = new RegExp(portValue);
|
|
936
|
+
re = new RegExp(escapeRegex(JSON.stringify(portValue)));
|
|
888
937
|
|
|
889
938
|
|
|
890
939
|
if ( !re.test(portsListStr) ) {
|
|
@@ -5,10 +5,6 @@
|
|
|
5
5
|
|
|
6
6
|
[ Add a new project ]
|
|
7
7
|
|
|
8
|
-
You have 2 ways of creating your project
|
|
9
|
-
|
|
10
|
-
1st method
|
|
11
|
-
----------
|
|
12
8
|
$ gina project:add @<project_name> [ --path=/var/www/<project_name> ] (if no path given, will take the current)
|
|
13
9
|
|
|
14
10
|
where `/var/www/<project_name>` is the destination path
|
|
@@ -21,10 +17,10 @@
|
|
|
21
17
|
where `~/.<project_name>/v2` is the project homedir path
|
|
22
18
|
If you do not specifiy a `.<project_name>` for the `--homedir` argument , gina will reuse the one you used with `@<project_name>`
|
|
23
19
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
20
|
+
A project name is made of letters, digits, `_`, `.` and `-`, and starts with a
|
|
21
|
+
lowercase letter, a digit, `_` or `.`. `.`, `..` and the name of a property every
|
|
22
|
+
object inherits, such as `constructor`, are refused. A name registered before this
|
|
23
|
+
rule existed keeps working.
|
|
28
24
|
|
|
29
25
|
|
|
30
26
|
[ Import an existing project ]
|
|
@@ -83,6 +79,8 @@
|
|
|
83
79
|
|
|
84
80
|
$ gina project:rename @<project_name> @<new_project_name>
|
|
85
81
|
|
|
82
|
+
The new name follows the naming rule of `project:add`.
|
|
83
|
+
|
|
86
84
|
|
|
87
85
|
[ Move project ]
|
|
88
86
|
|
|
@@ -120,3 +118,5 @@
|
|
|
120
118
|
|
|
121
119
|
N.B.: node_modules is not in the backup — run `npm install` afterwards.
|
|
122
120
|
Pass --force to overwrite an already-registered name or a non-empty target.
|
|
121
|
+
A new name follows the naming rule of `project:add`, checked before anything
|
|
122
|
+
is extracted.
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module gina/lib/cmd/project/inc/name
|
|
3
|
+
*
|
|
4
|
+
* The rule a NEW project name must pass (#B665): `gina project:add`, the new name of
|
|
5
|
+
* `gina project:rename` and the `@<name>` of `gina project:restore` apply it before they
|
|
6
|
+
* write anything. A project name becomes a key in `projects.json`, the project home
|
|
7
|
+
* directory `~/.<name>`, part of every `<bundle>@<project>` string in `ports.json` and
|
|
8
|
+
* `ports.reverse.json`, and part of each bundle's process title. The CLI used to check
|
|
9
|
+
* only a name's first character, so it registered names holding shell and
|
|
10
|
+
* regular-expression syntax, `.` and `..` (whose home is `~/..`), and names every object
|
|
11
|
+
* inherits (`constructor`), which the registry's `typeof(projects[name]) != 'undefined'`
|
|
12
|
+
* tests take for an existing project.
|
|
13
|
+
*
|
|
14
|
+
* The rule is the scope-name rule (`lib/cmd/scope/inc/name.js`, #B626, #B639). A name
|
|
15
|
+
* registered before it existed keeps working: the commands apply it to a name that is
|
|
16
|
+
* not registered yet, and `project:import` does not apply it.
|
|
17
|
+
*
|
|
18
|
+
* No `fs`, no framework globals — require-by-path unit-testable. It lives in `inc/` so the
|
|
19
|
+
* command loader never takes it for a `project:<action>` handler.
|
|
20
|
+
*/
|
|
21
|
+
'use strict';
|
|
22
|
+
|
|
23
|
+
var scopeName = require('../../scope/inc/name');
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Whether `name` is a project name the CLI may register: letters, digits, `_`, `.` and
|
|
27
|
+
* `-`, starting with a lowercase letter, a digit, `_` or `.`; neither `.` nor `..`; and not
|
|
28
|
+
* a property every object inherits.
|
|
29
|
+
*
|
|
30
|
+
* @param {*} name - Candidate project name, without its `@`
|
|
31
|
+
* @returns {boolean} True when the scope-name rule accepts it
|
|
32
|
+
*
|
|
33
|
+
* @example
|
|
34
|
+
* isValidProjectName('myproject'); // true
|
|
35
|
+
* isValidProjectName('design-system'); // true
|
|
36
|
+
* isValidProjectName('Myproject'); // false — starts with an uppercase letter
|
|
37
|
+
* isValidProjectName('..'); // false — its home would be ~/..
|
|
38
|
+
* isValidProjectName('constructor'); // false — every object inherits it
|
|
39
|
+
*/
|
|
40
|
+
function isValidProjectName(name) {
|
|
41
|
+
return scopeName.isValidScopeName(name);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* The refusal message for a name `isValidProjectName()` rejects. A reserved name is named
|
|
46
|
+
* as such; any other name gets the character rule. The value is JSON-quoted, so
|
|
47
|
+
* whitespace and control characters stay visible.
|
|
48
|
+
*
|
|
49
|
+
* @param {*} name - The rejected name, without its `@`
|
|
50
|
+
* @returns {string} The message, naming the value
|
|
51
|
+
*
|
|
52
|
+
* @example
|
|
53
|
+
* describeInvalidProjectName('constructor');
|
|
54
|
+
* // '"constructor" is not a valid project name: it is a property every object inherits, ...'
|
|
55
|
+
* describeInvalidProjectName('a b');
|
|
56
|
+
* // '"a b" is not a valid project name: use letters, digits, ...'
|
|
57
|
+
*/
|
|
58
|
+
function describeInvalidProjectName(name) {
|
|
59
|
+
var shown = JSON.stringify(String(name));
|
|
60
|
+
if ( scopeName.isReservedName(name) ) {
|
|
61
|
+
return shown + ' is not a valid project name: it is a property every object inherits, so it'
|
|
62
|
+
+ ' cannot be used as a key in the project registry.';
|
|
63
|
+
}
|
|
64
|
+
return shown + ' is not a valid project name: use letters, digits, `_`, `.` and `-`, starting with a'
|
|
65
|
+
+ ' lowercase letter, a digit, `_` or `.` (`.` and `..` are refused).';
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
module.exports = {
|
|
69
|
+
isValidProjectName : isValidProjectName,
|
|
70
|
+
describeInvalidProjectName : describeInvalidProjectName
|
|
71
|
+
};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
var fs = require('fs');
|
|
2
2
|
var CmdHelper = require('./../helper');
|
|
3
|
+
var escapeRegex = require('./../bundle/inc/name-rewrite').escapeRegex;
|
|
3
4
|
var readline = require('readline');
|
|
4
5
|
var rl = readline.createInterface(process.stdin, process.stdout);
|
|
5
6
|
|
|
@@ -168,7 +169,10 @@ function Remove(opt, cmd) {
|
|
|
168
169
|
|
|
169
170
|
for (var port in ports[protocol][scheme]) {
|
|
170
171
|
|
|
171
|
-
|
|
172
|
+
// #B665 — the project name is matched literally: a `.` matched any
|
|
173
|
+
// character, so removing `my.app` also removed the ports of `my-app`.
|
|
174
|
+
// was: re = new RegExp("\@"+ self.projectName +"\/");
|
|
175
|
+
re = new RegExp('@' + escapeRegex(self.projectName) + '/');
|
|
172
176
|
|
|
173
177
|
if ( re.test(ports[protocol][scheme][port]) ) {
|
|
174
178
|
// reverse ports
|
|
@@ -2,6 +2,7 @@ var fs = require('fs');
|
|
|
2
2
|
|
|
3
3
|
var CmdHelper = require('./../helper');
|
|
4
4
|
var console = lib.logger;
|
|
5
|
+
var projectNameRule = require('./inc/name');
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
* @module gina/lib/cmd/project/rename
|
|
@@ -35,6 +36,9 @@ function Rename(opt, cmd) {
|
|
|
35
36
|
/**
|
|
36
37
|
* Validates that exactly two project tokens are provided, then delegates to rename.
|
|
37
38
|
*
|
|
39
|
+
* The new name must pass the project-name rule (`inc/name.js`), or the rename is
|
|
40
|
+
* refused before anything moves, exit 1 (#B665).
|
|
41
|
+
*
|
|
38
42
|
* @inner
|
|
39
43
|
* @private
|
|
40
44
|
*/
|
|
@@ -54,6 +58,14 @@ function Rename(opt, cmd) {
|
|
|
54
58
|
local.source = self.projectName;
|
|
55
59
|
local.target = self.projectArgvList[1];
|
|
56
60
|
|
|
61
|
+
// #B665 — the new name must pass the project-name rule (`inc/name.js`): the CLI
|
|
62
|
+
// bootstrap checks only its first character. It is always a new name, since a
|
|
63
|
+
// registered one is refused as taken below.
|
|
64
|
+
if ( !projectNameRule.isValidProjectName(local.target) ) {
|
|
65
|
+
console.error( projectNameRule.describeInvalidProjectName(local.target) );
|
|
66
|
+
process.exit(1)
|
|
67
|
+
}
|
|
68
|
+
|
|
57
69
|
|
|
58
70
|
// #B651 — the check was inverted: it renamed only when the new name was
|
|
59
71
|
// ALREADY registered (running the rename onto another project) and refused
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
// #B665 (2026-09-27) — execFile: bundle:restart runs from an argument vector, without a shell.
|
|
2
|
+
// var exec = require('child_process').exec;
|
|
3
|
+
var execFile = require('child_process').execFile;
|
|
4
|
+
|
|
5
|
+
var CmdHelper = require('./../helper');
|
|
6
|
+
var console = lib.logger;
|
|
7
|
+
/**
|
|
8
|
+
* @module gina/lib/cmd/project/restart
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Restarts all bundles in a project.
|
|
12
|
+
* Delegates to `gina bundle:restart @<project>` (bulk mode), run as an `execFile`
|
|
13
|
+
* child of the same runtime and CLI script, each flag its own argument, without
|
|
14
|
+
* a shell (#B665).
|
|
15
|
+
*
|
|
16
|
+
* Usage:
|
|
17
|
+
* gina project:restart @<project_name>
|
|
18
|
+
*
|
|
19
|
+
* @class Restart
|
|
20
|
+
* @constructor
|
|
21
|
+
* @param {object} opt - Parsed command-line options
|
|
22
|
+
* @param {object} opt.client - Socket client or process.stdout for terminal output
|
|
23
|
+
* @param {string[]} opt.argv - Full argv array
|
|
24
|
+
* @param {number} [opt.debugPort] - Node.js inspector port
|
|
25
|
+
* @param {boolean} [opt.debugBrkEnabled] - True when --inspect-brk is active
|
|
26
|
+
* @param {object} cmd - The cmd dispatcher object (lib/cmd/index.js)
|
|
27
|
+
*/
|
|
28
|
+
function Restart(opt, cmd) {
|
|
29
|
+
|
|
30
|
+
var self = {};
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Validates the configuration, takes the runtime and CLI script paths off
|
|
34
|
+
* `process.argv` as an argument pair (`self.cliArgv`), keeps the `--` flags
|
|
35
|
+
* it was given as a list (`self.inheritedArgv`), then restarts the project.
|
|
36
|
+
*
|
|
37
|
+
* @inner
|
|
38
|
+
* @private
|
|
39
|
+
* @param {object} opt - Parsed command-line options
|
|
40
|
+
* @param {object} cmd - The cmd dispatcher object
|
|
41
|
+
* @returns {(boolean|void)} false when the CLI is not configured
|
|
42
|
+
*/
|
|
43
|
+
var init = function(opt, cmd) {
|
|
44
|
+
// import CMD helpers
|
|
45
|
+
new CmdHelper(self, opt.client, { port: opt.debugPort, brkEnabled: opt.debugBrkEnabled });
|
|
46
|
+
|
|
47
|
+
// check CMD configuration
|
|
48
|
+
if (!isCmdConfigured()) return false;
|
|
49
|
+
|
|
50
|
+
// #B665 (2026-09-27) — the runtime and CLI script paths stay an argument pair: the
|
|
51
|
+
// child runs without a shell (the pair was joined into a command line, unquoted,
|
|
52
|
+
// so an install path containing a space broke project:restart).
|
|
53
|
+
// self.cmdStr = process.argv.splice(0, 2).join(' ');
|
|
54
|
+
self.cliArgv = process.argv.splice(0, 2);
|
|
55
|
+
|
|
56
|
+
// collect --flags to forward
|
|
57
|
+
self.inheritedArgv = [];
|
|
58
|
+
for (var i = 0, len = process.argv.length; i < len; i++) {
|
|
59
|
+
if ( /^\-\-/.test(process.argv[i]) ) {
|
|
60
|
+
self.inheritedArgv.push(process.argv[i])
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
// #B665 (2026-09-27) — kept as a list: each flag reaches bundle:restart as one argument.
|
|
64
|
+
// self.inheritedArgv = self.inheritedArgv.join(' ');
|
|
65
|
+
|
|
66
|
+
restart(opt, cmd);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Runs `bundle:restart @<project>` with the inherited flags and the debug
|
|
71
|
+
* flag, prints its output without the per-bundle "Trying to …" lines, then
|
|
72
|
+
* exits with the child's outcome.
|
|
73
|
+
*
|
|
74
|
+
* @inner
|
|
75
|
+
* @private
|
|
76
|
+
* @param {object} opt - Parsed command-line options (debugPort, debugBrkEnabled)
|
|
77
|
+
* @param {object} cmd - The cmd dispatcher object
|
|
78
|
+
* @returns {void}
|
|
79
|
+
*/
|
|
80
|
+
var restart = function(opt, cmd) {
|
|
81
|
+
|
|
82
|
+
// #B665 (2026-09-27) — an argument vector, without a shell: the command line spliced
|
|
83
|
+
// the CLI path, the project name and every inherited `--` flag in unquoted, so a path
|
|
84
|
+
// containing a space broke the command and shell syntax in a flag ran.
|
|
85
|
+
// var _cmd = '$gina bundle:restart @' + self.projectName;
|
|
86
|
+
// if (self.inheritedArgv != '') {
|
|
87
|
+
// _cmd += ' ' + self.inheritedArgv;
|
|
88
|
+
// }
|
|
89
|
+
// if (opt.debugPort) {
|
|
90
|
+
// _cmd += ' --inspect';
|
|
91
|
+
// if (opt.debugBrkEnabled) {
|
|
92
|
+
// _cmd += '-brk'
|
|
93
|
+
// }
|
|
94
|
+
// _cmd += '=' + opt.debugPort;
|
|
95
|
+
// }
|
|
96
|
+
// _cmd = _cmd.replace(/\$(gina)/g, self.cmdStr);
|
|
97
|
+
var argv = [self.cliArgv[1], 'bundle:restart', '@' + self.projectName].concat(self.inheritedArgv);
|
|
98
|
+
if (opt.debugPort) {
|
|
99
|
+
argv.push('--inspect' + (opt.debugBrkEnabled ? '-brk' : '') + '=' + opt.debugPort);
|
|
100
|
+
}
|
|
101
|
+
// for the debug line only: nothing runs this string
|
|
102
|
+
var _cmd = [self.cliArgv[0]].concat(argv).join(' ');
|
|
103
|
+
|
|
104
|
+
console.info('Restarting all bundles in @' + self.projectName + ' ...');
|
|
105
|
+
console.debug('Executing: ' + _cmd);
|
|
106
|
+
|
|
107
|
+
// Re-export the home: the bootstrap env sweep strips GINA_* from
|
|
108
|
+
// process.env, so the delegated bundle command would otherwise act
|
|
109
|
+
// on the default home (see linkGina in project/add.js).
|
|
110
|
+
// was: exec(_cmd, { maxBuffer: … }, function(err, stdout, stderr) {
|
|
111
|
+
execFile(self.cliArgv[0], argv, { maxBuffer: 1024 * 500, env: Object.assign({}, process.env, { GINA_HOMEDIR: GINA_HOMEDIR }) }, function(err, stdout, stderr) {
|
|
112
|
+
if (stdout) {
|
|
113
|
+
console.log(stdout.replace(/\n\rTrying to.*/gm, ''));
|
|
114
|
+
}
|
|
115
|
+
if (err) {
|
|
116
|
+
console.error(err.toString());
|
|
117
|
+
return process.exit(1);
|
|
118
|
+
}
|
|
119
|
+
process.exit(0);
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
init(opt, cmd);
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
module.exports = Restart
|
|
@@ -4,6 +4,7 @@ var cp = require('child_process');
|
|
|
4
4
|
|
|
5
5
|
var CmdHelper = require('./../helper');
|
|
6
6
|
var console = lib.logger;
|
|
7
|
+
var projectNameRule = require('./inc/name');
|
|
7
8
|
|
|
8
9
|
/**
|
|
9
10
|
* @module gina/lib/cmd/project/restore
|
|
@@ -66,6 +67,11 @@ function Restore(opt, cmd) {
|
|
|
66
67
|
* `--to`, validates the archive and the (name / target) conflicts, then runs
|
|
67
68
|
* the restore.
|
|
68
69
|
*
|
|
70
|
+
* A name not registered yet must pass the project-name rule (`inc/name.js`) before
|
|
71
|
+
* the archive is touched (#B665): the `project:add` child that registers it would
|
|
72
|
+
* refuse it only after the tree is extracted. A registered name (restored over under
|
|
73
|
+
* `--force`) keeps working.
|
|
74
|
+
*
|
|
69
75
|
* @inner
|
|
70
76
|
* @private
|
|
71
77
|
*/
|
|
@@ -81,6 +87,19 @@ function Restore(opt, cmd) {
|
|
|
81
87
|
return;
|
|
82
88
|
}
|
|
83
89
|
|
|
90
|
+
// #B665 — a name not registered yet must pass the project-name rule (`inc/name.js`)
|
|
91
|
+
// BEFORE the archive is extracted: the `project:add` child that registers it would
|
|
92
|
+
// refuse it only after the tree is written. A registered name, as an own key
|
|
93
|
+
// (restored over under --force), keeps working.
|
|
94
|
+
if (
|
|
95
|
+
!Object.prototype.hasOwnProperty.call(self.projects || {}, local.project)
|
|
96
|
+
&& !projectNameRule.isValidProjectName(local.project)
|
|
97
|
+
) {
|
|
98
|
+
console.error( projectNameRule.describeInvalidProjectName(local.project) );
|
|
99
|
+
process.exit(1);
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
|
|
84
103
|
// The archive is a path positional — read it off argv (order-independent:
|
|
85
104
|
// the first token that is neither an @<name> nor a --flag). An absolute
|
|
86
105
|
// path fails isValidName(), so it never lands in self.name/self.bundles.
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
// #B665 (2026-09-27) — execFile: bundle:start runs from an argument vector, without a shell.
|
|
2
|
+
// var exec = require('child_process').exec;
|
|
3
|
+
var execFile = require('child_process').execFile;
|
|
4
|
+
|
|
5
|
+
var CmdHelper = require('./../helper');
|
|
6
|
+
var console = lib.logger;
|
|
7
|
+
/**
|
|
8
|
+
* @module gina/lib/cmd/project/start
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Starts all bundles in a project.
|
|
12
|
+
* Delegates to `gina bundle:start @<project>` (bulk mode), run as an `execFile`
|
|
13
|
+
* child of the same runtime and CLI script, each flag its own argument, without
|
|
14
|
+
* a shell (#B665).
|
|
15
|
+
*
|
|
16
|
+
* Usage:
|
|
17
|
+
* gina project:start @<project_name> [ --env=dev, --scope=local, --inspect-brk=5000 ]
|
|
18
|
+
*
|
|
19
|
+
* @class Start
|
|
20
|
+
* @constructor
|
|
21
|
+
* @param {object} opt - Parsed command-line options
|
|
22
|
+
* @param {object} opt.client - Socket client or process.stdout for terminal output
|
|
23
|
+
* @param {string[]} opt.argv - Full argv array
|
|
24
|
+
* @param {number} [opt.debugPort] - Node.js inspector port
|
|
25
|
+
* @param {boolean} [opt.debugBrkEnabled] - True when --inspect-brk is active
|
|
26
|
+
* @param {object} cmd - The cmd dispatcher object (lib/cmd/index.js)
|
|
27
|
+
*/
|
|
28
|
+
function Start(opt, cmd) {
|
|
29
|
+
|
|
30
|
+
var self = {};
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Validates the configuration, takes the runtime and CLI script paths off
|
|
34
|
+
* `process.argv` as an argument pair (`self.cliArgv`), keeps the `--` flags
|
|
35
|
+
* it was given as a list (`self.inheritedArgv`), then starts the project.
|
|
36
|
+
*
|
|
37
|
+
* @inner
|
|
38
|
+
* @private
|
|
39
|
+
* @param {object} opt - Parsed command-line options
|
|
40
|
+
* @param {object} cmd - The cmd dispatcher object
|
|
41
|
+
* @returns {(boolean|void)} false when the CLI is not configured
|
|
42
|
+
*/
|
|
43
|
+
var init = function(opt, cmd) {
|
|
44
|
+
// import CMD helpers
|
|
45
|
+
new CmdHelper(self, opt.client, { port: opt.debugPort, brkEnabled: opt.debugBrkEnabled });
|
|
46
|
+
|
|
47
|
+
// check CMD configuration
|
|
48
|
+
if (!isCmdConfigured()) return false;
|
|
49
|
+
|
|
50
|
+
// #B665 (2026-09-27) — the runtime and CLI script paths stay an argument pair: the
|
|
51
|
+
// child runs without a shell (the pair was joined into a command line, unquoted,
|
|
52
|
+
// so an install path containing a space broke project:start).
|
|
53
|
+
// self.cmdStr = process.argv.splice(0, 2).join(' ');
|
|
54
|
+
self.cliArgv = process.argv.splice(0, 2);
|
|
55
|
+
|
|
56
|
+
// collect --flags to forward
|
|
57
|
+
self.inheritedArgv = [];
|
|
58
|
+
for (var i = 0, len = process.argv.length; i < len; i++) {
|
|
59
|
+
if ( /^\-\-/.test(process.argv[i]) ) {
|
|
60
|
+
self.inheritedArgv.push(process.argv[i])
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
// #B665 (2026-09-27) — kept as a list: each flag reaches bundle:start as one argument.
|
|
64
|
+
// self.inheritedArgv = self.inheritedArgv.join(' ');
|
|
65
|
+
|
|
66
|
+
start(opt, cmd);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Runs `bundle:start @<project>` with the inherited flags and the debug flag,
|
|
71
|
+
* then exits with the child's outcome.
|
|
72
|
+
*
|
|
73
|
+
* @inner
|
|
74
|
+
* @private
|
|
75
|
+
* @param {object} opt - Parsed command-line options (debugPort, debugBrkEnabled)
|
|
76
|
+
* @param {object} cmd - The cmd dispatcher object
|
|
77
|
+
* @returns {void}
|
|
78
|
+
*/
|
|
79
|
+
var start = function(opt, cmd) {
|
|
80
|
+
|
|
81
|
+
// #B665 (2026-09-27) — an argument vector, without a shell: the command line spliced
|
|
82
|
+
// the CLI path, the project name and every inherited `--` flag in unquoted, so a path
|
|
83
|
+
// containing a space broke the command and shell syntax in a flag ran.
|
|
84
|
+
// var _cmd = '$gina bundle:start @' + self.projectName;
|
|
85
|
+
// if (self.inheritedArgv != '') {
|
|
86
|
+
// _cmd += ' ' + self.inheritedArgv;
|
|
87
|
+
// }
|
|
88
|
+
// if (opt.debugPort) {
|
|
89
|
+
// _cmd += ' --inspect';
|
|
90
|
+
// if (opt.debugBrkEnabled) {
|
|
91
|
+
// _cmd += '-brk'
|
|
92
|
+
// }
|
|
93
|
+
// _cmd += '=' + opt.debugPort;
|
|
94
|
+
// }
|
|
95
|
+
// _cmd = _cmd.replace(/\$(gina)/g, self.cmdStr);
|
|
96
|
+
var argv = [self.cliArgv[1], 'bundle:start', '@' + self.projectName].concat(self.inheritedArgv);
|
|
97
|
+
if (opt.debugPort) {
|
|
98
|
+
argv.push('--inspect' + (opt.debugBrkEnabled ? '-brk' : '') + '=' + opt.debugPort);
|
|
99
|
+
}
|
|
100
|
+
// for the debug line only: nothing runs this string
|
|
101
|
+
var _cmd = [self.cliArgv[0]].concat(argv).join(' ');
|
|
102
|
+
|
|
103
|
+
console.info('Starting all bundles in @' + self.projectName + ' ...');
|
|
104
|
+
console.debug('Executing: ' + _cmd);
|
|
105
|
+
|
|
106
|
+
// Re-export the home: the bootstrap env sweep strips GINA_* from
|
|
107
|
+
// process.env, so the delegated bundle command would otherwise act
|
|
108
|
+
// on the default home (see linkGina in project/add.js).
|
|
109
|
+
// was: exec(_cmd, { maxBuffer: … }, function(err, stdout, stderr) {
|
|
110
|
+
execFile(self.cliArgv[0], argv, { maxBuffer: 1024 * 500, env: Object.assign({}, process.env, { GINA_HOMEDIR: GINA_HOMEDIR }) }, function(err, stdout, stderr) {
|
|
111
|
+
if (stdout) {
|
|
112
|
+
console.log(stdout);
|
|
113
|
+
}
|
|
114
|
+
if (err) {
|
|
115
|
+
console.error(err.toString());
|
|
116
|
+
return process.exit(1);
|
|
117
|
+
}
|
|
118
|
+
process.exit(0);
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
init(opt, cmd);
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
module.exports = Start
|