spindb 0.37.2 → 0.38.0
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/dist/cli/bin.js +9 -0
- package/dist/cli/bin.js.map +1 -0
- package/dist/cli/commands/attach.js +102 -0
- package/dist/cli/commands/attach.js.map +1 -0
- package/dist/cli/commands/backup.js +197 -0
- package/dist/cli/commands/backup.js.map +1 -0
- package/dist/cli/commands/backups.js +190 -0
- package/dist/cli/commands/backups.js.map +1 -0
- package/dist/cli/commands/clone.js +119 -0
- package/dist/cli/commands/clone.js.map +1 -0
- package/dist/cli/commands/config.js +276 -0
- package/dist/cli/commands/config.js.map +1 -0
- package/dist/cli/commands/connect.js +559 -0
- package/dist/cli/commands/connect.js.map +1 -0
- package/dist/cli/commands/create.js +952 -0
- package/dist/cli/commands/create.js.map +1 -0
- package/dist/cli/commands/databases.js +485 -0
- package/dist/cli/commands/databases.js.map +1 -0
- package/dist/cli/commands/delete.js +106 -0
- package/dist/cli/commands/delete.js.map +1 -0
- package/dist/cli/commands/deps.js +238 -0
- package/dist/cli/commands/deps.js.map +1 -0
- package/dist/cli/commands/detach.js +81 -0
- package/dist/cli/commands/detach.js.map +1 -0
- package/dist/cli/commands/doctor.js +567 -0
- package/dist/cli/commands/doctor.js.map +1 -0
- package/dist/cli/commands/duckdb.js +207 -0
- package/dist/cli/commands/duckdb.js.map +1 -0
- package/dist/cli/commands/edit.js +524 -0
- package/dist/cli/commands/edit.js.map +1 -0
- package/dist/cli/commands/engines.js +1414 -0
- package/dist/cli/commands/engines.js.map +1 -0
- package/dist/cli/commands/export.js +383 -0
- package/dist/cli/commands/export.js.map +1 -0
- package/dist/cli/commands/info.js +270 -0
- package/dist/cli/commands/info.js.map +1 -0
- package/dist/cli/commands/list.js +215 -0
- package/dist/cli/commands/list.js.map +1 -0
- package/dist/cli/commands/logs.js +81 -0
- package/dist/cli/commands/logs.js.map +1 -0
- package/dist/cli/commands/menu/backup-handlers.js +1202 -0
- package/dist/cli/commands/menu/backup-handlers.js.map +1 -0
- package/dist/cli/commands/menu/container-handlers.js +1788 -0
- package/dist/cli/commands/menu/container-handlers.js.map +1 -0
- package/dist/cli/commands/menu/engine-handlers.js +235 -0
- package/dist/cli/commands/menu/engine-handlers.js.map +1 -0
- package/dist/cli/commands/menu/index.js +266 -0
- package/dist/cli/commands/menu/index.js.map +1 -0
- package/dist/cli/commands/menu/settings-handlers.js +320 -0
- package/dist/cli/commands/menu/settings-handlers.js.map +1 -0
- package/dist/cli/commands/menu/shared.js +13 -0
- package/dist/cli/commands/menu/shared.js.map +1 -0
- package/dist/cli/commands/menu/shell-handlers.js +1573 -0
- package/dist/cli/commands/menu/shell-handlers.js.map +1 -0
- package/dist/cli/commands/menu/sql-handlers.js +185 -0
- package/dist/cli/commands/menu/sql-handlers.js.map +1 -0
- package/dist/cli/commands/menu/update-handlers.js +322 -0
- package/dist/cli/commands/menu/update-handlers.js.map +1 -0
- package/dist/cli/commands/menu/validators.js +9 -0
- package/dist/cli/commands/menu/validators.js.map +1 -0
- package/dist/cli/commands/ports.js +166 -0
- package/dist/cli/commands/ports.js.map +1 -0
- package/dist/cli/commands/pull.js +166 -0
- package/dist/cli/commands/pull.js.map +1 -0
- package/dist/cli/commands/query.js +180 -0
- package/dist/cli/commands/query.js.map +1 -0
- package/dist/cli/commands/restore.js +428 -0
- package/dist/cli/commands/restore.js.map +1 -0
- package/dist/cli/commands/run.js +115 -0
- package/dist/cli/commands/run.js.map +1 -0
- package/dist/cli/commands/self-update.js +99 -0
- package/dist/cli/commands/self-update.js.map +1 -0
- package/dist/cli/commands/sqlite.js +207 -0
- package/dist/cli/commands/sqlite.js.map +1 -0
- package/dist/cli/commands/start.js +196 -0
- package/dist/cli/commands/start.js.map +1 -0
- package/dist/cli/commands/stop.js +182 -0
- package/dist/cli/commands/stop.js.map +1 -0
- package/dist/cli/commands/url.js +88 -0
- package/dist/cli/commands/url.js.map +1 -0
- package/dist/cli/commands/users.js +189 -0
- package/dist/cli/commands/users.js.map +1 -0
- package/dist/cli/commands/version.js +52 -0
- package/dist/cli/commands/version.js.map +1 -0
- package/dist/cli/commands/which.js +258 -0
- package/dist/cli/commands/which.js.map +1 -0
- package/dist/cli/constants.js +212 -0
- package/dist/cli/constants.js.map +1 -0
- package/dist/cli/helpers.js +1120 -0
- package/dist/cli/helpers.js.map +1 -0
- package/dist/cli/index.js +146 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/ui/prompts.js +1002 -0
- package/dist/cli/ui/prompts.js.map +1 -0
- package/dist/cli/ui/spinner.js +74 -0
- package/dist/cli/ui/spinner.js.map +1 -0
- package/dist/cli/ui/theme.js +99 -0
- package/dist/cli/ui/theme.js.map +1 -0
- package/dist/cli/utils/file-follower.js +79 -0
- package/dist/cli/utils/file-follower.js.map +1 -0
- package/dist/config/backup-formats.js +363 -0
- package/dist/config/backup-formats.js.map +1 -0
- package/dist/config/defaults.js +25 -0
- package/dist/config/defaults.js.map +1 -0
- package/dist/config/engine-defaults.js +303 -0
- package/dist/config/engine-defaults.js.map +1 -0
- package/dist/config/engines-registry.js +103 -0
- package/dist/config/engines-registry.js.map +1 -0
- package/dist/config/os-dependencies.js +767 -0
- package/dist/config/os-dependencies.js.map +1 -0
- package/dist/config/paths.js +156 -0
- package/dist/config/paths.js.map +1 -0
- package/dist/config/version.js +3 -0
- package/dist/config/version.js.map +1 -0
- package/dist/core/backup-restore.js +219 -0
- package/dist/core/backup-restore.js.map +1 -0
- package/dist/core/base-binary-manager.js +403 -0
- package/dist/core/base-binary-manager.js.map +1 -0
- package/dist/core/base-document-binary-manager.js +364 -0
- package/dist/core/base-document-binary-manager.js.map +1 -0
- package/dist/core/base-embedded-binary-manager.js +364 -0
- package/dist/core/base-embedded-binary-manager.js.map +1 -0
- package/dist/core/base-server-binary-manager.js +368 -0
- package/dist/core/base-server-binary-manager.js.map +1 -0
- package/dist/core/config-manager.js +495 -0
- package/dist/core/config-manager.js.map +1 -0
- package/dist/core/container-manager.js +609 -0
- package/dist/core/container-manager.js.map +1 -0
- package/dist/core/credential-generator.js +67 -0
- package/dist/core/credential-generator.js.map +1 -0
- package/dist/core/credential-manager.js +211 -0
- package/dist/core/credential-manager.js.map +1 -0
- package/dist/core/dblab-utils.js +105 -0
- package/dist/core/dblab-utils.js.map +1 -0
- package/dist/core/dependency-manager.js +359 -0
- package/dist/core/dependency-manager.js.map +1 -0
- package/dist/core/docker-exporter.js +1077 -0
- package/dist/core/docker-exporter.js.map +1 -0
- package/dist/core/error-handler.js +295 -0
- package/dist/core/error-handler.js.map +1 -0
- package/dist/core/fs-error-utils.js +74 -0
- package/dist/core/fs-error-utils.js.map +1 -0
- package/dist/core/homebrew-version-manager.js +280 -0
- package/dist/core/homebrew-version-manager.js.map +1 -0
- package/dist/core/hostdb-client.js +252 -0
- package/dist/core/hostdb-client.js.map +1 -0
- package/dist/core/hostdb-metadata.js +243 -0
- package/dist/core/hostdb-metadata.js.map +1 -0
- package/dist/core/hostdb-releases-factory.js +161 -0
- package/dist/core/hostdb-releases-factory.js.map +1 -0
- package/dist/core/library-env.js +88 -0
- package/dist/core/library-env.js.map +1 -0
- package/dist/core/pgweb-utils.js +53 -0
- package/dist/core/pgweb-utils.js.map +1 -0
- package/dist/core/platform-service.js +632 -0
- package/dist/core/platform-service.js.map +1 -0
- package/dist/core/port-manager.js +136 -0
- package/dist/core/port-manager.js.map +1 -0
- package/dist/core/process-manager.js +445 -0
- package/dist/core/process-manager.js.map +1 -0
- package/dist/core/pull-manager.js +418 -0
- package/dist/core/pull-manager.js.map +1 -0
- package/dist/core/query-parser.js +449 -0
- package/dist/core/query-parser.js.map +1 -0
- package/dist/core/spawn-utils.js +90 -0
- package/dist/core/spawn-utils.js.map +1 -0
- package/dist/core/start-with-retry.js +90 -0
- package/dist/core/start-with-retry.js.map +1 -0
- package/dist/core/test-cleanup.js +85 -0
- package/dist/core/test-cleanup.js.map +1 -0
- package/dist/core/tls-generator.js +84 -0
- package/dist/core/tls-generator.js.map +1 -0
- package/dist/core/transaction-manager.js +139 -0
- package/dist/core/transaction-manager.js.map +1 -0
- package/dist/core/update-manager.js +241 -0
- package/dist/core/update-manager.js.map +1 -0
- package/dist/core/version-migration.js +260 -0
- package/dist/core/version-migration.js.map +1 -0
- package/dist/core/version-utils.js +91 -0
- package/dist/core/version-utils.js.map +1 -0
- package/dist/engines/base-engine.js +179 -0
- package/dist/engines/base-engine.js.map +1 -0
- package/dist/engines/clickhouse/backup.js +289 -0
- package/dist/engines/clickhouse/backup.js.map +1 -0
- package/dist/engines/clickhouse/binary-manager.js +145 -0
- package/dist/engines/clickhouse/binary-manager.js.map +1 -0
- package/dist/engines/clickhouse/binary-urls.js +100 -0
- package/dist/engines/clickhouse/binary-urls.js.map +1 -0
- package/dist/engines/clickhouse/cli-utils.js +143 -0
- package/dist/engines/clickhouse/cli-utils.js.map +1 -0
- package/dist/engines/clickhouse/hostdb-releases.js +24 -0
- package/dist/engines/clickhouse/hostdb-releases.js.map +1 -0
- package/dist/engines/clickhouse/index.js +1077 -0
- package/dist/engines/clickhouse/index.js.map +1 -0
- package/dist/engines/clickhouse/restore.js +335 -0
- package/dist/engines/clickhouse/restore.js.map +1 -0
- package/dist/engines/clickhouse/version-maps.js +83 -0
- package/dist/engines/clickhouse/version-maps.js.map +1 -0
- package/dist/engines/clickhouse/version-validator.js +133 -0
- package/dist/engines/clickhouse/version-validator.js.map +1 -0
- package/dist/engines/cockroachdb/backup.js +261 -0
- package/dist/engines/cockroachdb/backup.js.map +1 -0
- package/dist/engines/cockroachdb/binary-manager.js +33 -0
- package/dist/engines/cockroachdb/binary-manager.js.map +1 -0
- package/dist/engines/cockroachdb/binary-urls.js +33 -0
- package/dist/engines/cockroachdb/binary-urls.js.map +1 -0
- package/dist/engines/cockroachdb/cli-utils.js +338 -0
- package/dist/engines/cockroachdb/cli-utils.js.map +1 -0
- package/dist/engines/cockroachdb/hostdb-releases.js +21 -0
- package/dist/engines/cockroachdb/hostdb-releases.js.map +1 -0
- package/dist/engines/cockroachdb/index.js +1016 -0
- package/dist/engines/cockroachdb/index.js.map +1 -0
- package/dist/engines/cockroachdb/restore.js +323 -0
- package/dist/engines/cockroachdb/restore.js.map +1 -0
- package/dist/engines/cockroachdb/version-maps.js +37 -0
- package/dist/engines/cockroachdb/version-maps.js.map +1 -0
- package/dist/engines/couchdb/api-client.js +64 -0
- package/dist/engines/couchdb/api-client.js.map +1 -0
- package/dist/engines/couchdb/backup.js +90 -0
- package/dist/engines/couchdb/backup.js.map +1 -0
- package/dist/engines/couchdb/binary-manager.js +62 -0
- package/dist/engines/couchdb/binary-manager.js.map +1 -0
- package/dist/engines/couchdb/binary-urls.js +92 -0
- package/dist/engines/couchdb/binary-urls.js.map +1 -0
- package/dist/engines/couchdb/hostdb-releases.js +21 -0
- package/dist/engines/couchdb/hostdb-releases.js.map +1 -0
- package/dist/engines/couchdb/index.js +1043 -0
- package/dist/engines/couchdb/index.js.map +1 -0
- package/dist/engines/couchdb/restore.js +198 -0
- package/dist/engines/couchdb/restore.js.map +1 -0
- package/dist/engines/couchdb/version-maps.js +67 -0
- package/dist/engines/couchdb/version-maps.js.map +1 -0
- package/dist/engines/couchdb/version-validator.js +88 -0
- package/dist/engines/couchdb/version-validator.js.map +1 -0
- package/dist/engines/duckdb/binary-manager.js +33 -0
- package/dist/engines/duckdb/binary-manager.js.map +1 -0
- package/{engines/duckdb/binary-urls.ts → dist/engines/duckdb/binary-urls.js} +11 -16
- package/dist/engines/duckdb/binary-urls.js.map +1 -0
- package/dist/engines/duckdb/hostdb-releases.js +21 -0
- package/dist/engines/duckdb/hostdb-releases.js.map +1 -0
- package/dist/engines/duckdb/index.js +594 -0
- package/dist/engines/duckdb/index.js.map +1 -0
- package/dist/engines/duckdb/registry.js +265 -0
- package/dist/engines/duckdb/registry.js.map +1 -0
- package/dist/engines/duckdb/scanner.js +12 -0
- package/dist/engines/duckdb/scanner.js.map +1 -0
- package/dist/engines/duckdb/version-maps.js +67 -0
- package/dist/engines/duckdb/version-maps.js.map +1 -0
- package/dist/engines/duckdb/version-validator.js +62 -0
- package/dist/engines/duckdb/version-validator.js.map +1 -0
- package/dist/engines/ferretdb/backup.js +170 -0
- package/dist/engines/ferretdb/backup.js.map +1 -0
- package/dist/engines/ferretdb/binary-manager.js +765 -0
- package/dist/engines/ferretdb/binary-manager.js.map +1 -0
- package/dist/engines/ferretdb/binary-urls.js +135 -0
- package/dist/engines/ferretdb/binary-urls.js.map +1 -0
- package/dist/engines/ferretdb/index.js +1517 -0
- package/dist/engines/ferretdb/index.js.map +1 -0
- package/dist/engines/ferretdb/restore.js +310 -0
- package/dist/engines/ferretdb/restore.js.map +1 -0
- package/{engines/ferretdb/version-maps.ts → dist/engines/ferretdb/version-maps.js} +62 -79
- package/dist/engines/ferretdb/version-maps.js.map +1 -0
- package/dist/engines/file-based-utils.js +184 -0
- package/dist/engines/file-based-utils.js.map +1 -0
- package/dist/engines/index.js +124 -0
- package/dist/engines/index.js.map +1 -0
- package/dist/engines/influxdb/api-client.js +54 -0
- package/dist/engines/influxdb/api-client.js.map +1 -0
- package/dist/engines/influxdb/backup.js +119 -0
- package/dist/engines/influxdb/backup.js.map +1 -0
- package/dist/engines/influxdb/binary-manager.js +87 -0
- package/dist/engines/influxdb/binary-manager.js.map +1 -0
- package/dist/engines/influxdb/binary-urls.js +56 -0
- package/dist/engines/influxdb/binary-urls.js.map +1 -0
- package/dist/engines/influxdb/hostdb-releases.js +21 -0
- package/dist/engines/influxdb/hostdb-releases.js.map +1 -0
- package/dist/engines/influxdb/index.js +962 -0
- package/dist/engines/influxdb/index.js.map +1 -0
- package/dist/engines/influxdb/restore.js +329 -0
- package/dist/engines/influxdb/restore.js.map +1 -0
- package/dist/engines/influxdb/version-maps.js +64 -0
- package/dist/engines/influxdb/version-maps.js.map +1 -0
- package/dist/engines/influxdb/version-validator.js +109 -0
- package/dist/engines/influxdb/version-validator.js.map +1 -0
- package/dist/engines/mariadb/backup.js +178 -0
- package/dist/engines/mariadb/backup.js.map +1 -0
- package/dist/engines/mariadb/binary-manager.js +33 -0
- package/dist/engines/mariadb/binary-manager.js.map +1 -0
- package/{engines/mariadb/binary-urls.ts → dist/engines/mariadb/binary-urls.js} +38 -55
- package/dist/engines/mariadb/binary-urls.js.map +1 -0
- package/dist/engines/mariadb/hostdb-releases.js +21 -0
- package/dist/engines/mariadb/hostdb-releases.js.map +1 -0
- package/dist/engines/mariadb/index.js +1011 -0
- package/dist/engines/mariadb/index.js.map +1 -0
- package/dist/engines/mariadb/restore.js +322 -0
- package/dist/engines/mariadb/restore.js.map +1 -0
- package/dist/engines/mariadb/version-maps.js +63 -0
- package/dist/engines/mariadb/version-maps.js.map +1 -0
- package/dist/engines/mariadb/version-validator.js +143 -0
- package/dist/engines/mariadb/version-validator.js.map +1 -0
- package/dist/engines/meilisearch/api-client.js +50 -0
- package/dist/engines/meilisearch/api-client.js.map +1 -0
- package/dist/engines/meilisearch/backup.js +167 -0
- package/dist/engines/meilisearch/backup.js.map +1 -0
- package/dist/engines/meilisearch/binary-manager.js +31 -0
- package/dist/engines/meilisearch/binary-manager.js.map +1 -0
- package/dist/engines/meilisearch/binary-urls.js +56 -0
- package/dist/engines/meilisearch/binary-urls.js.map +1 -0
- package/dist/engines/meilisearch/hostdb-releases.js +21 -0
- package/dist/engines/meilisearch/hostdb-releases.js.map +1 -0
- package/dist/engines/meilisearch/index.js +992 -0
- package/dist/engines/meilisearch/index.js.map +1 -0
- package/dist/engines/meilisearch/restore.js +167 -0
- package/dist/engines/meilisearch/restore.js.map +1 -0
- package/dist/engines/meilisearch/version-maps.js +67 -0
- package/dist/engines/meilisearch/version-maps.js.map +1 -0
- package/dist/engines/meilisearch/version-validator.js +109 -0
- package/dist/engines/meilisearch/version-validator.js.map +1 -0
- package/dist/engines/mongodb/backup.js +109 -0
- package/dist/engines/mongodb/backup.js.map +1 -0
- package/dist/engines/mongodb/binary-manager.js +36 -0
- package/dist/engines/mongodb/binary-manager.js.map +1 -0
- package/dist/engines/mongodb/binary-urls.js +46 -0
- package/dist/engines/mongodb/binary-urls.js.map +1 -0
- package/dist/engines/mongodb/cli-utils.js +131 -0
- package/dist/engines/mongodb/cli-utils.js.map +1 -0
- package/dist/engines/mongodb/hostdb-releases.js +77 -0
- package/dist/engines/mongodb/hostdb-releases.js.map +1 -0
- package/dist/engines/mongodb/index.js +873 -0
- package/dist/engines/mongodb/index.js.map +1 -0
- package/dist/engines/mongodb/restore.js +276 -0
- package/dist/engines/mongodb/restore.js.map +1 -0
- package/dist/engines/mongodb/version-maps.js +79 -0
- package/dist/engines/mongodb/version-maps.js.map +1 -0
- package/dist/engines/mongodb/version-validator.js +133 -0
- package/dist/engines/mongodb/version-validator.js.map +1 -0
- package/dist/engines/mysql/backup.js +210 -0
- package/dist/engines/mysql/backup.js.map +1 -0
- package/dist/engines/mysql/binary-detection.js +325 -0
- package/dist/engines/mysql/binary-detection.js.map +1 -0
- package/dist/engines/mysql/binary-manager.js +30 -0
- package/dist/engines/mysql/binary-manager.js.map +1 -0
- package/dist/engines/mysql/binary-urls.js +87 -0
- package/dist/engines/mysql/binary-urls.js.map +1 -0
- package/{engines/mysql/hostdb-releases.ts → dist/engines/mysql/hostdb-releases.js} +20 -23
- package/dist/engines/mysql/hostdb-releases.js.map +1 -0
- package/dist/engines/mysql/index.js +1066 -0
- package/dist/engines/mysql/index.js.map +1 -0
- package/dist/engines/mysql/restore.js +361 -0
- package/dist/engines/mysql/restore.js.map +1 -0
- package/dist/engines/mysql/version-maps.js +79 -0
- package/dist/engines/mysql/version-maps.js.map +1 -0
- package/dist/engines/mysql/version-validator.js +266 -0
- package/dist/engines/mysql/version-validator.js.map +1 -0
- package/dist/engines/postgresql/backup.js +118 -0
- package/dist/engines/postgresql/backup.js.map +1 -0
- package/dist/engines/postgresql/binary-manager.js +85 -0
- package/dist/engines/postgresql/binary-manager.js.map +1 -0
- package/dist/engines/postgresql/binary-urls.js +80 -0
- package/dist/engines/postgresql/binary-urls.js.map +1 -0
- package/dist/engines/postgresql/hostdb-releases.js +21 -0
- package/dist/engines/postgresql/hostdb-releases.js.map +1 -0
- package/dist/engines/postgresql/index.js +852 -0
- package/dist/engines/postgresql/index.js.map +1 -0
- package/dist/engines/postgresql/remote-version.js +109 -0
- package/dist/engines/postgresql/remote-version.js.map +1 -0
- package/dist/engines/postgresql/restore.js +254 -0
- package/dist/engines/postgresql/restore.js.map +1 -0
- package/dist/engines/postgresql/version-maps.js +73 -0
- package/dist/engines/postgresql/version-maps.js.map +1 -0
- package/dist/engines/postgresql/version-validator.js +286 -0
- package/dist/engines/postgresql/version-validator.js.map +1 -0
- package/dist/engines/qdrant/api-client.js +50 -0
- package/dist/engines/qdrant/api-client.js.map +1 -0
- package/dist/engines/qdrant/backup.js +115 -0
- package/dist/engines/qdrant/backup.js.map +1 -0
- package/dist/engines/qdrant/binary-manager.js +31 -0
- package/dist/engines/qdrant/binary-manager.js.map +1 -0
- package/dist/engines/qdrant/binary-urls.js +92 -0
- package/dist/engines/qdrant/binary-urls.js.map +1 -0
- package/dist/engines/qdrant/cli-utils.js +39 -0
- package/dist/engines/qdrant/cli-utils.js.map +1 -0
- package/dist/engines/qdrant/hostdb-releases.js +21 -0
- package/dist/engines/qdrant/hostdb-releases.js.map +1 -0
- package/dist/engines/qdrant/index.js +1002 -0
- package/dist/engines/qdrant/index.js.map +1 -0
- package/dist/engines/qdrant/restore.js +154 -0
- package/dist/engines/qdrant/restore.js.map +1 -0
- package/dist/engines/qdrant/version-maps.js +67 -0
- package/dist/engines/qdrant/version-maps.js.map +1 -0
- package/dist/engines/qdrant/version-validator.js +109 -0
- package/dist/engines/qdrant/version-validator.js.map +1 -0
- package/dist/engines/questdb/backup.js +191 -0
- package/dist/engines/questdb/backup.js.map +1 -0
- package/dist/engines/questdb/binary-manager.js +247 -0
- package/dist/engines/questdb/binary-manager.js.map +1 -0
- package/dist/engines/questdb/binary-urls.js +27 -0
- package/dist/engines/questdb/binary-urls.js.map +1 -0
- package/dist/engines/questdb/hostdb-releases.js +21 -0
- package/dist/engines/questdb/hostdb-releases.js.map +1 -0
- package/dist/engines/questdb/index.js +814 -0
- package/dist/engines/questdb/index.js.map +1 -0
- package/dist/engines/questdb/restore.js +202 -0
- package/dist/engines/questdb/restore.js.map +1 -0
- package/dist/engines/questdb/version-maps.js +33 -0
- package/dist/engines/questdb/version-maps.js.map +1 -0
- package/dist/engines/questdb/version-validator.js +99 -0
- package/dist/engines/questdb/version-validator.js.map +1 -0
- package/dist/engines/redis/backup.js +292 -0
- package/dist/engines/redis/backup.js.map +1 -0
- package/dist/engines/redis/binary-manager.js +32 -0
- package/dist/engines/redis/binary-manager.js.map +1 -0
- package/dist/engines/redis/binary-urls.js +96 -0
- package/dist/engines/redis/binary-urls.js.map +1 -0
- package/dist/engines/redis/cli-utils.js +38 -0
- package/dist/engines/redis/cli-utils.js.map +1 -0
- package/dist/engines/redis/hostdb-releases.js +21 -0
- package/dist/engines/redis/hostdb-releases.js.map +1 -0
- package/dist/engines/redis/index.js +1263 -0
- package/dist/engines/redis/index.js.map +1 -0
- package/dist/engines/redis/restore.js +338 -0
- package/dist/engines/redis/restore.js.map +1 -0
- package/dist/engines/redis/version-maps.js +70 -0
- package/dist/engines/redis/version-maps.js.map +1 -0
- package/dist/engines/redis/version-validator.js +109 -0
- package/dist/engines/redis/version-validator.js.map +1 -0
- package/dist/engines/sqlite/binary-manager.js +39 -0
- package/dist/engines/sqlite/binary-manager.js.map +1 -0
- package/{engines/sqlite/binary-urls.ts → dist/engines/sqlite/binary-urls.js} +11 -16
- package/dist/engines/sqlite/binary-urls.js.map +1 -0
- package/dist/engines/sqlite/hostdb-releases.js +21 -0
- package/dist/engines/sqlite/hostdb-releases.js.map +1 -0
- package/dist/engines/sqlite/index.js +493 -0
- package/dist/engines/sqlite/index.js.map +1 -0
- package/dist/engines/sqlite/registry.js +163 -0
- package/dist/engines/sqlite/registry.js.map +1 -0
- package/dist/engines/sqlite/scanner.js +12 -0
- package/dist/engines/sqlite/scanner.js.map +1 -0
- package/dist/engines/sqlite/version-maps.js +57 -0
- package/dist/engines/sqlite/version-maps.js.map +1 -0
- package/dist/engines/surrealdb/backup.js +97 -0
- package/dist/engines/surrealdb/backup.js.map +1 -0
- package/dist/engines/surrealdb/binary-manager.js +33 -0
- package/dist/engines/surrealdb/binary-manager.js.map +1 -0
- package/dist/engines/surrealdb/binary-urls.js +33 -0
- package/dist/engines/surrealdb/binary-urls.js.map +1 -0
- package/dist/engines/surrealdb/cli-utils.js +147 -0
- package/dist/engines/surrealdb/cli-utils.js.map +1 -0
- package/dist/engines/surrealdb/hostdb-releases.js +21 -0
- package/dist/engines/surrealdb/hostdb-releases.js.map +1 -0
- package/dist/engines/surrealdb/index.js +1022 -0
- package/dist/engines/surrealdb/index.js.map +1 -0
- package/dist/engines/surrealdb/restore.js +224 -0
- package/dist/engines/surrealdb/restore.js.map +1 -0
- package/dist/engines/surrealdb/version-maps.js +36 -0
- package/dist/engines/surrealdb/version-maps.js.map +1 -0
- package/dist/engines/tigerbeetle/backup.js +36 -0
- package/dist/engines/tigerbeetle/backup.js.map +1 -0
- package/dist/engines/tigerbeetle/binary-manager.js +72 -0
- package/dist/engines/tigerbeetle/binary-manager.js.map +1 -0
- package/dist/engines/tigerbeetle/binary-urls.js +49 -0
- package/dist/engines/tigerbeetle/binary-urls.js.map +1 -0
- package/dist/engines/tigerbeetle/hostdb-releases.js +21 -0
- package/dist/engines/tigerbeetle/hostdb-releases.js.map +1 -0
- package/dist/engines/tigerbeetle/index.js +559 -0
- package/dist/engines/tigerbeetle/index.js.map +1 -0
- package/dist/engines/tigerbeetle/restore.js +91 -0
- package/dist/engines/tigerbeetle/restore.js.map +1 -0
- package/{engines/tigerbeetle/version-maps.ts → dist/engines/tigerbeetle/version-maps.js} +22 -31
- package/dist/engines/tigerbeetle/version-maps.js.map +1 -0
- package/dist/engines/tigerbeetle/version-validator.js +108 -0
- package/dist/engines/tigerbeetle/version-validator.js.map +1 -0
- package/dist/engines/typedb/backup.js +129 -0
- package/dist/engines/typedb/backup.js.map +1 -0
- package/dist/engines/typedb/binary-manager.js +151 -0
- package/dist/engines/typedb/binary-manager.js.map +1 -0
- package/dist/engines/typedb/binary-urls.js +33 -0
- package/dist/engines/typedb/binary-urls.js.map +1 -0
- package/dist/engines/typedb/cli-utils.js +163 -0
- package/dist/engines/typedb/cli-utils.js.map +1 -0
- package/dist/engines/typedb/hostdb-releases.js +21 -0
- package/dist/engines/typedb/hostdb-releases.js.map +1 -0
- package/dist/engines/typedb/index.js +1003 -0
- package/dist/engines/typedb/index.js.map +1 -0
- package/dist/engines/typedb/restore.js +279 -0
- package/dist/engines/typedb/restore.js.map +1 -0
- package/dist/engines/typedb/version-maps.js +40 -0
- package/dist/engines/typedb/version-maps.js.map +1 -0
- package/dist/engines/typedb/version-validator.js +103 -0
- package/dist/engines/typedb/version-validator.js.map +1 -0
- package/dist/engines/valkey/backup.js +292 -0
- package/dist/engines/valkey/backup.js.map +1 -0
- package/dist/engines/valkey/binary-manager.js +33 -0
- package/dist/engines/valkey/binary-manager.js.map +1 -0
- package/dist/engines/valkey/binary-urls.js +98 -0
- package/dist/engines/valkey/binary-urls.js.map +1 -0
- package/dist/engines/valkey/cli-utils.js +38 -0
- package/dist/engines/valkey/cli-utils.js.map +1 -0
- package/dist/engines/valkey/hostdb-releases.js +21 -0
- package/dist/engines/valkey/hostdb-releases.js.map +1 -0
- package/dist/engines/valkey/index.js +1257 -0
- package/dist/engines/valkey/index.js.map +1 -0
- package/dist/engines/valkey/restore.js +340 -0
- package/dist/engines/valkey/restore.js.map +1 -0
- package/dist/engines/valkey/version-maps.js +70 -0
- package/dist/engines/valkey/version-maps.js.map +1 -0
- package/dist/engines/valkey/version-validator.js +112 -0
- package/dist/engines/valkey/version-validator.js.map +1 -0
- package/dist/engines/weaviate/api-client.js +50 -0
- package/dist/engines/weaviate/api-client.js.map +1 -0
- package/dist/engines/weaviate/backup.js +95 -0
- package/dist/engines/weaviate/backup.js.map +1 -0
- package/dist/engines/weaviate/binary-manager.js +58 -0
- package/dist/engines/weaviate/binary-manager.js.map +1 -0
- package/dist/engines/weaviate/binary-urls.js +92 -0
- package/dist/engines/weaviate/binary-urls.js.map +1 -0
- package/dist/engines/weaviate/cli-utils.js +39 -0
- package/dist/engines/weaviate/cli-utils.js.map +1 -0
- package/dist/engines/weaviate/hostdb-releases.js +21 -0
- package/dist/engines/weaviate/hostdb-releases.js.map +1 -0
- package/dist/engines/weaviate/index.js +871 -0
- package/dist/engines/weaviate/index.js.map +1 -0
- package/dist/engines/weaviate/restore.js +185 -0
- package/dist/engines/weaviate/restore.js.map +1 -0
- package/dist/engines/weaviate/version-maps.js +67 -0
- package/dist/engines/weaviate/version-maps.js.map +1 -0
- package/dist/engines/weaviate/version-validator.js +109 -0
- package/dist/engines/weaviate/version-validator.js.map +1 -0
- package/dist/types/index.js +102 -0
- package/dist/types/index.js.map +1 -0
- package/package.json +12 -9
- package/bin/cli.js +0 -68
- package/cli/bin.ts +0 -10
- package/cli/commands/attach.ts +0 -139
- package/cli/commands/backup.ts +0 -290
- package/cli/commands/backups.ts +0 -247
- package/cli/commands/clone.ts +0 -159
- package/cli/commands/config.ts +0 -367
- package/cli/commands/connect.ts +0 -684
- package/cli/commands/create.ts +0 -1201
- package/cli/commands/databases.ts +0 -630
- package/cli/commands/delete.ts +0 -133
- package/cli/commands/deps.ts +0 -342
- package/cli/commands/detach.ts +0 -107
- package/cli/commands/doctor.ts +0 -689
- package/cli/commands/duckdb.ts +0 -273
- package/cli/commands/edit.ts +0 -683
- package/cli/commands/engines.ts +0 -1914
- package/cli/commands/export.ts +0 -544
- package/cli/commands/info.ts +0 -340
- package/cli/commands/list.ts +0 -284
- package/cli/commands/logs.ts +0 -102
- package/cli/commands/menu/backup-handlers.ts +0 -1571
- package/cli/commands/menu/container-handlers.ts +0 -2288
- package/cli/commands/menu/engine-handlers.ts +0 -355
- package/cli/commands/menu/index.ts +0 -342
- package/cli/commands/menu/settings-handlers.ts +0 -365
- package/cli/commands/menu/shared.ts +0 -23
- package/cli/commands/menu/shell-handlers.ts +0 -1811
- package/cli/commands/menu/sql-handlers.ts +0 -231
- package/cli/commands/menu/update-handlers.ts +0 -378
- package/cli/commands/menu/validators.ts +0 -8
- package/cli/commands/ports.ts +0 -211
- package/cli/commands/pull.ts +0 -223
- package/cli/commands/query.ts +0 -241
- package/cli/commands/restore.ts +0 -587
- package/cli/commands/run.ts +0 -178
- package/cli/commands/self-update.ts +0 -121
- package/cli/commands/sqlite.ts +0 -273
- package/cli/commands/start.ts +0 -218
- package/cli/commands/stop.ts +0 -241
- package/cli/commands/url.ts +0 -104
- package/cli/commands/users.ts +0 -264
- package/cli/commands/version.ts +0 -55
- package/cli/commands/which.ts +0 -290
- package/cli/constants.ts +0 -233
- package/cli/helpers.ts +0 -1593
- package/cli/index.ts +0 -162
- package/cli/ui/prompts.ts +0 -1525
- package/cli/ui/spinner.ts +0 -88
- package/cli/ui/theme.ts +0 -128
- package/cli/utils/file-follower.ts +0 -93
- package/config/backup-formats.ts +0 -446
- package/config/defaults.ts +0 -56
- package/config/engine-defaults.ts +0 -336
- package/config/engines-registry.ts +0 -150
- package/config/engines.schema.json +0 -135
- package/config/os-dependencies.ts +0 -888
- package/config/paths.ts +0 -200
- package/core/backup-restore.ts +0 -330
- package/core/base-binary-manager.ts +0 -562
- package/core/base-document-binary-manager.ts +0 -523
- package/core/base-embedded-binary-manager.ts +0 -547
- package/core/base-server-binary-manager.ts +0 -523
- package/core/config-manager.ts +0 -652
- package/core/container-manager.ts +0 -787
- package/core/credential-generator.ts +0 -93
- package/core/credential-manager.ts +0 -259
- package/core/dblab-utils.ts +0 -113
- package/core/dependency-manager.ts +0 -512
- package/core/docker-exporter.ts +0 -1345
- package/core/error-handler.ts +0 -419
- package/core/fs-error-utils.ts +0 -82
- package/core/homebrew-version-manager.ts +0 -352
- package/core/hostdb-client.ts +0 -344
- package/core/hostdb-metadata.ts +0 -350
- package/core/hostdb-releases-factory.ts +0 -237
- package/core/library-env.ts +0 -118
- package/core/pgweb-utils.ts +0 -62
- package/core/platform-service.ts +0 -829
- package/core/port-manager.ts +0 -165
- package/core/process-manager.ts +0 -576
- package/core/pull-manager.ts +0 -511
- package/core/query-parser.ts +0 -514
- package/core/spawn-utils.ts +0 -122
- package/core/start-with-retry.ts +0 -130
- package/core/test-cleanup.ts +0 -108
- package/core/tls-generator.ts +0 -116
- package/core/transaction-manager.ts +0 -158
- package/core/update-manager.ts +0 -308
- package/core/version-migration.ts +0 -346
- package/core/version-utils.ts +0 -104
- package/engines/base-engine.ts +0 -340
- package/engines/clickhouse/README.md +0 -231
- package/engines/clickhouse/backup.ts +0 -398
- package/engines/clickhouse/binary-manager.ts +0 -201
- package/engines/clickhouse/binary-urls.ts +0 -125
- package/engines/clickhouse/cli-utils.ts +0 -176
- package/engines/clickhouse/hostdb-releases.ts +0 -30
- package/engines/clickhouse/index.ts +0 -1345
- package/engines/clickhouse/restore.ts +0 -466
- package/engines/clickhouse/version-maps.ts +0 -95
- package/engines/clickhouse/version-validator.ts +0 -154
- package/engines/cockroachdb/README.md +0 -170
- package/engines/cockroachdb/backup.ts +0 -376
- package/engines/cockroachdb/binary-manager.ts +0 -45
- package/engines/cockroachdb/binary-urls.ts +0 -40
- package/engines/cockroachdb/cli-utils.ts +0 -384
- package/engines/cockroachdb/hostdb-releases.ts +0 -26
- package/engines/cockroachdb/index.ts +0 -1276
- package/engines/cockroachdb/restore.ts +0 -455
- package/engines/cockroachdb/version-maps.ts +0 -42
- package/engines/couchdb/README.md +0 -257
- package/engines/couchdb/api-client.ts +0 -81
- package/engines/couchdb/backup.ts +0 -137
- package/engines/couchdb/binary-manager.ts +0 -86
- package/engines/couchdb/binary-urls.ts +0 -115
- package/engines/couchdb/hostdb-releases.ts +0 -23
- package/engines/couchdb/index.ts +0 -1429
- package/engines/couchdb/restore.ts +0 -290
- package/engines/couchdb/version-maps.ts +0 -78
- package/engines/couchdb/version-validator.ts +0 -111
- package/engines/duckdb/README.md +0 -154
- package/engines/duckdb/binary-manager.ts +0 -45
- package/engines/duckdb/hostdb-releases.ts +0 -23
- package/engines/duckdb/index.ts +0 -749
- package/engines/duckdb/registry.ts +0 -303
- package/engines/duckdb/scanner.ts +0 -22
- package/engines/duckdb/version-maps.ts +0 -78
- package/engines/duckdb/version-validator.ts +0 -78
- package/engines/ferretdb/README.md +0 -262
- package/engines/ferretdb/backup.ts +0 -173
- package/engines/ferretdb/binary-manager.ts +0 -1095
- package/engines/ferretdb/binary-urls.ts +0 -183
- package/engines/ferretdb/index.ts +0 -1907
- package/engines/ferretdb/restore.ts +0 -357
- package/engines/file-based-utils.ts +0 -262
- package/engines/index.ts +0 -131
- package/engines/influxdb/README.md +0 -180
- package/engines/influxdb/api-client.ts +0 -64
- package/engines/influxdb/backup.ts +0 -160
- package/engines/influxdb/binary-manager.ts +0 -110
- package/engines/influxdb/binary-urls.ts +0 -69
- package/engines/influxdb/hostdb-releases.ts +0 -23
- package/engines/influxdb/index.ts +0 -1272
- package/engines/influxdb/restore.ts +0 -417
- package/engines/influxdb/version-maps.ts +0 -75
- package/engines/influxdb/version-validator.ts +0 -128
- package/engines/mariadb/README.md +0 -141
- package/engines/mariadb/backup.ts +0 -233
- package/engines/mariadb/binary-manager.ts +0 -45
- package/engines/mariadb/hostdb-releases.ts +0 -23
- package/engines/mariadb/index.ts +0 -1300
- package/engines/mariadb/restore.ts +0 -447
- package/engines/mariadb/version-maps.ts +0 -72
- package/engines/mariadb/version-validator.ts +0 -181
- package/engines/meilisearch/README.md +0 -255
- package/engines/meilisearch/api-client.ts +0 -61
- package/engines/meilisearch/backup.ts +0 -233
- package/engines/meilisearch/binary-manager.ts +0 -43
- package/engines/meilisearch/binary-urls.ts +0 -69
- package/engines/meilisearch/hostdb-releases.ts +0 -26
- package/engines/meilisearch/index.ts +0 -1292
- package/engines/meilisearch/restore.ts +0 -219
- package/engines/meilisearch/version-maps.ts +0 -78
- package/engines/meilisearch/version-validator.ts +0 -128
- package/engines/mongodb/README.md +0 -162
- package/engines/mongodb/backup.ts +0 -127
- package/engines/mongodb/binary-manager.ts +0 -48
- package/engines/mongodb/binary-urls.ts +0 -63
- package/engines/mongodb/cli-utils.ts +0 -171
- package/engines/mongodb/hostdb-releases.ts +0 -91
- package/engines/mongodb/index.ts +0 -1118
- package/engines/mongodb/restore.ts +0 -361
- package/engines/mongodb/version-maps.ts +0 -91
- package/engines/mongodb/version-validator.ts +0 -160
- package/engines/mysql/README.md +0 -142
- package/engines/mysql/backup.ts +0 -270
- package/engines/mysql/binary-detection.ts +0 -408
- package/engines/mysql/binary-manager.ts +0 -42
- package/engines/mysql/binary-urls.ts +0 -104
- package/engines/mysql/index.ts +0 -1361
- package/engines/mysql/restore.ts +0 -500
- package/engines/mysql/version-maps.ts +0 -91
- package/engines/mysql/version-validator.ts +0 -369
- package/engines/postgresql/README.md +0 -158
- package/engines/postgresql/backup.ts +0 -151
- package/engines/postgresql/binary-manager.ts +0 -114
- package/engines/postgresql/binary-urls.ts +0 -99
- package/engines/postgresql/hostdb-releases.ts +0 -26
- package/engines/postgresql/index.ts +0 -1143
- package/engines/postgresql/remote-version.ts +0 -161
- package/engines/postgresql/restore.ts +0 -342
- package/engines/postgresql/version-maps.ts +0 -83
- package/engines/postgresql/version-validator.ts +0 -413
- package/engines/qdrant/README.md +0 -222
- package/engines/qdrant/api-client.ts +0 -61
- package/engines/qdrant/backup.ts +0 -165
- package/engines/qdrant/binary-manager.ts +0 -43
- package/engines/qdrant/binary-urls.ts +0 -115
- package/engines/qdrant/cli-utils.ts +0 -43
- package/engines/qdrant/hostdb-releases.ts +0 -23
- package/engines/qdrant/index.ts +0 -1312
- package/engines/qdrant/restore.ts +0 -203
- package/engines/qdrant/version-maps.ts +0 -78
- package/engines/qdrant/version-validator.ts +0 -128
- package/engines/questdb/README.md +0 -334
- package/engines/questdb/backup.ts +0 -220
- package/engines/questdb/binary-manager.ts +0 -310
- package/engines/questdb/binary-urls.ts +0 -34
- package/engines/questdb/hostdb-releases.ts +0 -23
- package/engines/questdb/index.ts +0 -1023
- package/engines/questdb/restore.ts +0 -260
- package/engines/questdb/version-maps.ts +0 -37
- package/engines/questdb/version-validator.ts +0 -121
- package/engines/redis/README.md +0 -173
- package/engines/redis/backup.ts +0 -389
- package/engines/redis/binary-manager.ts +0 -44
- package/engines/redis/binary-urls.ts +0 -117
- package/engines/redis/cli-utils.ts +0 -42
- package/engines/redis/hostdb-releases.ts +0 -23
- package/engines/redis/index.ts +0 -1583
- package/engines/redis/restore.ts +0 -443
- package/engines/redis/version-maps.ts +0 -81
- package/engines/redis/version-validator.ts +0 -131
- package/engines/sqlite/README.md +0 -162
- package/engines/sqlite/binary-manager.ts +0 -52
- package/engines/sqlite/hostdb-releases.ts +0 -23
- package/engines/sqlite/index.ts +0 -641
- package/engines/sqlite/registry.ts +0 -198
- package/engines/sqlite/scanner.ts +0 -22
- package/engines/sqlite/version-maps.ts +0 -64
- package/engines/surrealdb/README.md +0 -218
- package/engines/surrealdb/backup.ts +0 -131
- package/engines/surrealdb/binary-manager.ts +0 -45
- package/engines/surrealdb/binary-urls.ts +0 -40
- package/engines/surrealdb/cli-utils.ts +0 -173
- package/engines/surrealdb/hostdb-releases.ts +0 -23
- package/engines/surrealdb/index.ts +0 -1246
- package/engines/surrealdb/restore.ts +0 -302
- package/engines/surrealdb/version-maps.ts +0 -41
- package/engines/tigerbeetle/README.md +0 -61
- package/engines/tigerbeetle/backup.ts +0 -49
- package/engines/tigerbeetle/binary-manager.ts +0 -95
- package/engines/tigerbeetle/binary-urls.ts +0 -62
- package/engines/tigerbeetle/hostdb-releases.ts +0 -26
- package/engines/tigerbeetle/index.ts +0 -746
- package/engines/tigerbeetle/restore.ts +0 -130
- package/engines/tigerbeetle/version-validator.ts +0 -126
- package/engines/typedb/backup.ts +0 -167
- package/engines/typedb/binary-manager.ts +0 -200
- package/engines/typedb/binary-urls.ts +0 -40
- package/engines/typedb/cli-utils.ts +0 -210
- package/engines/typedb/hostdb-releases.ts +0 -23
- package/engines/typedb/index.ts +0 -1275
- package/engines/typedb/restore.ts +0 -377
- package/engines/typedb/version-maps.ts +0 -48
- package/engines/typedb/version-validator.ts +0 -127
- package/engines/valkey/README.md +0 -219
- package/engines/valkey/backup.ts +0 -389
- package/engines/valkey/binary-manager.ts +0 -45
- package/engines/valkey/binary-urls.ts +0 -122
- package/engines/valkey/cli-utils.ts +0 -42
- package/engines/valkey/hostdb-releases.ts +0 -23
- package/engines/valkey/index.ts +0 -1585
- package/engines/valkey/restore.ts +0 -446
- package/engines/valkey/version-maps.ts +0 -81
- package/engines/valkey/version-validator.ts +0 -131
- package/engines/weaviate/README.md +0 -302
- package/engines/weaviate/api-client.ts +0 -61
- package/engines/weaviate/backup.ts +0 -145
- package/engines/weaviate/binary-manager.ts +0 -80
- package/engines/weaviate/binary-urls.ts +0 -115
- package/engines/weaviate/cli-utils.ts +0 -43
- package/engines/weaviate/hostdb-releases.ts +0 -23
- package/engines/weaviate/index.ts +0 -1139
- package/engines/weaviate/restore.ts +0 -235
- package/engines/weaviate/version-maps.ts +0 -78
- package/engines/weaviate/version-validator.ts +0 -128
- package/types/index.ts +0 -624
- /package/{config → dist/config}/engines.json +0 -0
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SQLite Registry Manager
|
|
3
|
+
*
|
|
4
|
+
* Unlike PostgreSQL/MySQL which store containers in ~/.spindb/containers/,
|
|
5
|
+
* SQLite databases are stored in user project directories. This registry
|
|
6
|
+
* tracks the file paths of all SQLite databases managed by SpinDB.
|
|
7
|
+
*
|
|
8
|
+
* The registry is now stored in ~/.spindb/config.json under registry.sqlite
|
|
9
|
+
*/
|
|
10
|
+
import { existsSync } from 'fs';
|
|
11
|
+
import { configManager } from '../../core/config-manager.js';
|
|
12
|
+
/**
|
|
13
|
+
* SQLite Registry Manager
|
|
14
|
+
* Manages the registry that tracks external SQLite database files
|
|
15
|
+
* Data is stored in config.json under registry.sqlite
|
|
16
|
+
*/
|
|
17
|
+
class SQLiteRegistryManager {
|
|
18
|
+
/**
|
|
19
|
+
* Load the registry from config.json
|
|
20
|
+
* Returns an empty registry if none exists
|
|
21
|
+
*/
|
|
22
|
+
async load() {
|
|
23
|
+
return configManager.getSqliteRegistry();
|
|
24
|
+
}
|
|
25
|
+
// Save the registry to config.json
|
|
26
|
+
async save(registry) {
|
|
27
|
+
await configManager.saveSqliteRegistry(registry);
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Add a new entry to the registry
|
|
31
|
+
* @throws Error if a container with the same name or file path already exists
|
|
32
|
+
*/
|
|
33
|
+
async add(entry) {
|
|
34
|
+
const registry = await this.load();
|
|
35
|
+
// Check for duplicate name
|
|
36
|
+
if (registry.entries.some((e) => e.name === entry.name)) {
|
|
37
|
+
throw new Error(`SQLite container "${entry.name}" already exists`);
|
|
38
|
+
}
|
|
39
|
+
// Check for duplicate file path
|
|
40
|
+
if (registry.entries.some((e) => e.filePath === entry.filePath)) {
|
|
41
|
+
throw new Error(`SQLite container for path "${entry.filePath}" already exists`);
|
|
42
|
+
}
|
|
43
|
+
registry.entries.push(entry);
|
|
44
|
+
await this.save(registry);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Get an entry by name
|
|
48
|
+
* Returns null if not found
|
|
49
|
+
*/
|
|
50
|
+
async get(name) {
|
|
51
|
+
const registry = await this.load();
|
|
52
|
+
return registry.entries.find((e) => e.name === name) || null;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Remove an entry by name
|
|
56
|
+
* Returns true if the entry was found and removed, false otherwise
|
|
57
|
+
*/
|
|
58
|
+
async remove(name) {
|
|
59
|
+
const registry = await this.load();
|
|
60
|
+
const index = registry.entries.findIndex((e) => e.name === name);
|
|
61
|
+
if (index === -1) {
|
|
62
|
+
return false;
|
|
63
|
+
}
|
|
64
|
+
registry.entries.splice(index, 1);
|
|
65
|
+
await this.save(registry);
|
|
66
|
+
return true;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Update an existing entry
|
|
70
|
+
* Returns true if the entry was found and updated, false otherwise
|
|
71
|
+
*/
|
|
72
|
+
async update(name, updates) {
|
|
73
|
+
const registry = await this.load();
|
|
74
|
+
const entry = registry.entries.find((e) => e.name === name);
|
|
75
|
+
if (!entry) {
|
|
76
|
+
return false;
|
|
77
|
+
}
|
|
78
|
+
Object.assign(entry, updates);
|
|
79
|
+
await this.save(registry);
|
|
80
|
+
return true;
|
|
81
|
+
}
|
|
82
|
+
// List all entries in the registry
|
|
83
|
+
async list() {
|
|
84
|
+
const registry = await this.load();
|
|
85
|
+
return registry.entries;
|
|
86
|
+
}
|
|
87
|
+
// Check if a container with the given name exists
|
|
88
|
+
async exists(name) {
|
|
89
|
+
const entry = await this.get(name);
|
|
90
|
+
return entry !== null;
|
|
91
|
+
}
|
|
92
|
+
// Find orphaned entries (where the file no longer exists)
|
|
93
|
+
async findOrphans() {
|
|
94
|
+
const registry = await this.load();
|
|
95
|
+
return registry.entries.filter((e) => !existsSync(e.filePath));
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Remove all orphaned entries from the registry
|
|
99
|
+
* Returns the number of entries removed
|
|
100
|
+
*/
|
|
101
|
+
async removeOrphans() {
|
|
102
|
+
const registry = await this.load();
|
|
103
|
+
const originalCount = registry.entries.length;
|
|
104
|
+
registry.entries = registry.entries.filter((e) => existsSync(e.filePath));
|
|
105
|
+
const removedCount = originalCount - registry.entries.length;
|
|
106
|
+
if (removedCount > 0) {
|
|
107
|
+
await this.save(registry);
|
|
108
|
+
}
|
|
109
|
+
return removedCount;
|
|
110
|
+
}
|
|
111
|
+
// Update the lastVerified timestamp for an entry
|
|
112
|
+
async updateVerified(name) {
|
|
113
|
+
await this.update(name, { lastVerified: new Date().toISOString() });
|
|
114
|
+
}
|
|
115
|
+
// Check if a file path is already registered (by any container)
|
|
116
|
+
async isPathRegistered(filePath) {
|
|
117
|
+
const registry = await this.load();
|
|
118
|
+
return registry.entries.some((e) => e.filePath === filePath);
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Get the container name for a given file path
|
|
122
|
+
* Returns null if not found
|
|
123
|
+
*/
|
|
124
|
+
async getByPath(filePath) {
|
|
125
|
+
const registry = await this.load();
|
|
126
|
+
return registry.entries.find((e) => e.filePath === filePath) || null;
|
|
127
|
+
}
|
|
128
|
+
// ============================================================
|
|
129
|
+
// Folder Ignore Methods
|
|
130
|
+
// ============================================================
|
|
131
|
+
// Check if a folder is in the ignore list
|
|
132
|
+
async isFolderIgnored(folderPath) {
|
|
133
|
+
const registry = await this.load();
|
|
134
|
+
return folderPath in registry.ignoreFolders;
|
|
135
|
+
}
|
|
136
|
+
// Add a folder to the ignore list
|
|
137
|
+
async addIgnoreFolder(folderPath) {
|
|
138
|
+
const registry = await this.load();
|
|
139
|
+
registry.ignoreFolders[folderPath] = true;
|
|
140
|
+
await this.save(registry);
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Remove a folder from the ignore list
|
|
144
|
+
* Returns true if the folder was in the list and removed, false otherwise
|
|
145
|
+
*/
|
|
146
|
+
async removeIgnoreFolder(folderPath) {
|
|
147
|
+
const registry = await this.load();
|
|
148
|
+
if (folderPath in registry.ignoreFolders) {
|
|
149
|
+
delete registry.ignoreFolders[folderPath];
|
|
150
|
+
await this.save(registry);
|
|
151
|
+
return true;
|
|
152
|
+
}
|
|
153
|
+
return false;
|
|
154
|
+
}
|
|
155
|
+
// List all ignored folders
|
|
156
|
+
async listIgnoredFolders() {
|
|
157
|
+
const registry = await this.load();
|
|
158
|
+
return Object.keys(registry.ignoreFolders);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
// Export singleton instance
|
|
162
|
+
export const sqliteRegistry = new SQLiteRegistryManager();
|
|
163
|
+
//# sourceMappingURL=registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../engines/sqlite/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SQLite Scanner — thin wrapper around shared file-based-utils
|
|
3
|
+
*/
|
|
4
|
+
import { Engine } from '../../types/index.js';
|
|
5
|
+
import { scanForUnregisteredFiles, deriveContainerName as sharedDeriveContainerName, } from '../file-based-utils.js';
|
|
6
|
+
export async function scanForUnregisteredSqliteFiles(directory) {
|
|
7
|
+
return scanForUnregisteredFiles(Engine.SQLite, directory);
|
|
8
|
+
}
|
|
9
|
+
export function deriveContainerName(fileName) {
|
|
10
|
+
return sharedDeriveContainerName(fileName, Engine.SQLite);
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=scanner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scanner.js","sourceRoot":"","sources":["../../../engines/sqlite/scanner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EACL,wBAAwB,EACxB,mBAAmB,IAAI,yBAAyB,GAEjD,MAAM,qBAAqB,CAAA;AAI5B,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,SAAkB;IAElB,OAAO,wBAAwB,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;AAC3D,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,QAAgB;IAClD,OAAO,yBAAyB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;AAC3D,CAAC"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SQLite Version Maps
|
|
3
|
+
*
|
|
4
|
+
* TEMPORARY: This version map will be replaced by the hostdb npm package once published.
|
|
5
|
+
* Until then, manually keep this in sync with robertjbass/hostdb releases.json:
|
|
6
|
+
* https://github.com/robertjbass/hostdb/blob/main/releases.json
|
|
7
|
+
*
|
|
8
|
+
* When updating versions:
|
|
9
|
+
* 1. Check hostdb releases.json for available versions
|
|
10
|
+
* 2. Update SQLITE_VERSION_MAP to match
|
|
11
|
+
*/
|
|
12
|
+
import { logDebug } from '../../core/error-handler.js';
|
|
13
|
+
/**
|
|
14
|
+
* Map of major SQLite versions to their latest stable patch versions.
|
|
15
|
+
* Must match versions available in hostdb releases.json.
|
|
16
|
+
*/
|
|
17
|
+
export const SQLITE_VERSION_MAP = {
|
|
18
|
+
// 1-part: major version → latest
|
|
19
|
+
'3': '3.51.2',
|
|
20
|
+
// 2-part: major.minor → latest patch
|
|
21
|
+
'3.51': '3.51.2',
|
|
22
|
+
// 3-part: exact version (identity mapping)
|
|
23
|
+
'3.51.2': '3.51.2',
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* Supported major SQLite versions (1-part format).
|
|
27
|
+
* Used for grouping and display purposes.
|
|
28
|
+
*/
|
|
29
|
+
export const SUPPORTED_MAJOR_VERSIONS = ['3'];
|
|
30
|
+
/**
|
|
31
|
+
* Get the full version string for a major version.
|
|
32
|
+
*
|
|
33
|
+
* @param majorVersion - Major version (e.g., '3')
|
|
34
|
+
* @returns Full version string (e.g., '3.51.2') or null if not supported
|
|
35
|
+
*/
|
|
36
|
+
export function getFullVersion(majorVersion) {
|
|
37
|
+
return SQLITE_VERSION_MAP[majorVersion] || null;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Normalize a version string to X.Y.Z format.
|
|
41
|
+
*
|
|
42
|
+
* @param version - Version string (e.g., '3', '3.51', '3.51.2')
|
|
43
|
+
* @returns Normalized version (e.g., '3.51.2')
|
|
44
|
+
*/
|
|
45
|
+
export function normalizeVersion(version) {
|
|
46
|
+
// If it's a version key in the map (major, major.minor, or full), return the mapped version
|
|
47
|
+
// Identity mappings for 3-part versions (e.g., '3.51.2' -> '3.51.2') are already in the map
|
|
48
|
+
const fullVersion = SQLITE_VERSION_MAP[version];
|
|
49
|
+
if (fullVersion) {
|
|
50
|
+
return fullVersion;
|
|
51
|
+
}
|
|
52
|
+
// Unknown version - log at debug level and return as-is
|
|
53
|
+
// This may cause download failures if the version doesn't exist in hostdb
|
|
54
|
+
logDebug(`SQLite version '${version}' not in version map, may not be available in hostdb`);
|
|
55
|
+
return version;
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=version-maps.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version-maps.js","sourceRoot":"","sources":["../../../engines/sqlite/version-maps.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AAEnD;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAA2B;IACxD,iCAAiC;IACjC,GAAG,EAAE,QAAQ;IACb,qCAAqC;IACrC,MAAM,EAAE,QAAQ;IAChB,2CAA2C;IAC3C,QAAQ,EAAE,QAAQ;CACnB,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,GAAG,CAAC,CAAA;AAE7C;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,YAAoB;IACjD,OAAO,kBAAkB,CAAC,YAAY,CAAC,IAAI,IAAI,CAAA;AACjD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,4FAA4F;IAC5F,4FAA4F;IAC5F,MAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAA;IAC/C,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,WAAW,CAAA;IACpB,CAAC;IAED,wDAAwD;IACxD,0EAA0E;IAC1E,QAAQ,CACN,mBAAmB,OAAO,sDAAsD,CACjF,CAAA;IACD,OAAO,OAAO,CAAA;AAChB,CAAC"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SurrealDB backup module
|
|
3
|
+
* Supports SurrealQL-based backups using surreal export
|
|
4
|
+
*
|
|
5
|
+
* SurrealDB backup formats:
|
|
6
|
+
* - SurrealQL: Schema + data as SurrealQL statements (portable, human-readable)
|
|
7
|
+
*/
|
|
8
|
+
import { spawn } from 'child_process';
|
|
9
|
+
import { stat, mkdir } from 'fs/promises';
|
|
10
|
+
import { existsSync } from 'fs';
|
|
11
|
+
import { dirname } from 'path';
|
|
12
|
+
import { logDebug } from '../../core/error-handler.js';
|
|
13
|
+
import { requireSurrealPath } from './cli-utils.js';
|
|
14
|
+
/**
|
|
15
|
+
* Create a SurrealQL backup using surreal export
|
|
16
|
+
*/
|
|
17
|
+
async function createSurqlBackup(container, outputPath, database) {
|
|
18
|
+
const { port, version } = container;
|
|
19
|
+
// SurrealDB uses namespace/database hierarchy - use container name as namespace
|
|
20
|
+
const namespace = container.name.replace(/-/g, '_');
|
|
21
|
+
const surrealPath = await requireSurrealPath(version);
|
|
22
|
+
// Ensure output directory exists
|
|
23
|
+
const outputDir = dirname(outputPath);
|
|
24
|
+
if (!existsSync(outputDir)) {
|
|
25
|
+
await mkdir(outputDir, { recursive: true });
|
|
26
|
+
}
|
|
27
|
+
return new Promise((resolve, reject) => {
|
|
28
|
+
// surreal export command
|
|
29
|
+
const args = [
|
|
30
|
+
'export',
|
|
31
|
+
'--endpoint',
|
|
32
|
+
`http://127.0.0.1:${port}`,
|
|
33
|
+
'--user',
|
|
34
|
+
'root',
|
|
35
|
+
'--pass',
|
|
36
|
+
'root',
|
|
37
|
+
'--ns',
|
|
38
|
+
namespace,
|
|
39
|
+
'--db',
|
|
40
|
+
database,
|
|
41
|
+
outputPath,
|
|
42
|
+
];
|
|
43
|
+
logDebug(`Running: surreal ${args.join(' ')}`);
|
|
44
|
+
const proc = spawn(surrealPath, args, {
|
|
45
|
+
stdio: ['ignore', 'pipe', 'pipe'],
|
|
46
|
+
});
|
|
47
|
+
let _stdout = '';
|
|
48
|
+
let stderr = '';
|
|
49
|
+
proc.stdout.on('data', (data) => {
|
|
50
|
+
_stdout += data.toString();
|
|
51
|
+
});
|
|
52
|
+
proc.stderr.on('data', (data) => {
|
|
53
|
+
stderr += data.toString();
|
|
54
|
+
});
|
|
55
|
+
proc.on('error', reject);
|
|
56
|
+
proc.on('close', async (code) => {
|
|
57
|
+
if (code === 0) {
|
|
58
|
+
try {
|
|
59
|
+
const stats = await stat(outputPath);
|
|
60
|
+
resolve({
|
|
61
|
+
path: outputPath,
|
|
62
|
+
format: 'surql',
|
|
63
|
+
size: stats.size,
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
catch (error) {
|
|
67
|
+
reject(new Error(`Backup file not created: ${error}`));
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
else if (code === null) {
|
|
71
|
+
reject(new Error(`surreal export was terminated by signal${stderr ? `: ${stderr}` : ''}`));
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
reject(new Error(`surreal export exited with code ${code}${stderr ? `: ${stderr}` : ''}`));
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Create a backup
|
|
81
|
+
*
|
|
82
|
+
* @param container - Container configuration
|
|
83
|
+
* @param outputPath - Path to write backup file
|
|
84
|
+
* @param options - Backup options
|
|
85
|
+
*/
|
|
86
|
+
export async function createBackup(container, outputPath, options) {
|
|
87
|
+
const database = options.database || container.database || 'default';
|
|
88
|
+
return createSurqlBackup(container, outputPath, database);
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Create a backup for cloning purposes
|
|
92
|
+
* Uses SurrealQL format for reliability
|
|
93
|
+
*/
|
|
94
|
+
export async function createCloneBackup(container, outputPath) {
|
|
95
|
+
return createSurqlBackup(container, outputPath, container.database || 'default');
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=backup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backup.js","sourceRoot":"","sources":["../../../engines/surrealdb/backup.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SurrealDB Binary Manager
|
|
3
|
+
*
|
|
4
|
+
* Handles downloading, extracting, and managing SurrealDB binaries from hostdb.
|
|
5
|
+
* Extends BaseBinaryManager for shared download/extraction logic.
|
|
6
|
+
*/
|
|
7
|
+
import { BaseBinaryManager, } from '../../core/base-binary-manager.js';
|
|
8
|
+
import { getBinaryUrl } from './binary-urls.js';
|
|
9
|
+
import { normalizeVersion } from './version-maps.js';
|
|
10
|
+
import { Engine } from '../../types/index.js';
|
|
11
|
+
class SurrealDBBinaryManager extends BaseBinaryManager {
|
|
12
|
+
config = {
|
|
13
|
+
engine: Engine.SurrealDB,
|
|
14
|
+
engineName: 'surrealdb',
|
|
15
|
+
displayName: 'SurrealDB',
|
|
16
|
+
serverBinary: 'surreal',
|
|
17
|
+
};
|
|
18
|
+
getBinaryUrlFromModule(version, platform, arch) {
|
|
19
|
+
return getBinaryUrl(version, platform, arch);
|
|
20
|
+
}
|
|
21
|
+
normalizeVersionFromModule(version) {
|
|
22
|
+
return normalizeVersion(version);
|
|
23
|
+
}
|
|
24
|
+
parseVersionFromOutput(stdout) {
|
|
25
|
+
// Extract version from output like:
|
|
26
|
+
// "surreal 2.3.2 for linux on x86_64"
|
|
27
|
+
// or just "2.3.2"
|
|
28
|
+
const match = stdout.match(/(\d+\.\d+\.\d+)/);
|
|
29
|
+
return match?.[1] ?? null;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
export const surrealdbBinaryManager = new SurrealDBBinaryManager();
|
|
33
|
+
//# sourceMappingURL=binary-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"binary-manager.js","sourceRoot":"","sources":["../../../engines/surrealdb/binary-manager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,iBAAiB,GAElB,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,EAAE,MAAM,EAA4B,MAAM,aAAa,CAAA;AAE9D,MAAM,sBAAuB,SAAQ,iBAAiB;IACjC,MAAM,GAAwB;QAC/C,MAAM,EAAE,MAAM,CAAC,SAAS;QACxB,UAAU,EAAE,WAAW;QACvB,WAAW,EAAE,WAAW;QACxB,YAAY,EAAE,SAAS;KACxB,CAAA;IAES,sBAAsB,CAC9B,OAAe,EACf,QAAkB,EAClB,IAAU;QAEV,OAAO,YAAY,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;IAC9C,CAAC;IAES,0BAA0B,CAAC,OAAe;QAClD,OAAO,gBAAgB,CAAC,OAAO,CAAC,CAAA;IAClC,CAAC;IAES,sBAAsB,CAAC,MAAc;QAC7C,oCAAoC;QACpC,sCAAsC;QACtC,kBAAkB;QAClB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAA;QAC7C,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAA;IAC3B,CAAC;CACF;AAED,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,sBAAsB,EAAE,CAAA"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SurrealDB binary URL generation
|
|
3
|
+
*
|
|
4
|
+
* Generates download URLs for SurrealDB binaries from the layerbase registry.
|
|
5
|
+
*/
|
|
6
|
+
import { Engine } from '../../types/index.js';
|
|
7
|
+
import { normalizeVersion } from './version-maps.js';
|
|
8
|
+
import { buildHostdbUrl } from '../../core/hostdb-client.js';
|
|
9
|
+
/**
|
|
10
|
+
* Get the binary download URL for a specific version and platform
|
|
11
|
+
*
|
|
12
|
+
* URL format: https://registry.layerbase.host/surrealdb-{version}/surrealdb-{version}-{platform}-{arch}.{ext}
|
|
13
|
+
*
|
|
14
|
+
* @param version - SurrealDB version (e.g., '2.3.2' or '2')
|
|
15
|
+
* @param platform - Target platform (darwin, linux, win32)
|
|
16
|
+
* @param arch - Target architecture (x64, arm64)
|
|
17
|
+
*/
|
|
18
|
+
export function getBinaryUrl(version, platform, arch) {
|
|
19
|
+
const fullVersion = normalizeVersion(version);
|
|
20
|
+
const ext = platform === 'win32' ? 'zip' : 'tar.gz';
|
|
21
|
+
return buildHostdbUrl(Engine.SurrealDB, {
|
|
22
|
+
version: fullVersion,
|
|
23
|
+
hostdbPlatform: `${platform}-${arch}`,
|
|
24
|
+
extension: ext,
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Get the archive extension for a platform
|
|
29
|
+
*/
|
|
30
|
+
export function getArchiveExtension(platform) {
|
|
31
|
+
return platform === 'win32' ? 'zip' : 'tar.gz';
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=binary-urls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"binary-urls.js","sourceRoot":"","sources":["../../../engines/surrealdb/binary-urls.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAA4B,MAAM,aAAa,CAAA;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAEzD;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAC1B,OAAe,EACf,QAAkB,EAClB,IAAU;IAEV,MAAM,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAA;IAC7C,MAAM,GAAG,GAAG,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAA;IAEnD,OAAO,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE;QACtC,OAAO,EAAE,WAAW;QACpB,cAAc,EAAE,GAAG,QAAQ,IAAI,IAAI,EAAE;QACrC,SAAS,EAAE,GAAG;KACf,CAAC,CAAA;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAkB;IACpD,OAAO,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAA;AAChD,CAAC"}
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SurrealDB CLI utilities
|
|
3
|
+
*
|
|
4
|
+
* Helper functions for working with SurrealDB command-line tools.
|
|
5
|
+
*/
|
|
6
|
+
import { existsSync } from 'fs';
|
|
7
|
+
import { join } from 'path';
|
|
8
|
+
import { paths } from '../../config/paths.js';
|
|
9
|
+
import { configManager } from '../../core/config-manager.js';
|
|
10
|
+
import { platformService } from '../../core/platform-service.js';
|
|
11
|
+
import { normalizeVersion } from './version-maps.js';
|
|
12
|
+
export const SURREAL_NOT_FOUND_ERROR = 'SurrealDB binary not found. Run: spindb engines download surrealdb <version>';
|
|
13
|
+
/**
|
|
14
|
+
* Get the path to the surreal binary
|
|
15
|
+
*
|
|
16
|
+
* First checks the config cache, then looks in the downloaded binaries directory.
|
|
17
|
+
* Returns null if not found.
|
|
18
|
+
*/
|
|
19
|
+
export async function getSurrealPath() {
|
|
20
|
+
// Check config cache first
|
|
21
|
+
const cached = await configManager.getBinaryPath('surreal');
|
|
22
|
+
if (cached && existsSync(cached)) {
|
|
23
|
+
return cached;
|
|
24
|
+
}
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Get the surreal binary path for a specific version
|
|
29
|
+
*/
|
|
30
|
+
export async function getSurrealPathForVersion(version) {
|
|
31
|
+
const { platform, arch } = platformService.getPlatformInfo();
|
|
32
|
+
const fullVersion = normalizeVersion(version);
|
|
33
|
+
const ext = platformService.getExecutableExtension();
|
|
34
|
+
const binPath = paths.getBinaryPath({
|
|
35
|
+
engine: 'surrealdb',
|
|
36
|
+
version: fullVersion,
|
|
37
|
+
platform,
|
|
38
|
+
arch,
|
|
39
|
+
});
|
|
40
|
+
const surrealPath = join(binPath, 'bin', `surreal${ext}`);
|
|
41
|
+
if (existsSync(surrealPath)) {
|
|
42
|
+
return surrealPath;
|
|
43
|
+
}
|
|
44
|
+
return null;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Require the surreal binary path, throwing if not found
|
|
48
|
+
*/
|
|
49
|
+
export async function requireSurrealPath(version) {
|
|
50
|
+
// If version provided, look for that specific version
|
|
51
|
+
if (version) {
|
|
52
|
+
const path = await getSurrealPathForVersion(version);
|
|
53
|
+
if (path) {
|
|
54
|
+
return path;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
// Try config cache
|
|
58
|
+
const cached = await getSurrealPath();
|
|
59
|
+
if (cached) {
|
|
60
|
+
return cached;
|
|
61
|
+
}
|
|
62
|
+
throw new Error(SURREAL_NOT_FOUND_ERROR);
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Validate a SurrealDB identifier (namespace, database, table name)
|
|
66
|
+
* SurrealDB identifiers follow specific rules
|
|
67
|
+
*
|
|
68
|
+
* Valid identifiers:
|
|
69
|
+
* - Start with letter or underscore
|
|
70
|
+
* - Contain letters, digits, underscores
|
|
71
|
+
* - Max 63 characters
|
|
72
|
+
*
|
|
73
|
+
* @throws Error if identifier is invalid
|
|
74
|
+
*/
|
|
75
|
+
export function validateSurrealIdentifier(identifier, type = 'database') {
|
|
76
|
+
if (!identifier) {
|
|
77
|
+
throw new Error(`${type} name cannot be empty`);
|
|
78
|
+
}
|
|
79
|
+
if (identifier.length > 63) {
|
|
80
|
+
throw new Error(`${type} name cannot exceed 63 characters`);
|
|
81
|
+
}
|
|
82
|
+
// SurrealDB identifier rules
|
|
83
|
+
const validPattern = /^[a-zA-Z_][a-zA-Z0-9_]*$/;
|
|
84
|
+
if (!validPattern.test(identifier)) {
|
|
85
|
+
throw new Error(`Invalid ${type} name "${identifier}". ` +
|
|
86
|
+
`Must start with a letter or underscore and contain only letters, digits, and underscores.`);
|
|
87
|
+
}
|
|
88
|
+
// Check for reserved words
|
|
89
|
+
const reserved = [
|
|
90
|
+
'namespace',
|
|
91
|
+
'database',
|
|
92
|
+
'table',
|
|
93
|
+
'field',
|
|
94
|
+
'index',
|
|
95
|
+
'event',
|
|
96
|
+
'param',
|
|
97
|
+
'function',
|
|
98
|
+
'token',
|
|
99
|
+
'scope',
|
|
100
|
+
'true',
|
|
101
|
+
'false',
|
|
102
|
+
'null',
|
|
103
|
+
'none',
|
|
104
|
+
'and',
|
|
105
|
+
'or',
|
|
106
|
+
'not',
|
|
107
|
+
'if',
|
|
108
|
+
'then',
|
|
109
|
+
'else',
|
|
110
|
+
'for',
|
|
111
|
+
'in',
|
|
112
|
+
'where',
|
|
113
|
+
'select',
|
|
114
|
+
'from',
|
|
115
|
+
'create',
|
|
116
|
+
'update',
|
|
117
|
+
'delete',
|
|
118
|
+
'insert',
|
|
119
|
+
'define',
|
|
120
|
+
'remove',
|
|
121
|
+
'begin',
|
|
122
|
+
'commit',
|
|
123
|
+
'cancel',
|
|
124
|
+
'return',
|
|
125
|
+
'let',
|
|
126
|
+
'use',
|
|
127
|
+
'info',
|
|
128
|
+
'live',
|
|
129
|
+
'kill',
|
|
130
|
+
'sleep',
|
|
131
|
+
'throw',
|
|
132
|
+
'break',
|
|
133
|
+
'continue',
|
|
134
|
+
];
|
|
135
|
+
if (reserved.includes(identifier.toLowerCase())) {
|
|
136
|
+
throw new Error(`"${identifier}" is a reserved word and cannot be used as a ${type} name`);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Escape a SurrealDB identifier for use in SurrealQL
|
|
141
|
+
* Uses backticks for quoting
|
|
142
|
+
*/
|
|
143
|
+
export function escapeSurrealIdentifier(identifier) {
|
|
144
|
+
// Escape any backticks and wrap in backticks
|
|
145
|
+
return `\`${identifier.replace(/`/g, '\\`')}\``;
|
|
146
|
+
}
|
|
147
|
+
//# sourceMappingURL=cli-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-utils.js","sourceRoot":"","sources":["../../../engines/surrealdb/cli-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* hostdb Releases Module for SurrealDB
|
|
3
|
+
*
|
|
4
|
+
* Fetches SurrealDB binary information from the hostdb repository at
|
|
5
|
+
* https://github.com/robertjbass/hostdb
|
|
6
|
+
*/
|
|
7
|
+
import { createHostdbReleases } from '../../core/hostdb-releases-factory.js';
|
|
8
|
+
import { SURREALDB_VERSION_MAP, SUPPORTED_MAJOR_VERSIONS } from './version-maps.js';
|
|
9
|
+
import { surrealdbBinaryManager } from './binary-manager.js';
|
|
10
|
+
import { Engine } from '../../types/index.js';
|
|
11
|
+
const hostdbReleases = createHostdbReleases({
|
|
12
|
+
engine: Engine.SurrealDB,
|
|
13
|
+
displayName: 'SurrealDB',
|
|
14
|
+
versionMap: SURREALDB_VERSION_MAP,
|
|
15
|
+
supportedMajorVersions: SUPPORTED_MAJOR_VERSIONS,
|
|
16
|
+
groupingStrategy: 'single-digit',
|
|
17
|
+
listInstalled: () => surrealdbBinaryManager.listInstalled(),
|
|
18
|
+
});
|
|
19
|
+
export const fetchAvailableVersions = hostdbReleases.fetchAvailableVersions;
|
|
20
|
+
export const getLatestVersion = hostdbReleases.getLatestVersion;
|
|
21
|
+
//# sourceMappingURL=hostdb-releases.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hostdb-releases.js","sourceRoot":"","sources":["../../../engines/surrealdb/hostdb-releases.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAA;AACzE,OAAO,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAA;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAA;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,MAAM,cAAc,GAAG,oBAAoB,CAAC;IAC1C,MAAM,EAAE,MAAM,CAAC,SAAS;IACxB,WAAW,EAAE,WAAW;IACxB,UAAU,EAAE,qBAAqB;IACjC,sBAAsB,EAAE,wBAAwB;IAChD,gBAAgB,EAAE,cAAc;IAChC,aAAa,EAAE,GAAG,EAAE,CAAC,sBAAsB,CAAC,aAAa,EAAE;CAC5D,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,cAAc,CAAC,sBAAsB,CAAA;AAC3E,MAAM,CAAC,MAAM,gBAAgB,GAAG,cAAc,CAAC,gBAAgB,CAAA"}
|