Problems with Julia QML and VSCode

First, I apologize for the 74 error lines, but since there are multiple objects involved and I don’t know where to upload the text file… sorry but there are many elements involved

I am trying to run some examples in GitHub - barche/QmlJuliaExamples: Examples for the QML.jl package. To do this I use vscode 100.3.
The example I am trying, but others behave the same way, is

tableview.jl

There are two behaviors:

  • Run file in new process: it works, but since it has to compile every time it is not good when writing a program.
  • Execute active file in REPL. DOES NOT WORK! The result frame and white background appears. Terminal erupts:
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:41:9: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:41, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:40:9: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:40, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:41:9: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:41, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:40:9: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:40, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:41:9: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:41, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:40:9: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:40, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814112: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814112, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814112: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814112, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814080: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814080, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814112: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814112, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814096: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814096, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814096: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814096, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814096: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814096, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814096: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814096, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814096: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814096, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814112: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814112, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814112: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814112, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814080: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814080, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814112: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814112, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814096: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814096, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814096: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814096, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814096: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/Button.qml:1694814096, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064, (null))
> Qt Warning: qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064: RangeError: Maximum call stack size exceeded. (qrc:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/ButtonPanel.qml:1694814064, (null))

Just use a normal terminal, running the Julia REPL while developing QML code. You can start it with “View->Terminal” from VSCode, and then launch Julia from the terminal with “julia --project”, or whatever parameters you prefer.
I have defined an alias in my .bashrc file like alias jl='julia --project'.
I prefer to use Bash, but it also works with PowerShell or Command Prompt, only the way to define a shortcut (alias) differs.

This is a known issue: Programs don't launch from within the VSCode REPL · Issue #217 · JuliaGraphics/QML.jl · GitHub , even though I do not know if it is an issue with QML or the VSCode plugin.

To run the example, use the include("tableview.jl") command.

Using Revise.jl would probably also be helpful:

I don’t think that Revise helps in running examples. It helps if you develop packages, but that was not the topic of this question.

I will survive with this. :slightly_smiling_face: