OctoPrint / OctoPrint/OctoPrint
[Request]: Not locking current printfile or using a copy
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 9.1k
- Forks
- 1.7k
- Avg merge
- 2d 5h
- Merged PRs (30d)
- 4
Description
I'm always frustrated when I need to restart a print, which has been resliced or changed gcode wise.
In that case I need to abort, set temperature, upload the new gcode and print. Or to avoid longer printer heating idle I need to pause, upload the file with a new name, while the print is paused and then perform then abort, print.
If the current print job would not lock the gcode file and e.g. using a temporary copy of the file it would be possible to pause the print, upload the file using the same name and simply push restart.
Even nicer would be if OctoPrint could detect the current printing gcode file is about to be overwritten due upload and put up some kind a requester "Do you really want to terminate the current print? [upload & restart] [upload & keep temp] [upload and continue printing old file]".
Not sure what the best way would be. In many of my use cases something like that is handy and I think other people have the same kind of workflow.
Currently overwriting just spills a completely wrong error, which indicates the file to be uploaded is broken, which a user may beleave and only a software developer knows the real reason about (file lock due actual usage).
Some examples, when I run into the situation I subscribed above:
- you print and notice during the first layer you forgot a brim
- you print and notice you forgot an important hole in the design. I usually add the hole and keep the printer pausing, as it saves more electricity to run 10 minutes than cooling down and reheat everything.
- you print and forgot to add a filament change stop or some manual tweak to the gcode required for a successful print.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no files, tests, or entry points. Start by tracing how the current print file is uploaded, locked, overwritten, and read during a paused or active print; done requires an agreed behavior for replacing or retaining the file and a corrected user-facing error or prompt.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100