Spring is here 🌼, and so is a first Release Candidate of the next OctoPrint release 1.6.0! This one is once again packed with a ton of improvements, new features and of course bug fixes. Let’s have a look at some of the highlights from the changelog, shall we?

  • Timelapses and log files now allow bulk downloads: Select multiple files and you’ll be offered to download all of them in one ZIP archive.
  • @cp2004 improved the UX for the Plugin Manager and the Software Updater: All buttons and related actions have been moved to the top of the dialog, leaving more space for the list of plugins and update targets and getting rid of a double scrollbar in the process.
  • If OctoPrint’s UI detects you are trying to upload a file that already exists, it’ll now prompt you what to do: cancel, rename to a conflict free name or overwrite the existing file. You can disable this via the Settings if you prefer the old approach of simply always overwriting. Note that this conflict detection only happens if you use OctoPrint’s user interface, the API has not been touched.
  • Remember the new System Info dialog introduced in 1.5.0? It has been enhanced and now also allows downloading a full SystemInfo Bundle, containing not only the system information visible in the dialog but also octoprint.log, serial.log and anything else that’s usually requested from you when you report a bug or ask for support on the forums or the Discord server. So now you can just download a single bundle zip that contains everything in one go. The bundle download is also available on the recovery page (/recovery) and can also be requested on the command line (via octoprint systeminfo .). A bundle viewer webapp has also been created that allows viewing these bundles easily in every browser, even on mobile.
  • OctoPrint’s backup plugin so far didn’t allow you to restore a backup from a newer version than what was currently running. This was done to not run into any compatibility issues when you try to restore a current backup on an ancient OctoPrint install. Since this poses problems when you have created a backup on an only slightly newer version however (think 1.5.3 vs 1.5.2) this has now been slightly disarmed - OctoPrint 1.6 and later will now allow you to restore backups from the same major.version version, regardless of patch level. So restoring a backup from 1.6.1 will be allowed on 1.6.0, restoring a backup from 1.7.0 on 1.6.x won’t.
  • As we observed some issues in the community with misconfigured autologin settings, OctoPrint will now ensure the validity of IP address ranges configured for that and refuse to use invalid ones.
  • The logging UI saw some work done by @eyal0 and the workflow of managing log levels during development or debugging has been improved by that.
  • If OctoPrint detects that it can’t reach the internet, it will now display a small offline indicator in the navbar. This should hopefully help people diagnose such issues faster.
  • A new hook octoprint.printer.handle_connect is now in place that allows plugin developers to hook into the process of connecting to a printer, prevent that from going through or triggering actions based on it in a synchronous fashion.
  • The bundled PiSupport Plugin has been extracted into its own project to be able to have it on a different release cycle than OctoPrint proper. It is still considered a bundled plugin by OctoPrint.
  • Several bugs have been fixed, e.g. the config CLI has been fixed so that octoprint config set plugins.softwareupdate.credentials.github <PAT> for setting the GitHub PAT for the updater’s rate limiting workaround actually works, the expected page reload on the login dialog no longer triggers a scary “server offline” message, running OctoPrint on Python 3.10 should no longer throw an endless stream of errors, and much much more.

Please also take a look at the following heads-ups:

Heads-up for plugin authors: Support for the plugin control properties `__plugin_init__` and `__plugin_implementations__` (plural!) has been removed

The two plugin control properties __plugin_init__ and __plugin_implementations__ (note the plural!) have been deprecated ever since OctoPrint 1.2.0 and have finally been removed. It is highly unlikely that your plugin has ever used them given that they were already marked as deprecated for the very first version of OctoPrint to ever even support plugins. Still, just in the case of anyone out there making use of them regardless, here’s a heads-up that they will no longer be utilized in OctoPrint 1.6+.

You can find the full changelog and release notes as usual on Github.

Special thanks to everyone who contributed to this release candidate and provided full, analyzable bug reports, you help making the next release as stable as possible! And a big Thank You to @costa-bastekis, @cp2004, @drifkind, @eumiro, @eyal0, @j7126, @jasonbcox, @jneilliii, @kantlivelong, @LazeMSS, @martellaj, @Master92, @MichaIng, @shadycuz, @Sophist-UK, @thinkyhead and @tirkarthi for their PRs!

As the past RCs have shown me that a lot of people appear to be unaware of this: Please do not install this RC if you expect a fully stable version. It is not a stable release, it is a release candidate: severe bugs may occur, and they might be bad enough that they make a manual downgrade to an earlier version necessary - maybe even from the command line.

You should feel comfortable with and capable of possibly having to do this before installing an RC.

If you want to and can help test this release candidate, you can find information on how to switch to the "Maintenance RCs" release channel in this guide if not already done (also linked below).

Please provide feedback on this RC. For general feedback you can use this ticket on the tracker. The information that everything works fine for you is also valuable feedback 😄. For bug reports please follow How to file a bug report - I need logs and reproduction steps to fix issues, not just the information that something doesn't work so make sure to fill out all fields of the issue template.

Thanks!

Depending on the feedback regarding this version I'll look into fixing any observed regressions and bugs and pushing out a follow-up version as soon as possible and necessary.

Images

Bulk download of log files
Bulk download of log timelapses
Better UX for the Plugin Manager
Better UX for the Software Update plugin
Upload conflict handling - cancel, rename or overwrite.
Download SystemInfo Bundles right from the System Info panel, but also the recovery dialog and the CLI
Bundleviewer at bundleviewer.octoprint.org for viewing SystemInfo Bundles

Discuss!