{"_id":"@absolutejs/changelog","_rev":"10-16a630abb91a583116c68b3d89eb8e1e","name":"@absolutejs/changelog","dist-tags":{"latest":"0.7.0"},"versions":{"0.1.0":{"name":"@absolutejs/changelog","version":"0.1.0","keywords":["absolutejs","changelog","codemod","migration","release","semver","upgrade"],"author":"Alex Kahn","license":"MIT","_id":"@absolutejs/changelog@0.1.0","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"homepage":"https://github.com/absolutejs/changelog","bugs":{"url":"https://github.com/absolutejs/changelog/issues"},"bin":{"absolute-changelog":"dist/cli.js"},"dist":{"shasum":"adefc445742668a05bf6d8c4f3416da943628a05","tarball":"https://registry.npmjs.org/@absolutejs/changelog/-/changelog-0.1.0.tgz","fileCount":22,"integrity":"sha512-4IT/TZKWENwAla4rW6cS8GyRuyjXpCttu3pzwR6ygu7mJGgQKLe0l67gOlYM7onv54aRgyV+gBrK6GYgjXYSRg==","signatures":[{"sig":"MEUCIQD5blemshSAApwM1i4s+GADV4U85RrVpK+2uB5UGZuN8gIgHEcBCx7LW2vcFcaqZ1QMtlhQ7cutgEqNRrc5VzJm58k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":294339},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","shasum":"adefc445742668a05bf6d8c4f3416da943628a05","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"scripts":{"lint":"eslint . --max-warnings 0","test":"bun test tests/","build":"rm -rf dist && bun build src/index.ts src/cli.ts --outdir dist --root src --sourcemap --target=bun && tsc --project tsconfig.build.json","format":"prettier --write \"./**/*.{ts,json,md}\"","release":"bun run format && bun run check:package && bun publish","changelog":"bun src/cli.ts","typecheck":"tsc --noEmit","check:package":"bun run typecheck && bun run lint && bun run test && bun run build && bun src/cli.ts check"},"_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"_integrity":"sha512-4IT/TZKWENwAla4rW6cS8GyRuyjXpCttu3pzwR6ygu7mJGgQKLe0l67gOlYM7onv54aRgyV+gBrK6GYgjXYSRg==","repository":{"url":"git+https://github.com/absolutejs/changelog.git","type":"git"},"_npmVersion":"10.8.3","description":"The changelog contract for the AbsoluteJS packages. Changes are written as typed entries the compiler checks, the release gate reconciles them against the package's own published types so a change nobody wrote down cannot ship, and migrations are data rat","directories":{},"_nodeVersion":"26.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.1","globals":"^17.11.0","prettier":"^3.5.3","@eslint/js":"^10.0.1","@types/bun":"^1.3.14","typescript":"^5.8.3","typescript-eslint":"^8.56.0","eslint-plugin-promise":"^7.3.0","eslint-plugin-absolute":"^0.11.34","eslint-plugin-security":"^4.0.1","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.68.0"},"_npmOperationalInternal":{"tmp":"tmp/changelog_0.1.0_1789029472715_0.4466478946632073","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@absolutejs/changelog","version":"0.1.1","keywords":["absolutejs","changelog","codemod","migration","release","semver","upgrade"],"author":"Alex Kahn","license":"MIT","_id":"@absolutejs/changelog@0.1.1","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"homepage":"https://github.com/absolutejs/changelog","bugs":{"url":"https://github.com/absolutejs/changelog/issues"},"bin":{"absolute-changelog":"dist/cli.js"},"dist":{"shasum":"e4749dd1f5ab8621a0bcb5e2bfa6d96526000d68","tarball":"https://registry.npmjs.org/@absolutejs/changelog/-/changelog-0.1.1.tgz","fileCount":22,"integrity":"sha512-EGL79NSI7IwDOD0T78v9CgtVMNAQn9lPy+gEkUu3xIvzAFEIMJihA+xFiNFWtM6m/I44aepNpH/F3Or5w/r2yQ==","signatures":[{"sig":"MEUCIHiCS+2AUHdERNHZYcSDNmf6nipF2UZfQgFMdte2NT+6AiEAnasmDsOD+TS0pM6dETEcH5Hlao9sfkDa747U9o5j3JQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIBv77pQF3KBCVUtveoNYAPNfroHyp1vBhKpiZj9J05AiAiAPBJYK7bPn1lAx3wsm2a3UsyWrXJ9GQSV/932txeAGYg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":299303},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","shasum":"e4749dd1f5ab8621a0bcb5e2bfa6d96526000d68","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"scripts":{"lint":"eslint . --max-warnings 0","test":"bun test tests/","build":"rm -rf dist && bun build src/index.ts src/cli.ts --outdir dist --root src --sourcemap --target=bun && tsc --project tsconfig.build.json","format":"prettier --write \"./**/*.{ts,json,md}\"","release":"bun run format && bun run check:package && bun publish","changelog":"bun src/cli.ts","typecheck":"tsc --noEmit","check:package":"bun run typecheck && bun run lint && bun run test && bun run build && bun src/cli.ts check"},"_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"_integrity":"sha512-EGL79NSI7IwDOD0T78v9CgtVMNAQn9lPy+gEkUu3xIvzAFEIMJihA+xFiNFWtM6m/I44aepNpH/F3Or5w/r2yQ==","repository":{"url":"git+https://github.com/absolutejs/changelog.git","type":"git"},"_npmVersion":"10.8.3","description":"The changelog contract for the AbsoluteJS packages. Changes are written as typed entries the compiler checks, the release gate reconciles them against the package's own published types so a change nobody wrote down cannot ship, and migrations are data rat","directories":{},"_nodeVersion":"26.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.1","globals":"^17.11.0","prettier":"^3.5.3","@eslint/js":"^10.0.1","@types/bun":"^1.3.14","typescript":"^5.8.3","typescript-eslint":"^8.56.0","eslint-plugin-promise":"^7.3.0","eslint-plugin-absolute":"^0.11.34","eslint-plugin-security":"^4.0.1","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.68.0"},"_npmOperationalInternal":{"tmp":"tmp/changelog_0.1.1_1789029956488_0.7666237682303867","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@absolutejs/changelog","version":"0.1.2","keywords":["absolutejs","changelog","codemod","migration","release","semver","upgrade"],"author":"Alex Kahn","license":"MIT","_id":"@absolutejs/changelog@0.1.2","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"homepage":"https://github.com/absolutejs/changelog","bugs":{"url":"https://github.com/absolutejs/changelog/issues"},"bin":{"absolute-changelog":"dist/cli.js"},"dist":{"shasum":"a142cac3ecf865f7b9cb336f8edcbc9eb7205217","tarball":"https://registry.npmjs.org/@absolutejs/changelog/-/changelog-0.1.2.tgz","fileCount":23,"integrity":"sha512-q6gQwkDr0IVdWHzTOT3AaZvPSn0ucNidbjBnAUZ8CSwS3wrCd02YMXuBC8sd0ptpYvCowLnR/QWIpBrNqbn+YA==","signatures":[{"sig":"MEUCIHj03ZULS+t4M76AqaZZTdCpi6Z4WteAb0XyH5uEo1X3AiEAhIrZjVJ1AGkDPJtaYzL4Udcg891D4yh9wfhtciDGe3g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIDRnpykKueCE3KmRR7MUmrxsnIMK0Lp/U2h5/hJMwFaNAiEAsz9K2Qwa3vcUuerr1qV+HYJdYtKXkJ/zbUCKB97EICk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":301449},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","shasum":"a142cac3ecf865f7b9cb336f8edcbc9eb7205217","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"scripts":{"lint":"eslint . --max-warnings 0","test":"bun test tests/","build":"rm -rf dist && bun build src/index.ts src/cli.ts --outdir dist --root src --sourcemap --target=bun && tsc --project tsconfig.build.json","format":"prettier --write \"./**/*.{ts,json,md}\"","release":"bun run format && bun run check:package && bun publish","changelog":"bun src/cli.ts","typecheck":"tsc --noEmit","check:package":"bun run typecheck && bun run lint && bun run test && bun run build && bun src/cli.ts check"},"_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"_integrity":"sha512-q6gQwkDr0IVdWHzTOT3AaZvPSn0ucNidbjBnAUZ8CSwS3wrCd02YMXuBC8sd0ptpYvCowLnR/QWIpBrNqbn+YA==","repository":{"url":"git+https://github.com/absolutejs/changelog.git","type":"git"},"_npmVersion":"10.8.3","description":"The changelog contract for the AbsoluteJS packages. Changes are written as typed entries the compiler checks, the release gate reconciles them against the package's own published types so a change nobody wrote down cannot ship, and migrations are data rat","directories":{},"_nodeVersion":"26.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.1","globals":"^17.11.0","prettier":"^3.5.3","@eslint/js":"^10.0.1","@types/bun":"^1.3.14","typescript":"^5.8.3","typescript-eslint":"^8.56.0","eslint-plugin-promise":"^7.3.0","eslint-plugin-absolute":"^0.11.34","eslint-plugin-security":"^4.0.1","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.68.0"},"_npmOperationalInternal":{"tmp":"tmp/changelog_0.1.2_1789030075954_0.43299672811334666","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@absolutejs/changelog","version":"0.2.0","keywords":["absolutejs","changelog","codemod","migration","release","semver","upgrade"],"author":"Alex Kahn","license":"MIT","_id":"@absolutejs/changelog@0.2.0","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"homepage":"https://github.com/absolutejs/changelog","bugs":{"url":"https://github.com/absolutejs/changelog/issues"},"bin":{"absolute-changelog":"dist/cli.js"},"dist":{"shasum":"432c41e39e7970301fe3ca7c5a4952d2b32bc602","tarball":"https://registry.npmjs.org/@absolutejs/changelog/-/changelog-0.2.0.tgz","fileCount":23,"integrity":"sha512-9GdRyWB3X5zEwlTcVCH+qUS84FTChCoZvli0z3Gp8SI3pnLN4XK3vO0s45dPk5ZfezxAzC1ZwlKWTh44eLxh1w==","signatures":[{"sig":"MEQCIEm7Iiblm+OVEa38rnKSmzVY2QAqy3BJmXNZCa58FFi6AiBhAls5Uj/Td194St5GifSj9ZYC70NJTRfIdqO7ers08Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCwVutPsYHRxpInqcp2wBNYIukNhPjwdAKLwqM9nTno7AIgNFSoFclaRCKAnkR6+QD/4f2VPeheZm3SgKXN02eQvAo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":336121},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","shasum":"432c41e39e7970301fe3ca7c5a4952d2b32bc602","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"scripts":{"lint":"eslint . --max-warnings 0","test":"bun test tests/","build":"rm -rf dist && bun build src/index.ts src/cli.ts --outdir dist --root src --sourcemap --target=bun && tsc --project tsconfig.build.json","format":"prettier --write \"./**/*.{ts,json,md}\"","release":"bun run format && bun run check:package && bun publish","changelog":"bun src/cli.ts","typecheck":"tsc --noEmit","check:package":"bun run typecheck && bun run lint && bun run test && bun run build && bun src/cli.ts check","prepublishOnly":"bun src/cli.ts check"},"_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"_integrity":"sha512-9GdRyWB3X5zEwlTcVCH+qUS84FTChCoZvli0z3Gp8SI3pnLN4XK3vO0s45dPk5ZfezxAzC1ZwlKWTh44eLxh1w==","repository":{"url":"git+https://github.com/absolutejs/changelog.git","type":"git"},"_npmVersion":"10.8.3","description":"The changelog contract for the AbsoluteJS packages. Changes are written as typed entries the compiler checks, the release gate reconciles them against the package's own published types so a change nobody wrote down cannot ship, and migrations are data rat","directories":{},"_nodeVersion":"26.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.1","globals":"^17.11.0","prettier":"^3.5.3","@eslint/js":"^10.0.1","@types/bun":"^1.3.14","typescript":"^5.8.3","typescript-eslint":"^8.56.0","eslint-plugin-promise":"^7.3.0","eslint-plugin-absolute":"^0.11.34","eslint-plugin-security":"^4.0.1","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.68.0"},"_npmOperationalInternal":{"tmp":"tmp/changelog_0.2.0_1789033389625_0.2600777155112688","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@absolutejs/changelog","version":"0.3.0","keywords":["absolutejs","changelog","codemod","migration","release","semver","upgrade"],"author":"Alex Kahn","license":"MIT","_id":"@absolutejs/changelog@0.3.0","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"homepage":"https://github.com/absolutejs/changelog","bugs":{"url":"https://github.com/absolutejs/changelog/issues"},"bin":{"absolute-changelog":"dist/cli.js"},"dist":{"shasum":"723d3b9d566450d2e2c6afa961dee3c47fb9332c","tarball":"https://registry.npmjs.org/@absolutejs/changelog/-/changelog-0.3.0.tgz","fileCount":23,"integrity":"sha512-4ASeyill+pAJZxMG3YH4Gk+a2vsGSftl9Fe10Pu21Pt2Vkanpbm6BeEEHrq+bbFPBduDaZU1RW7RWtV4MxQoEQ==","signatures":[{"sig":"MEYCIQDYSh15DOls7D5D+vNYu+q/ULgB7NGC4VbWgnTWoWdNUgIhAP/lYpdawYzCMybisxgvW3XBn3ACb9+U870pNl2Gug84","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDu9RAbMhu9/mrJ20U9QqyD7F4Me4dFRAl9GwF6fP2tMQIga6oZu0LaCqdFU5cq/UeFvYBbKARmXDKGbCIKyv009yo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":400113},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","shasum":"723d3b9d566450d2e2c6afa961dee3c47fb9332c","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"scripts":{"lint":"eslint . --max-warnings 0","test":"bun test tests/","build":"rm -rf dist && bun build src/index.ts src/cli.ts --outdir dist --root src --sourcemap --target=bun --external typescript && tsc --project tsconfig.build.json","format":"prettier --write \"./**/*.{ts,json,md}\"","release":"bun run format && bun run check:package && bun publish","changelog":"bun src/cli.ts","typecheck":"tsc --noEmit","check:package":"bun run typecheck && bun run lint && bun run test && bun run build && bun src/cli.ts check","prepublishOnly":"bun src/cli.ts check"},"_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"_integrity":"sha512-4ASeyill+pAJZxMG3YH4Gk+a2vsGSftl9Fe10Pu21Pt2Vkanpbm6BeEEHrq+bbFPBduDaZU1RW7RWtV4MxQoEQ==","repository":{"url":"git+https://github.com/absolutejs/changelog.git","type":"git"},"_npmVersion":"10.8.3","description":"The changelog contract for the AbsoluteJS packages. Changes are written as typed entries the compiler checks, the release gate reconciles them against the package's own published types so a change nobody wrote down cannot ship, and migrations are data rat","directories":{},"_nodeVersion":"26.3.0","dependencies":{"typescript":"^5.8.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.1","globals":"^17.11.0","prettier":"^3.5.3","@eslint/js":"^10.0.1","@types/bun":"^1.3.14","typescript":"^5.8.3","typescript-eslint":"^8.56.0","eslint-plugin-promise":"^7.3.0","eslint-plugin-absolute":"^0.11.34","eslint-plugin-security":"^4.0.1","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.68.0"},"_npmOperationalInternal":{"tmp":"tmp/changelog_0.3.0_1789063578615_0.9980574954022852","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@absolutejs/changelog","version":"0.4.0","keywords":["absolutejs","changelog","codemod","migration","release","semver","upgrade"],"author":"Alex Kahn","license":"MIT","_id":"@absolutejs/changelog@0.4.0","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"homepage":"https://github.com/absolutejs/changelog","bugs":{"url":"https://github.com/absolutejs/changelog/issues"},"bin":{"absolute-changelog":"dist/cli.js"},"dist":{"shasum":"957ffb84987ea3fc10058116d696df70df2ededf","tarball":"https://registry.npmjs.org/@absolutejs/changelog/-/changelog-0.4.0.tgz","fileCount":23,"integrity":"sha512-4+rna0EUk1kZMGHJRmXIWvP+MV6pS4Ay24m+3h0XybYD/4ycgOXwdez7CUdb6hZQr7GC7XXTyhDzheEDAdlFcQ==","signatures":[{"sig":"MEQCIFCFHi02OB4ksGAZ+4p9W8GNVtGFifshCOL8EqBnOIQOAiBWk3ku+1XCQzykfYJLNBIfLquvo8SlRZL/h8x0Bnplaw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQC3/aXSyAxJMxA154m8xc//KgKzQClYtRQyLcLu6jSLqwIgJrI+7hXGCzZtXr49OLCuq1OxL9sMRa665kBb0zg3Lyg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":403133},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","shasum":"957ffb84987ea3fc10058116d696df70df2ededf","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"scripts":{"lint":"eslint . --max-warnings 0","test":"bun test tests/","build":"rm -rf dist && bun build src/index.ts src/cli.ts --outdir dist --root src --sourcemap --target=bun --external typescript && tsc --project tsconfig.build.json","format":"prettier --write \"./**/*.{ts,json,md}\"","release":"bun run format && bun run check:package && bun publish","changelog":"bun src/cli.ts","typecheck":"tsc --noEmit","check:package":"bun run typecheck && bun run lint && bun run test && bun run build && bun src/cli.ts check","prepublishOnly":"bun src/cli.ts check"},"_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"_integrity":"sha512-4+rna0EUk1kZMGHJRmXIWvP+MV6pS4Ay24m+3h0XybYD/4ycgOXwdez7CUdb6hZQr7GC7XXTyhDzheEDAdlFcQ==","repository":{"url":"git+https://github.com/absolutejs/changelog.git","type":"git"},"_npmVersion":"10.8.3","description":"The changelog contract for the AbsoluteJS packages. Changes are written as typed entries the compiler checks, the release gate reconciles them against the package's own published types so a change nobody wrote down cannot ship, and migrations are data rat","directories":{},"_nodeVersion":"26.3.0","dependencies":{"typescript":"^5.8.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.1","globals":"^17.11.0","prettier":"^3.5.3","@eslint/js":"^10.0.1","@types/bun":"^1.3.14","typescript":"^5.8.3","typescript-eslint":"^8.56.0","eslint-plugin-promise":"^7.3.0","eslint-plugin-absolute":"^0.11.34","eslint-plugin-security":"^4.0.1","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.68.0"},"_npmOperationalInternal":{"tmp":"tmp/changelog_0.4.0_1789065601070_0.43381098643384797","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@absolutejs/changelog","version":"0.5.0","keywords":["absolutejs","changelog","codemod","migration","release","semver","upgrade"],"author":"Alex Kahn","license":"MIT","_id":"@absolutejs/changelog@0.5.0","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"homepage":"https://github.com/absolutejs/changelog","bugs":{"url":"https://github.com/absolutejs/changelog/issues"},"bin":{"absolute-changelog":"dist/cli.js"},"dist":{"shasum":"17ab06c97df0cdb2eed84a4ab823d1e62532d5c0","tarball":"https://registry.npmjs.org/@absolutejs/changelog/-/changelog-0.5.0.tgz","fileCount":23,"integrity":"sha512-p5Mq3wPu/HBVhjiilQBsH2BlAsQnGDF1ywex6dVYdg91SWeoE2L6ooYlfuxG02FrGoCJE7UIXzbyiZvMxyy55Q==","signatures":[{"sig":"MEUCIQCgMrpKGzunjQ9+z0ZJ2YCsdXOtdMFhV1IUqgqqzbBinQIgEfIQTz9tv7oKAOKhwesJxX97i+ca2Io5W92Kppwm3z4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIFMMDqp3RfqbocTETbThnyuue7pfYXp2TRctrOcA4/eKAiEAkCypTGHyA8jDYoW5ghjPjTDXrlb9sOy7hiWV42vJYd8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":427770},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","shasum":"17ab06c97df0cdb2eed84a4ab823d1e62532d5c0","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"scripts":{"lint":"eslint . --max-warnings 0","test":"bun test tests/","build":"rm -rf dist && bun build src/index.ts src/cli.ts --outdir dist --root src --sourcemap --target=bun --external typescript && tsc --project tsconfig.build.json","format":"prettier --write \"./**/*.{ts,json,md}\"","release":"bun run format && bun run check:package && bun publish","changelog":"bun src/cli.ts","typecheck":"tsc --noEmit","check:package":"bun run typecheck && bun run lint && bun run test && bun run build && bun src/cli.ts check","prepublishOnly":"bun src/cli.ts check"},"_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"_integrity":"sha512-p5Mq3wPu/HBVhjiilQBsH2BlAsQnGDF1ywex6dVYdg91SWeoE2L6ooYlfuxG02FrGoCJE7UIXzbyiZvMxyy55Q==","repository":{"url":"git+https://github.com/absolutejs/changelog.git","type":"git"},"_npmVersion":"10.8.3","description":"The changelog contract for the AbsoluteJS packages. Changes are written as typed entries the compiler checks, the release gate reconciles them against the package's own published types so a change nobody wrote down cannot ship, and migrations are data rat","directories":{},"_nodeVersion":"26.3.0","dependencies":{"typescript":"^5.8.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.1","globals":"^17.11.0","prettier":"^3.5.3","@eslint/js":"^10.0.1","@types/bun":"^1.3.14","typescript":"^5.8.3","typescript-eslint":"^8.56.0","eslint-plugin-promise":"^7.3.0","eslint-plugin-absolute":"^0.11.34","eslint-plugin-security":"^4.0.1","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.68.0"},"_npmOperationalInternal":{"tmp":"tmp/changelog_0.5.0_1789067392541_0.8704416673825313","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"@absolutejs/changelog","version":"0.5.1","keywords":["absolutejs","changelog","codemod","migration","release","semver","upgrade"],"author":"Alex Kahn","license":"MIT","_id":"@absolutejs/changelog@0.5.1","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"homepage":"https://github.com/absolutejs/changelog","bugs":{"url":"https://github.com/absolutejs/changelog/issues"},"bin":{"absolute-changelog":"dist/cli.js"},"dist":{"shasum":"71e3847eb29380aed1634471869b7fcdacf940e7","tarball":"https://registry.npmjs.org/@absolutejs/changelog/-/changelog-0.5.1.tgz","fileCount":23,"integrity":"sha512-6KxBk+couOvAlNrvwQOBJZt3MDS/RRyKeazRYt8tIemPXjn22oGwHKkPLploa4zS2dT0y6KCikxnOQAecbttRQ==","signatures":[{"sig":"MEUCIHs3xLxK8N1PAzJbhMm39dEcTXGUkQBf0OvFjOd6L8a2AiEAx8YmcRzjI+qzRBq6xdaAzruman1KrKBSAHTinUQzddM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICtN12D2ltnnBrwrWkdDos4tmsdDvhaZMKOxUULVagcsAiAI3Xx176tahHA3UsL8ATWFFuF5e6QSU+0Sx6wU1Fp1ew==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":430837},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","shasum":"71e3847eb29380aed1634471869b7fcdacf940e7","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"scripts":{"lint":"eslint . --max-warnings 0","test":"bun test tests/","build":"rm -rf dist && bun build src/index.ts src/cli.ts --outdir dist --root src --sourcemap --target=bun --external typescript && tsc --project tsconfig.build.json","format":"prettier --write \"./**/*.{ts,json,md}\"","release":"bun run format && bun run check:package && bun publish","changelog":"bun src/cli.ts","typecheck":"tsc --noEmit","check:package":"bun run typecheck && bun run lint && bun run test && bun run build && bun src/cli.ts check","prepublishOnly":"bun src/cli.ts check"},"_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"_integrity":"sha512-6KxBk+couOvAlNrvwQOBJZt3MDS/RRyKeazRYt8tIemPXjn22oGwHKkPLploa4zS2dT0y6KCikxnOQAecbttRQ==","repository":{"url":"git+https://github.com/absolutejs/changelog.git","type":"git"},"_npmVersion":"10.8.3","description":"The changelog contract for the AbsoluteJS packages. Changes are written as typed entries the compiler checks, the release gate reconciles them against the package's own published types so a change nobody wrote down cannot ship, and migrations are data rat","directories":{},"_nodeVersion":"26.3.0","dependencies":{"typescript":"^5.8.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.1","globals":"^17.11.0","prettier":"^3.5.3","@eslint/js":"^10.0.1","@types/bun":"^1.3.14","typescript":"^5.8.3","typescript-eslint":"^8.56.0","eslint-plugin-promise":"^7.3.0","eslint-plugin-absolute":"^0.11.34","eslint-plugin-security":"^4.0.1","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.68.0"},"_npmOperationalInternal":{"tmp":"tmp/changelog_0.5.1_1789068289584_0.9998932212571086","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@absolutejs/changelog","version":"0.6.0","keywords":["absolutejs","changelog","codemod","migration","release","semver","upgrade"],"author":"Alex Kahn","license":"MIT","_id":"@absolutejs/changelog@0.6.0","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"homepage":"https://github.com/absolutejs/changelog","bugs":{"url":"https://github.com/absolutejs/changelog/issues"},"bin":{"absolute-changelog":"dist/cli.js"},"dist":{"shasum":"3cf5a22d40c6e4b21bd0e5a21af52163d8cf9957","tarball":"https://registry.npmjs.org/@absolutejs/changelog/-/changelog-0.6.0.tgz","fileCount":23,"integrity":"sha512-bsCCN7PVubSQ07dcaZgoE8M46QDOYMz9+Idc//bmxZd2KRK2wG7W5jqAIvjotD7mZD/6pVfGyNCxE+VNoYguvA==","signatures":[{"sig":"MEYCIQC32j0Wy3VSovnKcNDo5MoVJAd2oaRI6sM5jjthnJs+dwIhANyCdKHBxMUUpfoMWIBIooJk1egG7sPsQvWanddHS9Ju","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDuDEYNUCeSqDIFXpNQz54DqrJb5Yg7n4KenbaNhAbohAiAHyivnFK5enSBSstu1Lv9xm0a7sdp7pSTG/mAh9zOp5g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":433138},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","shasum":"3cf5a22d40c6e4b21bd0e5a21af52163d8cf9957","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"scripts":{"lint":"eslint . --max-warnings 0","test":"bun test tests/","build":"rm -rf dist && bun build src/index.ts src/cli.ts --outdir dist --root src --sourcemap --target=bun --external typescript && tsc --project tsconfig.build.json","format":"prettier --write \"./**/*.{ts,json,md}\"","release":"bun run format && bun run check:package && bun publish","changelog":"bun src/cli.ts","typecheck":"tsc --noEmit","check:package":"bun run typecheck && bun run lint && bun run test && bun run build && bun src/cli.ts check","prepublishOnly":"bun run check:package"},"_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"_integrity":"sha512-bsCCN7PVubSQ07dcaZgoE8M46QDOYMz9+Idc//bmxZd2KRK2wG7W5jqAIvjotD7mZD/6pVfGyNCxE+VNoYguvA==","repository":{"url":"git+https://github.com/absolutejs/changelog.git","type":"git"},"_npmVersion":"10.8.3","description":"The changelog contract for the AbsoluteJS packages. Changes are written as typed entries the compiler checks, the release gate reconciles them against the package's own published types so a change nobody wrote down cannot ship, and migrations are data rat","directories":{},"_nodeVersion":"26.3.0","dependencies":{"typescript":"^5.8.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.1","globals":"^17.11.0","prettier":"^3.5.3","@eslint/js":"^10.0.1","@types/bun":"^1.3.14","typescript":"^5.8.3","typescript-eslint":"^8.56.0","eslint-plugin-promise":"^7.3.0","eslint-plugin-absolute":"^0.11.34","eslint-plugin-security":"^4.0.1","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.68.0"},"_npmOperationalInternal":{"tmp":"tmp/changelog_0.6.0_1789071117740_0.09932059413209848","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"_id":"@absolutejs/changelog@0.7.0","bin":{"absolute-changelog":"dist/cli.js"},"bugs":{"url":"https://github.com/absolutejs/changelog/issues"},"dist":{"shasum":"45b137309dbcf55bd7ba3157b637fbfdc13702c2","tarball":"https://registry.npmjs.org/@absolutejs/changelog/-/changelog-0.7.0.tgz","fileCount":23,"integrity":"sha512-JuwQnwhyRoi9K1CHtZ5VDmHSV30hIj85Z6S9D3u9QB28/868+s/7isfEqe0aNeCDYTIbOlbjSM5mJqRnzOzxVw==","signatures":[{"sig":"MEQCIFUXLgrDUp1hO/HC2ZbWBDh5IqBkVPG8UM0J2zk8l/jrAiAiphCJy4rl1RTypevijCIg0A20KNnCXgU48MHtRVvl/g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCXcwC14VMCgGb5jExCnv4VdzYoAKIiupxPfJpHPF649wIgb7CYVGph/nmz0b+m6GmlMexO8VevIYQIWDXGmX4GSQg="}],"unpackedSize":440321},"main":"./dist/index.js","name":"@absolutejs/changelog","type":"module","types":"./dist/index.d.ts","author":"Alex Kahn","module":"./dist/index.js","shasum":"45b137309dbcf55bd7ba3157b637fbfdc13702c2","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"license":"MIT","scripts":{"lint":"eslint . --max-warnings 0","test":"bun test tests/","build":"rm -rf dist && bun build src/index.ts src/cli.ts --outdir dist --root src --sourcemap --target=bun --external typescript && tsc --project tsconfig.build.json","format":"prettier --write \"./**/*.{ts,json,md}\"","release":"bun run format && bun run check:package && bun publish","changelog":"bun src/cli.ts","typecheck":"tsc --noEmit","check:package":"bun run typecheck && bun run lint && bun run test && bun run build && bun src/cli.ts check","prepublishOnly":"bun run check:package"},"version":"0.7.0","_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"homepage":"https://github.com/absolutejs/changelog","keywords":["absolutejs","changelog","codemod","migration","release","semver","upgrade"],"_integrity":"sha512-JuwQnwhyRoi9K1CHtZ5VDmHSV30hIj85Z6S9D3u9QB28/868+s/7isfEqe0aNeCDYTIbOlbjSM5mJqRnzOzxVw==","repository":{"url":"git+https://github.com/absolutejs/changelog.git","type":"git"},"_npmVersion":"10.8.3","description":"The changelog contract for the AbsoluteJS packages. Changes are written as typed entries the compiler checks, the release gate reconciles them against the package's own published types so a change nobody wrote down cannot ship, and migrations are data rat","directories":{},"maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"_nodeVersion":"26.3.0","dependencies":{"typescript":"^5.8.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.1","globals":"^17.11.0","prettier":"^3.5.3","@eslint/js":"^10.0.1","@types/bun":"^1.3.14","typescript":"^5.8.3","typescript-eslint":"^8.56.0","eslint-plugin-promise":"^7.3.0","eslint-plugin-absolute":"^0.11.34","eslint-plugin-security":"^4.0.1","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.68.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/changelog_0.7.0_1789072514307_0.19707225521799687"}}},"time":{"created":"2026-09-10T08:37:52.550Z","modified":"2026-09-10T20:35:14.627Z","0.1.0":"2026-09-10T08:37:52.884Z","0.1.1":"2026-09-10T08:45:56.576Z","0.1.2":"2026-09-10T08:47:56.047Z","0.2.0":"2026-09-10T09:43:09.708Z","0.3.0":"2026-09-10T18:06:18.722Z","0.4.0":"2026-09-10T18:40:01.159Z","0.5.0":"2026-09-10T19:09:52.631Z","0.5.1":"2026-09-10T19:24:49.679Z","0.6.0":"2026-09-10T20:11:57.899Z","0.7.0":"2026-09-10T20:35:14.450Z"},"bugs":{"url":"https://github.com/absolutejs/changelog/issues"},"author":"Alex Kahn","license":"MIT","homepage":"https://github.com/absolutejs/changelog","keywords":["absolutejs","changelog","codemod","migration","release","semver","upgrade"],"repository":{"url":"git+https://github.com/absolutejs/changelog.git","type":"git"},"description":"The changelog contract for the AbsoluteJS packages. Changes are written as typed entries the compiler checks, the release gate reconciles them against the package's own published types so a change nobody wrote down cannot ship, and migrations are data rat","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"readme":"# @absolutejs/changelog\n\nThe changelog contract for the AbsoluteJS packages.\n\nA changelog is worth having when it can be trusted and acted on. Prose\nchangelogs manage neither: they rot because writing them is a discipline, and\nthey cannot be acted on because \"refactored the server options\" is a true\nsentence that does not say which export moved or what to write instead.\n\nThis package makes both possible.\n\n- **Entries are typed.** A change is written as TypeScript, so the compiler\n  insists that a breaking change names the exports it breaks and says how to\n  migrate. The entries that cost somebody an afternoon are the ones that\n  cannot be filed empty.\n- **The release gate checks them against the package.** Before a release goes\n  out, the exports that vanished or changed shape are compared with the\n  exports the entries name. Forget an entry and the release stops. Nobody has\n  to remember.\n- **Migrations are data.** A rename and a move are the overwhelming majority\n  of real breaking changes, and both are mechanical. Written as data they can\n  be applied — by a CLI, an editor, or a hosted upgrade button — without\n  running a line of code that came from a registry.\n\n## Adopting it\n\n```sh\nbun add -d @absolutejs/changelog\nbunx absolute-changelog adopt\n```\n\n`adopt` creates `changelog/unreleased/`, keeps whatever `CHANGELOG.md` already\nsaid as `changelog/history.md`, adds `changelog.json` and `CHANGELOG.md` to the\npackage's `files`, and makes sure your tsconfig compiles the entries — that\nlast one matters, because an entry nothing compiles is an entry nobody checks.\n\nThen add the gate to the release chain:\n\n```json\n\"check:package\": \"bun run typecheck && bun run build && bun run test && absolute-changelog check\"\n```\n\nPut it after `build`: the check compares the types you are about to publish\nagainst the ones you published last time, and it needs `dist` to exist.\n\n## Writing a change\n\nOne file per change, so two branches adding one do not meet over the same\nline:\n\n```sh\nbunx absolute-changelog add --kind added --summary \"listen accepts a unix socket path\"\n\nbunx absolute-changelog add \\\n  --kind breaking \\\n  --summary \"start is now listen\" \\\n  --symbol start \\\n  --instruction \"Import listen instead of start.\" \\\n  --rename-to listen\n```\n\nWhich writes `changelog/unreleased/start-is-now-listen.ts`:\n\n```ts\nimport type { Change } from \"@absolutejs/changelog\";\n\nexport const change: Change = {\n  kind: \"breaking\",\n  migration: {\n    instruction: \"Import listen instead of start.\",\n    rename: { from: \"start\", to: \"listen\" },\n  },\n  summary: \"start is now listen\",\n  symbols: [\"start\"],\n};\n```\n\nThe import is type-only, so an entry has nothing to resolve at run time and\nthe gate works in a checkout with no dependencies installed.\n\n### Checked where you type it\n\nAn entry can be written against the package's own API, and `add` scaffolds it\nthat way when it finds one:\n\n```ts\nimport type * as Api from \"../../src/index\";\nimport type { Change } from \"@absolutejs/changelog\";\n\nexport const change: Change<typeof Api> = {\n  kind: \"fixed\",\n  summary: \"stops throwing on an empty list\",\n  symbols: [\"listen\"], // completed from the package's exports\n};\n```\n\nSuggested rather than required, for two reasons: a `removed` entry names\nsomething that has just stopped existing, and `typeof Api` cannot see\ntype-only exports at all. The gate is the certain half — it reads the\npublished `.d.ts`, which carries them.\n\n### The kinds\n\n`breaking` and `removed` cost a consumer work, and the type refuses them\nwithout `symbols` and a `migration`. `added`, `changed`, `deprecated`,\n`fixed`, `security` and `internal` do not.\n\n### The migrations\n\n| Shape                         | What it means                                   | Applied |\n| ----------------------------- | ----------------------------------------------- | ------- |\n| `rename: { from, to }`        | An export kept its meaning and changed its name | yes     |\n| `moved: { symbol, from, to }` | An export moved to another entry point          | yes     |\n| `resubpath: { from, to }`     | A whole entry point moved                       | yes     |\n| `manual: true`                | Somebody has to read the call                   | no      |\n\n`manual` is not a failure. A changed meaning is not a rewrite anybody should\nautomate, and pretending otherwise is worse than saying so.\n\n## Releasing\n\n```sh\nbunx absolute-changelog release\n```\n\nWorks out the version from the entries — a breaking change moves the minor\nbelow `1.0.0` and the major above it, and a version already on a prerelease\nline moves along that line — then writes `changelog.json` and `CHANGELOG.md`,\nbumps `package.json`, and deletes the entries it consumed.\n\n`--as major|minor|patch|prerelease` overrides the inference, `--version x.y.z`\noverrides it entirely, and `--dry` shows the release without writing anything.\n\n## The gate\n\n```sh\nbunx absolute-changelog check\n```\n\n- every entry parses, and the disruptive ones carry what they must;\n- `CHANGELOG.md` is what the entries say it should be — it is generated, and\n  editing it is how the two copies drift;\n- the version in `package.json` and the newest release agree;\n- `package.json` still ships both documents, and nothing is sitting in the\n  entry directory that no release will read;\n- the entries name every export that moved since the newest **published**\n  version — not the one in `package.json`, which between `release` and\n  `publish` is a version nobody can fetch;\n- and every migration describes what actually happened: a rename whose\n  destination this version does not export, a rename whose source is still\n  exported, a move to an entry point the package does not have, a removal of\n  something still there.\n\nThat last one is what makes an applicable migration safe to apply. A migration\nthat reads correctly and rewrites working code into something that does not\ncompile is the whole risk of automating an upgrade, and it fails the release\ninstead.\n\n`--offline` skips the two that talk to the registry.\n\n`adopt` also writes `prepublishOnly`, so the gate runs however a publish was\nstarted — a release script, a bare `npm publish`, a CI job. A rule that can be\nwalked around eventually is.\n\n## Reading somebody else's\n\nAnything deciding whether an upgrade is safe reads the published document:\n\n```ts\nimport {\n  applyMigrations,\n  migrationsBetween,\n  publishedChangelog,\n} from \"@absolutejs/changelog\";\n\nconst changelog = await publishedChangelog(\"@absolutejs/example\", \"2.1.0\");\nconst migrations = changelog\n  ? migrationsBetween(changelog, \"1.4.0\", \"2.1.0\")\n  : [];\n\nconst upgraded = applyMigrations(source, {\n  migrations: migrations.map((at) => at.migration),\n  packageName: \"@absolutejs/example\",\n});\n```\n\nFor a package that has not adopted this yet, `publishedSurface` and\n`diffSurface` compare the published types of two versions instead — less than\na changelog, and much more than nothing.\n\n## Licence\n\nMIT.\n","readmeFilename":"README.md"}