Cura icon indicating copy to clipboard operation
Cura copied to clipboard

Cura 5 won't open files

Open VK1IAN opened this issue 2 years ago • 63 comments

Application Version

5.0.0

Platform

Ubuntu 20.04

Printer

Cocoon Create

Reproduction steps

  1. Cura opens fine. I can change print settings and work my way through the menus. I can also configure Cura (Preferences->Configure Cura).
  2. When I click the folder at top left (to open a file), nothing happens.
  3. If I try it via File->Open File(s), nothing happens.
  4. I can drag a STL onto the print bed, set up the parameters and slice, but then I can't save the resulting gcode to disk.
  5. "Save to removable media" does work.

Actual results

"Open File(s)" dialog box doesn't appear. After I've dragged a STL onto the print bed and sliced, nothing happens when I click "Save to Disk" (i.e "save to disk" dialog box does not appear).

Expected results

File dialog box should appear to allow me to open files or select the destination for a gcode file.

Checklist of files to include

  • [X] Log file
  • [ ] Project file

Additional information & file uploads

cura.log

VK1IAN avatar May 19 '22 22:05 VK1IAN

Hi, @VK1IAN any chance you are using Debian 11?

Vandresc avatar May 30 '22 10:05 Vandresc

Hi, @VK1IAN any chance you are using Debian 11?

Ubuntu 20.04 (in a VirtualBox VM)

VK1IAN avatar May 30 '22 21:05 VK1IAN

Devs see CURA-9348 for our internal reference.

Vandresc avatar May 31 '22 09:05 Vandresc

The same thing happens for me. I'm using arch linux with AppImage

akshimassar avatar Jun 03 '22 11:06 akshimassar

That seems to be problem with opening "open" dialog. I successfully opened file from Open Recent menu.

akshimassar avatar Jun 03 '22 11:06 akshimassar

PyInstaller/loader/pyimod03_importers.py:495: DeprecationWarning: the imp module is deprecated in favour of importlib and slated for removal in Python 3.12; see the module's documentation for alternative uses
Cyclic dependency detected between "file:///tmp/.mount_cura5RySS4x/share/cura/resources/qml/Actions.qml" and "file:///tmp/.mount_cura5RySS4x/share/cura/resources/qml/Actions.qml"
QQmlEngine::setContextForObject(): Object already has a QQmlContext

akshimassar avatar Jun 03 '22 11:06 akshimassar

Corresponding action ( I guess) from Actions.qml

    Action
    {
        id: openAction
        property var fileProviderModel: CuraApplication.getFileProviderModel()

        text: catalog.i18nc("@action:inmenu menubar:file","&Open File(s)...")
        icon.name: "document-open"
        // Unassign the shortcut when there are more than one file providers, since then the file provider's shortcut is
        // enabled instead, and Ctrl+O is assigned to the local file provider
        shortcut: fileProviderModel.count == 1 ? StandardKey.Open : ""
    }

Is there anything I can do to help debugging?

akshimassar avatar Jun 03 '22 11:06 akshimassar

Save project file dialog won't open as well.

akshimassar avatar Jun 03 '22 11:06 akshimassar

This issue needs severity critical.

lf94 avatar Jun 03 '22 16:06 lf94

Same problem on fedora 36. Running in a terminal shows this stuff: PyInstaller/loader/pyimod03_importers.py:495: DeprecationWarning: the imp module is deprecated in favour of importlib and slated for removal in Python 3.12; see the module's documentation for alternative uses Cyclic dependency detected between "file:///tmp/.mount_UltimaVg8T4R/share/cura/resources/qml/Actions.qml" and "file:///tmp/.mount_UltimaVg8T4R/share/cura/resources/qml/Actions.qml" QQmlEngine::setContextForObject(): Object already has a QQmlContext qt.qml.context: file:///tmp/.mount_UltimaVg8T4R/share/cura/resources/qml/Settings/SettingView.qml:427:16 Parameter "index" is not declared. Injection of parameters into signal handlers is deprecated. Use JavaScript functions with formal parameters instead.

Claghorn avatar Jun 05 '22 21:06 Claghorn

Is there any workaroud for that issue? I would like to use cura 5 but for now I can't

akshimassar avatar Jun 06 '22 18:06 akshimassar

You can drag a file onto cura to open it

On Mon, Jun 6, 2022, at 12:54 PM, Alexander wrote:

Is there any workaroud for that issue? I would like to use cura 5 but for now I can't

— Reply to this email directly, view it on GitHub https://github.com/Ultimaker/Cura/issues/12266#issuecomment-1147779472, or unsubscribe https://github.com/notifications/unsubscribe-auth/AADSRCBB5VTLUYLAUIRSHXDVNZCODANCNFSM5WNVOSNA. You are receiving this because you are subscribed to this thread.Message ID: @.***>

