Skip to content

v2.3.0

Choose a tag to compare

@github-actions github-actions released this 08 Apr 02:19
1. fix: MVC violations

- removed all database calls from Controllers, Services, Filters, Views, Commands
- Created AddonModelTrait for shared ThemeModel/WidgetModel/PluginModel operations
- Created UserAdminModel for TOTP and ownership operations
- Created BackupModel for full database backups
- Renamed ExtensionUpdateService to AddonUpdateService
- Migration Consolidation
- Migration audit: raw SQL replaced with forge
- Wrenched (screaming and fighting) strict Shield adherence.

2. fix: Admin

- ~167 hardcoded English strings replaced with lang() keys across all admin views  -_-
- Duplicate flash message blocks removed
- Edit forms redirect back to themselves
- Redirects form fixed

3. fix: Public

- Paywall enforced at controller level
- Published posts always set published_at to NOW()
- Scheduled posts require future date (validation added)
- Pages route changed from /:slug to /pages/:slug
- RedirectFilter added for 301/302 execution (was stored but never processed)
- Ban/unban/activate/deactivate fixed to use Shield Bannable trait properly
- Comments closed message added to all 9 themes
- Paywall message updated in all 9 themes

4. fix: Addons

- Third-party addon licensing, free field, activation chain
- Plugin activation order: Migrations -> Seeds -> Installer
- Plugin seeders auto-run from Database/Seeds/ on activation
- DigitalStore and PvDocs refactored: data seeding moved from Installer to Seeds
- Addon version bumps: themes 2.2.0, widgets 2.0.5, plugins 1.2.0
- Builder docs, skills, and release checklist updated

5. feat: comments, broken link scanner

- Comments can be globally en/disabled globally and disabled for each post.
- BrokenLinkService now works on CLI and from Admin page
- Broken link scanner now detects HTML, Markdown, and bare URLs

6. feat: Language support — added 18 new languages

- New languages: Bulgarian (bg), Bengali (bn), Czech (cs), German (de), Hindi (hi),
  Italian (it), Japanese (ja), Korean (ko), Lithuanian (lt), Dutch (nl), Polish (pl),
  Brazilian Portuguese (pt-BR), Russian (ru), Serbian (sr), Swedish (sv-SE), Turkish (tr),
  Ukrainian (uk), Chinese Simplified (zh)
- LanguageSeeder updated with all 24 languages
- 24 languages now supported

enlivenapp <mw@enlivenapp.com>