
Ancient-Backup
A all-in-one backup system for your minecraft server!
Ancient-Backup 2.0.0
release4 января 2026 г.📜 Changelog
All notable changes to Ancient-Backup will be documented in this file.
[2.0.0] - 2026-01-04
🎉 Added
- Real-time Progress Output: Console and Discord updates every 5 seconds during compression and upload
- Streaming Mode Support: Compress and upload simultaneously without creating local files
- Visual Progress Bars: Beautiful progress bars in Discord embeds using Unicode block characters
- Improved Memory Cleanup: Enhanced garbage collection with detailed logging
- Step-by-Step Progress Tracking: Clear 1/5, 2/5 style progress indicators
- Upload Status Messages: See "In Progress" with elapsed time for streaming uploads
🔧 Changed
- Progress Display: Traditional mode shows percentage + speed, streaming mode shows elapsed time
- Discord Embeds: Restructured with multiple fields for better readability
- Memory Reporting: Shows before/after memory usage and freed MB
- Ticker Initialization: Progress trackers now log when they start
🐛 Fixed
- Progress Ticker: Fixed issue where upload progress wasn't displayed in streaming mode
- Speed Calculation: Removed broken speed display from streaming mode
- Memory Cleanup: Added proper GC timing with
runFinalization()call - Emoji Corruption: Removed problematic Unicode emoji characters from code
🗑️ Removed
- Duplicate Discord Notifications: Cleaned up redundant webhook calls
[1.4.0] - 2025-12-15
🎉 Added
- ZSTD Compression: 3-5x faster than DEFLATE with better compression ratios
- File/Folder Exclusions: Skip specific files or folders using glob patterns
- Upload Resume Support: Automatically resume interrupted uploads (SFTP/FTPS)
- Compression Streaming: Upload while compressing for faster backups
- Strict Host Key Checking: SFTP fingerprint verification for security
- World Save Safety: Auto-save disabled during backups to prevent corruption
- Adaptive Throttling: Automatically slow down if server TPS drops
- Memory Budget System: Smart memory management to prevent out-of-memory errors
🔧 Changed
- Archive Format: ZSTD uses TAR format (.tar.zst) instead of ZIP
- Configuration: New options for all features added
- Performance: Optimized buffer sizes and memory usage
🐛 Fixed
- World Corruption: Fixed rare issue where backups could corrupt world files
- Memory Leaks: Improved cleanup of compression buffers
- SFTP Timeouts: Better connection timeout handling
[1.3.0] - 2025-10-20
🎉 Added
- Google Drive Support: Direct upload to Google Drive using service accounts
- OneDrive/SharePoint Support: Upload to Microsoft cloud via Graph API
- Parallel Uploads: Upload to multiple destinations simultaneously
- Progress Notifications: In-game notifications for staff members
- Retention Policies: Automatically delete old backups on remote servers
🔧 Changed
- Discord Webhooks: Enhanced embed design with color coding
- Configuration: Reorganized for better clarity
- Performance: Improved upload speed calculation
🐛 Fixed
- FTPS Compatibility: Fixed issues with some FTPS servers
- Thread Safety: Resolved race conditions in parallel uploads
[1.2.0] - 2025-08-10
🎉 Added
- Discord Integration: Real-time backup notifications via webhooks
- Schedule System: Run backups at specific times or intervals
- Upload Last Command: Retry failed uploads without re-creating the backup
- Configurable Timeouts: Customize connection and upload timeouts
🔧 Changed
- Command Structure: Simplified command syntax
- Error Messages: More descriptive error reporting
- Logging: Enhanced debug information
🐛 Fixed
- Scheduler Issues: Fixed bugs with daily at-time scheduling
- SFTP Paths: Better handling of remote folder creation
[1.1.0] - 2025-06-05
🎉 Added
- FTPS Support: Upload backups via FTP over TLS/SSL
- Compression Levels: Choose ZIP compression level (0-9)
- Status Command: Check backup progress with
/abackup status - Cancel Command: Stop running backups with
/abackup cancel
🔧 Changed
- SFTP Implementation: Switched to JSch library for better compatibility
- File Naming: Added timestamp format configuration
🐛 Fixed
- Permission Issues: Fixed remote folder creation permissions
- Upload Progress: Corrected progress percentage calculation
[1.0.0] - 2025-04-01
🎉 Initial Release
- Basic Backup Functionality: Create ZIP archives of server files
- SFTP Upload: Upload backups to remote SFTP servers
- Automatic Scheduling: Run backups on a timer
- Configuration System: YAML-based configuration
- Command Interface: Basic admin commands
- Permission System:
ancientbackup.adminpermission
Legend
- 🎉 Added for new features
- 🔧 Changed for changes in existing functionality
- 🐛 Fixed for bug fixes
- 🗑️ Removed for removed features
- 🔒 Security for security fixes
- ⚠️ Deprecated for soon-to-be removed features
Upgrade Notes
Upgrading to 2.0.x
- ZSTD Compression: Set
backup.use-zstd: trueto enable (recommended) - Streaming Mode: Enable with
upload.streaming-compression: true(optional) - Exclusions: Add folders to exclude in
backup.excludelist - Memory Settings: Review
performance.cleanup-after-backupsetting
Upgrading to 1.3.x
- Cloud Providers: New configuration sections for Google Drive and OneDrive
- Parallel Uploads: Enabled by default, disable with
upload.parallel: false - Retention: Configure in
retentionsection if desired
Upgrading to 1.2.x
- Discord: Add
discordsection to config for webhook notifications - Scheduler: Old scheduler format still compatible but deprecated
For detailed documentation, visit our Wiki
Ancient-Backup
release14 декабря 2025 г.📦 Ancient-Backup — v1.4.3
🚀 Overview
Ancient-Backup v1.4.3 is a fully asynchronous, performance-aware backup solution for Minecraft 1.20+ servers, designed to create complete server backups while remaining lag-free, memory-safe, and highly configurable.
This release focuses heavily on memory control, stability, and production-readiness, while offering advanced upload destinations and detailed monitoring.
🧠 Performance & Memory Management
- Added a soft memory budget system to prevent excessive RAM usage.
- ZIP and upload buffers dynamically scale based on available memory.
- Automatic best-effort garbage collection after ZIP creation when memory pressure is detected.
- Memory is also cleaned up after uploads finish.
- Prevents memory from continuously growing during large backups.
- Designed to respect server load and avoid TPS drops.
New performance config options:
max-memory-mbmax-buffer-kbmin-buffer-kbmax-chunk-mbcleanup-after-backupgc-after-zip
⚠️ Note: Java plugins cannot hard-limit JVM memory per plugin. Ancient-Backup enforces soft limits by reducing buffers, chunk sizes, and parallelism.
☁️ Backup Destinations
Supports secure, encrypted uploads to:
- SFTP
- FTPS (Explicit & Implicit TLS)
- Microsoft Graph
- OneDrive
- SharePoint
- Google Drive
Upload Features
- Parallel uploads (configurable).
- Automatic remote folder creation.
- Upload speed tracking (MB/s).
- Destination-side retention policy (old backups are removed remotely).
- Ability to retry uploading the last local backup if a previous upload failed.
- Local backup is automatically deleted after a successful upload.
📊 Monitoring & Feedback
/abackup statusshows:- ZIP progress (%)
- Upload progress (%)
- Current upload speed (MB/s)
- Live upload speed updates in the server console (updated continuously).
- No in-game spam.
- Permission-based notifications for staff/admins.
⏱ Scheduling & Automation
- Fully automatic scheduled backups.
- Manual backup start and cancel commands.
- Graceful cancellation during ZIP or upload phases.
- Automatically adapts resource usage based on server load.
🔔 Notifications
- Discord Webhook support
- Backup start
- ZIP completed
- Upload start
- Upload completed
- Failure
- Cancellation
- Fully configurable per event.
- Custom username and avatar support.
🛠 Fixes & Stability Improvements
- Fixed multiple compilation issues from earlier builds.
- Fixed duplicated memory tracking methods.
- Fixed GraphUploader initialization bugs.
- Improved internal memory accounting accuracy.
- Improved config reload reliability.
- Ensured all upload options are disabled by default.
🧩 Compatibility
- Minecraft 1.20+
- Java 21
- Paper / Spigot compatible
- Gradle-based build
🔒 Design Philosophy
Ancient-Backup is built to:
- Never block the main server thread.
- Avoid lag at all costs.
- Prefer slightly slower backups over server instability.
- Clean up all resources after each run.
- Be safe for large, long-running production servers.
📌 Recommended Configuration (Example)
performance:
max-memory-mb: 512
max-buffer-kb: 8192
min-buffer-kb: 256
max-chunk-mb: 16
cleanup-after-backup: true
gc-after-zip: true
Ancient-Backup 1.3.8
release13 декабря 2025 г.Нет описания изменений