minego avatar Jun 06 '22 18:06 minego

What about saving resulting g-code? None of the system dialogs of this kind work.

You can drag a file onto cura to open it

akshimassar avatar Jun 06 '22 19:06 akshimassar

I use octoprint so I haven't needed to save it

On Mon, Jun 6, 2022, at 1:58 PM, Alexander wrote:

What about saving resulting g-code? None of the system dialogs of this kind work.

You can drag a file onto cura to open it

— Reply to this email directly, view it on GitHub https://github.com/Ultimaker/Cura/issues/12266#issuecomment-1147855912, or unsubscribe https://github.com/notifications/unsubscribe-auth/AADSRCB47EVCEHHONN5FTSTVNZJ6BANCNFSM5WNVOSNA. You are receiving this because you are subscribed to this thread.Message ID: @.***>

minego avatar Jun 06 '22 20:06 minego

Here is the error from corresponding cura.log file

2022-06-06 23:19:03,545 - WARNING - [MainThread] UM.Qt.QtApplication.__onQmlWarning [431]: file:///home/akshi/appimage/squashfs-root/share/cura/resources/qml/Cura.qml:629:5: QML FileDialog: Failed to load non-native FileDialog implementation:
qrc:/qt-project.org/imports/QtQuick/Dialogs/quickimpl/qml/FileDialog.qml:37 module "Qt.labs.folderlistmodel" is not installed

akshimassar avatar Jun 06 '22 20:06 akshimassar

I've tried installing following packages python-pyqt5 qt5-declarative qt5-quickcontrols (to provide folderlist module) and the error from log is gone but open / save dialogs are still not working.

akshimassar avatar Jun 06 '22 20:06 akshimassar

What about saving resulting g-code?

save it to removable and then move it wherever you want. Annoying I know, hope they fix it soon. This is the reason why I'm still on 4.13.1 where I get like 8 error messages telling me the plugins fail

alexban01 avatar Jun 06 '22 20:06 alexban01

In windows 10 about the same problem, only writes an opening error In general, I noticed that if the file is saved in binary format, then it opens, if left in ACSII, then the cura 5 refuses to open it

2022-06-07 12:48:03,397 - INFO - [MainThread] cura.CuraApplication.readLocalFile [1751]: Attempting to read file file:///G:/Desktop/Кольцо.STL 2022-06-07 12:48:03,399 - INFO - [JobQueueWorker [7]] STLReader.STLReader.load_file [61]: Using legacy code to load STL data. 2022-06-07 12:48:03,400 - DEBUG - [JobQueueWorker [7]] STLReader.STLReader._read [102]: File did not contain valid data, unable to read. 2022-06-07 12:48:03,400 - ERROR - [JobQueueWorker [7]] UM.FileHandler.ReadFileJob.run [80]: Exception: Exception occurred while loading file G:/Desktop/Кольцо.STL 2022-06-07 12:48:03,401 - ERROR - [JobQueueWorker [7]] UM.FileHandler.ReadFileJob.run [80]: Traceback (most recent call last): 2022-06-07 12:48:03,401 - ERROR - [JobQueueWorker [7]] UM.FileHandler.ReadFileJob.run [80]: File "UM\FileHandler\ReadFileJob.py", line 78, in run 2022-06-07 12:48:03,401 - ERROR - [JobQueueWorker [7]] UM.FileHandler.ReadFileJob.run [80]: self.setResult(self._handler.readerRead(reader, self._filename)) 2022-06-07 12:48:03,402 - ERROR - [JobQueueWorker [7]] UM.FileHandler.ReadFileJob.run [80]: File "UM\Mesh\MeshFileHandler.py", line 36, in readerRead 2022-06-07 12:48:03,402 - ERROR - [JobQueueWorker [7]] UM.FileHandler.ReadFileJob.run [80]: results = reader.read(file_name) 2022-06-07 12:48:03,402 - ERROR - [JobQueueWorker [7]] UM.FileHandler.ReadFileJob.run [80]: File "UM\Mesh\MeshReader.py", line 36, in read 2022-06-07 12:48:03,402 - ERROR - [JobQueueWorker [7]] UM.FileHandler.ReadFileJob.run [80]: if mesh.source_mime_type is None: 2022-06-07 12:48:03,403 - ERROR - [JobQueueWorker [7]] UM.FileHandler.ReadFileJob.run [80]: AttributeError: 'NoneType' object has no attribute 'source_mime_type' 2022-06-07 12:48:03,403 - DEBUG - [JobQueueWorker [7]] UM.FileHandler.ReadFileJob.run [83]: Loading file took 0.0 seconds 2022-06-07 12:48:03,412 - DEBUG - [MainThread] UM.Operations.OperationStack.push [72]: GroupedOp.(#=0), took 0ms

