Releases: Dockermint/pebblify
Releases · Dockermint/pebblify
v0.4.1-rc2
Immutable
release. Only release title and notes can be modified.
Changelog
v0.4.1
Bug Fixes
- fix(docs): correct install-podman image tag from v0.5.0 to v0.4.0; rename
LICENCEtoLICENSEfor Apache-2.0 / GitHub license-detection compliance (#65) - fix(ci): surface semver/
latesttag before Sigstore attestation digest in the GHCR package-page tag list via post-attestationimagetools createre-tag, guarded against pre-releases (#67) - fix(container): remove hardcoded
org.opencontainers.image.sourceLABEL from Dockerfile (was capital-P URL breaking GHCR case-sensitive repo-link heuristic); metadata-action is now sole source of truth (#67)
Documentation
- docs(go-doc): add godoc comments on ~76 exported identifiers across
cmd/pebblifyand 13internal/packages; add package-level synopses viadoc.goconvention (#63) - docs(arch): land v0.4.1 architecture specs (
godoc-coverage,docs-freshness-v0.4.1,ghcr-package-display-fix) and ROADMAP v0.4.1 section (#61)
CI
- ci(release): add
latesttag viadocker/metadata-actionand re-push post-attestation so semver appears first in GHCR UI; both tag addition and re-push guarded by!contains(github.ref_name, '-')to skip pre-releases (#67)
Chore / Governance
- chore(github): bootstrap
.github/ISSUE_TEMPLATE/with 8 templates +config.yml(blank_issues_enabled: false); unblocks strict CLAUDE.md step-5 workflow enforcement (#61) - chore(governance): flush pending CLAUDE.md changes — workflow step renumbering, step 11 pre-push verify, step 14 PR title convention, step 17 release verification gate, step 16 CodeRabbit pre-merge panel enforcement (#61)
- chore(lint): bootstrap
.golangci.yml(v2 schema) withrevive.exportedat severity=error; stuttering check disabled for Feat 1 scope; gofumpt/gocritic/misspell deferred to follow-up chore PR (#63)
v0.4.0
Features
- feat(daemon): add
pebblify daemonLinux-only subcommand with HTTP job queue API, FIFO queue with URL deduplication, LevelDB→PebbleDB pipeline, Prometheus metrics, and health probes (#39) - feat(daemon): add TOML config schema (config_version = 0) with env-var secret overlay for API, notify, telemetry, health, conversion, and save targets (#39)
- feat(daemon): add store backends — local directory, SCP, and S3 via aws-sdk-go-v2 (#39)
- feat(daemon): add Telegram notifier using stdlib net/http only; no third-party library (#39)
- feat(daemon): add repack support for lz4, zstd, gzip, and none compression formats (#39)
- feat(install): add
install-cli(cross-platform) andinstall-systemd-daemon(Linux-only) Makefile targets; add systemd unit and placeholder env template (#39) - feat(install): add
install-podmanMakefile target and Podman Quadlet.containerfile for rootless daemon deployment (#44)
Bug Fixes
- fix(container): remove
# hadolint ignore=directives; replace fuzzy apk version constraints with exact pinned versions (#43)
Documentation
- docs: v0.4.0 release documentation refresh — README installation split, daemon mode section, artifact attestation examples, and platform-split install guides (#45)
- docs: land v0.4.0 roadmap and per-feature architecture specs (#37)
CI
- ci: add darwin/amd64 and darwin/arm64 release binary targets to build matrix (#38)
- ci: add SLSA provenance and SBOM attestations for release binaries and Docker images via
actions/attest-build-provenanceandactions/attest-sbom(#38)
Security
- security(daemon): use HMAC-SHA-256 with constant-time comparison for API token validation to satisfy CodeQL timing-attack checks (#39)
- security(daemon): reject symlink tar and zip entries during archive extraction to prevent path-traversal; covered by CodeQL analysis (#39)
- security(daemon): enforce SSH known_hosts validation for SCP store; no host-key bypass permitted (#39)
Chore / Governance
- chore: amend CLAUDE.md scope matrix to assign systemd unit files to
@container-engineer; add env-template placeholder rule; land v0.4.0 governance docs (#37) - chore: apply
@it-consultantretro tightenings — extend linter-suppression ban to all languages, add pre-push verify step 10b, per-agent scope tightenings (#41)
v0.3.2
Bug Fixes
- fix(prom): add missing Help descriptions to all Prometheus metrics (#24)
Dependencies
- deps(deps): bump github.com/prometheus/client_golang from 1.21.1 to 1.23.2 (#22)
v0.3.1
Performance
- perf(migration): optimize PebbleDB write options for smaller output (#16)
CI
- ci: run CI on develop branch (#15)
Documentation
- docs: update documentation link to remove versioned path (#14)
- docs(readme): update benchmark with optimized results (#16)
v0.3.0
Features
- feat(health): add liveness, readiness, and startup HTTP probe server (#7)
- feat(cli): integrate health probes into level-to-pebble and recover commands (#7)
- feat(docker): add health check, expose probe port, and add docker-compose for local testing (#7)
- feat(prom): add Prometheus metrics exporter for conversion monitoring (#9)
- feat(cli): add --metrics and --metrics-port flags with Docker integration (#9)
- feat(completion): add bash and zsh completion generation with install support (#7)
- feat(cli): add completion command for shell autocompletion generation and installation (#7)
Bug Fixes
- fix(health): use periodic ping ticker to keep liveness probe alive during long migrations (#7)
- fix(health): handle fmt.Fprintln return values to satisfy errcheck linter (#9)
CI
- ci(docker): add missing OCI image labels to CI and release workflows (#11)
v0.2.0
Bug Fixes
- fix(docker): correct repository URL case in OCI labels (#1)
- fix: relax OUT validation to only check OUT/data and cleanup tmp on non-conversion errors (#4)
Refactoring
- refactor: split monolithic main.go into modular internal packages (#3)
- refactor: replace root main.go with cmd/pebblify entry point (#3)
Build
- build: update Dockerfile and Makefile for cmd/pebblify layout (#3)
- build: detect platform via uname when Go is not installed (#3)
Documentation
v0.4.1-rc1
Immutable
release. Only release title and notes can be modified.
Changelog
v0.4.1
Bug Fixes
- fix(docs): correct install-podman image tag from v0.5.0 to v0.4.0; rename
LICENCEtoLICENSEfor Apache-2.0 / GitHub license-detection compliance (#65) - fix(ci): surface semver/
latesttag before Sigstore attestation digest in the GHCR package-page tag list via post-attestationimagetools createre-tag, guarded against pre-releases (#67) - fix(container): remove hardcoded
org.opencontainers.image.sourceLABEL from Dockerfile (was capital-P URL breaking GHCR case-sensitive repo-link heuristic); metadata-action is now sole source of truth (#67)
Documentation
- docs(go-doc): add godoc comments on ~76 exported identifiers across
cmd/pebblifyand 13internal/packages; add package-level synopses viadoc.goconvention (#63) - docs(arch): land v0.4.1 architecture specs (
godoc-coverage,docs-freshness-v0.4.1,ghcr-package-display-fix) and ROADMAP v0.4.1 section (#61)
CI
- ci(release): add
latesttag viadocker/metadata-actionand re-push post-attestation so semver appears first in GHCR UI; both tag addition and re-push guarded by!contains(github.ref_name, '-')to skip pre-releases (#67)
Chore / Governance
- chore(github): bootstrap
.github/ISSUE_TEMPLATE/with 8 templates +config.yml(blank_issues_enabled: false); unblocks strict CLAUDE.md step-5 workflow enforcement (#61) - chore(governance): flush pending CLAUDE.md changes — workflow step renumbering, step 11 pre-push verify, step 14 PR title convention, step 17 release verification gate, step 16 CodeRabbit pre-merge panel enforcement (#61)
- chore(lint): bootstrap
.golangci.yml(v2 schema) withrevive.exportedat severity=error; stuttering check disabled for Feat 1 scope; gofumpt/gocritic/misspell deferred to follow-up chore PR (#63)
v0.4.0
Features
- feat(daemon): add
pebblify daemonLinux-only subcommand with HTTP job queue API, FIFO queue with URL deduplication, LevelDB→PebbleDB pipeline, Prometheus metrics, and health probes (#39) - feat(daemon): add TOML config schema (config_version = 0) with env-var secret overlay for API, notify, telemetry, health, conversion, and save targets (#39)
- feat(daemon): add store backends — local directory, SCP, and S3 via aws-sdk-go-v2 (#39)
- feat(daemon): add Telegram notifier using stdlib net/http only; no third-party library (#39)
- feat(daemon): add repack support for lz4, zstd, gzip, and none compression formats (#39)
- feat(install): add
install-cli(cross-platform) andinstall-systemd-daemon(Linux-only) Makefile targets; add systemd unit and placeholder env template (#39) - feat(install): add
install-podmanMakefile target and Podman Quadlet.containerfile for rootless daemon deployment (#44)
Bug Fixes
- fix(container): remove
# hadolint ignore=directives; replace fuzzy apk version constraints with exact pinned versions (#43)
Documentation
- docs: v0.4.0 release documentation refresh — README installation split, daemon mode section, artifact attestation examples, and platform-split install guides (#45)
- docs: land v0.4.0 roadmap and per-feature architecture specs (#37)
CI
- ci: add darwin/amd64 and darwin/arm64 release binary targets to build matrix (#38)
- ci: add SLSA provenance and SBOM attestations for release binaries and Docker images via
actions/attest-build-provenanceandactions/attest-sbom(#38)
Security
- security(daemon): use HMAC-SHA-256 with constant-time comparison for API token validation to satisfy CodeQL timing-attack checks (#39)
- security(daemon): reject symlink tar and zip entries during archive extraction to prevent path-traversal; covered by CodeQL analysis (#39)
- security(daemon): enforce SSH known_hosts validation for SCP store; no host-key bypass permitted (#39)
Chore / Governance
- chore: amend CLAUDE.md scope matrix to assign systemd unit files to
@container-engineer; add env-template placeholder rule; land v0.4.0 governance docs (#37) - chore: apply
@it-consultantretro tightenings — extend linter-suppression ban to all languages, add pre-push verify step 10b, per-agent scope tightenings (#41)
v0.3.2
Bug Fixes
- fix(prom): add missing Help descriptions to all Prometheus metrics (#24)
Dependencies
- deps(deps): bump github.com/prometheus/client_golang from 1.21.1 to 1.23.2 (#22)
v0.3.1
Performance
- perf(migration): optimize PebbleDB write options for smaller output (#16)
CI
- ci: run CI on develop branch (#15)
Documentation
- docs: update documentation link to remove versioned path (#14)
- docs(readme): update benchmark with optimized results (#16)
v0.3.0
Features
- feat(health): add liveness, readiness, and startup HTTP probe server (#7)
- feat(cli): integrate health probes into level-to-pebble and recover commands (#7)
- feat(docker): add health check, expose probe port, and add docker-compose for local testing (#7)
- feat(prom): add Prometheus metrics exporter for conversion monitoring (#9)
- feat(cli): add --metrics and --metrics-port flags with Docker integration (#9)
- feat(completion): add bash and zsh completion generation with install support (#7)
- feat(cli): add completion command for shell autocompletion generation and installation (#7)
Bug Fixes
- fix(health): use periodic ping ticker to keep liveness probe alive during long migrations (#7)
- fix(health): handle fmt.Fprintln return values to satisfy errcheck linter (#9)
CI
- ci(docker): add missing OCI image labels to CI and release workflows (#11)
v0.2.0
Bug Fixes
- fix(docker): correct repository URL case in OCI labels (#1)
- fix: relax OUT validation to only check OUT/data and cleanup tmp on non-conversion errors (#4)
Refactoring
- refactor: split monolithic main.go into modular internal packages (#3)
- refactor: replace root main.go with cmd/pebblify entry point (#3)
Build
- build: update Dockerfile and Makefile for cmd/pebblify layout (#3)
- build: detect platform via uname when Go is not installed (#3)
Documentation
v0.4.1
Immutable
release. Only release title and notes can be modified.
Changelog
v0.4.1
Bug Fixes
- fix(docs): correct install-podman image tag from v0.5.0 to v0.4.0; rename
LICENCEtoLICENSEfor Apache-2.0 / GitHub license-detection compliance (#65) - fix(ci): surface semver/
latesttag before Sigstore attestation digest in the GHCR package-page tag list via post-attestationimagetools createre-tag, guarded against pre-releases (#67) - fix(container): remove hardcoded
org.opencontainers.image.sourceLABEL from Dockerfile (was capital-P URL breaking GHCR case-sensitive repo-link heuristic); metadata-action is now sole source of truth (#67)
Documentation
- docs(go-doc): add godoc comments on ~76 exported identifiers across
cmd/pebblifyand 13internal/packages; add package-level synopses viadoc.goconvention (#63) - docs(arch): land v0.4.1 architecture specs (
godoc-coverage,docs-freshness-v0.4.1,ghcr-package-display-fix) and ROADMAP v0.4.1 section (#61)
CI
- ci(release): add
latesttag viadocker/metadata-actionand re-push post-attestation so semver appears first in GHCR UI; both tag addition and re-push guarded by!contains(github.ref_name, '-')to skip pre-releases (#67)
Chore / Governance
- chore(github): bootstrap
.github/ISSUE_TEMPLATE/with 8 templates +config.yml(blank_issues_enabled: false); unblocks strict CLAUDE.md step-5 workflow enforcement (#61) - chore(governance): flush pending CLAUDE.md changes — workflow step renumbering, step 11 pre-push verify, step 14 PR title convention, step 17 release verification gate, step 16 CodeRabbit pre-merge panel enforcement (#61)
- chore(lint): bootstrap
.golangci.yml(v2 schema) withrevive.exportedat severity=error; stuttering check disabled for Feat 1 scope; gofumpt/gocritic/misspell deferred to follow-up chore PR (#63)
v0.4.0
Features
- feat(daemon): add
pebblify daemonLinux-only subcommand with HTTP job queue API, FIFO queue with URL deduplication, LevelDB→PebbleDB pipeline, Prometheus metrics, and health probes (#39) - feat(daemon): add TOML config schema (config_version = 0) with env-var secret overlay for API, notify, telemetry, health, conversion, and save targets (#39)
- feat(daemon): add store backends — local directory, SCP, and S3 via aws-sdk-go-v2 (#39)
- feat(daemon): add Telegram notifier using stdlib net/http only; no third-party library (#39)
- feat(daemon): add repack support for lz4, zstd, gzip, and none compression formats (#39)
- feat(install): add
install-cli(cross-platform) andinstall-systemd-daemon(Linux-only) Makefile targets; add systemd unit and placeholder env template (#39) - feat(install): add
install-podmanMakefile target and Podman Quadlet.containerfile for rootless daemon deployment (#44)
Bug Fixes
- fix(container): remove
# hadolint ignore=directives; replace fuzzy apk version constraints with exact pinned versions (#43)
Documentation
- docs: v0.4.0 release documentation refresh — README installation split, daemon mode section, artifact attestation examples, and platform-split install guides (#45)
- docs: land v0.4.0 roadmap and per-feature architecture specs (#37)
CI
- ci: add darwin/amd64 and darwin/arm64 release binary targets to build matrix (#38)
- ci: add SLSA provenance and SBOM attestations for release binaries and Docker images via
actions/attest-build-provenanceandactions/attest-sbom(#38)
Security
- security(daemon): use HMAC-SHA-256 with constant-time comparison for API token validation to satisfy CodeQL timing-attack checks (#39)
- security(daemon): reject symlink tar and zip entries during archive extraction to prevent path-traversal; covered by CodeQL analysis (#39)
- security(daemon): enforce SSH known_hosts validation for SCP store; no host-key bypass permitted (#39)
Chore / Governance
- chore: amend CLAUDE.md scope matrix to assign systemd unit files to
@container-engineer; add env-template placeholder rule; land v0.4.0 governance docs (#37) - chore: apply
@it-consultantretro tightenings — extend linter-suppression ban to all languages, add pre-push verify step 10b, per-agent scope tightenings (#41)
v0.3.2
Bug Fixes
- fix(prom): add missing Help descriptions to all Prometheus metrics (#24)
Dependencies
- deps(deps): bump github.com/prometheus/client_golang from 1.21.1 to 1.23.2 (#22)
v0.3.1
Performance
- perf(migration): optimize PebbleDB write options for smaller output (#16)
CI
- ci: run CI on develop branch (#15)
Documentation
- docs: update documentation link to remove versioned path (#14)
- docs(readme): update benchmark with optimized results (#16)
v0.3.0
Features
- feat(health): add liveness, readiness, and startup HTTP probe server (#7)
- feat(cli): integrate health probes into level-to-pebble and recover commands (#7)
- feat(docker): add health check, expose probe port, and add docker-compose for local testing (#7)
- feat(prom): add Prometheus metrics exporter for conversion monitoring (#9)
- feat(cli): add --metrics and --metrics-port flags with Docker integration (#9)
- feat(completion): add bash and zsh completion generation with install support (#7)
- feat(cli): add completion command for shell autocompletion generation and installation (#7)
Bug Fixes
- fix(health): use periodic ping ticker to keep liveness probe alive during long migrations (#7)
- fix(health): handle fmt.Fprintln return values to satisfy errcheck linter (#9)
CI
- ci(docker): add missing OCI image labels to CI and release workflows (#11)
v0.2.0
Bug Fixes
- fix(docker): correct repository URL case in OCI labels (#1)
- fix: relax OUT validation to only check OUT/data and cleanup tmp on non-conversion errors (#4)
Refactoring
- refactor: split monolithic main.go into modular internal packages (#3)
- refactor: replace root main.go with cmd/pebblify entry point (#3)
Build
- build: update Dockerfile and Makefile for cmd/pebblify layout (#3)
- build: detect platform via uname when Go is not installed (#3)
Documentation
v0.4.0
Immutable
release. Only release title and notes can be modified.
Changelog
v0.4.0
Features
- feat(daemon): add
pebblify daemonLinux-only subcommand with HTTP job queue API, FIFO queue with URL deduplication, LevelDB→PebbleDB pipeline, Prometheus metrics, and health probes (#39) - feat(daemon): add TOML config schema (config_version = 0) with env-var secret overlay for API, notify, telemetry, health, conversion, and save targets (#39)
- feat(daemon): add store backends — local directory, SCP, and S3 via aws-sdk-go-v2 (#39)
- feat(daemon): add Telegram notifier using stdlib net/http only; no third-party library (#39)
- feat(daemon): add repack support for lz4, zstd, gzip, and none compression formats (#39)
- feat(install): add
install-cli(cross-platform) andinstall-systemd-daemon(Linux-only) Makefile targets; add systemd unit and placeholder env template (#39) - feat(install): add
install-podmanMakefile target and Podman Quadlet.containerfile for rootless daemon deployment (#44)
Bug Fixes
- fix(container): remove
# hadolint ignore=directives; replace fuzzy apk version constraints with exact pinned versions (#43)
Documentation
- docs: v0.4.0 release documentation refresh — README installation split, daemon mode section, artifact attestation examples, and platform-split install guides (#45)
- docs: land v0.4.0 roadmap and per-feature architecture specs (#37)
CI
- ci: add darwin/amd64 and darwin/arm64 release binary targets to build matrix (#38)
- ci: add SLSA provenance and SBOM attestations for release binaries and Docker images via
actions/attest-build-provenanceandactions/attest-sbom(#38)
Security
- security(daemon): use HMAC-SHA-256 with constant-time comparison for API token validation to satisfy CodeQL timing-attack checks (#39)
- security(daemon): reject symlink tar and zip entries during archive extraction to prevent path-traversal; covered by CodeQL analysis (#39)
- security(daemon): enforce SSH known_hosts validation for SCP store; no host-key bypass permitted (#39)
Chore / Governance
- chore: amend CLAUDE.md scope matrix to assign systemd unit files to
@container-engineer; add env-template placeholder rule; land v0.4.0 governance docs (#37) - chore: apply
@it-consultantretro tightenings — extend linter-suppression ban to all languages, add pre-push verify step 10b, per-agent scope tightenings (#41)
v0.3.2
Bug Fixes
- fix(prom): add missing Help descriptions to all Prometheus metrics (#24)
Dependencies
- deps(deps): bump github.com/prometheus/client_golang from 1.21.1 to 1.23.2 (#22)
v0.3.1
Performance
- perf(migration): optimize PebbleDB write options for smaller output (#16)
CI
- ci: run CI on develop branch (#15)
Documentation
- docs: update documentation link to remove versioned path (#14)
- docs(readme): update benchmark with optimized results (#16)
v0.3.0
Features
- feat(health): add liveness, readiness, and startup HTTP probe server (#7)
- feat(cli): integrate health probes into level-to-pebble and recover commands (#7)
- feat(docker): add health check, expose probe port, and add docker-compose for local testing (#7)
- feat(prom): add Prometheus metrics exporter for conversion monitoring (#9)
- feat(cli): add --metrics and --metrics-port flags with Docker integration (#9)
- feat(completion): add bash and zsh completion generation with install support (#7)
- feat(cli): add completion command for shell autocompletion generation and installation (#7)
Bug Fixes
- fix(health): use periodic ping ticker to keep liveness probe alive during long migrations (#7)
- fix(health): handle fmt.Fprintln return values to satisfy errcheck linter (#9)
CI
- ci(docker): add missing OCI image labels to CI and release workflows (#11)
v0.2.0
Bug Fixes
- fix(docker): correct repository URL case in OCI labels (#1)
- fix: relax OUT validation to only check OUT/data and cleanup tmp on non-conversion errors (#4)
Refactoring
- refactor: split monolithic main.go into modular internal packages (#3)
- refactor: replace root main.go with cmd/pebblify entry point (#3)
Build
- build: update Dockerfile and Makefile for cmd/pebblify layout (#3)
- build: detect platform via uname when Go is not installed (#3)
Documentation
v0.3.2
Immutable
release. Only release title and notes can be modified.
Changelog
v0.3.2
Bug Fixes
- fix(prom): add missing Help descriptions to all Prometheus metrics (#24)
Dependencies
- deps(deps): bump github.com/prometheus/client_golang from 1.21.1 to 1.23.2 (#22)
v0.3.1
Performance
- perf(migration): optimize PebbleDB write options for smaller output (#16)
CI
- ci: run CI on develop branch (#15)
Documentation
- docs: update documentation link to remove versioned path (#14)
- docs(readme): update benchmark with optimized results (#16)
v0.3.0
Features
- feat(health): add liveness, readiness, and startup HTTP probe server (#7)
- feat(cli): integrate health probes into level-to-pebble and recover commands (#7)
- feat(docker): add health check, expose probe port, and add docker-compose for local testing (#7)
- feat(prom): add Prometheus metrics exporter for conversion monitoring (#9)
- feat(cli): add --metrics and --metrics-port flags with Docker integration (#9)
- feat(completion): add bash and zsh completion generation with install support (#7)
- feat(cli): add completion command for shell autocompletion generation and installation (#7)
Bug Fixes
- fix(health): use periodic ping ticker to keep liveness probe alive during long migrations (#7)
- fix(health): handle fmt.Fprintln return values to satisfy errcheck linter (#9)
CI
- ci(docker): add missing OCI image labels to CI and release workflows (#11)
v0.2.0
Bug Fixes
- fix(docker): correct repository URL case in OCI labels (#1)
- fix: relax OUT validation to only check OUT/data and cleanup tmp on non-conversion errors (#4)
Refactoring
- refactor: split monolithic main.go into modular internal packages (#3)
- refactor: replace root main.go with cmd/pebblify entry point (#3)
Build
- build: update Dockerfile and Makefile for cmd/pebblify layout (#3)
- build: detect platform via uname when Go is not installed (#3)
Documentation
v0.3.1
Immutable
release. Only release title and notes can be modified.
Changelog
v0.3.1
Performance
- perf(migration): optimize PebbleDB write options for smaller output (#16)
CI
- ci: run CI on develop branch (#15)
Documentation
- docs: update documentation link to remove versioned path (#14)
- docs(readme): update benchmark with optimized results (#16)
v0.3.0
Features
- feat(health): add liveness, readiness, and startup HTTP probe server (#7)
- feat(cli): integrate health probes into level-to-pebble and recover commands (#7)
- feat(docker): add health check, expose probe port, and add docker-compose for local testing (#7)
- feat(prom): add Prometheus metrics exporter for conversion monitoring (#9)
- feat(cli): add --metrics and --metrics-port flags with Docker integration (#9)
- feat(completion): add bash and zsh completion generation with install support (#7)
- feat(cli): add completion command for shell autocompletion generation and installation (#7)
Bug Fixes
- fix(health): use periodic ping ticker to keep liveness probe alive during long migrations (#7)
- fix(health): handle fmt.Fprintln return values to satisfy errcheck linter (#9)
CI
- ci(docker): add missing OCI image labels to CI and release workflows (#11)
v0.2.0
Bug Fixes
- fix(docker): correct repository URL case in OCI labels (#1)
- fix: relax OUT validation to only check OUT/data and cleanup tmp on non-conversion errors (#4)
Refactoring
- refactor: split monolithic main.go into modular internal packages (#3)
- refactor: replace root main.go with cmd/pebblify entry point (#3)
Build
- build: update Dockerfile and Makefile for cmd/pebblify layout (#3)
- build: detect platform via uname when Go is not installed (#3)
Documentation
v0.3.0
Immutable
release. Only release title and notes can be modified.
Changelog
v0.3.0
Features
- feat(health): add liveness, readiness, and startup HTTP probe server (#7)
- feat(cli): integrate health probes into level-to-pebble and recover commands (#7)
- feat(docker): add health check, expose probe port, and add docker-compose for local testing (#7)
- feat(prom): add Prometheus metrics exporter for conversion monitoring (#9)
- feat(cli): add --metrics and --metrics-port flags with Docker integration (#9)
- feat(completion): add bash and zsh completion generation with install support (#7)
- feat(cli): add completion command for shell autocompletion generation and installation (#7)
Bug Fixes
- fix(health): use periodic ping ticker to keep liveness probe alive during long migrations (#7)
- fix(health): handle fmt.Fprintln return values to satisfy errcheck linter (#9)
CI
- ci(docker): add missing OCI image labels to CI and release workflows (#11)
v0.2.0
Bug Fixes
- fix(docker): correct repository URL case in OCI labels (#1)
- fix: relax OUT validation to only check OUT/data and cleanup tmp on non-conversion errors (#4)
Refactoring
- refactor: split monolithic main.go into modular internal packages (#3)
- refactor: replace root main.go with cmd/pebblify entry point (#3)
Build
- build: update Dockerfile and Makefile for cmd/pebblify layout (#3)
- build: detect platform via uname when Go is not installed (#3)
Documentation
v0.2.0
Immutable
release. Only release title and notes can be modified.
Changelog
v0.2.0
Bug Fixes
- fix(docker): correct repository URL case in OCI labels (#1)
- fix: relax OUT validation to only check OUT/data and cleanup tmp on non-conversion errors (#4)
Refactoring
- refactor: split monolithic main.go into modular internal packages (#3)
- refactor: replace root main.go with cmd/pebblify entry point (#3)
Build
- build: update Dockerfile and Makefile for cmd/pebblify layout (#3)
- build: detect platform via uname when Go is not installed (#3)
Documentation
v0.1.0
Release v0.1.0
Initial release of Pebblify.
Features
- LevelDB to PebbleDB conversion for Cosmos/CometBFT node databases
- Adaptive batching with configurable memory limits
- Crash recovery with checkpoint system — resume interrupted migrations
- Progress tracking with real-time throughput and ETA
- Data verification to ensure integrity after conversion
- Multi-database support with concurrent processing
- Docker support with multi-arch images (amd64/arm64)
Usage
# Convert
pebblify level-to-pebble ~/.gaia/data ./output
# Resume interrupted conversion
pebblify recover
# Verify data integrity
pebblify verify ~/.gaia/data ./output/dataChecksums (SHA256)
See checksums.txt for verification.