github sbrl/Pepperminty-Wiki v0.17

latest releases: v0.24, v0.24-beta1, v0.23...
5 years ago

It's time for v0.17! This time, it's all about quality-of-life. Here are the highlights:

  • 🌈 🔎 Added full UTF-8 support to the search engine! No more weird errors when searching for pages containing special characters.
  • 🔑 Overhauled password hashing, making it much more secure! This means that you'll need to reset everyone's passwords, but it's definitely worth the additional security. Instructions on how to do this are below in the upgrade instructions.
  • 🚁 Added revert to this revision buttons on the history page for moderators
  • 🌍 Added HTTP/2.0 Server Push support! This comes with a new setting, http2_server_push_items, that lets you specify extra custom files to push in addition to the those specified automatically.
  • 🍭 And more! See the full changelog at the bottom of this release.

As always, you can update by downloading a fresh copy and replacing your existing index.php. The README has a section on how to do that. With this update, there are a few important notes for webmasters / server owners:

  • All passwords will need to be re-hashed. Password resets can be done from the user table when logged in as a moderator or better (the user-table action), and also via the inbuilt hash action (don't forget to do this in incognito and to clear the server logs / reset your password again afterwards).
  • The search index will need to be rebuilt in order to correctly index Unicode characters. This can be done via the Rebuild Search Index button on the configure action page, or by requesting the invindex-rebuild action directly.
  • If you didn't customise the secret setting in peppermint.json on install, you may need to change it. This release makes the generator for this parameter cryptographically secure, so you can just delete it manually and have it be automatically regenerated for you 🙂

If you encounter any problems, please open an issue and help you out.

--Starbeamrainbowlabs

Full Changelog

Since v0.7-beta2

Fixed

  • Removed stray debugging output
  • Tweaked css to make new search context generation look better

Since v0.17-beta1

Fixed

  • Fixed the cost-climbing bug in the last beta release
  • Removed stray debugging output
  • Tweaked css to make new search context generation look better

Since v0.16

Added

  • [Module API] Added save_settings() convenience method
  • [Rest API] Add user-add and set-password moderator actions
  • Added random_page_exclude_redirects setting that prevents the random action from returning redirect pages.
  • Added link to user table on the credits page
  • Added history reversion via the history-revert action
  • Added history_max_revisions setting to allow control of the maximum number of revisions stored for a page
    • Takes effect every time a page revision is added
  • Added page restore system
    • A previous page revision can be restored with a single click from the page history page
    • Added a new history_revert_require_moderator setting to control whether moderator privileges are required to use the functionality (regardless of setting a user must be logged in)
  • HTTP/2.0 Server Push support!
    • You'll need to make sure your web server has support turned on
    • The CSS file specified in the css setting (url path must begin with a forward-slash) and the favicon (must not be a data: url) are automatically pushed when rendering pages
    • 2 new settings have been added: http2_server_push for turning it on and off (defaults to on), and http2_server_push_items for specifying custom resources to push (in case you design your own theme and want to push down the associated resources)
    • More information about http2_server_push_items in particular is available on the configuration info page (when this release is out, of course. Until then, check out the description in peppermint.guiconfig.json)
  • Added <meta name='generator' /> tag to all pages

Fixed

  • Updated the search system to transliterate characters to better support searching pages that are written in other languages.
    • You'll want to rebuild your search index via the button in the configuration panel, or the invindex-rebuild action.
  • [Security] Made the site secret generator cryptographically secure. If you created your wiki before this change, you might want to change your site secret in peppermint.json to something more secure with a site like random.org.
  • [Module API] Fix full_url() logic
  • [Module API] Make email_user() correctly return email sending failures
  • Squashed a warning in the search redirector
  • The search redirector will now check both the specified page name and the page name in Title Case
  • Improve help text description of image captions displayed alongside images
  • Fixed the page history page - it should now display all page revisions in valid HTML
  • Fixed another bug in the search context generator
  • Display an ellipsis at the beginning of a search context if it doesn't start at the beginning of a page
  • Semicolons are no longer automatically included in greedy internal links.
  • Pressing enter in the tag box now correctly previews instead of performing a smart restore
  • Removed stray debugging output
  • Fixed the cost-climbing bug in the last beta release
  • Tweaked css to make new search context generation look better

Changed

  • Password hashing has been overhauled! A totally new-and-different system is being used now, so you'll need to rehash all your passwords.
    • The hash action supports the new password hashing scheme.
    • Added password_cost, password_cost_time, and password_cost_time_interval settings
    • password_cost is recalculated automatically every week by default (it keeps track of this via the password_cost_time_lastcheck 'setting')
  • The css setting will now keep a value of auto, even when peppermint.json is automatically updated by Pepperminty Wiki.
  • Optimised the search system a lot (#157 - ~2800ms searches now take ~450ms O.o)
    • Tuned the default value for search_characters_context down to 75 (this won't be the case for existing wikis, so you'll need to adjust it manually)
    • Added new search_characters_context_total setting to control the maximum characters in a search context
  • The index action's output should now be formatted nicely.
  • Restyled "matching tags" in the search results in the default stylesheet
  • Added moar icons to the nav / more menus. Delete the appropriate entries in peppermint.json to get the updated ones!

Don't miss a new Pepperminty-Wiki release

NewReleases is sending notifications on new releases.