Goodfeat avatar Jun 07 '22 02:06 Goodfeat

I've tried installing following packages python-pyqt5 qt5-declarative qt5-quickcontrols (to provide folderlist module) and the error from log is gone but open / save dialogs are still not working.

That won't work or matter. Cura 5.0.0 uses qt6, not qt5.

nallath avatar Jun 07 '22 09:06 nallath

Sorry for bothering, but how can we get updated version? I can only see 5.0.0 available at the main page Sorry, I wrongly assumed that this bug is closed, however it was a linked one.

akshimassar avatar Jun 07 '22 11:06 akshimassar

Sorry for bothering, but how can we get updated version? I can only see 5.0.0 available at the main page

Updated version? Of what? Cura 5.0.0 is the latest version that we released.

nallath avatar Jun 07 '22 14:06 nallath

At least I found a handy command line program on github named "dragon" which allows me to feed it a filename on the command line then drag that file into cura. About 10,000 times faster than bringing up an annoying GUI file manager and agonizingly navigating to the directory containing the file I want to drag. It does look like I can print directly to octoprint after slicing, so except when I want to edit gcode, I can probably use 5.0 now. Looks like I could download the gcode from octoprint, edit it, then re-upload as a round about way to do that as well.

Claghorn avatar Jun 07 '22 14:06 Claghorn

Link? That sounds useful.

On 6/7/22 08:55, Claghorn wrote:

At least I found a handy command line program on github named "dragon" which allows me to feed it a filename on the command line then drag that file into cura. About 10,000 times faster than bringing up an annoying GUI file manager and agonizingly navigating to the directory containing the file I want to drag. It does look like I can print directly to octoprint after slicing, so except when I want to edit gcode, I can probably use 5.0 now. Looks like I could download the gcode from octoprint, edit it, then re-upload as a round about way to do that as well.

— Reply to this email directly, view it on GitHub https://github.com/Ultimaker/Cura/issues/12266#issuecomment-1148787068, or unsubscribe https://github.com/notifications/unsubscribe-auth/AADSRCDJWXB4RAON6NZMGJDVN5PH7ANCNFSM5WNVOSNA. You are receiving this because you are subscribed to this thread.Message ID: @.***>

minego avatar Jun 07 '22 14:06 minego

dragon tool:

https://github.com/mwh/dragon/releases/tag/v1.2.0

Claghorn avatar Jun 07 '22 15:06 Claghorn

That won't work or matter. Cura 5.0.0 uses qt6, not qt5.

Is qt6 being statically linked? I didn't have qt6 installed, and installing all of it changed nothing.

rmsc avatar Jun 25 '22 12:06 rmsc

BTW, a simple workaround is opening the file from the command line:

$ cura yourfile.stl

rmsc avatar Jun 25 '22 12:06 rmsc

Qt6 is not statically linked, but the AppImage includes Qt6 (and all of the other dependencies) and uses that.

fieldOfView avatar Jun 26 '22 07:06 fieldOfView

Not opening the filedialog due to the folder list lib not being part of PyQt6-Qt6 was circumvented by us settings the QT_QPA_PLATFORMTHEME in the AppRun script.

https://github.com/Ultimaker/Cura/issues/11874#issuecomment-1109757093

This seems to have mixed results. For my personal Laptop with Manjaro KDE I finally got the system filedialogs, @Ghostkeeper and @nallath reported quicker opening of their dialogs, but other Linux systems seems to break with this.

@nallath maybe we should allow for an user defined argument to be passed along here. So at least people can set the value that works for them.

jellespijker avatar Jun 26 '22 15:06 jellespijker

Since you mentioned a line with xdgdesktoportal I was finally able to figure it out for myself. Installing xdg-desktop-portal (xdg-desktop-portal-gtk implementation for me) fixed the issue for me. I never used flatpak and thus xdg desktop portal was never part of my system. Note: I had to run dbus-update-activation-environment --systemd DBUS_SESSION_BUS_ADDRESS DISPLAY XAUTHORITY once after installing to prevent slow startup of applications and to make it work without restarting dbus.

I also tried some random values for QT_QPA_PLATFORMTHEME in AppRun file like gtk2, qt5ct and qt6ct but none worked for me except xdgdesktopportal. I'm using arch linux with awesome desktop manager.

akshimassar avatar Jun 29 '22 18:06 akshimassar

Works for me! Thank you! XUbuntu 20.04

ethanak avatar Jun 29 '22 19:06 ethanak