As an early christmas present 🎄 I’m happy to present you OctoPrint 1.3.10. This a maintenance release again, consisting of various improvements and fixes. It was made possible only through your continued support of my work 💕.

As you can see in the changelog it packs a ton of improvements and bug fixes which would be too many to list here, so let me just present you with some of the highlights:

  • The OctoPi Support Plugin is now the Pi Support Plugin, will be enabled when a Raspberry Pi is detected as the underlying hardware platform and report on undervoltage or overheating situations.
  • Added the Backup & Restore Plugin: The new bundled plugin will allow you to make a backup of your OctoPrint settings, files and list of installed plugins, and to restore from such a backup on the same or another instance. This should make migration paths from outdated installations to newer ones easier.
  • Added the Anonymous Usage Tracking Plugin. Tracking will only take place if the plugin is enabled and you’ve decided to opt-in during initial setup (or enabled it manually afterwards, through the corresponding switch in the settings). The tracking data will give insight into how OctoPrint is used, which versions are running and on what kind of hardware OctoPrint gets installed. You can learn about what will get tracked (if you opt-in) on tracking.octoprint.org. Please consider helping development by participating in the anonymous usage tracking 💕
  • Added the Application Keys Plugin: The new bundled plugin offers an authorization for third party apps that doesn’t involve manually copying API keys or using QR codes. Third party client developers are strongly advised to implement this workflow in their apps. Read more in the documentation. Thanks to Aldo Hoeben for the idea and initial implementation!
  • Automatic updates in outdated environments are no longer supported. After repeated issues out in the field with ancient installations and ancient underlying Python environments, OctoPrint’s Softwareupdate Plugin will no longer allow automatic updates of itself or any installed plugins via the Software Update Plugin if a certain set of minimum versions of Python, pip and setuptools isn’t detected. The current minimum versions reflect the environment found on OctoPi 0.14.0: Python 2.7.9, pip 9.0.1, setuptools 5.5.1. See also the related FAQ entry.
  • OctoPrint will now try to protect/educate more prominently against the dangers of opening up OctoPrint on the public internet via various new explicit warnings in the UI as well as a new notification that pops up if you log in from an external IP address. Thanks to the new bundled ForcedLogin Plugin OctoPrint will also no longer be accessible in a read-only way by anonymous guests - to get back the old behaviour, disable the plugin.
  • Added detection of EMERGENCY_PARSER firmware capability and if it’s present add M108 to the cancel procedure, to cancel blocking heatups.
  • Improved GCODE analysis speed
  • … and various further improvements and of course bug fixes.

There’s also a small heads-up for plugin authors:

OctoPrint has updated its sarge dependency. The new version 0.1.5 has a small breaking change - the async keyword was renamed to async_ for compatibility reasons with Python 3.7. This might also affect your plugin if you happen to use sarge somewhere therein. OctoPrint has a workaround for this in place so your plugin will continue to function for now. However, you should look into updating it to use async_ instead of async if running against OctoPrint 1.3.10+.

See also here for the sarge changelog.

The full list of changes can of course be found in the Changelog - as always.

Also see the Further Information and Links below for more information, where to find help and how to roll back.

I also want to thank everyone who contributed to this release, especially @BillyBlaze, @bradcfisher, @eyal0, @fieldOfView, @gdombiak, @gerfderp, @hashashin and @tedder for their PRs.

And last but not least another special Thank you! to everyone who reported back on the release candidates this time: @andrivet, @arminth, @autonumous, @benlye, @BillyBlaze, @bradcfisher, @Charly333, @ChrisHeerschap, @Crowlord, @ctgreybeard, @devildant, @dimkin-eu, @DominikPalo, @duncanlovett, @EddyMI3d, @FanDjango, @FormerLurker, @gdombiak, @GhostlyCrowd, @goeland86, @Goodeid, @hamster65, @hashashin, @jenilliii, @JohnOCFII, @kmanley57, @louispires, @markuskruse, @Nervemanna, @nionio6915, @ntoff, @paukstelis, @racenviper, @ramsesiden, @rtbon, @skohls, @stough, @tech-rat, @tedder, @ThaliaFromPrussia, @thisiskeithb, @trendelkamp, @truglodite, @tteckenburg, @varazir, @Webstas and @zeroflow

Further Information

It may take up to 24h for your update notification to pop up, so don’t be alarmed if it doesn’t show up immediately after reading this. You can force the update however via Settings > Software Update > Advanced options > Force check for update.

If you get an error about “no suitable distribution” during update, please read this.

If you have any problems with your OctoPrint installation, please seek support on the community forum.

Images

The new warning symbols of the Pi Support plugin when undervoltage and overheating are detected.
The new Backup & Restore Plugin.
An access request notification generated by the new Application Keys Plugin...
... and the new user settings dialog for management of all your Application Keys.
The new ForcedLogin makes sure anonymous users will no longer be able to watch your prints.

Discuss!