I have got FreeCAD.019.alpha2, Spyder 4.1.1 and Jupyter Notebook running in a Python 3.8.2 environment, created as,
conda create -n FC19over38 freecad=0.19.alpha2 python=3.8 spyder jupyter notebook
The Tornado fix needs to be applied to Spyder afterwards to run it on 3.8:
https://stackoverflow.com/questions/585 ... python-3-8
go into
jupyter_core\paths.py and add
import pywintypes
just above the line
import win32api
and go into
tornado\asyncio.py
and add
import sys
if sys.platform='win32':
asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())
after all the imports there.
I can then put up the following from Bayesian, either from a jupyter notebook or from the IPython prompt:
%gui qt5
import sys, os
os.environ["QT_API"]="pyside"
prefix = os.environ['CONDA_PREFIX']
sys.path.append(prefix+"\\Library\\bin")
import FreeCAD
import FreeCADGui
FreeCADGui.showMainWindow()
and FreeCAD 0.19.alpha2 boots. I get two problems:
1) Whether or not I boot FreeCAD this way there is an error about failing to load a .SVG file.
2) I get messages in the Report box about an incompatibility between IPython's load of QT5 and pyside, and PyQt5 which Bayesian says is a known issue for the Conda builds over Python 3.7.
My last piece is to try to boot the spyder-kernels core from FreeCAD as per the instructions for using Spyder to remote debug. I have tried importing them, they do so without complaint in the FreeCAD python console, but I haven't tried to make them perform yet, I need to experiment with the process on some toy code first to make sure when it doesn't work it isn't me doing it wrong.
Thank you all (
Looo,
sgrogan,
Bayesian, also
CCordoba on Spyder) for your various posts around. If this post needs to be re-directed, please do so, I am actually focused on trying to get Spyder debugging going under FreeCAD. I have had idiosyncratic problems with several workbenches and would benefit from seeing what is going wrong in a debugger, even though I don't believe those WBs have real bugs. E.g. I needed to plot a smooth as possible involute of the circle, I did so using ParametricCurves, but then couldn't sweep with it, it turned out that the black color and inability to sweep was because it had so many nodes in it that I couldn't actually select the wire. That kind of stuff, but it took me 2 days to figure it out.