Skip to content

deeno 1.1.0

Latest

Choose a tag to compare

@Streamdoge Streamdoge released this 30 Jul 03:15
· 4 commits to main since this release

⚠️ Security fix β€” update recommended

The protective .htaccess files for /backups/, /users/, /cache/ and /system/logs/ never made it into the 1.0.0 distribution β€” .gitignore excluded the contents of those folders wholesale. Combined with a predictable backup name (backup-YYYY-MM-DD-HHMMSS.zip), anyone could download a full site archive containing config.php and the users/ files with bcrypt password hashes.

Fixed: backup names now carry a random suffix, the .htaccess files ship with the distribution, and the installer recreates them if missing.

If you run 1.0.0: open https://yoursite/backups/<name>.zip β€” if it downloads instead of returning 403, move existing archives out of the web root and change your admin password. On nginx use nginx.conf.example; .htaccess is ignored there, and on hosts where nginx serves static files directly it doesn't apply to .zip even on Apache.

Added

  • Plugins v2 β€” plugins declare settings in plugin.json and deeno renders the form behind a gear button on the Plugins page; values live in system/plugin-data.php, outside the plugin folder, so updates never wipe them. Plugins can serve their own URLs (PluginManager::route()), hook listeners take a priority, and two new filters β€” admin.head and editor.toolbar β€” extend the admin panel.
  • Two new blog themes β€” deeno-mag (editorial magazine: featured lead story from sticky posts, per-category sections, reading time) and deeno-author (personal blog: author hero, timeline grouped by year, tag cloud, drop-cap reading column).
  • Demo mode for public sandboxes ("demo_mode": true) β€” destructive actions are blocked server-side and anything a visitor writes is forced to draft.

Changed

  • RSS and social links are plugins now. Both ship enabled on a fresh install, so nothing changes out of the box. Themes need no changes β€” $site->rss and $site->social are filled through filters and are simply empty when the plugins are off.

    Upgrading from 1.0: enable RSS feed and Social links on the Plugins page; your existing feed setting and social URLs are picked up automatically.


Full changelog: UserDoc/CHANGELOG.md