Pepperminty Wiki v0.19 Release Notes

Release Date: 2019-07-05 // about 3 years ago
  • ⚡️ > The update that changed the world! Turn everything upside-down.

    v0.19 is here! Even though it might not feel like it, this update is a big one, and it changes a number of fundamental internals about the way that Pepperminty Wiki is packaged - which should lead to exciting new features down the line!

    Notable Changes

    • 🏭 Completed refactored the build system. Now an internet connection is not required for the initial setup on first page load!
    • 👕 💎 Splinter the Pepperminty Wiki core into shards to make it more maintainable
    • 🧙 Added a new first-run wizard that appears when you first setup a brand-new wiki to help new users get up and running quickly.
    • 🍱 🔍 Added PDF file preview & a download button for unsupported files
    • 📦 📦 Minify the page index by default.
    • 🍱 🔊 Default to allowing upload of .ogg and .flac files
    • 📄 Update Parsedown, the default markdown parser, and use the new untrusted feature to secure the rendering of comments

    Full Changelog

    Since v0.19-beta2

    🚀 (No changes have been made since the last beta release.)

    Since v0.19-beta1

    🔄 Changed

    • 📚 Updated the theme of the new documentation
    • 📚 Revised the writing modules section of the documentation

    Since v0.18

    🛠 Fixed

    • 🛠 Fixed double-escaping of rendered HTML when nesting templates
    • ⚠ Squashed a warning if the search index doesn't exist yet
    • 🛠 Fixed a crash in the stats updater if no pages in the system have tags yet
    • Consolidated email and emailAddress fields into the latter in the user table (#167)
    • 🛠 Fixed a crash when trying to access the user table when not logged in as an administrator.
    • 🛠 Fixed help text for the file upload module
    • ⚠ Squashed a warning when uploading a file

    ➕ Added

    • 👀 [Module API] Added new extra data system. See parser-parsedown and page-edit for an example.
      • Extra data is packed into a zip archive, which is packed into index.php via __halt_compiler();
      • See the parser-parsedown and page-edit modules for examples on how to use it.
    • [Module API] Added new delete_recursive() function.
    • ➕ Added a new obvious link to the user table at the top of the master settings page.
    • ➕ Added a new first-run wizard to help new users set up the basics of their wiki.
      • It also checks to ensure that access to peppermint.json is blocked correctly (coming soon as a one-time check to pre-existing wikis)
      • Pre-existing wikis will not see this first-run wizard - a new firstrun_complete setting has been added that's automatically set to true if Pepperminty Wiki does a settings upgrade
    • 0️⃣ Default to allowing lossless flac and ogg audio files to be uploaded
    • ➕ Added new minify_pageindex setting, which defaults to true and causes the page index to be minified when saved. Improves performance slightly (especially on larger wikis as the page index grows), but makes debugging and ninja-edits more awkward.
    • [Module API] Added new save_pageindex() function which respects the above setting.
    • ➕ Added PDF preview using your browser's default PDF viewer!
    • ➕ Added download button for unsupported file types

    🔄 Changed

    • Core sharding: split core.php into multiple files
    • 📜 Big update to the backend Markdown parser Parsedown
      • Use Parsedown's new untrusted feature for comments
      • Added new all_untrusted setting to allow treating everything as untrusted (default: false) - turn it on if your wiki allows anonymous edits
    • 📄 Switch to nightdocs instead of docpress - the new docs are available here!
    • ➕ Add moar badges to the README & docs :D

    ✂ Removed

    🚚 Not often I have a removed section!

    • 🚚 [Module API] Remove remote file system in favour of the new extra data system. No more first-run downloads! They are all done at compile-time now.