v12.40.5
🆕 Changelog
Added
- Credit system v2 with usage tracking and credit balance monitoring
- API endpoints for statistics, bundle creation, and organization management
- Cloudflare Workers deployment for API handling (99% of traffic)
- D1 database replication system for improved performance
- Hyperdrive database connection pooling
- Rate limiting on public API endpoints
- Device custom ID mode support
- Captcha protection for login, registration, and password reset
- Organization-level API key restrictions
- Bundle metadata endpoint with link and comment fields
- Retention period configuration for app versions
- Monthly email reports for usage statistics
- Price calculator tool
- Hindi language support
- Native package compatibility checks when setting bundles to channels
- Deployment history tracking
- Event tracking system for onboarding and user actions
- Table search and filtering improvements across multiple pages
Changed
- Migrated from petite-vue-i18n to vue-i18n for better internationalization
- Updated to Tailwind CSS v4
- Upgraded to Capacitor 7
- Switched to Vitest 3 for testing
- Improved dashboard design with better mobile responsiveness
- Enhanced table components with select-all functionality and improved pagination
- Replaced device version ID with version name in database tables
- Streamlined statistics calculation using UTC timezone
- Optimized database queries with new indexes and composite keys
- Updated bundle upload to use presigned URLs for better security
- Improved error handling and logging across backend functions
- Redesigned navigation with better organization dropdown
- Enhanced API key management interface
- Updated login and registration flow with improved security
Fixed
- Device ID handling now consistently uses lowercase
- Stripe event processing and subscription synchronization
- Channel deletion constraints preventing deletion when devices are linked
- Bundle deletion now properly removes associated storage files
- Statistics calculation accuracy for MAU and update counts
- Rate limit handling for external app tracking
- Auto-update behavior with
disable_auto_update_under_nativesetting - Test suite performance and reliability
- Dark mode styling issues across multiple components
- Mobile design improvements for tables and forms
- 2FA flow for password reset
- Queue processing for database triggers and cron jobs
- Retention period application and cleanup
- Manifest replication to separate table
- Storage file cleanup for incomplete uploads
- API response consistency for error messages
Security
- Implemented Row Level Security (RLS) policies for organization data
- Added API key scoping to specific organizations and apps
- Enhanced CORS configuration for API endpoints
- Improved authentication flow with captcha protection
- Removed hardcoded secrets from test files
- Added signed URL validation for bundle downloads
- Implemented mutual signing key for secure communications
Removed
- Legacy trigger functions replaced with queue-based system
- Deprecated encryption key support (migrated to new system)
- Old storage bucket ID system in favor of R2
- Redundant code in statistics calculation
- Plunk email service integration
- Service worker functionality
- Element Plus UI components (replaced with custom components)
- Old v1 update endpoints (consolidated to v2)
🔗 Full Changelog: v11.3.70...v12.40.5