Skip to content

Bump version to 1.4.7, update changelog, and add PostgreSQL compression#31

Merged
Skyfay merged 6 commits into
mainfrom
dev
Apr 22, 2026
Merged

Bump version to 1.4.7, update changelog, and add PostgreSQL compression#31
Skyfay merged 6 commits into
mainfrom
dev

Conversation

@Skyfay
Copy link
Copy Markdown
Owner

@Skyfay Skyfay commented Apr 22, 2026

No description provided.

Skyfay added 6 commits April 22, 2026 19:08
Update project and wiki package versions to 1.4.7 and bump OpenAPI spec versions. Add a v1.4.7 changelog entry documenting the Docker image (skyfay/dbackup:v1.4.7, also tagged latest and v1) and supported platforms (linux/amd64, linux/arm64).

Files changed: package.json, wiki/package.json, api-docs/openapi.yaml, public/openapi.yaml, wiki/changelog.md.
Add a CI/CD subsection to v1.4.7 changelog documenting the addition of OCI standard labels to the Docker image via docker/metadata-action@v5 (labels: title, description, url, source, version, revision, created, licenses, vendor) for better registry compatibility and dependency bot integration. References #27 and credits @Erwan-loot.
Allow MSSQL adapter to discover user databases when no database is selected in the job/source config. Added getDatabases import and discovery logic in dump.ts (with logging and an error if no user DBs found), trimmed/filtered empty database entries, and kept dialect selection unchanged. Adjusted runner step to treat an empty job database selection as "backup all" by clearing sourceConfig.database so adapters' auto-discovery runs. Also updated changelog with the related bugfix notes. This fixes the "No database specified for backup" error and the issue where adapters used the source default database instead of backing up all databases.
Introduce per-job PostgreSQL native dump compression support via a new Job.pgCompression field and migration.

- DB: add pgCompression column (prisma schema + migration) with default "" (legacy gzip-6 behavior).
- API: accept pgCompression in POST/PUT job endpoints and persist via job-service.
- Runner/Adapter: propagate job.pgCompression into the postgres adapter; build pg_dump -Z args (supports LEGACY/ NONE/ GZIP:N/ LZ4:N/ ZSTD:N) and preserve legacy behavior for existing jobs.
- UI: job form adds algorithm + level selectors, auto-converts to a single pgCompression string, disables pipeline compression when native compression is active, and enforces version compatibility hints.
- Platform: include lz4 and zstd in Dockerfile and mac setup script; document Homebrew PATH notes for proper pg_dump with LZ4/ZSTD support.
- Docs: update changelog and add a note to repo instructions about safe Prisma migration workflow.

This change enables using pg_dump's native compression (e.g. -Z zstd:3) while preserving backward compatibility for existing jobs.
Enable test coverage reporting and local validation. Adds codecov.yml and a README badge, wires a Codecov upload step into the CI workflow (uses OIDC and adjusts permissions), and adds a test:coverage script plus @vitest/coverage-v8 support and lcov reporter in vitest.config.ts. Introduces a scripts/validate.sh helper and a package.json validate script to run lint, typecheck and tests locally. Also includes a small ESLint ignore change and several minor code/test tweaks (Pg compression type change, test mocks and expectations, and job-service test field) and updates the changelog to document the additions.
Remove the Codecov badge from README and update coverage configuration. codecov.yml now ignores several frontend and testing helper paths; vitest.config.ts narrows coverage include to src/lib and src/services and refines excludes (tests, specs, testing helpers, and adapter definitions). The changelog entry about adding the README badge was also removed to reflect this change.
@Skyfay Skyfay merged commit 1b56102 into main Apr 22, 2026
8 checks passed
@Skyfay Skyfay deleted the dev branch April 24, 2026 18:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant