{"_id":"verkit","_rev":"11-eb973df0f57d2abd292063c4bb4da63a","name":"verkit","dist-tags":{"latest":"0.5.0"},"versions":{"0.0.0":{"name":"verkit","version":"0.0.0","_id":"verkit@0.0.0","maintainers":[{"name":"sxzz","email":"npm@sxzz.moe"}],"dist":{"shasum":"4470674c2a4a58c6c3a9de4726d61b6307f84d41","tarball":"https://registry.npmjs.org/verkit/-/verkit-0.0.0.tgz","fileCount":1,"integrity":"sha512-D7HmnEbs6wDZY3cJp5f02Bl2VhfpejPfd/j0lD5PtVs7A6zs6o81jjZ7GvFvNeQ5wvMW+sZYXjbD9tyMGJb+0A==","signatures":[{"sig":"MEYCIQCqWxs4gBwK1WVofu67HVkrGVZQOcR8WxvPERp+v0392gIhANqccz7ff3QdEvyZUfHsbccKql/k86DEP1gzGrtonvd3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":65},"type":"module","_npmUser":{"name":"sxzz","email":"npm@sxzz.moe"},"_npmVersion":"11.16.0","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/verkit_0.0.0_1784469583056_0.09924380105283448","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"verkit","version":"0.1.0","keywords":["semver","semantic-versioning","version","range","esm","typescript","functional","immutable"],"author":"Kevin Deng <sxzz@sxzz.moe>","license":"MIT","_id":"verkit@0.1.0","maintainers":[{"name":"sxzz","email":"npm@sxzz.moe"}],"homepage":"https://github.com/sxzz/verkit#readme","bugs":{"url":"https://github.com/sxzz/verkit/issues"},"dist":{"shasum":"95652d263933111825873a3e6e829cbb218b5ab8","tarball":"https://registry.npmjs.org/verkit/-/verkit-0.1.0.tgz","fileCount":6,"integrity":"sha512-hot+EjuRuW/QsivBRTVKlL5FUVPIGpnjJv0fzuyYyD9Bqaj3Kx2KoSw1WVIoCTOhFkmNJZ0fhl66JdsXjWXztw==","signatures":[{"sig":"MEUCIQDRp4HFhFGvx5c/PhOkRqfwIgny7vMWc1TpIPrVou2XBAIgOYFZ6tMpL+pgVH3IQHcbc6I5BzijLo9N2ePY7c+dIMU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/verkit@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":78472},"type":"module","engines":{"node":"^22.18.0 || ^24.11.0 || >=26.0.0"},"exports":{".":"./dist/index.js","./package.json":"./package.json"},"funding":"https://github.com/sponsors/sxzz","scripts":{"dev":"tsdown --watch","lint":"eslint --cache .","test":"vitest","bench":"vitest bench --run","build":"tsdown","format":"prettier --cache --write .","release":"bumpp","lint:fix":"pnpm run lint --fix","test:size":"vitest run tests/bundle-size.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"sxzz","email":"npm@sxzz.moe"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3d9f7c3-71d0-4884-b7aa-ae5ace0e0283"}},"prettier":"@sxzz/prettier-config","repository":{"url":"git+https://github.com/sxzz/verkit.git","type":"git"},"description":"Fast, zero-dependency SemVer for ESM and TypeScript, with functional, tree-shakeable APIs.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bumpp":"^11.1.0","eslint":"^10.7.0","semver":"^7.8.5","tsdown":"^0.22.11","tsnapi":"^1.0.0","vitest":"4.1.10","prettier":"^3.9.5","rolldown":"^1.2.0","typescript":"~6.0.3","@types/node":"^26.1.1","@types/semver":"^7.7.1","tsdown-preset-sxzz":"^0.6.0","@sxzz/eslint-config":"^8.2.1","@sxzz/prettier-config":"^2.3.2","@typescript/native-preview":"npm:typescript@7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/verkit_0.1.0_1784485705844_0.026775562638222006","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"verkit","version":"0.1.1","keywords":["semver","semantic-versioning","version","range","esm","typescript","functional","immutable"],"author":"Kevin Deng <sxzz@sxzz.moe>","license":"MIT","_id":"verkit@0.1.1","maintainers":[{"name":"sxzz","email":"npm@sxzz.moe"}],"homepage":"https://github.com/sxzz/verkit#readme","bugs":{"url":"https://github.com/sxzz/verkit/issues"},"dist":{"shasum":"5f83dd0110803d37a5c0e3e0bf003d131872978f","tarball":"https://registry.npmjs.org/verkit/-/verkit-0.1.1.tgz","fileCount":6,"integrity":"sha512-cZkglQpdcADQLTV88UEB8ogySmvby1H//AIbq8Se5BzUKYR8Jc6C05c1ABYgjyHkOakUG/GYmgUJdGktjMnxzw==","signatures":[{"sig":"MEYCIQCRIo9pXzs0pQr1le8a+UsyhZnsprfzUXLtR0pz04H0jQIhAIh8y9/Pforr3hsL6LkL4LKZdOfbaC66zP6UeiESvQ4c","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/verkit@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":78461},"type":"module","engines":{"node":"^22.18.0 || >=24.11.0"},"exports":{".":"./dist/index.js","./package.json":"./package.json"},"funding":"https://github.com/sponsors/sxzz","scripts":{"dev":"tsdown --watch","lint":"eslint --cache .","test":"vitest","bench":"vitest bench --run","build":"tsdown","format":"prettier --cache --write .","release":"bumpp","lint:fix":"pnpm run lint --fix","test:size":"vitest run tests/bundle-size.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"sxzz","email":"npm@sxzz.moe"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3d9f7c3-71d0-4884-b7aa-ae5ace0e0283"}},"prettier":"@sxzz/prettier-config","repository":{"url":"git+https://github.com/sxzz/verkit.git","type":"git"},"description":"Fast, zero-dependency SemVer for ESM and TypeScript, with functional, tree-shakeable APIs.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bumpp":"^11.1.0","eslint":"^10.7.0","semver":"^7.8.5","tsdown":"^0.22.11","tsnapi":"^1.0.0","vitest":"4.1.10","prettier":"^3.9.5","rolldown":"^1.2.0","typescript":"~6.0.3","@types/node":"^26.1.1","@types/semver":"^7.7.1","tsdown-preset-sxzz":"^0.6.0","@sxzz/eslint-config":"^8.2.1","@sxzz/prettier-config":"^2.3.2","@typescript/native-preview":"npm:typescript@7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/verkit_0.1.1_1784488615230_0.5291884446810122","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"verkit","version":"0.1.2","keywords":["semver","semantic-versioning","version","range","esm","typescript","functional","immutable"],"author":"Kevin Deng <sxzz@sxzz.moe>","license":"MIT","_id":"verkit@0.1.2","maintainers":[{"name":"sxzz","email":"npm@sxzz.moe"}],"homepage":"https://github.com/sxzz/verkit#readme","bugs":{"url":"https://github.com/sxzz/verkit/issues"},"dist":{"shasum":"13b6aec0d7ebd25e40393cfef6258f810106bcfb","tarball":"https://registry.npmjs.org/verkit/-/verkit-0.1.2.tgz","fileCount":6,"integrity":"sha512-WqkT8n3hqizuCu71W3bUzf5fjBmkbXcudsehe/NbxA8PgqoKnSOY5K0Ba2ckg1qaRaSpSz7as/n9K1R9JXjQKg==","signatures":[{"sig":"MEQCID05S2uAnsUIRAhsGBLU5nutd0/4pOPGlRtJXw4H7RWbAiByevgKtVhKPozJhdTaoFxBgtkd7KDu+AQUg3W4DAsZvQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/verkit@0.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":78449},"type":"module","engines":{"node":">=18.12.0"},"exports":{".":"./dist/index.js","./package.json":"./package.json"},"funding":"https://github.com/sponsors/sxzz","scripts":{"dev":"tsdown --watch","lint":"eslint --cache .","test":"vitest","bench":"vitest bench --run","build":"tsdown","format":"prettier --cache --write .","release":"bumpp","lint:fix":"pnpm run lint --fix","test:size":"vitest run tests/bundle-size.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"sxzz","email":"npm@sxzz.moe"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3d9f7c3-71d0-4884-b7aa-ae5ace0e0283"}},"prettier":"@sxzz/prettier-config","repository":{"url":"git+https://github.com/sxzz/verkit.git","type":"git"},"description":"Fast, zero-dependency SemVer for ESM and TypeScript, with functional, tree-shakeable APIs.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bumpp":"^11.1.0","eslint":"^10.7.0","semver":"^7.8.5","tsdown":"^0.22.12","tsnapi":"^1.0.0","vitest":"4.1.10","prettier":"^3.9.5","rolldown":"^1.2.0","typescript":"~6.0.3","@types/node":"^26.1.1","@types/semver":"^7.7.1","tsdown-preset-sxzz":"^0.6.0","@sxzz/eslint-config":"^8.2.1","@sxzz/prettier-config":"^2.3.2","@typescript/native-preview":"npm:typescript@7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/verkit_0.1.2_1784491340006_0.5164646842332699","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"verkit","version":"0.2.0","keywords":["semver","semantic-versioning","version","range","esm","typescript","functional","immutable"],"author":"Kevin Deng <sxzz@sxzz.moe>","license":"MIT","_id":"verkit@0.2.0","maintainers":[{"name":"sxzz","email":"npm@sxzz.moe"}],"homepage":"https://github.com/sxzz/verkit#readme","bugs":{"url":"https://github.com/sxzz/verkit/issues"},"dist":{"shasum":"23d545800c8d918f31cf67e761149b80b0249a90","tarball":"https://registry.npmjs.org/verkit/-/verkit-0.2.0.tgz","fileCount":6,"integrity":"sha512-6M8R2xSKplkQ+0mAm07IMh548GLLPUnRQZJCCe/W4rfk/SXW2bs8ZJSWa5kjdIdsx3hLG5oLWROJ4+N5hpX08g==","signatures":[{"sig":"MEUCIFxMpjqQvXt8G2e0MSQ8SSbSSU3/IesZjwlQ5IjEVA8mAiEAgtEWdZBwPvzpoU/uZVi+CjI9ed3mTtFuLYFrjZTVslU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/verkit@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":78373},"type":"module","engines":{"node":">=18.12.0"},"exports":{".":"./dist/index.js","./package.json":"./package.json"},"funding":"https://github.com/sponsors/sxzz","scripts":{"dev":"tsdown --watch","lint":"eslint --cache .","test":"vitest","bench":"vitest bench --run","build":"tsdown","format":"prettier --cache --write .","release":"bumpp","lint:fix":"pnpm run lint --fix","test:size":"vitest run tests/bundle-size.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"sxzz","email":"npm@sxzz.moe"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3d9f7c3-71d0-4884-b7aa-ae5ace0e0283"}},"prettier":"@sxzz/prettier-config","repository":{"url":"git+https://github.com/sxzz/verkit.git","type":"git"},"description":"Fast, zero-dependency SemVer for ESM and TypeScript, with functional, tree-shakeable APIs.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bumpp":"^11.1.0","eslint":"^10.7.0","semver":"^7.8.5","tsdown":"^0.22.12","tsnapi":"^1.0.0","vitest":"4.1.10","prettier":"^3.9.5","rolldown":"^1.2.0","typescript":"~6.0.3","@types/node":"^26.1.1","@types/semver":"^7.7.1","tsdown-preset-sxzz":"^0.6.0","@sxzz/eslint-config":"^8.2.1","@sxzz/prettier-config":"^2.3.2","@typescript/native-preview":"npm:typescript@7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/verkit_0.2.0_1784655502430_0.49799708515188446","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"verkit","version":"0.3.0","keywords":["semver","semantic-versioning","version","range","esm","typescript","functional","immutable"],"author":"Kevin Deng <sxzz@sxzz.moe>","license":"MIT","_id":"verkit@0.3.0","maintainers":[{"name":"sxzz","email":"npm@sxzz.moe"}],"homepage":"https://github.com/sxzz/verkit#readme","bugs":{"url":"https://github.com/sxzz/verkit/issues"},"dist":{"shasum":"16bb7b6216c4ca74052a5e2620ebd0ef393c2e8c","tarball":"https://registry.npmjs.org/verkit/-/verkit-0.3.0.tgz","fileCount":5,"integrity":"sha512-Njrh4U8UODGajoZ44QS2C/BsoEM9DTI/aCqY5swsizb+/ap0FamvnCMcZAxrR5+aoC0ZqkawEfpC/N2SBc+xeA==","signatures":[{"sig":"MEQCIErYyul3nlcIci3a9IMLru6Nlju8anxPgGzlGPG39URFAiBngbB0y82LOtt7JfpufiEzKZzNxzNuWgqqenAUqZjE+Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/verkit@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":60119},"type":"module","engines":{"node":">=18.12.0"},"exports":{".":"./dist/index.js","./package.json":"./package.json"},"funding":"https://github.com/sponsors/sxzz","scripts":{"dev":"tsdown --watch","lint":"eslint --cache .","test":"vitest","bench":"vitest bench --run","build":"tsdown","format":"prettier --cache --write .","release":"bumpp","lint:fix":"pnpm run lint --fix","test:size":"vitest run tests/bundle-size.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"sxzz","email":"npm@sxzz.moe"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3d9f7c3-71d0-4884-b7aa-ae5ace0e0283"}},"prettier":"@sxzz/prettier-config","repository":{"url":"git+https://github.com/sxzz/verkit.git","type":"git"},"description":"Fast, zero-dependency SemVer for ESM and TypeScript, with functional, tree-shakeable APIs.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bumpp":"^12.0.0","eslint":"^10.7.0","semver":"^7.8.5","tsdown":"^0.22.13","tsnapi":"^1.2.0","vitest":"4.1.10","prettier":"^3.9.6","rolldown":"^1.2.0","typescript":"~6.0.3","@types/node":"^26.1.1","@types/semver":"^7.7.1","tsdown-preset-sxzz":"^0.6.0","@sxzz/eslint-config":"^8.3.0","@sxzz/prettier-config":"^2.3.2","@typescript/native-preview":"npm:typescript@7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/verkit_0.3.0_1784806732239_0.48439342832182475","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"verkit","version":"0.3.1","keywords":["semver","semantic-versioning","version","range","esm","typescript","functional","immutable"],"author":"Kevin Deng <sxzz@sxzz.moe>","license":"MIT","_id":"verkit@0.3.1","maintainers":[{"name":"sxzz","email":"npm@sxzz.moe"}],"homepage":"https://github.com/sxzz/verkit#readme","bugs":{"url":"https://github.com/sxzz/verkit/issues"},"dist":{"shasum":"6d22ae2187a346f7f540ba4bc18b85daa42a7367","tarball":"https://registry.npmjs.org/verkit/-/verkit-0.3.1.tgz","fileCount":5,"integrity":"sha512-w2Eo8LSIIoW7qxNBzT7/17k+bh8plXo7G3dHjEIDqPlnluhzaxr9JX8F28VSYEtDvc1/a3WBDih6xNUZseebXg==","signatures":[{"sig":"MEUCIQDNu35Rfa+sDaLlOndlPefmVX9vsIiTVFS2VWhK7tllzwIgNZpSOhLjyjMWIQRLpL8jCb/JnJzFMoHThzh+SavRlLg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/verkit@0.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":60121},"type":"module","engines":{"node":">=18.12.0"},"exports":{".":"./dist/index.js","./package.json":"./package.json"},"funding":"https://github.com/sponsors/sxzz","scripts":{"dev":"tsdown --watch","lint":"eslint --cache .","test":"vitest","bench":"vitest bench --run","build":"tsdown","format":"prettier --cache --write .","release":"bumpp","lint:fix":"pnpm run lint --fix","test:size":"vitest run tests/bundle-size.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"sxzz","email":"npm@sxzz.moe"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3d9f7c3-71d0-4884-b7aa-ae5ace0e0283"}},"prettier":"@sxzz/prettier-config","repository":{"url":"git+https://github.com/sxzz/verkit.git","type":"git"},"description":"Fast, zero-dependency SemVer for ESM and TypeScript, with functional, tree-shakeable APIs.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bumpp":"^12.0.0","eslint":"^10.7.0","semver":"^7.8.5","tsdown":"^0.22.13","tsnapi":"^1.2.0","vitest":"4.1.10","prettier":"^3.9.6","rolldown":"^1.2.0","typescript":"~6.0.3","@types/node":"^26.1.1","@types/semver":"^7.7.1","tsdown-preset-sxzz":"^0.6.0","@sxzz/eslint-config":"^8.3.0","@sxzz/prettier-config":"^2.3.2","@typescript/native-preview":"npm:typescript@7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/verkit_0.3.1_1785162473196_0.3985132069958697","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"verkit","version":"0.3.2","keywords":["semver","semantic-versioning","version","range","esm","typescript","functional","immutable"],"author":"Kevin Deng <sxzz@sxzz.moe>","license":"MIT","_id":"verkit@0.3.2","maintainers":[{"name":"sxzz","email":"npm@sxzz.moe"}],"homepage":"https://github.com/sxzz/verkit#readme","bugs":{"url":"https://github.com/sxzz/verkit/issues"},"dist":{"shasum":"0511ea63310551b62a20c010aa820350c5c350c6","tarball":"https://registry.npmjs.org/verkit/-/verkit-0.3.2.tgz","fileCount":5,"integrity":"sha512-zj/ob3UsvJGN0whEAKFp53REA5X66hvffVqoCtVQAakJKnKlH+/PcOfMoFwIG/o4rElqLv/ycAFlx8ZlXUorCg==","signatures":[{"sig":"MEQCIFZC82Mlf7fOEPcLwIEriV1UkfHyUrvp8y+Do1MzaxEQAiABTbc9nM37z+ijIKSqnf5eD+zix/abfnefORgjNsUT8Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/verkit@0.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":62881},"type":"module","engines":{"node":">=18.12.0"},"exports":{".":"./dist/index.js","./package.json":"./package.json"},"funding":"https://github.com/sponsors/sxzz","scripts":{"dev":"tsdown --watch","lint":"eslint --cache .","test":"vitest","bench":"vitest bench --run","build":"tsdown","format":"prettier --cache --write .","release":"bumpp","lint:fix":"pnpm run lint --fix","test:size":"vitest run tests/bundle-size.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"sxzz","email":"npm@sxzz.moe"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3d9f7c3-71d0-4884-b7aa-ae5ace0e0283"}},"prettier":"@sxzz/prettier-config","repository":{"url":"git+https://github.com/sxzz/verkit.git","type":"git"},"description":"Fast, zero-dependency SemVer for ESM and TypeScript, with functional, tree-shakeable APIs.","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bumpp":"^12.1.1","eslint":"^10.8.0","semver":"^7.8.5","tsdown":"^0.22.14","tsnapi":"^1.2.0","vitest":"4.1.10","prettier":"^3.9.6","rolldown":"^1.2.2","typescript":"~6.0.3","@types/node":"^26.1.2","@types/semver":"^7.8.0","tsdown-preset-sxzz":"^0.7.0","@sxzz/eslint-config":"^8.4.0","@sxzz/prettier-config":"^2.3.2","@typescript/native-preview":"npm:typescript@7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/verkit_0.3.2_1785866968919_0.10472520884598446","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"verkit","version":"0.4.0","keywords":["semver","semantic-versioning","version","range","esm","typescript","functional","immutable"],"author":"Kevin Deng <sxzz@sxzz.moe>","license":"MIT","_id":"verkit@0.4.0","maintainers":[{"name":"sxzz","email":"npm@sxzz.moe"}],"homepage":"https://github.com/sxzz/verkit#readme","bugs":{"url":"https://github.com/sxzz/verkit/issues"},"dist":{"shasum":"8cec7abc965d26f3069f6a630351478e3de2a510","tarball":"https://registry.npmjs.org/verkit/-/verkit-0.4.0.tgz","fileCount":21,"integrity":"sha512-sXMwN6DMHeouPfCxkxWkKAmxphWKEenHYY5H1nIBzU3PmDsmJp6kBXJdshjVdpMZuWCmL9SH7KFRx29AylpP6g==","signatures":[{"sig":"MEUCIEaX2pxMUGaGPI7YV0NRnozK1W+OR4OIJtP7XRWaSrMrAiEAqEVKzLuCUFl7DYZVDqsgdyuG/4xOdlyDRQJBOnlWQP0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/verkit@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":77715},"type":"module","engines":{"node":">=18.12.0"},"exports":{".":"./dist/index.js","./range":"./dist/range.js","./version":"./dist/version.js","./comparator":"./dist/comparator.js","./package.json":"./package.json"},"funding":"https://github.com/sponsors/sxzz","scripts":{"dev":"tsdown --watch","lint":"eslint --cache .","test":"vitest","bench":"vitest bench --run","build":"tsdown","format":"prettier --cache --write .","release":"bumpp","lint:fix":"pnpm run lint --fix","test:size":"vitest run tests/bundle-size.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"sxzz","email":"npm@sxzz.moe"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3d9f7c3-71d0-4884-b7aa-ae5ace0e0283"}},"prettier":"@sxzz/prettier-config","repository":{"url":"git+https://github.com/sxzz/verkit.git","type":"git"},"description":"Fast, zero-dependency SemVer for ESM and TypeScript, with functional, tree-shakeable APIs.","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bumpp":"^12.1.1","eslint":"^10.8.0","semver":"^7.8.5","tsdown":"^0.22.14","vitest":"4.1.10","prettier":"^3.9.6","rolldown":"^1.2.2","typescript":"~6.0.3","@types/node":"^26.1.2","@types/semver":"^7.8.0","tsdown-preset-sxzz":"^0.7.0","@sxzz/eslint-config":"^8.4.0","@sxzz/prettier-config":"^2.3.2","@typescript/native-preview":"npm:typescript@7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/verkit_0.4.0_1786799411145_0.582675286352593","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"verkit","version":"0.4.1","keywords":["semver","semantic-versioning","version","range","esm","typescript","functional","immutable"],"author":"Kevin Deng <sxzz@sxzz.moe>","license":"MIT","_id":"verkit@0.4.1","maintainers":[{"name":"sxzz","email":"npm@sxzz.moe"}],"homepage":"https://github.com/sxzz/verkit#readme","bugs":{"url":"https://github.com/sxzz/verkit/issues"},"dist":{"shasum":"f8c00a63516c5ed3fe7dbbc82355c50579c42c61","tarball":"https://registry.npmjs.org/verkit/-/verkit-0.4.1.tgz","fileCount":21,"integrity":"sha512-mMVzj0TXExtVdlDEq+Mzp0eyOuyznNpFobNM3uAqe3HVm/Ps2c+u17BligMkZjZCA6EiXpoon8iRTer3iu40SQ==","signatures":[{"sig":"MEYCIQDGCGoUw/I4ULbRWN/vqCGk59JoiAwgLRWKRR8oVWzoPwIhAJ/65sG4eNbNLy2D5W2FIL9gc8d4rLkXFx9OGJ6aUYSG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/verkit@0.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":80104},"type":"module","engines":{"node":">=18.12.0"},"exports":{".":"./dist/index.js","./range":"./dist/range.js","./version":"./dist/version.js","./comparator":"./dist/comparator.js","./package.json":"./package.json"},"funding":"https://github.com/sponsors/sxzz","scripts":{"dev":"tsdown --watch","lint":"eslint --cache .","test":"vitest","bench":"vitest bench --run --experimental.viteModuleRunner=false","build":"tsdown","format":"prettier --cache --write .","release":"bumpp","lint:fix":"pnpm run lint --fix","test:size":"vitest run tests/bundle-size.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"sxzz","email":"npm@sxzz.moe"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3d9f7c3-71d0-4884-b7aa-ae5ace0e0283"}},"prettier":"@sxzz/prettier-config","devEngines":{"packageManager":{"name":"pnpm","onFail":"download","version":"12.4.2"}},"repository":{"url":"git+https://github.com/sxzz/verkit.git","type":"git"},"description":"Fast, zero-dependency SemVer for ESM and TypeScript, with functional, tree-shakeable APIs.","directories":{},"sideEffects":false,"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"bumpp":"^12.3.0","eslint":"^10.10.0","semver":"^7.8.5","tsdown":"^0.23.0","vitest":"5.0.1","prettier":"^3.9.8","rolldown":"^1.2.9","typescript":"~6.0.3","@types/node":"^26.6.1","@types/semver":"^7.8.0","tsdown-preset-sxzz":"^0.7.1","@sxzz/eslint-config":"^8.6.0","@vitest/coverage-v8":"^5.0.1","@sxzz/prettier-config":"^2.3.3","@typescript/native-preview":"npm:typescript@7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/verkit_0.4.1_1789753816373_0.11381041240126066","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"_id":"verkit@0.5.0","bugs":{"url":"https://github.com/sxzz/verkit/issues"},"dist":{"shasum":"8b7617dda9ad2edb7851c6a4ff5f3ca428482401","tarball":"https://registry.npmjs.org/verkit/-/verkit-0.5.0.tgz","integrity":"sha512-u4J1hr6Y+C/hit34GwL3eIcUf3wngT8TlYUjK7tk0jxydKLAq3sYvifjdTDA6U3KCKRcQCQDGf/srjxfZF3l7g==","fileCount":21,"unpackedSize":78664,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/verkit@0.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDBz4j+D5bczQszbF94D251PyCCrbiZ/F0rJwcDWIL7awIgcCxyO41f4GKSi5pBUofzIgebz9lTXNAgVILGU19tGWw="}]},"name":"verkit","type":"module","author":"Kevin Deng <sxzz@sxzz.moe>","engines":{"node":">=18.12.0"},"exports":{".":"./dist/index.js","./range":"./dist/range.js","./version":"./dist/version.js","./comparator":"./dist/comparator.js","./package.json":"./package.json"},"funding":"https://github.com/sponsors/sxzz","license":"MIT","scripts":{"dev":"tsdown --watch","lint":"eslint --cache .","test":"vitest","bench":"vitest bench --run --experimental.viteModuleRunner=false","build":"tsdown","format":"prettier --cache --write .","release":"bumpp","lint:fix":"pnpm run lint --fix","test:size":"vitest run tests/bundle-size.test.ts","typecheck":"tsc --noEmit"},"version":"0.5.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f3d9f7c3-71d0-4884-b7aa-ae5ace0e0283"},"approver":{"name":"sxzz","email":"npm@sxzz.moe"}},"homepage":"https://github.com/sxzz/verkit#readme","keywords":["semver","semantic-versioning","version","range","esm","typescript","functional","immutable"],"prettier":"@sxzz/prettier-config","devEngines":{"packageManager":{"name":"pnpm","onFail":"download","version":"12.4.2"}},"repository":{"url":"git+https://github.com/sxzz/verkit.git","type":"git"},"description":"Fast, zero-dependency SemVer for ESM and TypeScript, with functional, tree-shakeable APIs.","directories":{},"maintainers":[{"name":"sxzz","email":"npm@sxzz.moe"}],"sideEffects":false,"publishConfig":{"access":"public"},"devDependencies":{"bumpp":"^12.3.0","eslint":"^10.10.0","semver":"^7.8.5","tsdown":"^0.23.0","vitest":"5.0.1","prettier":"^3.9.8","rolldown":"^1.2.9","typescript":"~6.0.3","@types/node":"^26.6.1","@types/semver":"^7.8.0","tsdown-preset-sxzz":"^0.7.1","@sxzz/eslint-config":"^8.6.0","@vitest/coverage-v8":"^5.0.1","@sxzz/prettier-config":"^2.3.3","@typescript/native-preview":"npm:typescript@7.0.2"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/verkit_0.5.0_1789753949833_0.7244187064182308"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-19T13:59:42.899Z","modified":"2026-09-18T17:52:30.186Z","0.0.0":"2026-07-19T13:59:43.196Z","0.1.0":"2026-07-19T18:28:25.928Z","0.1.1":"2026-07-19T19:16:55.329Z","0.1.2":"2026-07-19T20:02:20.092Z","0.2.0":"2026-07-21T17:38:22.513Z","0.3.0":"2026-07-23T11:38:52.429Z","0.3.1":"2026-07-27T14:27:53.275Z","0.3.2":"2026-08-04T18:09:29.008Z","0.4.0":"2026-08-15T13:10:11.219Z","0.4.1":"2026-09-18T17:50:16.455Z","0.5.0":"2026-09-18T17:52:29.936Z"},"bugs":{"url":"https://github.com/sxzz/verkit/issues"},"author":"Kevin Deng <sxzz@sxzz.moe>","license":"MIT","homepage":"https://github.com/sxzz/verkit#readme","keywords":["semver","semantic-versioning","version","range","esm","typescript","functional","immutable"],"repository":{"url":"git+https://github.com/sxzz/verkit.git","type":"git"},"description":"Fast, zero-dependency SemVer for ESM and TypeScript, with functional, tree-shakeable APIs.","maintainers":[{"name":"sxzz","email":"npm@sxzz.moe"}],"readme":"# verkit\n\n[![Open on npmx][npmx-version-src]][npmx-href]\n[![npm downloads][npmx-downloads-src]][npmx-href]\n[![Unit Test][unit-test-src]][unit-test-href]\n[![Codecov][codecov-src]][codecov-href]\n\nFast, zero-dependency SemVer for ESM and TypeScript, with functional,\ntree-shakeable APIs.\n\n## Features\n\n- ✅ Complete SemVer version and range toolkit.\n- 🚀 Faster than [node-semver] across tested operations.\n- 📦 Pure ESM with zero runtime dependencies.\n- 💙 First-class TypeScript declarations.\n- 🌳 Functional, tree-shakeable named exports.\n- 🔁 Mutable `SemVer` and `SemVerRange` records.\n- ⚡ 26.0% smaller for full CDN imports.\n- 🪶 61.4% smaller with common bundled imports.\n- 🛡️ Immutable collection operations.\n\n## Install\n\n```bash\nnpm add verkit\n```\n\n## Versions\n\n```ts\nimport {\n  coerce,\n  increment,\n  normalize,\n  normalizeFull,\n  parse,\n  truncate,\n} from 'verkit'\n\nconst version = parse('1.2.3-rc.1+sha.abc')\nconst coerced = coerce('release 42.6.7.9', { rtl: true })\nversion.patch = 4\n\nnormalizeFull(version) // '1.2.4-rc.1+sha.abc'\nnormalize(version) // '1.2.4-rc.1'\nincrement(version, 'minor') // '1.3.0'\ntruncate(version, 'patch') // '1.2.4'\ncoerced?.major // 6\n```\n\nVersion APIs accept strings or mutable `SemVer` objects returned by `parse` or\n`coerce`.\n`normalizeFull` keeps build metadata; normalized, incremented, and truncated\nversions omit it.\n\n## Comparison\n\n```ts\nimport { compare, compareBuild, isGreaterThan, sortReversed } from 'verkit'\n\ncompare('1.0.0+one', '1.0.0+two') // 0\ncompareBuild('1.0.0+one', '1.0.0+two') // -1\nisGreaterThan('2.0.0', '1.0.0') // true\nsortReversed(['1.0.0', '2.0.0']) // ['2.0.0', '1.0.0']\n```\n\n`compare` ignores build metadata; `compareBuild` uses it as a tie-breaker.\n\n## Ranges\n\n```ts\nimport {\n  findMaxSatisfying,\n  normalizeRange,\n  parseRange,\n  satisfies,\n} from 'verkit'\n\nconst range = parseRange('^1.2.3')\n\nnormalizeRange(range) // '>=1.2.3 <2.0.0-0'\nsatisfies('1.5.0', range) // true\nfindMaxSatisfying(['1.2.3', '1.5.0', '2.0.0'], range) // '1.5.0'\n```\n\nRange APIs accept strings or mutable `SemVerRange` objects. They support\ncomparators, unions, hyphens, wildcards, tilde, caret, loose parsing, and\nprereleases.\n\nRange options are fixed when a `SemVerRange` is created. APIs that receive a\nparsed range use its stored options and do not accept another options argument:\n\n```ts\nconst prereleases = parseRange('1.x', { includePrerelease: true })\n\nsatisfies('1.0.0-rc.1', prereleases) // true\n```\n\nTo use different options, pass the original range string again or create\nanother parsed range.\n\n## API\n\nSee the [API reference](https://npmx.dev/package-docs/verkit).\n\n## Invalid input behavior\n\n`parse`, `parseComparator`, and `parseRange` throw detailed `TypeError`s. Their\n`tryParse*` wrappers return `null`; other safe transforms and predicates keep\ntheir documented `null`/`false` behavior.\n\n## Migrating from node-semver\n\nOnly renamed or reshaped [node-semver] APIs are listed; same-named functions\nsuch as `clean`, `coerce`, `compare`, and `satisfies` are omitted.\n\n| node-semver                                    | verkit                                                                                              |\n| ---------------------------------------------- | --------------------------------------------------------------------------------------------------- |\n| `SemVer`                                       | `parse`                                                                                             |\n| `parse`                                        | `tryParse`                                                                                          |\n| `valid`                                        | `normalize`                                                                                         |\n| `inc`, `diff`                                  | `increment`, `difference`                                                                           |\n| `major`, `minor`, `patch`, `prerelease`        | `getMajor`, `getMinor`, `getPatch`, `getPrerelease`                                                 |\n| `rcompare`, `compareLoose`, `cmp`              | `compareReversed`, `compare` with `{ loose: true }`, `compareWithOperator`                          |\n| `eq`, `neq`, `gt`, `gte`, `lt`, `lte`          | `isEqual`, `isNotEqual`, `isGreaterThan`, `isGreaterThanOrEqual`, `isLessThan`, `isLessThanOrEqual` |\n| `rsort`                                        | `sortReversed`                                                                                      |\n| `rcompareIdentifiers`                          | `compareIdentifiersReversed`                                                                        |\n| `Comparator`                                   | `SemVerComparator`, `parseComparator`, `tryParseComparator`                                         |\n| Comparator formatting, test, and intersection  | `normalizeComparator`, `satisfiesComparator`, `comparatorsIntersect`                                |\n| `Range`                                        | `parseRange`                                                                                        |\n| `toComparators`, `validRange`                  | `rangeToComparators`, `normalizeRange`                                                              |\n| `maxSatisfying`, `minSatisfying`, `minVersion` | `findMaxSatisfying`, `findMinSatisfying`, `findMinimumForRange`                                     |\n| `outside`, `gtr`, `ltr`                        | `isOutsideRange`, `isGreaterThanRange`, `isLessThanRange`                                           |\n| `intersects`, `subset`                         | `rangesIntersect`, `isRangeSubset`                                                                  |\n| `RELEASE_TYPES`                                | `INCREMENT_TYPES` (also includes `release`)                                                         |\n\n`valid` returns a normalized `string | null` in node-semver, so its equivalent\nis `normalize`. Use `isValid` when you only need a boolean.\n\nUse options objects such as `{ loose: true }` and `{ identifier, identifierBase }`.\nRange options belong to the string-parsing step; parsed `SemVerRange` objects\nalready contain them.\n\n## Differences from node-semver\n\nverkit follows [node-semver] semantics with four user-visible differences:\n\n- Array helpers never mutate their inputs.\n- Parsed `SemVerRange` objects retain their parse-time options. node-semver\n  helpers may reparse a `Range` from `raw` using call-site options.\n- verkit is ESM-only, with no CommonJS, CLI, or `NODE_DEBUG=semver` output.\n- Error text, stack traces, and supported runtimes may differ.\n\n## Bundle size\n\nFull package imports, minified with Rolldown:\n\n| Package               | Minified |    gzip |  Brotli |\n| --------------------- | -------: | ------: | ------: |\n| verkit                | 18,820 B | 5,914 B | 5,375 B |\n| [semver][node-semver] | 24,424 B | 7,427 B | 6,765 B |\n| verkit reduction      |    26.0% |   20.4% |   20.5% |\n\nCommon validation, range, comparison, increment, and coercion imports,\ntree-shaken and minified with Rolldown:\n\n| Package               | Minified |    gzip |  Brotli |\n| --------------------- | -------: | ------: | ------: |\n| verkit                |  9,872 B | 3,401 B | 3,121 B |\n| [semver][node-semver] | 25,577 B | 7,500 B | 6,835 B |\n| verkit reduction      |    61.4% |   54.7% |   54.3% |\n\nRun `pnpm test:size` to reproduce the comparison.\n\n## Benchmarks\n\nMeasured on a MacBook Pro with an Apple M1 Max and 32 GB RAM. Higher is\nbetter.\n\n| Operation                 | verkit ops/s | semver ops/s | Faster       |\n| ------------------------- | -----------: | -----------: | ------------ |\n| Parse and normalize       |        3.67M |        3.26M | verkit 1.13× |\n| Compare                   |        3.09M |        2.36M | verkit 1.31× |\n| Compare parsed versions   |       40.59M |       28.62M | verkit 1.42× |\n| Increment                 |        3.38M |        2.03M | verkit 1.66× |\n| Coerce                    |        2.77M |        2.32M | verkit 1.19× |\n| Satisfy uncached ranges   |       148.5K |       122.3K | verkit 1.21× |\n| Satisfy pre-parsed inputs |       22.91M |        7.20M | verkit 3.18× |\n\nRange benchmarks either cycle through 1,001 inputs to avoid cache hits or\nparse once and reuse the resulting objects.\n\nRun runtime benchmarks with `pnpm bench`.\n\n## Sponsors\n\n<p align=\"center\">\n  <a href=\"https://cdn.jsdelivr.net/gh/sxzz/sponsors/sponsors.svg\">\n    <img src=\"https://cdn.jsdelivr.net/gh/sxzz/sponsors/sponsors.svg\" alt=\"Sponsors\" />\n  </a>\n</p>\n\n## License\n\n[MIT](./LICENSE) © 2026-PRESENT [Kevin Deng](https://github.com/sxzz).\n\nParts of the implementation and test fixtures are derived from [node-semver]\nunder the ISC license; see [THIRD_PARTY_NOTICES.md](./THIRD_PARTY_NOTICES.md).\n\n<!-- Badges -->\n\n[npmx-version-src]: https://npmx.dev/api/registry/badge/version/verkit\n[npmx-downloads-src]: https://npmx.dev/api/registry/badge/downloads-month/verkit\n[npmx-href]: https://npmx.dev/verkit\n[node-semver]: https://github.com/npm/node-semver\n[unit-test-src]: https://github.com/sxzz/verkit/actions/workflows/unit-test.yml/badge.svg\n[unit-test-href]: https://github.com/sxzz/verkit/actions/workflows/unit-test.yml\n[codecov-src]: https://codecov.io/gh/sxzz/verkit/graph/badge.svg?token=hBBtxizmt9\n[codecov-href]: https://codecov.io/gh/sxzz/verkit\n","readmeFilename":""}