Gitea Mirror v3.0.0 Release Notes
🚨 Breaking Changes
v3.0.0 is a major breaking release that requires a fresh installation. Direct upgrades from v2.x are not supported due to fundamental database architecture changes.
🎯 Highlights
- Complete Database Rewrite: Migrated from raw SQL to Drizzle ORM with automatic migrations
- UI-Based Authentication: Configure authentication methods (Local, OIDC/SSO, Forward Auth) directly from the UI
- Improved Reliability: Fixed critical production bugs from v2.19.0
- Cleaner Codebase: Removed 1000+ lines of migration scripts and complexity
✨ New Features
Database Management
- Automatic database migrations using Drizzle ORM
- TypeScript-first schema definitions
drizzle-kit studio
for GUI database access- Simplified database commands
Authentication System
- Setup Wizard: First-time setup with authentication method selection
- Local Authentication: Built-in user management
- OIDC/SSO Support: Enterprise-ready authentication with any OIDC provider
- Forward Auth: Support for reverse proxy authentication (Authelia, Authentik, etc.)
- Admin Settings: Change authentication methods without environment variables
Developer Experience
- Full TypeScript support throughout the codebase
- Improved test coverage with simplified mocking
- Better error messages and debugging
🔧 Technical Changes
Database
- Migrated from Zod schemas to Drizzle ORM native schemas
- Automatic migration system with version tracking
- Proper foreign key constraints and indexes
- JSON column support for complex configurations
Removed Features
- Manual SQL migration scripts
- Environment variable-based authentication configuration
- Complex migration utilities
- Legacy database repair scripts
📦 Migration Guide
See the detailed v3.0.0 Upgrade Guide for migration instructions.
Quick Migration Steps:
- Backup your existing database
- Note your GitHub and Gitea configurations
- Stop Gitea Mirror v2.x
- Delete the old database
- Start Gitea Mirror v3.0.0
- Reconfigure through the setup wizard
🐛 Bug Fixes
- Fixed "jsxDEV is not a function" error in production builds
- Fixed setup wizard incorrectly showing for existing v2.x installations
- Improved database initialization reliability
- Better handling of authentication configuration
📊 Statistics
- Removed: 8 migration scripts (~800 lines)
- Added: Drizzle ORM integration
- Improved: Test reliability and coverage
- Simplified: Database management
🙏 Acknowledgments
Thanks to the community for reporting issues and testing the beta releases.
⚠️ Important Notes
- No Direct Upgrade Path: You must export configurations and start fresh
- Backup First: Always backup your v2.x database before upgrading
- Repositories Unchanged: Your Gitea repositories remain untouched
- New Database Format: The database structure is completely different
🔗 Links
- Upgrade Guide
- Issue Tracker
- Docker Hub