github-actions[bot]
39a77b18a4
chore: release 1.14.1
1.14.1
2026-06-29 13:22:10 +00:00
Charles GTE
e62167182e
Merge pull request #72 from Portabase/fix/postgres-cluster
...
fix: postgres cluster dump command
2026-06-29 15:19:54 +02:00
charles-gauthereau
4be54a614e
fix: postgres cluster dump command
2026-06-29 15:18:52 +02:00
github-actions[bot]
c5eaa5086c
chore: release 1.14.0
1.14.0
2026-06-27 19:16:46 +00:00
Charles GTE
610d443afc
Dev ( #69 )
...
* fix: pgdump-cluster (#68 )
* feat: add as_str/from_str to PostgresDumpFormat
* feat: resolve pg_dumpall/psql binary names
* feat: add include_globals field to database config
* feat: add pg_dumpall/psql globals dump and apply
* feat: add postgres backup bundle (manifest + build + resolve)
* feat: bundle globals into postgres backup when include_globals is set
* feat: replay globals before pg_restore when backup archive is a bundle
* refactor: bind FD restore tempdir guard once to clear unused warnings
* docs: demonstrate include_globals in sample databases.json
* chore: silence test-only re-export warning in non-test builds
* revert: remove include_globals feature, restore plain pg_dump/pg_restore
* feat: add pg_dumpall/psql binary names and is_superuser check
* feat: add postgresql-cluster db type and config parsing
* feat: pg_dumpall cluster backup and psql restore
* feat: route postgresql-cluster through PostgresClusterDatabase
* docs: add postgresql-cluster sample to databases.json
* refactor: split cluster mode into cluster/ module (backup, restore, database)
* test: mirror cluster tests into src/tests/domain/cluster/
* feat: add-gcs-storage-provider (#70 )
* fix: refactoring
* chore: add google-cloud-storage and google-cloud-auth deps
* feat: add GCS provider config model
* feat: add GCS credential, client, and stream-source helpers
StreamSource bridges build_stream's Send-only byte stream into the SDK's
StreamingSource (which send_buffered requires to be Send+Sync+'static) via a
bounded mpsc channel, avoiding any change to the shared UploadStream type.
* feat: implement GCS StorageProvider upload
* feat: register google-cloud-storage provider in factory
* test: GCS upload roundtrip against fake-gcs-server
* fix: format GCS bucket as projects/_/buckets/<name> in upload_with_client
write_object rejects the bare bucket id with "malformed bucket name"; the
production provider passed config.bucket_name unformatted, so real uploads
would always fail. Format once in upload_with_client so prod and the
fake-gcs-server test share the corrected path.
* style: cargo fmt GCS provider files
* fix: gcs
* fix: azure (#71 )
2026-06-27 21:14:21 +02:00
Charles GTE
16a37e033e
fix: azure ( #71 )
2026-06-27 20:51:47 +02:00
Charles GTE
29ca5a317b
feat: add-gcs-storage-provider ( #70 )
...
* fix: refactoring
* chore: add google-cloud-storage and google-cloud-auth deps
* feat: add GCS provider config model
* feat: add GCS credential, client, and stream-source helpers
StreamSource bridges build_stream's Send-only byte stream into the SDK's
StreamingSource (which send_buffered requires to be Send+Sync+'static) via a
bounded mpsc channel, avoiding any change to the shared UploadStream type.
* feat: implement GCS StorageProvider upload
* feat: register google-cloud-storage provider in factory
* test: GCS upload roundtrip against fake-gcs-server
* fix: format GCS bucket as projects/_/buckets/<name> in upload_with_client
write_object rejects the bare bucket id with "malformed bucket name"; the
production provider passed config.bucket_name unformatted, so real uploads
would always fail. Format once in upload_with_client so prod and the
fake-gcs-server test share the corrected path.
* style: cargo fmt GCS provider files
* fix: gcs
2026-06-27 20:37:22 +02:00
Charles GTE
01f5d34c96
fix: pgdump-cluster ( #68 )
...
* feat: add as_str/from_str to PostgresDumpFormat
* feat: resolve pg_dumpall/psql binary names
* feat: add include_globals field to database config
* feat: add pg_dumpall/psql globals dump and apply
* feat: add postgres backup bundle (manifest + build + resolve)
* feat: bundle globals into postgres backup when include_globals is set
* feat: replay globals before pg_restore when backup archive is a bundle
* refactor: bind FD restore tempdir guard once to clear unused warnings
* docs: demonstrate include_globals in sample databases.json
* chore: silence test-only re-export warning in non-test builds
* revert: remove include_globals feature, restore plain pg_dump/pg_restore
* feat: add pg_dumpall/psql binary names and is_superuser check
* feat: add postgresql-cluster db type and config parsing
* feat: pg_dumpall cluster backup and psql restore
* feat: route postgresql-cluster through PostgresClusterDatabase
* docs: add postgresql-cluster sample to databases.json
* refactor: split cluster mode into cluster/ module (backup, restore, database)
* test: mirror cluster tests into src/tests/domain/cluster/
2026-06-27 17:23:57 +02:00
github-actions[bot]
0b7b7ef59b
chore: release 1.13.1
1.13.1
2026-06-25 12:58:08 +00:00
Charles GTE
038c5523b7
fix: download-crash-large-files ( #67 )
...
* fix(restore): add ProgressTracker for download progress logging
* fix(restore): stream backup download to disk instead of buffering in RAM
* chore(restore): add download diagnostics + exact byte logging
* refactor(restore): drop ProgressTracker, keep streaming download
* feat(restore): drive download progress from RestoreInfo.size
* fix(restore): accept integer or string for RestoreInfo.size
* fix(restore): show raw bytes in download progress log
* fix(restore): collapse progress to highest milestone per chunk
* fix: downloader.rs
2026-06-25 14:55:49 +02:00
github-actions[bot]
ea010ce713
chore: release 1.13.0
1.13.0
2026-06-21 14:41:22 +00:00
Charles GTE
8897568281
Merge pull request #66 from Portabase/feat/az-blob-storage-2
...
feat: az-blob-storage
2026-06-21 16:39:12 +02:00
Charles GTE
66cad4e12e
fix: az blog storage tests
2026-06-21 16:22:51 +02:00
Charles GTE
221ed4e7e1
feat: add azure blob storage support
2026-06-20 19:38:00 +02:00
Charles GTE
84735ac399
feat(storage): spike Azure Blob SAS auth + block round-trip against Azurite
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-20 17:49:54 +02:00
Charles GTE
f7639de096
build: add azure_storage_blob and azure_core dependencies
2026-06-20 17:39:10 +02:00
github-actions[bot]
e504d09cb3
chore: release 1.12.3
1.12.3
2026-06-20 13:00:11 +00:00
Charles GTE
0363b300a4
Merge pull request #65 from Portabase/dev
...
Dev
2026-06-20 14:58:03 +02:00
Charles GTE
bf6e7d41ab
fix: Dockerfile
2026-06-20 14:40:37 +02:00
Charles GTE
2c7065ae95
Merge pull request #64 from pcrosthwaite/feature-backup-timeout-on-large-db
...
Support large MySQL and MariaDb databases
2026-06-20 14:38:26 +02:00
Charles GTE
1fece577cc
fix: tests and config.rs and backup.rs args
2026-06-20 14:36:09 +02:00
Charles GTE
273475fa3b
Merge branch 'dev' into feature-backup-timeout-on-large-db
2026-06-20 13:02:14 +02:00
Charles GTE
628c017584
Merge pull request #63 from tobfel/tf-main
...
docs: add Windows build and run guide / and fix(postgres): resolve pg_dump/pg_restore path cross-platform
2026-06-20 12:53:31 +02:00
Charles GTE
f02218708a
fix: windows-release.yml
2026-06-20 12:52:53 +02:00
Charles GTE
16152328b0
fix: extract the env variable to the settings.rs and some refactoring, and the trigger in windows-release.yml
2026-06-20 12:31:01 +02:00
Peter Crosthwaite
7328827435
Fix mysqldump timeout on large database backups
...
- Add mysql:8.4 client tools stage to Dockerfile so the real mysqldump
binary (with --network-timeout) takes PATH precedence over MariaDB's
mysqldump symlink, which lacks this flag
- Use --network-timeout in MySQL backup command; sets net_read_timeout and
net_write_timeout to 86400s for the duration of the dump
- Simplify config: replace net_read_timeout/net_write_timeout/max_allowed_packet
with a single max_packet_size field (optional, defaults to 512M)
- Log mysqldump/mariadb-dump client version as a debug message before each backup
2026-06-20 18:06:21 +10:00
Peter Crosthwaite
348eaac81b
Added config options for setting timeouts on mysql/mariadb
2026-06-20 07:51:18 +10:00
tf
0f6c93ecd0
fix encoding
2026-06-19 16:31:21 +02:00
tf
befec0deae
Windows Build workflow
2026-06-19 16:01:45 +02:00
tf
2052ab0ff5
fix(postgres): resolve pg_dump/pg_restore path cross-platform
2026-06-19 15:27:45 +02:00
tf
461e92d67e
docs: add Windows build and run guide
2026-06-19 15:22:24 +02:00
github-actions[bot]
23678bf2d6
chore: release 1.12.2
1.12.2
2026-06-19 10:00:23 +00:00
Charles GTE
02105a8171
Merge pull request #62 from Portabase/fix/password-slash
...
fix: password-slash
2026-06-19 11:58:26 +02:00
charles-gauthereau
f94656a39b
fix: postgres password slash
2026-06-19 11:29:51 +02:00
Charles GTE
b94ff4e987
Merge branch 'main' into dev
2026-06-09 19:18:38 +02:00
github-actions[bot]
dc32c442f3
chore: release 1.12.1
1.12.1
2026-06-07 18:06:37 +00:00
Charles GTE
1453851555
Merge pull request #61 from Portabase/fix/cpu-ram-crash
...
fix: cpu-ram-crash
2026-06-07 20:04:25 +02:00
github-actions[bot]
185a7ee612
chore: release 1.12.0
1.12.0
2026-06-07 15:46:22 +00:00
Charles GTE
d8328f60ca
Merge pull request #60 from Portabase/feat/backup-restore-job-logs
...
feat: backup-restore-job-logs
2026-06-07 17:44:26 +02:00
charles-gauthereau
82c7122790
fix: refactoring
2026-06-07 17:32:16 +02:00
Charles GTE
fba72f5c26
feat: add job logs for restoration process
2026-06-07 11:16:02 +02:00
Charles GTE
b537980c71
fix: test ci
2026-06-06 21:14:38 +02:00
Charles GTE
0261a07fc2
fix: test ci
2026-06-06 20:59:30 +02:00
Charles GTE
c840f91680
fix: test ci
2026-06-06 20:20:52 +02:00
Charles GTE
2d52eccbb2
fix: test ci
2026-06-06 19:43:54 +02:00
Charles GTE
f9bf481c79
fix: test ci
2026-06-06 19:26:44 +02:00
Charles GTE
3c853ee7ca
fix: tests and refactoring
2026-06-06 19:15:22 +02:00
Charles GTE
45d791358c
fix: tracing logs
2026-06-06 11:01:55 +02:00
Charles GTE
0b915d87c9
feat: job logs
2026-06-06 10:22:27 +02:00
Charles GTE
531a25f292
Merge branch 'main' into dev
2026-05-24 16:52:40 +02:00