OctoPrint 2.0.0rc3

2.0.0rc3Pre-release
Added 5
  • Add the used printer connector to various printer related events
  • Add support for hiding non-stock marks on the temperature graph
  • Add Printing chart marker showing start of actual job processing after initial preheating and leveling
  • Add more filter options to the plugin repository browser to filter out commercial or AI developed plugins
  • Add display of the ai-developed attribute in the plugin repository
Changed 1
  • Update gcode-thumbnail-tool to fix extraction of thumbnails generated by Creality Print 7.x
Fixed 6
  • Fix Hide successfully printed files option in the file list breaking its processing due to JS errors inside the filter
  • Fix /api/job throwing an error in case of a non-int progress
  • Fix crash in Printer.get_current_temperatures when printer connector doesn't support temperature offsets
  • Fix download filenames containing a comma
  • Fix stopping and starting of analysis queue
  • Fix versioning without available tags
Security 2
  • Fix XSS in Suppressed Command Notifications allowing injection of arbitrary HTML and JavaScript into notifications
  • Fix file exfiltration vulnerability via parameter injection on upload endpoints
⚠️ Important note on release candidates

This is a Release Candidate of OctoPrint. It is not a stable release: severe bugs can occur, and they can be bad enough that they make a manual downgrade to an earlier version necessary - maybe even from the command line.

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

🔁 Feedback on this RC

Please provide general feedback on this RC in this ticket. An "All is working fine" is valuable feedback as well because it tells me people are actually testing this RC and just not finding problems with it.

If you run into any obvious bugs, 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.

Thanks!

Things to take a closer look at

For this RC, these things should get a closer look while testing, if possible:

  1. proper behaviour when using the included web interface as well as any third party clients at your disposal
  2. printing via a serial connection
  3. managing files on your printer's storage via a serial connection
  4. blocklisted serial ports and/or baud rates are properly migrated to the serial connector (one per line, not comma-separated)
  5. if your printer's disconnected state happens to be "after error", please report back on which connector you used and what the reported error is
  6. if you have a Klipper/Moonraker based printer available: can you use it through OctoPrint when you install the Moonraker Connector?
  7. if you have a Bambu based printer available: can you use it through OctoPrint when you install the Bambu Connector?
✋ Heads-ups

The heads-ups from 2.0.0rc1 still apply!

🔒 Security fixes
  • XSS in Suppressed Command Notifications, severity Moderate (4.6): OctoPrint versions up to and including 1.11.7 as well as 2.0.0rc1 and 2.0.0rc2 are affected by a vulnerability that allows injection of arbitrary HTML and JavaScript into Suppressed Command notifications popups generated by the printer.

    An attacker who successfully convinces a victim to print a specially crafted file could exploit this issue to disrupt ongoing prints, extract information (including sensitive configuration settings, if the targeted user has the necessary permissions for that), or perform other actions on behalf of the targeted user within the OctoPrint instance.

    See also the GitHub Security Advisory and CVE-2026-35163.

  • File exfiltration possible via further parameter injection on upload endpoints, severity High (7.0): OctoPrint versions up until and including 1.11.7 as well as 2.0.0rc1 and 2.0.0rc2 contain a vulnerability that allows an attacker with the FILE_UPLOAD permission to exfiltrate files from the host that OctoPrint has read access to, by moving them into the upload folder where they then can be downloaded from. This vulnerability was already reported as GHSA-m9jh-jf9h-x3h2/CVE-2025-48067 but the fix provided in OctoPrint 1.11.2 turned out to be incomplete.

    The primary risk lies in the potential exfiltration of secrets stored inside OctoPrint's config, or further system files. By removing important runtime files, this could also be used to impact the availability of the host after an attempted server restart. Given that the attacker requires a user account with file upload permissions, the actual impact of this should however hopefully be minimal in most cases.

    See also the GitHub Security Advisory and CVE-2026-54134.

✨ Improvements
Core
  • Added the used printer connector to various printer related events.
Core UI
  • Add support for hiding non-stock marks on the temperature graph.
  • Add "Printing" chart marker: shows start of actual job processing after initial preheating, leveling, etc.
Plugin Manager
  • Add more filter options to the plugin repository browser: It's now possible to filter out any plugins marked as commercial or AI developed.
  • Add display of the ai-developed attribute added on the plugin repository.
🐛 Bug fixes
Core
  • #5404 (regression): Fix "Hide successfully printed files" option in the file list breaking its processing due to JS errors inside the filter.
  • #5419 (regression): Fix /api/job throwing an error in case of a non-int progress.
  • #5421 (regression): Fix crash in Printer.get_current_temperatures when printer connector doesn't support temperature offsets.
  • PR#5422 (regression): Fix download filenames containing a ,
  • (regression) Fix stopping and starting of analysis queue.
  • Update gcode-thumbnail-tool to fix extraction of thumbnails generated by Creality Print 7.x
  • Fix versioning without available tags.
Core UI
  • Ensure temperature graph marks don't wrap.
Gcode Viewer Plugin
  • #5408 (regression): Fix syncing with job progress.
Serial Connector Plugin
  • #5420: Fix thread leak when connecting to a serial port that doesn't respond to the handshake attempts.
🎉 Special thanks to all the contributors!

Special thanks to everyone who contributed to this RC and provided full, analyzable bug reports, especially @jacopotediosi for his PRs!

Also a big thank you to @jacopotediosi and @seankohjs for responsibly disclosing the security vulnerabilities fixed in this release.

🔗 More information
View original

Upgraded? How did it go?

Discussion