{"_id":"pg-embedded","_rev":"7-fcd11a6b4a26f012bc0b7e4ea7fce0c9","name":"pg-embedded","dist-tags":{"latest":"0.2.3"},"versions":{"0.1.0":{"name":"pg-embedded","version":"0.1.0","keywords":["postgresql","postgres","embedded","database","testing","integration-tests","typescript","rust","napi-rs","node-addon","cross-platform","embedded-database","test-database","development-database","in-memory-database","database-testing","ci-cd","unit-testing","sql","relational-database"],"author":{"url":"https://github.com/PgTsLab","name":"PgTsLab","email":"kingsword09@gmail.com"},"license":"Apache-2.0","_id":"pg-embedded@0.1.0","maintainers":[{"name":"kingsword09","email":"kingsword09@live.com"}],"contributors":[{"url":"https://github.com/kingsword09","name":"Kingsword","email":"kingsword09@gmail.com"}],"homepage":"https://github.com/PgTsLabs/pg-embedded#readme","bugs":{"url":"https://github.com/PgTsLabs/pg-embedded/issues"},"ava":{"timeout":"2m","extensions":{"ts":"module"},"nodeArguments":["--import","@oxc-node/core/register"],"workerThreads":false,"environmentVariables":{"TS_NODE_PROJECT":"./tsconfig.json"}},"dist":{"shasum":"c135c7d0068ae16373fbd80e3086929a4be85f47","tarball":"https://registry.npmjs.org/pg-embedded/-/pg-embedded-0.1.0.tgz","fileCount":9,"integrity":"sha512-DRaRc/eWXd5+Di6eGXn5tFyDszYcL+zG+fCi/AJZEQ8PBj/qEOQ0Q7KCYIusLIag5CMu0Hv+iit/+fMXUrossA==","signatures":[{"sig":"MEQCIEyFv+6zHSwyDUVUNVq6Ld3zLLH7mjJw7OrJYNzYjIf9AiApM/uFpY+SkDZ1ajF086DuIi9Cb7ERjOJx8jSmDbSOng==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pg-embedded@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":54330},"main":"index.cjs","napi":{"targets":["x86_64-apple-darwin","aarch64-apple-darwin","x86_64-unknown-linux-gnu","x86_64-pc-windows-msvc","x86_64-unknown-linux-musl","aarch64-unknown-linux-gnu","armv7-unknown-linux-gnueabihf","aarch64-linux-android","aarch64-unknown-linux-musl","armv7-linux-androideabi"],"binaryName":"pg-embedded","packageName":"@pg-ts/pg-embedded"},"type":"module","types":"index.d.ts","module":"index.js","engines":{"node":">= 10"},"exports":{"types":"./index.d.ts","import":"./index.js","require":"./index.cjs"},"funding":{"url":"https://github.com/sponsors/PgTsLab","type":"github"},"gitHead":"b3dc9813bca7c45e5a35edfe8a58c4e83ef99156","scripts":{"lint":"oxlint","test":"ava","bench":"node --import @oxc-node/core/register benchmark/bench.ts","build":"napi build --platform --release --js binding.cjs --dts binding.d.ts","check":"run-s format lint test:basic","clean":"rimraf target/ *.node npm/ binding.d.ts binding.cjs","format":"run-p format:prettier format:rs format:toml","pg:test":"node scripts/test-version-scripts.js","version":"napi version","examples":"run-s examples:*","lint:fix":"oxlint --fix","test:all":"run-s test:basic test:performance test:stability","validate":"node scripts/validate-release.js","artifacts":"napi artifacts","build:all":"napi build --platform --release --js binding.cjs --dts binding.d.ts && pnpm artifacts","format:rs":"cargo fmt","pg:update":"node scripts/update-pg-version.js","pg:version":"node scripts/extract-pg-version.js","prerelease":"run-s validate","test:basic":"ava test/basic.test.ts test/connection.test.ts test/async-integration.test.ts","build:check":"node scripts/build-check.js","build:debug":"napi build --platform --js binding.cjs --dts binding.d.ts","format:toml":"taplo format","test:startup":"node test-pg-startup.js","release:major":"run-s release:prepare:major release:publish","release:minor":"run-s release:prepare:minor release:publish","release:patch":"run-s release:prepare release:publish","examples:async":"node examples/async-example.js","pg:version:win":"powershell -ExecutionPolicy Bypass -File scripts/extract-pg-version.ps1","prepublishOnly":"napi prepublish -t npm","test:stability":"ava test/stability.test.ts","examples:simple":"node examples/simple-example.js","format:prettier":"prettier . -w","release:prepare":"node scripts/prepare-release.js","release:publish":"node scripts/publish-release.js","examples:testing":"node examples/testing-example.js","test:performance":"ava test/performance-benchmarks.test.ts","release:publish:dry":"node scripts/publish-release.js --dry-run","release:prepare:major":"node scripts/prepare-release.js major","release:prepare:minor":"node scripts/prepare-release.js minor"},"_npmUser":{"name":"kingsword09","email":"kingsword09@live.com"},"prettier":{"semi":false,"printWidth":120,"arrowParens":"always","singleQuote":true,"trailingComma":"all"},"repository":{"url":"git+ssh://git@github.com/PgTsLabs/pg-embedded.git","type":"git"},"_npmVersion":"10.8.2","description":"Embedded PostgreSQL database for Node.js - Easy setup, high performance, TypeScript support","directories":{},"lint-staged":{"*.toml":["taplo format"],"*.@(js|ts|tsx)":["oxlint --fix"],"*.@(js|ts|tsx|yml|yaml|md|json)":["prettier --write"]},"_nodeVersion":"20.19.4","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":true},"_hasShrinkwrap":false,"packageManager":"pnpm@10.13.1","devDependencies":{"ava":"^6.4.1","chalk":"^5.4.1","husky":"^9.1.7","oxlint":"^1.8.0","rimraf":"^6.0.1","prettier":"^3.6.2","tinybench":"^4.0.1","@taplo/cli":"^0.7.0","typescript":"^5.8.3","@types/node":"^24.1.0","lint-staged":"^16.1.2","@napi-rs/cli":"^3.0.3","npm-run-all2":"^8.0.4","@oxc-node/core":"^0.0.30"},"optionalDependencies":{"@pg-ts/pg-embedded-darwin-x64":"0.1.0+pg17.5","@pg-ts/pg-embedded-darwin-arm64":"0.1.0+pg17.5","@pg-ts/pg-embedded-android-arm64":"0.1.0+pg17.5","@pg-ts/pg-embedded-linux-x64-gnu":"0.1.0+pg17.5","@pg-ts/pg-embedded-linux-x64-musl":"0.1.0+pg17.5","@pg-ts/pg-embedded-win32-x64-msvc":"0.1.0+pg17.5","@pg-ts/pg-embedded-linux-arm64-gnu":"0.1.0+pg17.5","@pg-ts/pg-embedded-android-arm-eabi":"0.1.0+pg17.5","@pg-ts/pg-embedded-linux-arm64-musl":"0.1.0+pg17.5","@pg-ts/pg-embedded-linux-arm-gnueabihf":"0.1.0+pg17.5"},"_npmOperationalInternal":{"tmp":"tmp/pg-embedded_0.1.0_1754005920435_0.7364020953393082","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"pg-embedded","version":"0.1.1","keywords":["postgresql","postgres","embedded","database","testing","integration-tests","typescript","rust","napi-rs","node-addon","cross-platform","embedded-database","test-database","development-database","in-memory-database","database-testing","ci-cd","unit-testing","sql","relational-database"],"author":{"url":"https://github.com/PgTsLab","name":"PgTsLab","email":"kingsword09@gmail.com"},"license":"Apache-2.0","_id":"pg-embedded@0.1.1","maintainers":[{"name":"kingsword09","email":"kingsword09@live.com"}],"contributors":[{"url":"https://github.com/kingsword09","name":"Kingsword","email":"kingsword09@gmail.com"}],"homepage":"https://github.com/PgTsLabs/pg-embedded#readme","bugs":{"url":"https://github.com/PgTsLabs/pg-embedded/issues"},"ava":{"timeout":"2m","extensions":{"ts":"module"},"nodeArguments":["--import","@oxc-node/core/register"],"workerThreads":false,"environmentVariables":{"TS_NODE_PROJECT":"./tsconfig.json"}},"dist":{"shasum":"ed99152df7c565c21c156b73f5c5b8ee95be6727","tarball":"https://registry.npmjs.org/pg-embedded/-/pg-embedded-0.1.1.tgz","fileCount":9,"integrity":"sha512-H8N1A4qACB6RHl5UaKjZeSPBtodVIcTnXGHu4XudhaOQZNig5CZLSwQaTsslX1g9xATikp/U+UCAPzyuYzSfMA==","signatures":[{"sig":"MEQCIFy5gaExboFJEqaRFStjsjldYo+qeBn+FNf5HGYibgnMAiAi7KqGseLZoCRB1wI4gIXJSUh9+Vrxl5AGftvK4vHsEA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pg-embedded@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":75642},"main":"index.cjs","napi":{"targets":["x86_64-apple-darwin","aarch64-apple-darwin","x86_64-unknown-linux-gnu","x86_64-pc-windows-msvc","x86_64-unknown-linux-musl","aarch64-unknown-linux-gnu","armv7-unknown-linux-gnueabihf","aarch64-linux-android","aarch64-unknown-linux-musl","armv7-linux-androideabi"],"binaryName":"pg-embedded","packageName":"@pg-ts/pg-embedded"},"type":"module","types":"index.d.ts","module":"index.js","engines":{"node":">= 10"},"exports":{"types":"./index.d.ts","import":"./index.js","require":"./index.cjs"},"funding":{"url":"https://github.com/sponsors/PgTsLab","type":"github"},"gitHead":"2f6739a2789d166fe2f1e2c8f2088d03792c483b","scripts":{"lint":"oxlint","test":"ava","bench":"node --import @oxc-node/core/register benchmark/bench.ts","build":"napi build --platform --release --js binding.cjs --dts binding.d.ts","check":"run-s format lint test:basic","clean":"rimraf target/ *.node npm/ binding.d.ts binding.cjs","format":"run-p format:prettier format:rs format:toml","pg:test":"node scripts/test-version-scripts.js","version":"napi version","examples":"run-s examples:*","lint:fix":"oxlint --fix","test:all":"run-s test:basic test:performance test:stability","validate":"node scripts/validate-release.js","artifacts":"napi artifacts","build:all":"napi build --platform --release --js binding.cjs --dts binding.d.ts && pnpm artifacts","format:rs":"cargo fmt","pg:update":"node scripts/update-pg-version.js","pg:version":"node scripts/extract-pg-version.js","prerelease":"run-s validate","test:basic":"ava __test__/basic.test.ts __test__/connection.test.ts __test__/async-integration.test.ts","build:check":"node scripts/build-check.js","build:debug":"napi build --platform --js binding.cjs --dts binding.d.ts","format:toml":"taplo format","test:startup":"node test-pg-startup.js","release:major":"run-s release:prepare:major release:publish","release:minor":"run-s release:prepare:minor release:publish","release:patch":"run-s release:prepare release:publish","examples:async":"node examples/async-example.js","pg:version:win":"powershell -ExecutionPolicy Bypass -File scripts/extract-pg-version.ps1","prepublishOnly":"napi prepublish -t npm","test:stability":"ava __test__/stability.test.ts","examples:simple":"node examples/simple-example.js","format:prettier":"prettier . -w","release:prepare":"node scripts/prepare-release.js","release:publish":"node scripts/publish-release.js","examples:testing":"node examples/testing-example.js","test:performance":"ava __test__/performance-benchmarks.test.ts","release:publish:dry":"node scripts/publish-release.js --dry-run","release:prepare:major":"node scripts/prepare-release.js major","release:prepare:minor":"node scripts/prepare-release.js minor"},"_npmUser":{"name":"kingsword09","email":"kingsword09@live.com"},"prettier":{"semi":false,"printWidth":120,"arrowParens":"always","singleQuote":true,"trailingComma":"all"},"repository":{"url":"git+ssh://git@github.com/PgTsLabs/pg-embedded.git","type":"git"},"_npmVersion":"10.8.2","description":"Embedded PostgreSQL database for Node.js - Easy setup, high performance, TypeScript support","directories":{},"lint-staged":{"*.toml":["taplo format"],"*.@(js|ts|tsx)":["oxlint --fix"],"*.@(js|ts|tsx|yml|yaml|md|json)":["prettier --write"]},"_nodeVersion":"20.19.4","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":true},"_hasShrinkwrap":false,"packageManager":"pnpm@10.13.1","devDependencies":{"ava":"^6.4.1","chalk":"^5.4.1","husky":"^9.1.7","oxlint":"^1.8.0","rimraf":"^6.0.1","prettier":"^3.6.2","tinybench":"^4.0.1","@taplo/cli":"^0.7.0","typescript":"^5.8.3","@types/node":"^24.1.0","lint-staged":"^16.1.2","@napi-rs/cli":"^3.0.3","npm-run-all2":"^8.0.4","@oxc-node/core":"^0.0.30"},"optionalDependencies":{"@pg-ts/pg-embedded-darwin-x64":"0.1.1+pg17.5","@pg-ts/pg-embedded-darwin-arm64":"0.1.1+pg17.5","@pg-ts/pg-embedded-android-arm64":"0.1.1+pg17.5","@pg-ts/pg-embedded-linux-x64-gnu":"0.1.1+pg17.5","@pg-ts/pg-embedded-linux-x64-musl":"0.1.1+pg17.5","@pg-ts/pg-embedded-win32-x64-msvc":"0.1.1+pg17.5","@pg-ts/pg-embedded-linux-arm64-gnu":"0.1.1+pg17.5","@pg-ts/pg-embedded-android-arm-eabi":"0.1.1+pg17.5","@pg-ts/pg-embedded-linux-arm64-musl":"0.1.1+pg17.5","@pg-ts/pg-embedded-linux-arm-gnueabihf":"0.1.1+pg17.5"},"_npmOperationalInternal":{"tmp":"tmp/pg-embedded_0.1.1_1754092965859_0.6767645061605887","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"pg-embedded","version":"0.1.2","keywords":["postgresql","postgres","embedded","database","testing","integration-tests","typescript","rust","napi-rs","node-addon","cross-platform","embedded-database","test-database","development-database","in-memory-database","database-testing","ci-cd","unit-testing","sql","relational-database"],"author":{"url":"https://github.com/PgTsLab","name":"PgTsLab","email":"kingsword09@gmail.com"},"license":"Apache-2.0","_id":"pg-embedded@0.1.2","maintainers":[{"name":"kingsword09","email":"kingsword09@live.com"}],"contributors":[{"url":"https://github.com/kingsword09","name":"Kingsword","email":"kingsword09@gmail.com"}],"homepage":"https://github.com/PgTsLabs/pg-embedded#readme","bugs":{"url":"https://github.com/PgTsLabs/pg-embedded/issues"},"ava":{"timeout":"2m","extensions":{"ts":"module"},"nodeArguments":["--import","@oxc-node/core/register"],"workerThreads":false,"environmentVariables":{"TS_NODE_PROJECT":"./tsconfig.json"}},"dist":{"shasum":"1e99f0742676eb85aff6a2ce786541e3ecb1326a","tarball":"https://registry.npmjs.org/pg-embedded/-/pg-embedded-0.1.2.tgz","fileCount":9,"integrity":"sha512-t1LQa++/joM09J72Uo8QGQe1wkfwzKtiIYcZSCUPQOlEgTJwXX/2LbTLYQYHvVwz2Dil9NiNRcVdKMsYuEnMEw==","signatures":[{"sig":"MEYCIQCGMBeS1k+x523FD6+6sagMX4vabihWMVlS2zJDipdAJAIhANBewSI4wd2TPGDAku0f2uWFEdw63c6zeBg0uy42ASvN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pg-embedded@0.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":94329},"main":"index.cjs","napi":{"targets":["x86_64-apple-darwin","aarch64-apple-darwin","x86_64-unknown-linux-gnu","x86_64-pc-windows-msvc","x86_64-unknown-linux-musl","aarch64-unknown-linux-gnu","armv7-unknown-linux-gnueabihf","aarch64-linux-android","aarch64-unknown-linux-musl","armv7-linux-androideabi"],"binaryName":"pg-embedded","packageName":"@pg-ts/pg-embedded"},"type":"module","types":"index.d.ts","module":"index.js","engines":{"node":">= 10"},"exports":{"types":"./index.d.ts","import":"./index.js","require":"./index.cjs"},"funding":{"url":"https://github.com/sponsors/PgTsLab","type":"github"},"gitHead":"800ecf10d3d81ead6cef57888a10e8dc83c95eea","scripts":{"lint":"oxlint","test":"ava","bench":"node --import @oxc-node/core/register benchmark/bench.ts","build":"napi build --platform --release --js binding.cjs --dts binding.d.ts","check":"run-s format lint test:basic","clean":"rimraf target/ *.node npm/ binding.d.ts binding.cjs","format":"run-p format:prettier format:rs format:toml","pg:test":"node scripts/test-version-scripts.js","version":"napi version","examples":"run-s examples:*","lint:fix":"oxlint --fix","test:all":"run-s test:basic test:performance test:stability","validate":"node scripts/validate-release.js","artifacts":"napi artifacts","build:all":"napi build --platform --release --js binding.cjs --dts binding.d.ts && pnpm artifacts","format:rs":"cargo fmt","pg:update":"node scripts/update-pg-version.js","pg:version":"node scripts/extract-pg-version.js","prerelease":"run-s validate","test:basic":"ava __test__/basic.test.ts __test__/connection.test.ts __test__/async-integration.test.ts","build:check":"node scripts/build-check.js","build:debug":"napi build --platform --js binding.cjs --dts binding.d.ts","format:toml":"taplo format","test:startup":"node test-pg-startup.js","release:major":"run-s release:prepare:major release:publish","release:minor":"run-s release:prepare:minor release:publish","release:patch":"run-s release:prepare release:publish","examples:async":"node examples/async-example.js","pg:version:win":"powershell -ExecutionPolicy Bypass -File scripts/extract-pg-version.ps1","prepublishOnly":"napi prepublish -t npm","test:stability":"ava __test__/stability.test.ts","examples:simple":"node examples/simple-example.js","format:prettier":"prettier . -w","release:prepare":"node scripts/prepare-release.js","release:publish":"node scripts/publish-release.js","examples:testing":"node examples/testing-example.js","test:performance":"ava __test__/performance-benchmarks.test.ts","release:publish:dry":"node scripts/publish-release.js --dry-run","release:prepare:major":"node scripts/prepare-release.js major","release:prepare:minor":"node scripts/prepare-release.js minor"},"_npmUser":{"name":"kingsword09","email":"kingsword09@live.com"},"prettier":{"semi":false,"printWidth":120,"arrowParens":"always","singleQuote":true,"trailingComma":"all"},"repository":{"url":"git+ssh://git@github.com/PgTsLabs/pg-embedded.git","type":"git"},"_npmVersion":"10.8.2","description":"Embedded PostgreSQL database for Node.js - Easy setup, high performance, TypeScript support","directories":{},"lint-staged":{"*.toml":["taplo format"],"*.@(js|ts|tsx)":["oxlint --fix"],"*.@(js|ts|tsx|yml|yaml|md|json)":["prettier --write"]},"_nodeVersion":"20.19.4","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":true},"_hasShrinkwrap":false,"packageManager":"pnpm@10.13.1","devDependencies":{"ava":"^6.4.1","chalk":"^5.4.1","husky":"^9.1.7","oxlint":"^1.8.0","rimraf":"^6.0.1","prettier":"^3.6.2","tinybench":"^4.0.1","@taplo/cli":"^0.7.0","typescript":"^5.8.3","@types/node":"^24.1.0","lint-staged":"^16.1.2","@napi-rs/cli":"^3.0.3","npm-run-all2":"^8.0.4","@oxc-node/core":"^0.0.30"},"optionalDependencies":{"@pg-ts/pg-embedded-darwin-x64":"0.1.2+pg17.5","@pg-ts/pg-embedded-darwin-arm64":"0.1.2+pg17.5","@pg-ts/pg-embedded-android-arm64":"0.1.2+pg17.5","@pg-ts/pg-embedded-linux-x64-gnu":"0.1.2+pg17.5","@pg-ts/pg-embedded-linux-x64-musl":"0.1.2+pg17.5","@pg-ts/pg-embedded-win32-x64-msvc":"0.1.2+pg17.5","@pg-ts/pg-embedded-linux-arm64-gnu":"0.1.2+pg17.5","@pg-ts/pg-embedded-android-arm-eabi":"0.1.2+pg17.5","@pg-ts/pg-embedded-linux-arm64-musl":"0.1.2+pg17.5","@pg-ts/pg-embedded-linux-arm-gnueabihf":"0.1.2+pg17.5"},"_npmOperationalInternal":{"tmp":"tmp/pg-embedded_0.1.2_1754189070927_0.7998306235042147","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"pg-embedded","version":"0.2.0","keywords":["postgresql","postgres","embedded","database","testing","integration-tests","typescript","rust","napi-rs","node-addon","cross-platform","embedded-database","test-database","development-database","in-memory-database","database-testing","ci-cd","unit-testing","sql","relational-database"],"author":{"url":"https://github.com/PgTsLab","name":"PgTsLab","email":"kingsword09@gmail.com"},"license":"Apache-2.0","_id":"pg-embedded@0.2.0","maintainers":[{"name":"kingsword09","email":"kingsword09@live.com"}],"contributors":[{"url":"https://github.com/kingsword09","name":"Kingsword","email":"kingsword09@gmail.com"}],"homepage":"https://github.com/PgTsLabs/pg-embedded#readme","bugs":{"url":"https://github.com/PgTsLabs/pg-embedded/issues"},"ava":{"timeout":"2m","extensions":{"ts":"module"},"nodeArguments":["--import","@oxc-node/core/register"],"workerThreads":false,"environmentVariables":{"TS_NODE_PROJECT":"./tsconfig.json"}},"dist":{"shasum":"c82d5ffbaff4267325e6a54f40cc58095a6963f3","tarball":"https://registry.npmjs.org/pg-embedded/-/pg-embedded-0.2.0.tgz","fileCount":9,"integrity":"sha512-urNqzJDqD+hVG/ionW/nB4mlWpUOKpTO6DBOVU4h716WKZUVIvEha7j1bsVNqXirQkiovMFrhIol+oY+jPip6g==","signatures":[{"sig":"MEQCIFvRhRXwA3Iod+zgkT+99utYMFnIVc/v5LzWUIB1wpTXAiATlnqQWm1eQnJgDylGKxD4REJQGq6BY4JX2wHlWZKrWA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pg-embedded@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":123226},"main":"index.cjs","napi":{"targets":["x86_64-apple-darwin","aarch64-apple-darwin","x86_64-unknown-linux-gnu","x86_64-pc-windows-msvc","x86_64-unknown-linux-musl","aarch64-unknown-linux-gnu","armv7-unknown-linux-gnueabihf","aarch64-linux-android","aarch64-unknown-linux-musl","armv7-linux-androideabi"],"binaryName":"pg-embedded","packageName":"@pg-ts/pg-embedded"},"type":"module","types":"index.d.ts","module":"index.js","engines":{"node":">= 10"},"exports":{"types":"./index.d.ts","import":"./index.js","require":"./index.cjs"},"funding":{"url":"https://github.com/sponsors/PgTsLab","type":"github"},"gitHead":"3730eede4d034fc4f8150c8e2cd7f36a4f261ba3","scripts":{"lint":"oxlint","test":"ava","bench":"node --import @oxc-node/core/register benchmark/bench.ts","build":"napi build --platform --release --js binding.cjs --dts binding.d.ts","check":"run-s format lint test:basic","clean":"rimraf target/ *.node npm/ binding.d.ts binding.cjs","format":"run-p format:prettier format:rs format:toml","pg:test":"node scripts/test-version-scripts.js","version":"napi version","examples":"run-s examples:*","lint:fix":"oxlint --fix","test:all":"run-s test:basic test:performance test:stability","validate":"node scripts/validate-release.js","artifacts":"napi artifacts","build:all":"napi build --platform --release --js binding.cjs --dts binding.d.ts && pnpm artifacts","format:rs":"cargo fmt","pg:update":"node scripts/update-pg-version.js","pg:version":"node scripts/extract-pg-version.js","prerelease":"run-s validate","test:basic":"ava __test__/basic.test.ts __test__/connection.test.ts __test__/async-integration.test.ts","build:check":"node scripts/build-check.js","build:debug":"napi build --platform --js binding.cjs --dts binding.d.ts","format:toml":"taplo format","test:startup":"node test-pg-startup.js","release:major":"run-s release:prepare:major release:publish","release:minor":"run-s release:prepare:minor release:publish","release:patch":"run-s release:prepare release:publish","examples:async":"node examples/async-example.js","pg:version:win":"powershell -ExecutionPolicy Bypass -File scripts/extract-pg-version.ps1","prepublishOnly":"napi prepublish -t npm","test:stability":"ava __test__/stability.test.ts","examples:simple":"node examples/simple-example.js","format:prettier":"prettier . -w","release:prepare":"node scripts/prepare-release.js","release:publish":"node scripts/publish-release.js","examples:testing":"node examples/testing-example.js","test:performance":"ava __test__/performance-benchmarks.test.ts","release:publish:dry":"node scripts/publish-release.js --dry-run","release:prepare:major":"node scripts/prepare-release.js major","release:prepare:minor":"node scripts/prepare-release.js minor"},"_npmUser":{"name":"kingsword09","email":"kingsword09@live.com"},"prettier":{"semi":false,"printWidth":120,"arrowParens":"always","singleQuote":true,"trailingComma":"all"},"repository":{"url":"git+ssh://git@github.com/PgTsLabs/pg-embedded.git","type":"git"},"_npmVersion":"10.8.2","description":"Embedded PostgreSQL database for Node.js - Easy setup, high performance, TypeScript support","directories":{},"lint-staged":{"*.toml":["taplo format"],"*.@(js|ts|tsx)":["oxlint --fix"],"*.@(js|ts|tsx|yml|yaml|md|json)":["prettier --write"]},"_nodeVersion":"20.19.4","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":true},"_hasShrinkwrap":false,"packageManager":"pnpm@10.13.1","devDependencies":{"ava":"^6.4.1","chalk":"^5.4.1","husky":"^9.1.7","oxlint":"^1.8.0","rimraf":"^6.0.1","prettier":"^3.6.2","tinybench":"^4.0.1","@taplo/cli":"^0.7.0","typescript":"^5.8.3","@types/node":"^24.1.0","lint-staged":"^16.1.2","@napi-rs/cli":"^3.0.3","npm-run-all2":"^8.0.4","@oxc-node/core":"^0.0.30"},"optionalDependencies":{"@pg-ts/pg-embedded-darwin-x64":"0.2.0+pg17.5","@pg-ts/pg-embedded-darwin-arm64":"0.2.0+pg17.5","@pg-ts/pg-embedded-android-arm64":"0.2.0+pg17.5","@pg-ts/pg-embedded-linux-x64-gnu":"0.2.0+pg17.5","@pg-ts/pg-embedded-linux-x64-musl":"0.2.0+pg17.5","@pg-ts/pg-embedded-win32-x64-msvc":"0.2.0+pg17.5","@pg-ts/pg-embedded-linux-arm64-gnu":"0.2.0+pg17.5","@pg-ts/pg-embedded-android-arm-eabi":"0.2.0+pg17.5","@pg-ts/pg-embedded-linux-arm64-musl":"0.2.0+pg17.5","@pg-ts/pg-embedded-linux-arm-gnueabihf":"0.2.0+pg17.5"},"_npmOperationalInternal":{"tmp":"tmp/pg-embedded_0.2.0_1754225523170_0.957870468144622","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"pg-embedded","version":"0.2.1","keywords":["postgresql","postgres","embedded","database","testing","integration-tests","typescript","rust","napi-rs","node-addon","cross-platform","embedded-database","test-database","development-database","in-memory-database","database-testing","ci-cd","unit-testing","sql","relational-database"],"author":{"url":"https://github.com/PgTsLab","name":"PgTsLab","email":"kingsword09@gmail.com"},"license":"Apache-2.0","_id":"pg-embedded@0.2.1","maintainers":[{"name":"kingsword09","email":"kingsword09@live.com"}],"contributors":[{"url":"https://github.com/kingsword09","name":"Kingsword","email":"kingsword09@gmail.com"}],"homepage":"https://github.com/PgTsLabs/pg-embedded#readme","bugs":{"url":"https://github.com/PgTsLabs/pg-embedded/issues"},"ava":{"timeout":"2m","extensions":{"ts":"module"},"nodeArguments":["--import","@oxc-node/core/register"],"workerThreads":false,"environmentVariables":{"TS_NODE_PROJECT":"./tsconfig.json"}},"dist":{"shasum":"57b39c34729ecfd5b69bc8fac693003171775414","tarball":"https://registry.npmjs.org/pg-embedded/-/pg-embedded-0.2.1.tgz","fileCount":9,"integrity":"sha512-soNgJAWtWaMg/NAiC0beZw+bmy+vIPW1FNXp2DdbchSFWblL4oALa14XDurdpSlY7Z9JeDkaAywp3LlvucFPOw==","signatures":[{"sig":"MEYCIQD8izTYQjKwQRqJkgjlf0AQJjfusmIkfLObm61OJ5yt/wIhAJTv1K+4JzRYP0HMNfRBAmQz4+5AVt4s7tugBtjzWVrw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pg-embedded@0.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":123539},"main":"index.cjs","napi":{"targets":["x86_64-apple-darwin","aarch64-apple-darwin","x86_64-unknown-linux-gnu","x86_64-pc-windows-msvc","x86_64-unknown-linux-musl","aarch64-unknown-linux-gnu","armv7-unknown-linux-gnueabihf","aarch64-linux-android","aarch64-unknown-linux-musl","armv7-linux-androideabi"],"binaryName":"pg-embedded","packageName":"@pg-ts/pg-embedded"},"type":"module","types":"index.d.ts","module":"index.js","engines":{"node":">= 10"},"exports":{"types":"./index.d.ts","import":"./index.js","require":"./index.cjs"},"funding":{"url":"https://github.com/sponsors/PgTsLab","type":"github"},"gitHead":"0ef89dba235c5ede94bb9f63c1d6829396095162","scripts":{"lint":"oxlint","test":"ava","bench":"node --import @oxc-node/core/register benchmark/bench.ts","build":"napi build --platform --release --js binding.cjs --dts binding.d.ts","check":"run-s format lint test:basic","clean":"rimraf target/ *.node npm/ binding.d.ts binding.cjs","format":"run-p format:prettier format:rs format:toml","pg:test":"node scripts/test-version-scripts.js","version":"napi version","examples":"run-s examples:*","lint:fix":"oxlint --fix","test:all":"run-s test:basic test:performance test:stability","validate":"node scripts/validate-release.js","artifacts":"napi artifacts","build:all":"napi build --platform --release --js binding.cjs --dts binding.d.ts && pnpm artifacts","format:rs":"cargo fmt","pg:update":"node scripts/update-pg-version.js","pg:version":"node scripts/extract-pg-version.js","prerelease":"run-s validate","test:basic":"ava __test__/basic.test.ts __test__/connection.test.ts __test__/async-integration.test.ts","build:check":"node scripts/build-check.js","build:debug":"napi build --platform --js binding.cjs --dts binding.d.ts","format:toml":"taplo format","test:startup":"node test-pg-startup.js","release:major":"run-s release:prepare:major release:publish","release:minor":"run-s release:prepare:minor release:publish","release:patch":"run-s release:prepare release:publish","examples:async":"node examples/async-example.js","pg:version:win":"powershell -ExecutionPolicy Bypass -File scripts/extract-pg-version.ps1","prepublishOnly":"napi prepublish -t npm","test:stability":"ava __test__/stability.test.ts","examples:simple":"node examples/simple-example.js","format:prettier":"prettier . -w","release:prepare":"node scripts/prepare-release.js","release:publish":"node scripts/publish-release.js","examples:testing":"node examples/testing-example.js","test:performance":"ava __test__/performance-benchmarks.test.ts","release:publish:dry":"node scripts/publish-release.js --dry-run","release:prepare:major":"node scripts/prepare-release.js major","release:prepare:minor":"node scripts/prepare-release.js minor"},"_npmUser":{"name":"kingsword09","email":"kingsword09@live.com"},"prettier":{"semi":false,"printWidth":120,"arrowParens":"always","singleQuote":true,"trailingComma":"all"},"repository":{"url":"git+ssh://git@github.com/PgTsLabs/pg-embedded.git","type":"git"},"_npmVersion":"10.8.2","description":"Embedded PostgreSQL database for Node.js - Easy setup, high performance, TypeScript support","directories":{},"lint-staged":{"*.toml":["taplo format"],"*.@(js|ts|tsx)":["oxlint --fix"],"*.@(js|ts|tsx|yml|yaml|md|json)":["prettier --write"]},"_nodeVersion":"20.19.4","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":true},"_hasShrinkwrap":false,"packageManager":"pnpm@10.13.1","devDependencies":{"ava":"^6.4.1","chalk":"^5.4.1","husky":"^9.1.7","oxlint":"^1.8.0","rimraf":"^6.0.1","prettier":"^3.6.2","tinybench":"^4.0.1","@taplo/cli":"^0.7.0","typescript":"^5.8.3","@types/node":"^24.1.0","lint-staged":"^16.1.2","@napi-rs/cli":"^3.0.3","npm-run-all2":"^8.0.4","@oxc-node/core":"^0.0.30"},"optionalDependencies":{"@pg-ts/pg-embedded-darwin-x64":"0.2.1+pg17.5","@pg-ts/pg-embedded-darwin-arm64":"0.2.1+pg17.5","@pg-ts/pg-embedded-android-arm64":"0.2.1+pg17.5","@pg-ts/pg-embedded-linux-x64-gnu":"0.2.1+pg17.5","@pg-ts/pg-embedded-linux-x64-musl":"0.2.1+pg17.5","@pg-ts/pg-embedded-win32-x64-msvc":"0.2.1+pg17.5","@pg-ts/pg-embedded-linux-arm64-gnu":"0.2.1+pg17.5","@pg-ts/pg-embedded-android-arm-eabi":"0.2.1+pg17.5","@pg-ts/pg-embedded-linux-arm64-musl":"0.2.1+pg17.5","@pg-ts/pg-embedded-linux-arm-gnueabihf":"0.2.1+pg17.5"},"_npmOperationalInternal":{"tmp":"tmp/pg-embedded_0.2.1_1754239706255_0.276625156182718","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"pg-embedded","version":"0.2.2","keywords":["postgresql","postgres","embedded","database","testing","integration-tests","typescript","rust","napi-rs","node-addon","cross-platform","embedded-database","test-database","development-database","in-memory-database","database-testing","ci-cd","unit-testing","sql","relational-database"],"author":{"url":"https://github.com/PgTsLab","name":"PgTsLab","email":"kingsword09@gmail.com"},"license":"Apache-2.0","_id":"pg-embedded@0.2.2","maintainers":[{"name":"kingsword09","email":"kingsword09@gmail.com"}],"contributors":[{"url":"https://github.com/kingsword09","name":"Kingsword","email":"kingsword09@gmail.com"}],"homepage":"https://github.com/PgTsLabs/pg-embedded#readme","bugs":{"url":"https://github.com/PgTsLabs/pg-embedded/issues"},"ava":{"timeout":"2m","extensions":{"ts":"module"},"nodeArguments":["--import","@oxc-node/core/register"],"workerThreads":false,"environmentVariables":{"TS_NODE_PROJECT":"./tsconfig.json"}},"dist":{"shasum":"50346e425896ed5e721054f4fd321fdccffa1c67","tarball":"https://registry.npmjs.org/pg-embedded/-/pg-embedded-0.2.2.tgz","fileCount":9,"integrity":"sha512-WbpeITJQoSrTwmhhwBR0cF+Gb37IN1DhygU1lrmwXxseCfdHFTIz6qolsSV90GTjA55qquCcw21ICXpIj+YB9g==","signatures":[{"sig":"MEUCIQCi2T7Tdpyn6g/iXo1zxMjsNCCOp4PuaGSygUBFrUpm+QIgGHGZmHOW00usCQxw4Bv4Fu5o1OL4xkZzwYkWn69wJSg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pg-embedded@0.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":134586},"main":"index.cjs","napi":{"targets":["x86_64-apple-darwin","aarch64-apple-darwin","x86_64-unknown-linux-gnu","x86_64-pc-windows-msvc","x86_64-unknown-linux-musl","aarch64-unknown-linux-gnu","armv7-unknown-linux-gnueabihf","aarch64-linux-android","aarch64-unknown-linux-musl","armv7-linux-androideabi"],"binaryName":"pg-embedded","packageName":"@pg-ts/pg-embedded"},"type":"module","types":"index.d.ts","module":"index.js","engines":{"node":">= 10"},"exports":{"types":"./index.d.ts","import":"./index.js","require":"./index.cjs"},"funding":{"url":"https://github.com/sponsors/PgTsLab","type":"github"},"gitHead":"bf3d02177c7e997b6b556d0cd46ece374eed86fc","scripts":{"lint":"oxlint","test":"ava","bench":"node --import @oxc-node/core/register benchmark/bench.ts","build":"napi build --platform --release --js binding.cjs --dts binding.d.ts","check":"run-s format lint test:basic","clean":"rimraf target/ *.node npm/ binding.d.ts binding.cjs","format":"run-p format:prettier format:rs format:toml","pg:test":"node scripts/test-version-scripts.js","version":"napi version","examples":"run-s examples:*","lint:fix":"oxlint --fix","test:all":"run-s test:basic test:performance test:stability","validate":"node scripts/validate-release.js","artifacts":"napi artifacts","build:all":"napi build --platform --release --js binding.cjs --dts binding.d.ts && pnpm artifacts","format:rs":"cargo fmt","pg:update":"node scripts/update-pg-version.js","pg:version":"node scripts/extract-pg-version.js","prerelease":"run-s validate","test:basic":"ava __test__/basic.test.ts __test__/connection.test.ts __test__/async-integration.test.ts","build:check":"node scripts/build-check.js","build:debug":"napi build --platform --js binding.cjs --dts binding.d.ts","format:toml":"taplo format","test:startup":"node test-pg-startup.js","release:major":"run-s release:prepare:major release:publish","release:minor":"run-s release:prepare:minor release:publish","release:patch":"run-s release:prepare release:publish","examples:async":"node examples/async-example.js","pg:version:win":"powershell -ExecutionPolicy Bypass -File scripts/extract-pg-version.ps1","prepublishOnly":"napi prepublish -t npm","test:stability":"ava __test__/stability.test.ts","examples:simple":"node examples/simple-example.js","format:prettier":"prettier . -w","release:prepare":"node scripts/prepare-release.js","release:publish":"node scripts/publish-release.js","examples:testing":"node examples/testing-example.js","test:performance":"ava __test__/performance-benchmarks.test.ts","release:publish:dry":"node scripts/publish-release.js --dry-run","release:prepare:major":"node scripts/prepare-release.js major","release:prepare:minor":"node scripts/prepare-release.js minor"},"_npmUser":{"name":"kingsword09","email":"kingsword09@gmail.com"},"prettier":{"semi":false,"printWidth":120,"arrowParens":"always","singleQuote":true,"trailingComma":"all"},"repository":{"url":"git+ssh://git@github.com/PgTsLabs/pg-embedded.git","type":"git"},"_npmVersion":"10.8.2","description":"Embedded PostgreSQL database for Node.js - Easy setup, high performance, TypeScript support","directories":{},"lint-staged":{"*.toml":["taplo format"],"*.@(js|ts|tsx)":["oxlint --fix"],"*.@(js|ts|tsx|yml|yaml|md|json)":["prettier --write"]},"_nodeVersion":"20.19.4","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":true},"_hasShrinkwrap":false,"packageManager":"pnpm@10.15.0","devDependencies":{"ava":"^6.4.1","chalk":"^5.4.1","husky":"^9.1.7","oxlint":"^1.8.0","rimraf":"^6.0.1","prettier":"^3.6.2","tinybench":"^4.0.1","@taplo/cli":"^0.7.0","typescript":"^5.8.3","@types/node":"^24.1.0","lint-staged":"^16.1.2","@napi-rs/cli":"^3.1.5","npm-run-all2":"^8.0.4","@oxc-node/core":"^0.0.30"},"optionalDependencies":{"@pg-ts/pg-embedded-darwin-x64":"0.2.2+pg17.6","@pg-ts/pg-embedded-darwin-arm64":"0.2.2+pg17.6","@pg-ts/pg-embedded-android-arm64":"0.2.2+pg17.6","@pg-ts/pg-embedded-linux-x64-gnu":"0.2.2+pg17.6","@pg-ts/pg-embedded-linux-x64-musl":"0.2.2+pg17.6","@pg-ts/pg-embedded-win32-x64-msvc":"0.2.2+pg17.6","@pg-ts/pg-embedded-linux-arm64-gnu":"0.2.2+pg17.6","@pg-ts/pg-embedded-android-arm-eabi":"0.2.2+pg17.6","@pg-ts/pg-embedded-linux-arm64-musl":"0.2.2+pg17.6","@pg-ts/pg-embedded-linux-arm-gnueabihf":"0.2.2+pg17.6"},"_npmOperationalInternal":{"tmp":"tmp/pg-embedded_0.2.2_1755906738124_0.10189327762967393","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"pg-embedded","version":"0.2.3","description":"Embedded PostgreSQL database for Node.js - Easy setup, high performance, TypeScript support","type":"module","module":"index.js","main":"index.cjs","types":"index.d.ts","repository":{"url":"git+ssh://git@github.com/PgTsLabs/pg-embedded.git","type":"git"},"homepage":"https://github.com/PgTsLabs/pg-embedded#readme","bugs":{"url":"https://github.com/PgTsLabs/pg-embedded/issues"},"license":"Apache-2.0","keywords":["postgresql","postgres","embedded","database","testing","integration-tests","typescript","rust","napi-rs","node-addon","cross-platform","embedded-database","test-database","development-database","in-memory-database","database-testing","ci-cd","unit-testing","sql","relational-database"],"napi":{"binaryName":"pg-embedded","packageName":"@pg-ts/pg-embedded","targets":["x86_64-apple-darwin","aarch64-apple-darwin","x86_64-unknown-linux-gnu","x86_64-pc-windows-msvc","x86_64-unknown-linux-musl","aarch64-unknown-linux-gnu","armv7-unknown-linux-gnueabihf","aarch64-linux-android","aarch64-unknown-linux-musl","armv7-linux-androideabi"]},"exports":{"import":"./index.js","require":"./index.cjs","types":"./index.d.ts"},"engines":{"node":">= 10"},"publishConfig":{"registry":"https://registry.npmjs.org/","access":"public","provenance":true},"funding":{"type":"github","url":"https://github.com/sponsors/PgTsLab"},"author":{"name":"PgTsLab","email":"kingsword09@gmail.com","url":"https://github.com/PgTsLab"},"contributors":[{"name":"Kingsword","email":"kingsword09@gmail.com","url":"https://github.com/kingsword09"}],"scripts":{"artifacts":"napi artifacts","bench":"node --import @oxc-node/core/register benchmark/bench.ts","build":"napi build --platform --release --js binding.cjs --dts binding.d.ts","build:debug":"napi build --platform --js binding.cjs --dts binding.d.ts","build:all":"napi build --platform --release --js binding.cjs --dts binding.d.ts && pnpm artifacts","build:check":"node scripts/build-check.js","clean":"rimraf target/ *.node npm/ binding.d.ts binding.cjs","format":"run-p format:prettier format:rs format:toml","format:prettier":"prettier . -w","format:toml":"taplo format","format:rs":"cargo fmt","lint":"oxlint","lint:fix":"oxlint --fix","check":"run-s format lint test:basic","prepublishOnly":"napi prepublish -t npm","test":"ava","test:startup":"node scripts/test-pg-startup.js","test:basic":"ava __test__/basic.test.ts __test__/connection.test.ts __test__/async-integration.test.ts","test:performance":"ava __test__/performance-benchmarks.test.ts","test:stability":"ava __test__/stability.test.ts","test:all":"run-s test:basic test:performance test:stability","examples":"run-s examples:*","examples:simple":"node examples/simple-example.js","examples:async":"node examples/async-example.js","examples:testing":"node examples/testing-example.js","validate":"node scripts/validate-release.js","prerelease":"run-s validate","release:prepare":"node scripts/prepare-release.js","release:prepare:minor":"node scripts/prepare-release.js minor","release:prepare:major":"node scripts/prepare-release.js major","release:publish":"node scripts/publish-release.js","release:publish:dry":"node scripts/publish-release.js --dry-run","release:patch":"run-s release:prepare release:publish","release:minor":"run-s release:prepare:minor release:publish","release:major":"run-s release:prepare:major release:publish","pg:version":"node scripts/extract-pg-version.js","pg:version:win":"powershell -ExecutionPolicy Bypass -File scripts/extract-pg-version.ps1","pg:update":"node scripts/update-pg-version.js","pg:test":"node scripts/test-version-scripts.js","version":"napi version"},"devDependencies":{"@napi-rs/cli":"^3.1.5","@oxc-node/core":"^0.0.30","@taplo/cli":"^0.7.0","@types/node":"^24.1.0","ava":"^6.4.1","chalk":"^5.4.1","husky":"^9.1.7","lint-staged":"^16.1.2","npm-run-all2":"^8.0.4","oxlint":"^1.8.0","prettier":"^3.6.2","rimraf":"^6.0.1","tinybench":"^4.0.1","typescript":"^5.8.3"},"lint-staged":{"*.@(js|ts|tsx)":["oxlint --fix"],"*.@(js|ts|tsx|yml|yaml|md|json)":["prettier --write"],"*.toml":["taplo format"]},"ava":{"extensions":{"ts":"module"},"timeout":"2m","workerThreads":false,"environmentVariables":{"TS_NODE_PROJECT":"./tsconfig.json"},"nodeArguments":["--import","@oxc-node/core/register"]},"prettier":{"printWidth":120,"semi":false,"trailingComma":"all","singleQuote":true,"arrowParens":"always"},"packageManager":"pnpm@10.15.0","optionalDependencies":{"@pg-ts/pg-embedded-darwin-x64":"0.2.3+pg18.0","@pg-ts/pg-embedded-darwin-arm64":"0.2.3+pg18.0","@pg-ts/pg-embedded-linux-x64-gnu":"0.2.3+pg18.0","@pg-ts/pg-embedded-win32-x64-msvc":"0.2.3+pg18.0","@pg-ts/pg-embedded-linux-x64-musl":"0.2.3+pg18.0","@pg-ts/pg-embedded-linux-arm64-gnu":"0.2.3+pg18.0","@pg-ts/pg-embedded-linux-arm-gnueabihf":"0.2.3+pg18.0","@pg-ts/pg-embedded-android-arm64":"0.2.3+pg18.0","@pg-ts/pg-embedded-linux-arm64-musl":"0.2.3+pg18.0","@pg-ts/pg-embedded-android-arm-eabi":"0.2.3+pg18.0"},"_id":"pg-embedded@0.2.3","gitHead":"1354778c5296f17571cff8a60354ae25ab2421b6","_nodeVersion":"20.19.5","_npmVersion":"10.8.2","dist":{"integrity":"sha512-3TVSDxlp/F4/xBUUcv8jF8zFQN8THrH7HTyV+lajI+/7NEZNMHn4KjmeiBG+e66olZJ0QGXDADqzkqk/6fBNJg==","shasum":"62875457be9760949b1eef57b851ae3114e155f7","tarball":"https://registry.npmjs.org/pg-embedded/-/pg-embedded-0.2.3.tgz","fileCount":9,"unpackedSize":135368,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pg-embedded@0.2.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDQhIlSmhRXCJS2Pvv3ysTRuoOjuoG0GkRfW/UkVJxiBAIgD4I7t9bIpRHJ5IZguRI1gXkKatL5VEMdVTcWC9WF9X4="}]},"_npmUser":{"name":"kingsword09","email":"kingsword09@gmail.com"},"directories":{},"maintainers":[{"name":"kingsword09","email":"kingsword09@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/pg-embedded_0.2.3_1759098497582_0.496565646804632"},"_hasShrinkwrap":false}},"time":{"created":"2025-07-31T23:52:00.351Z","modified":"2025-09-28T22:28:18.178Z","0.1.0":"2025-07-31T23:52:00.593Z","0.1.1":"2025-08-02T00:02:46.053Z","0.1.2":"2025-08-03T02:44:31.098Z","0.2.0":"2025-08-03T12:52:03.422Z","0.2.1":"2025-08-03T16:48:26.435Z","0.2.2":"2025-08-22T23:52:18.305Z","0.2.3":"2025-09-28T22:28:17.760Z"},"bugs":{"url":"https://github.com/PgTsLabs/pg-embedded/issues"},"author":{"name":"PgTsLab","email":"kingsword09@gmail.com","url":"https://github.com/PgTsLab"},"license":"Apache-2.0","homepage":"https://github.com/PgTsLabs/pg-embedded#readme","keywords":["postgresql","postgres","embedded","database","testing","integration-tests","typescript","rust","napi-rs","node-addon","cross-platform","embedded-database","test-database","development-database","in-memory-database","database-testing","ci-cd","unit-testing","sql","relational-database"],"repository":{"url":"git+ssh://git@github.com/PgTsLabs/pg-embedded.git","type":"git"},"description":"Embedded PostgreSQL database for Node.js - Easy setup, high performance, TypeScript support","contributors":[{"name":"Kingsword","email":"kingsword09@gmail.com","url":"https://github.com/kingsword09"}],"maintainers":[{"name":"kingsword09","email":"kingsword09@gmail.com"}],"readme":"# pg-embedded\n\n[![npm version][npm-version-src]][npm-version-href]\n[![npm downloads][npm-downloads-src]][npm-downloads-href]\n[![License][license-src]][license-href]\n\nA Node.js library for running embedded PostgreSQL instances. This library provides a simple and efficient way to start, manage, and interact with PostgreSQL databases directly from your Node.js applications without requiring a separate PostgreSQL installation.\n\n## Features\n\n- 🚀 **Easy to use**: Simple API for starting and managing PostgreSQL instances\n- ⚡ **Fast startup**: Optimized for quick instance initialization\n- 🔄 **Async operations**: Full async/await support for non-blocking operations\n- 🛡️ **Type-safe**: Full TypeScript support with comprehensive type definitions\n- 🧹 **Automatic cleanup**: Built-in resource management and cleanup\n- 📊 **Performance monitoring**: Built-in startup time tracking and health checks\n- 🔧 **Configurable**: Extensive configuration options for different use cases\n- 🏗️ **Cross-platform**: Works on macOS, Linux, and Windows\n- 🛠️ **Complete toolset**: Built-in PostgreSQL tools (pg_dump, pg_restore, pg_rewind, pg_basebackup, psql)\n- 🎯 **Simplified workflows**: One-line operations with automatic configuration\n\n## Installation\n\n```bash\nnpm install pg-embedded\n```\n\n## Quick Start\n\n```typescript\nimport { PostgresInstance } from 'pg-embedded'\n\nasync function example() {\n  // Create a new PostgreSQL instance\n  const postgres = new PostgresInstance({\n    port: 5432,\n    username: 'postgres',\n    password: 'password',\n    persistent: false,\n  })\n\n  try {\n    // Start the PostgreSQL server\n    await postgres.start()\n    console.log('PostgreSQL started successfully!')\n\n    // Create a database\n    await postgres.createDatabase('myapp')\n\n    // Check if database exists\n    const exists = await postgres.databaseExists('myapp')\n    console.log(`Database exists: ${exists}`)\n\n    // Get connection information\n    const connectionInfo = postgres.connectionInfo\n    console.log(`Connect to: ${connectionInfo.connectionString}`)\n\n    // Drop the database\n    await postgres.dropDatabase('myapp')\n\n    // Stop the server\n    await postgres.stop()\n  } finally {\n    // Clean up resources\n    await postgres.cleanup()\n  }\n}\n\nexample().catch(console.error)\n```\n\n## PostgreSQL Tools Usage\n\nThe library provides integrated access to PostgreSQL tools through the `PostgresInstance` class, making database operations simple and efficient.\n\n### SQL Execution with psql\n\n#### Execute SQL Commands Directly\n\n```typescript\nimport { PostgresInstance } from 'pg-embedded'\n\nconst postgres = new PostgresInstance()\nawait postgres.start()\n\n// Execute a simple SQL command\nconst result = await postgres.executeSql(\n  'SELECT version();',\n  { output: true }, // Enable output capture\n  'postgres', // Optional: specify database\n)\nconsole.log('PostgreSQL version:', result.stdout)\n\n// Execute multiple commands\nconst createResult = await postgres.executeSql(\n  `\n  CREATE TABLE users (\n    id SERIAL PRIMARY KEY,\n    name VARCHAR(100) NOT NULL,\n    email VARCHAR(255) UNIQUE\n  );\n  INSERT INTO users (name, email) VALUES \n    ('Alice', 'alice@example.com'),\n    ('Bob', 'bob@example.com');\n`,\n  { output: true },\n  'myapp',\n)\n\n// Query data\nconst queryResult = await postgres.executeSql(\n  'SELECT * FROM users ORDER BY id;',\n  { output: true, tuples_only: true }, // Clean output format\n  'myapp',\n)\nconsole.log('Users:', queryResult.stdout)\n```\n\n#### Execute SQL from Files\n\n```typescript\nimport { PostgresInstance } from 'pg-embedded'\nimport { writeFileSync } from 'fs'\n\nconst postgres = new PostgresInstance()\nawait postgres.start()\n\n// Create a SQL script file\nconst sqlScript = `\n-- Create database schema\nCREATE SCHEMA IF NOT EXISTS app;\n\n-- Create tables\nCREATE TABLE app.products (\n  id SERIAL PRIMARY KEY,\n  name VARCHAR(255) NOT NULL,\n  price DECIMAL(10,2),\n  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP\n);\n\n-- Insert sample data\nINSERT INTO app.products (name, price) VALUES \n  ('Laptop', 999.99),\n  ('Mouse', 29.99),\n  ('Keyboard', 79.99);\n\n-- Create indexes\nCREATE INDEX idx_products_name ON app.products(name);\n`\n\nwriteFileSync('./setup.sql', sqlScript)\n\n// Execute the SQL file\nconst result = await postgres.executeFile(\n  './setup.sql',\n  {\n    output: true,\n    echo_queries: true, // Show executed queries\n    stop_on_error: true, // Stop if any command fails\n  },\n  'myapp',\n)\n\nif (result.exit_code === 0) {\n  console.log('Database setup completed successfully!')\n  console.log('Output:', result.stdout)\n} else {\n  console.error('Setup failed:', result.stderr)\n}\n```\n\n#### Advanced SQL Execution Options\n\n```typescript\n// Execute with transaction control\nconst transactionResult = await postgres.executeSql(\n  `\n  BEGIN;\n  UPDATE products SET price = price * 1.1 WHERE category = 'electronics';\n  INSERT INTO price_history (product_id, old_price, new_price, updated_at) \n    SELECT id, price / 1.1, price, NOW() FROM products WHERE category = 'electronics';\n  COMMIT;\n`,\n  {\n    output: true,\n    single_transaction: true, // Wrap in single transaction\n    variables: { category: 'electronics' }, // Variable substitution\n  },\n  'inventory',\n)\n\n// Execute with custom formatting\nconst reportResult = await postgres.executeSql(\n  'SELECT name, price, created_at FROM products ORDER BY price DESC LIMIT 10;',\n  {\n    output: true,\n    format: 'csv', // Output as CSV\n    header: true, // Include column headers\n    field_separator: ',', // Custom separator\n  },\n  'myapp',\n)\n\n// Save report to file\nwriteFileSync('./top_products.csv', reportResult.stdout)\n```\n\n### Database Dumps with pg_dump\n\n```typescript\nimport { PostgresInstance, PgDumpFormat } from 'pg-embedded'\n\nconst postgres = new PostgresInstance()\nawait postgres.start()\n\n// Create a database dump\nawait postgres.createDump(\n  {\n    file: './backup.sql',\n    format: PgDumpFormat.Plain,\n    create: true, // Include CREATE DATABASE statement\n    clean: true, // Include DROP statements\n  },\n  'myapp',\n) // Optional: specify database name\n\n// Dump with custom format (better for large databases)\nawait postgres.createDump(\n  {\n    file: './backup.dump',\n    format: PgDumpFormat.Custom,\n    compress: 9,\n    verbose: true,\n  },\n  'myapp',\n)\n```\n\n### Base Backups with pg_basebackup\n\n```typescript\nimport { PostgresInstance, PgBasebackupFormat, PgBasebackupWalMethod } from 'pg-embedded'\n\nconst postgres = new PostgresInstance()\nawait postgres.start()\n\n// Create a base backup for point-in-time recovery\nawait postgres.createBaseBackup({\n  pgdata: './backup-cluster',\n  format: PgBasebackupFormat.Plain,\n  walMethod: PgBasebackupWalMethod.Fetch,\n  verbose: true,\n})\n\n// Create compressed tar backup\nawait postgres.createBaseBackup({\n  pgdata: './backup-cluster.tar.gz',\n  format: PgBasebackupFormat.Tar,\n  walMethod: PgBasebackupWalMethod.Stream,\n  compress: 9,\n})\n```\n\n### Database Restore with pg_restore\n\n```typescript\nimport { PostgresInstance, PgRestoreFormat } from 'pg-embedded'\n\nconst postgres = new PostgresInstance()\nawait postgres.start()\n\n// Restore from custom format dump\nawait postgres.createRestore(\n  {\n    file: './backup.dump',\n    format: PgRestoreFormat.Custom,\n    clean: true, // Drop existing objects\n    create: true, // Create database\n    jobs: 4, // Parallel restore jobs\n  },\n  'restored_db',\n)\n\n// Restore specific tables only\nawait postgres.createRestore(\n  {\n    file: './backup.dump',\n    format: PgRestoreFormat.Custom,\n    table: ['users', 'products'],\n    dataOnly: true, // Data only, no schema\n  },\n  'myapp',\n)\n```\n\n### Cluster-wide Dumps with pg_dumpall\n\n```typescript\nimport { PostgresInstance } from 'pg-embedded'\n\nconst postgres = new PostgresInstance()\nawait postgres.start()\n\n// Dump entire cluster including roles and tablespaces\nawait postgres.createDumpall({\n  file: './cluster-backup.sql',\n  clean: true,\n  verbose: true,\n})\n\n// Dump only global objects (roles, tablespaces)\nawait postgres.createDumpall({\n  file: './globals-only.sql',\n  globalsOnly: true,\n})\n```\n\n### Database Rewind with pg_rewind\n\n```typescript\nimport { PostgresInstance } from 'pg-embedded'\n\nconst postgres = new PostgresInstance()\nawait postgres.start()\n\n// Rewind database to synchronize with another cluster\n// Note: Requires proper WAL configuration\nawait postgres.createRewind({\n  targetPgdata: './target-data',\n  sourceServer: 'host=source-host port=5432 user=postgres',\n  restoreTargetWal: true,\n  autoConfigureWal: true, // Automatically configure WAL settings\n})\n```\n\n### Complete Backup and Restore Workflow\n\n```typescript\nimport { PostgresInstance, PgDumpFormat, PgRestoreFormat } from 'pg-embedded'\n\nasync function backupRestoreWorkflow() {\n  const postgres = new PostgresInstance()\n  await postgres.start()\n\n  try {\n    // Create and populate a database\n    await postgres.createDatabase('source_db')\n\n    // ... populate with data ...\n\n    // Create a backup\n    await postgres.createDump(\n      {\n        file: './source_backup.dump',\n        format: PgDumpFormat.Custom,\n        compress: 9,\n      },\n      'source_db',\n    )\n\n    // Create a new database for restore\n    await postgres.createDatabase('target_db')\n\n    // Restore the backup\n    await postgres.createRestore(\n      {\n        file: './source_backup.dump',\n        format: PgRestoreFormat.Custom,\n        clean: true,\n      },\n      'target_db',\n    )\n\n    // Verify the restore\n    const exists = await postgres.databaseExists('target_db')\n    console.log(`Restore successful: ${exists}`)\n  } finally {\n    await postgres.stop()\n  }\n}\n```\n\n## Configuration Options\n\nThe `PostgresSettings` object supports the following options:\n\n```typescript\ninterface PostgresSettings {\n  /** PostgreSQL version (e.g., \"15.0\", \">=14.0\") */\n  version?: string\n\n  /** Port number (0-65535, default: 5432, 0 for random) */\n  port?: number\n\n  /** Username for database connection (default: \"postgres\") */\n  username?: string\n\n  /** Password for database connection (default: \"postgres\") */\n  password?: string\n\n  /** Default database name (default: \"postgres\") */\n  databaseName?: string\n\n  /** Custom data directory path */\n  dataDir?: string\n\n  /** Custom installation directory path */\n  installationDir?: string\n\n  /** Timeout in seconds for database operations (default: 30) */\n  timeout?: number\n\n  /** Setup timeout in seconds for PostgreSQL initialization (default: 300 on Windows, 30 on other platforms) */\n  setupTimeout?: number\n\n  /** Whether to persist data between runs (default: false) */\n  persistent?: boolean\n}\n```\n\n## API Reference\n\n### PostgresInstance\n\n#### Constructor\n\n```typescript\nnew PostgresInstance(settings?: PostgresSettings)\n```\n\nCreates a new PostgreSQL instance with the specified settings.\n\n#### Properties\n\n- `state: InstanceState` - Current state of the instance (Stopped, Starting, Running, Stopping)\n- `connectionInfo: ConnectionInfo` - Connection information (only available when running)\n- `instanceId: string` - Unique identifier for this instance\n\n#### Methods\n\n- `setup(): Promise<void>` - Set up the PostgreSQL instance (called automatically by start)\n- `start(): Promise<void>` - Start the PostgreSQL instance\n- `stop(): Promise<void>` - Stop the PostgreSQL instance\n- `startWithTimeout(seconds: number): Promise<void>` - Start with timeout\n- `stopWithTimeout(seconds: number): Promise<void>` - Stop with timeout\n- `createDatabase(name: string): Promise<void>` - Create a new database\n- `dropDatabase(name: string): Promise<void>` - Drop a database\n- `databaseExists(name: string): Promise<boolean>` - Check if database exists\n\n#### PostgreSQL Tools Integration\n\n- `executeSql(sql: string, options: PsqlConfig, databaseName?: string): Promise<ToolResult>` - Execute SQL commands using psql\n- `executeFile(filePath: string, options: PsqlConfig, databaseName?: string): Promise<ToolResult>` - Execute SQL commands from file using psql\n- `createDump(options: PgDumpConfig, databaseName?: string): Promise<ToolResult>` - Create database dump using pg_dump\n- `createBaseBackup(options: PgBasebackupConfig, databaseName?: string): Promise<ToolResult>` - Create base backup using pg_basebackup\n- `createRestore(options: PgRestoreConfig, databaseName?: string): Promise<ToolResult>` - Restore database using pg_restore\n- `createRewind(options: PgRewindConfig, databaseName?: string): Promise<ToolResult>` - Rewind database using pg_rewind\n- `createDumpall(options: PgDumpallConfig): Promise<ToolResult>` - Create cluster-wide dump using pg_dumpall\n\n#### Utility Methods\n\n- `isHealthy(): boolean` - Check if the instance is healthy\n- `getStartupTime(): number | null` - Get startup time in seconds\n- `getConfigHash(): string` - Get configuration hash\n- `getPostgreSqlVersion(): string` - Get PostgreSQL version\n- `clearConnectionCache(): void` - Clear connection info cache\n- `isConnectionCacheValid(): boolean` - Check if connection cache is valid\n- `cleanup(): Promise<void>` - Manually clean up resources\n\n### Version Information\n\n- `getVersionInfo(): VersionInfo` - Get comprehensive version information\n- `getPostgreSQLVersion(): string` - Get PostgreSQL version\n- `getPackageVersion(): string` - Get package version\n\n### ConnectionInfo\n\n```typescript\ninterface ConnectionInfo {\n  host: string\n  port: number\n  username: string\n  password: string\n  databaseName: string\n  connectionString: string\n}\n```\n\n### InstanceState\n\n```typescript\nenum InstanceState {\n  Stopped = 'Stopped',\n  Starting = 'Starting',\n  Running = 'Running',\n  Stopping = 'Stopping',\n}\n```\n\n## PostgreSQL Tools\n\nThe library includes comprehensive TypeScript wrappers for essential PostgreSQL command-line tools, providing type-safe interfaces and automatic configuration.\n\n### PgRewindTool - Data Directory Synchronization\n\nSynchronize PostgreSQL data directories after timeline divergence, commonly used in failover scenarios.\n\n```typescript\nimport { PgRewindTool, PostgresInstance } from 'pg-embedded'\n\n// Simplified usage with automatic configuration\nconst rewindTool = new PgRewindTool({\n  connection: targetConnectionInfo,\n  programDir: '/path/to/postgres/bin',\n  targetPgdata: './target_data_dir',\n\n  // ✨ Pass connection info directly, no manual string construction\n  sourceInstance: sourceConnectionInfo,\n\n  // ✨ Automatically configure all WAL settings\n  autoConfigureWal: true,\n\n  progress: true,\n  dryRun: false,\n})\n\nconst result = await rewindTool.execute()\nif (result.exitCode === 0) {\n  console.log('Rewind completed successfully!')\n} else {\n  console.error('Rewind failed:', result.stderr)\n}\n```\n\n**Key Features:**\n\n- 🎯 **One-line operation**: Automatic WAL configuration eliminates manual setup\n- 🔗 **Direct connection info**: Pass `PostgresInstance.connectionInfo` directly\n- 🧪 **Dry run support**: Test operations without making changes\n- 📊 **Progress reporting**: Real-time operation feedback\n- 🛡️ **Type-safe**: Full TypeScript support with comprehensive validation\n\n### PgBasebackupTool - Database Backups\n\nCreate base backups of running PostgreSQL clusters with full format and streaming support.\n\n```typescript\nimport { PgBasebackupTool } from 'pg-embedded'\n\nconst backupTool = new PgBasebackupTool({\n  connection: postgres.connectionInfo,\n  programDir: '/path/to/postgres/bin',\n  pgdata: './backup_directory',\n  format: 'p', // plain format\n  walMethod: 'stream', // stream WAL files\n  verbose: true,\n})\n\nconst result = await backupTool.execute()\nif (result.exitCode === 0) {\n  console.log('Backup completed successfully!')\n}\n```\n\n### PsqlTool - SQL Command Execution\n\nExecute SQL commands and scripts with full TypeScript support.\n\n```typescript\nimport { PsqlTool } from 'pg-embedded'\n\nconst psqlTool = new PsqlTool({\n  connection: postgres.connectionInfo,\n  programDir: '/path/to/postgres/bin',\n})\n\n// Execute SQL commands\nconst result = await psqlTool.executeCommand('CREATE TABLE users (id SERIAL PRIMARY KEY, name TEXT);')\n\n// Execute SQL files\nconst fileResult = await psqlTool.executeFile('./schema.sql')\n```\n\n### PgDumpTool - Database Export\n\nCreate database dumps with comprehensive format and filtering options.\n\n```typescript\nimport { PgDumpTool } from 'pg-embedded'\n\nconst dumpTool = new PgDumpTool({\n  connection: postgres.connectionInfo,\n  programDir: '/path/to/postgres/bin',\n  file: './backup.sql',\n  format: 'p', // plain SQL format\n  verbose: true,\n})\n\nconst result = await dumpTool.execute()\n```\n\n### PgRestoreTool - Database Import\n\nRestore databases from various backup formats.\n\n```typescript\nimport { PgRestoreTool } from 'pg-embedded'\n\nconst restoreTool = new PgRestoreTool({\n  connection: postgres.connectionInfo,\n  programDir: '/path/to/postgres/bin',\n  inputFile: './backup.sql',\n  verbose: true,\n})\n\nconst result = await restoreTool.execute()\n```\n\n## Advanced Usage\n\n### Using with Testing Frameworks\n\n#### Jest\n\n```typescript\nimport { PostgresInstance } from 'pg-embedded'\n\ndescribe('Database Tests', () => {\n  let postgres: PostgresInstance\n\n  beforeAll(async () => {\n    postgres = new PostgresInstance({\n      port: 5434,\n      persistent: false,\n    })\n    await postgres.start()\n  })\n\n  afterAll(async () => {\n    await postgres.stop()\n    await postgres.cleanup()\n  })\n\n  beforeEach(async () => {\n    await postgres.createDatabase('test_db')\n  })\n\n  afterEach(async () => {\n    await postgres.dropDatabase('test_db')\n  })\n\n  test('should create and connect to database', async () => {\n    const exists = await postgres.databaseExists('test_db')\n    expect(exists).toBe(true)\n  })\n})\n```\n\n#### Mocha\n\n```typescript\nimport { PostgresInstance } from 'pg-embedded'\n\ndescribe('Database Tests', function () {\n  let postgres: PostgresInstance\n\n  before(async function () {\n    this.timeout(30000) // Allow time for PostgreSQL to start\n    postgres = new PostgresInstance()\n    await postgres.start()\n  })\n\n  after(async function () {\n    await postgres.stop()\n    await postgres.cleanup()\n  })\n\n  it('should handle database operations', async function () {\n    await postgres.createDatabase('mocha_test')\n    const exists = await postgres.databaseExists('mocha_test')\n    expect(exists).to.be.true\n    await postgres.dropDatabase('mocha_test')\n  })\n})\n```\n\n### Performance Monitoring\n\n```typescript\nimport { PostgresInstance } from 'pg-embedded'\n\nconst postgres = new PostgresInstance()\n\n// Monitor startup performance\nconst startTime = Date.now()\nawait postgres.start()\nconst externalStartupTime = Date.now() - startTime\n\n// Get internal startup time measurement\nconst internalStartupTime = postgres.getStartupTime()\n\nconsole.log(`External measurement: ${externalStartupTime}ms`)\nconsole.log(`Internal measurement: ${internalStartupTime * 1000}ms`)\n\n// Check instance health\nif (postgres.isHealthy()) {\n  console.log('PostgreSQL instance is healthy')\n}\n```\n\n### Connection Caching\n\n```typescript\nimport { PostgresInstance } from 'pg-embedded'\n\nconst postgres = new PostgresInstance()\nawait postgres.start()\n\n// Connection info is cached for performance\nconst info1 = postgres.connectionInfo\nconst info2 = postgres.connectionInfo // Uses cached version\n\n// Check cache validity\nconsole.log(`Cache valid: ${postgres.isConnectionCacheValid()}`)\n\n// Manually clear cache if needed\npostgres.clearConnectionCache()\nconsole.log(`Cache valid after clear: ${postgres.isConnectionCacheValid()}`)\n```\n\n## Error Handling\n\nThe library provides detailed error information for different scenarios:\n\n```typescript\nimport { PostgresInstance } from 'pg-embedded'\n\nconst postgres = new PostgresInstance({\n  port: 80, // Invalid port for PostgreSQL\n})\n\ntry {\n  await postgres.start()\n} catch (error) {\n  console.error('Failed to start PostgreSQL:', error.message)\n  // Handle specific error types\n  if (error.code === 'ConfigurationError') {\n    console.log('Configuration issue detected')\n  }\n}\n```\n\n## Troubleshooting\n\n### Common Issues\n\n1. **Port already in use**\n\n   ```\n   Error: PostgreSQL error: could not bind IPv4 address \"127.0.0.1\": Address already in use\n   ```\n\n   Solution: Use a different port or stop the conflicting service.\n\n2. **Permission denied**\n\n   ```\n   Error: Permission denied\n   ```\n\n   Solution: Ensure your application has write permissions to the data directory.\n\n3. **Startup timeout**\n   ```\n   Error: Start operation timed out after 30 seconds\n   ```\n   Solution: Increase the timeout or check system resources.\n\n### Debug Logging\n\nEnable debug logging to get more information:\n\n```typescript\nimport { initLogger, LogLevel } from 'pg-embedded'\n\n// Enable debug logging\ninitLogger(LogLevel.Debug)\n\nconst postgres = new PostgresInstance()\nawait postgres.start() // Will output detailed logs\n```\n\n### Performance Tips\n\n1. **Use persistent instances for development**:\n\n   ```typescript\n   const postgres = new PostgresInstance({\n     persistent: true,\n     data_dir: './postgres-data',\n   })\n   ```\n\n2. **Reuse instances across tests**:\n\n   ```typescript\n   // Create once, use multiple times\n   const postgres = new PostgresInstance()\n   await postgres.start()\n\n   // Run multiple test suites...\n\n   await postgres.stop()\n   ```\n\n3. **Monitor startup times**:\n   ```typescript\n   await postgres.start()\n   const startupTime = postgres.getStartupTime()\n   if (startupTime > 5) {\n     console.warn(`Slow startup detected: ${startupTime}s`)\n   }\n   ```\n\n## Version Management\n\nThis project uses a special versioning scheme that includes the PostgreSQL version:\n\n```\n<base-version>+pg<postgresql-version>\n```\n\nFor example: `0.1.0+pg17.5` means:\n\n- Base package version: `0.1.0`\n- PostgreSQL version: `17.5`\n\n### Managing PostgreSQL Versions\n\n```bash\n# Check current PostgreSQL version\npnpm pg:version\n\n# Update PostgreSQL version\npnpm pg:update 17.6\n\n# The CI automatically uses the PostgreSQL version from package.json\n```\n\n### Release Process\n\nThe release process automatically preserves the PostgreSQL version:\n\n```bash\n# Patch release: 0.1.0+pg17.5 -> 0.1.1+pg17.5\npnpm release:patch\n\n# Minor release: 0.1.0+pg17.5 -> 0.2.0+pg17.5\npnpm release:minor\n\n# Major release: 0.1.0+pg17.5 -> 1.0.0+pg17.5\npnpm release:major\n```\n\n## Contributing\n\nContributions are welcome! Please read our [Contributing Guide](CONTRIBUTING.md) for details on our code of conduct and the process for submitting pull requests.\n\n## License\n\nThis project is licensed under the Apache License 2.0 - see the [LICENSE](LICENSE) file for details.\n\n## Changelog\n\nSee [CHANGELOG.md](CHANGELOG.md) for a list of changes and version history.\n\n## Documentation\n\n- 📖 [API Reference](API.md) - Complete API documentation\n- 📝 [Examples](examples/) - Usage examples and patterns\n- 🤝 [Contributing Guide](CONTRIBUTING.md) - How to contribute to the project\n- 📋 [Changelog](CHANGELOG.md) - Version history and changes\n\n## Support\n\nIf you need help or have questions:\n\n1. Check the [API Reference](API.md) for detailed documentation\n2. Look at the [examples](examples/) for common usage patterns\n3. Search existing [issues](https://github.com/PgTsLabs/pg-embedded/issues) for similar problems\n4. Create a new [issue](https://github.com/PgTsLabs/pg-embedded/issues/new) if you found a bug\n5. Start a [discussion](https://github.com/PgTsLabs/pg-embedded/discussions) for questions or ideas\n\n#### License\n\n<sup>\nLicensed under <a href=\"./LICENSE\">Apache License, Version 2.0</a>.\n</sup>\n\n<!-- Badges -->\n\n[npm-version-src]: https://img.shields.io/npm/v/pg-embedded?style=flat&colorA=080f12&colorB=1fa669\n[npm-version-href]: https://npmjs.com/package/pg-embedded\n[npm-downloads-src]: https://img.shields.io/npm/dm/pg-embedded?style=flat&colorA=080f12&colorB=1fa669\n[npm-downloads-href]: https://npmjs.com/package/pg-embedded\n[license-src]: https://img.shields.io/github/license/PgTsLabs/pg-embedded.svg?style=flat&colorA=080f12&colorB=1fa669\n[license-href]: https://github.com/PgTsLabs/pg-embedded/blob/main/LICENSE","readmeFilename":"README.md"}