Introducing Publii 0.38
Publii development has been trundling along, despite the numerous challenges and tribulations the past year has brought. And so, we're happy to finally release our latest update, version 0.38.0, for our users to jump into. Our focus at the moment is still in making Publii more flexible and user-friendly, so you'll find plenty of options that'll scratch that itch in this release, including the ability to minimise the sync popup, new options to hide menu items, WebP image support, and more flexible SEO options, as well as the usual batch of improvements and bug fixes.
As always, to update you can simply grab the latest release from the Publii Download Page; run it, and Publii will automatically take care of the update process. And if you'd like to find out the specifics about what's included in this release, cast your eye down the page!
New Features
This release doesn't have any big flagship features, but it does have plenty of new additions that should make your day-to-day usage of the app more convenient, starting with:
Minimise Sync Pop-Up
Whenever you sync your Publii site to your server, there are two steps that happen; first, the website is rendered and the files created locally, and second, the website files are uploaded to your server. Now, Publii is pretty darn fast at rendering the site (one of the many benefits of static websites in general!), but the upload process can take some time, depending on your internet connection, the type of hosting you're using, and the number of files that need to be uploaded.
To minimize the disruption to your workflow when syncing, we've added a new option to minimize the sync window pop-up to the background, rather than making you wait for the process to complete before getting back to work. Basically, in previous Publii versions the sync popup would take over the app, and you'd have to wait for both the rendering and upload process to complete before you could perform other tasks.
With this new addition, once the rendering process is complete and your site files are uploading, you can click on the 'Minimize' option in the top-right of the sync window to close this popup. You'll still be able to track the progress of the upload at the bottom of the left-sidebar, but you won't have to wait around for it to complete before you can start making other changes. A simple, but hopefully helpful, quality-of-life change.
Hide Menu Items On the Frontend
Sometimes, it's good to plan ahead. Maybe you've added a menu item that you didn't need quite yet, but you were certain to make use of it soon. The problem was, if you made a menu item, Publii would render it and include it in the completed website, whether it was used or not.
So we've added a simple option to Hide menu items, which appears next to the Edit option in the Menu Manager. Simply click the Hide text next to the menu item you want to hide, and voila! Your item is hidden until you're ready to make use of it.
SEO: Specific Tags/Authors May Now Be Noindexed
Until this release, the meta robots behaviour (index, noindex, or follow) could only be set globally for each type of page in the Site Settings->SEO Options section. In this release, we've added the ability to override the global settings for each tag or author page, giving you more control over which pages are indexed on your site. Additionally, an option to specify the canonical URL for the tag or author page has been added.
A New Option Screen: Editors
Version 0.38.0 of Publii adds a new tab to the Advanced Options section; Editors. In this section, we will add any options that are used to manage editor behavior, whether options that we see the need for during our regular development cycle or options that our users request to improve their efficiency. For now, there are three options available in this section:
- Additional Valid Elements in the WYSIWYG Editor - For users that want to override the default TinyMCE behavior in the editor e.g. prevent it stripping tags from your HTML code, you can add the tags you want to allow in this section.
- Indent Size (Code Editor) - Sets the size of the indent created in the code editor when the user hits the Tab key.
- Enable Auto-Indent (Code Editor) - Sets whether the Code Editor auto-indents the cursor when starting a new line.
Specify Default Cookie Groups in the GDPR Popup
The GDPR made it so that permission must be explicitly given before cookies may be used for the purpose of tracking or advertising. However, often cookies are required simply for the basic functionality of your website.
With this new feature addition, it will be possible to specify a cookie group as default, so that you can ensure that your users get the best experience. Please remember, though, that any marketing or tracking cookie groups that are used for personalized adverts, etc… should not be set to default.
Enable/disable the featured posts in RSS Feed
The RSS / JSON section of the Web Settings has been expanded with two useful options:
- Show only featured posts - display only featured posts in the RSS/JSON feeds
- Exclude featured posts - exclude featured posts from the RSS/JSON feeds
Added Support for WebP Images (macOS and Windows Only)
This new feature does exactly what it says on the tin; adds support for WebP images. So if WebP is your preferred image format, Publii has you covered. Now, if you set a post with a WebP image as a featured post, for example, then Publii will automatically generate a responsive version of the image.
S3-Compatible Server Support
Amazon's S3 is one of the largest platforms for Cloud Computing, and so it was important that our users were able to take advantage of this platform when using Publii. To that end, we've added support for deploying Publii sites to S3-compatible providers. In addition, a More link has been added to the Server section of Publii that links to our extensive documentation on configuring the various deployment options.
Finally, we've also expanded our deployment documentation to include Cloudflare Pages, so if you'd like to deploy your Publii site to Cloudflare Pages, you'll find all the steps listed in our docs.
For Devs: @website.logoSize support
A final, small addition just for devs; we've added support for the @website.logoSize helper that displays the width and height attribute for the image logo.
Other Improvements
Some changes aren't big enough to be considered as new features, but they still improve app usability. You'll find the full list of improvements in this release below:
- Improved Excerpt output with whitespaces.
- Improved Trashed Posts workflow; after saving changes to a trashed post, you'll be returned to the Trashed Posts list.
- Renamed 'External Link' to 'Custom Link' in Post Editor UI, to give a clearer description of the functionality.
- Added support for multi-line image captions in the gallery.
- Added support for detecting missing safe password storage in Linux for improved error handling.
- Changing backup location no longer requires an app restart.
- Added a more user-friendly message when the site’s directory does not exist.
- Empty folders in the media directory are removed before uploading to improve deployment speed.
- Added support for amp-* tags in the TinyMCE editor.
- Fixed top-bar layout on macOS >= 11.
- Removed sitemap link in Robots.txt when relative URLs are enabled.
- Updated list of S3 regions.
- Added more informative, user-friendly error messages when database creation crashes e.g. due to the AntiVirus software currently being used, etc...
- Added additional messages when changing file locations.
- Improved sub-process closure method to reduce errors when canceling some operations such as deployment.
- Minor code improvements and code library upgrades.
Bugfixes
Last but by no means least, are the usual batch of bugs. Many thanks to our community for reporting bugs; this really helps us to stay on top of things and eliminate as many issues as possible:
- Fixed invalid selection of the spellchecker's language on Windows and Linux.
- Fixed multiples issues with GitLab deployment; branches are no longer used for deployment due to API issues.
- Fixed issue with Google Cloud deployment.
- Fixed issues with improper function of the theme-variables.js file in themes.
- Fixed issues with non-working ComputedOptions.
- Fixed issues with non-working Relative URLs when AMP is enabled.
- Fixed JS error on the backups view when the app is run for the first time.
- Fixed error with saving app settings the first time the app is run.
- Fixed issue with Trashed Posts losing their trashed status when edited in the Post Editor.
- Fixed bug where GitLab deployment supported on the master branch.
- To fix problems with removing website files on Linux, website files are now directly removed (in Linux only) rather than sent to the bin, due to confirmed issues with the trash module in Linux.
- Fixed incorrect block editor behavior with some Asian languages that use the isComposing flag and additional UI for character selection.
- An empty Privacy Policy URL is now handled correctly.
- Fixed issues with disabled pagination on the homepage.
Hotfixes
For more information on the hotfix releases for Publii 0.38 version, see the links below:
And that's all for today! Though none of the features added here are ground-breaking, we really hope that they are able to improve your day-to-day use of the app. And if you'd like to make some suggestions about future features, or have a bug that you'd like to report, don't forget to drop into our GitHub Project page and post your issue; we're always happy to hear from our users!