13 Commits

Author SHA1 Message Date
jdegenstein
c632ec2ff4 Update pyinstaller-builds-actions-PIP-TAR.yml 2025-11-19 11:24:50 -06:00
jdegenstein
d67472fb3c Update setup.py 2025-02-20 15:48:25 -06:00
jdegenstein
10cd914498 Update pyinstaller_pip.spec -> fix missing js file from build123d 2025-02-20 15:47:30 -06:00
jdegenstein
6d0ae2564c setup.py -> pin scipy==1.15.1 2025-02-18 09:34:15 -06:00
jdegenstein
3bbe2ea762 Update pyinstaller_pip.spec -> py311 to py312 2025-02-18 09:03:14 -06:00
jdegenstein
5a5f96d3e9 Update environment.yml 2025-02-18 08:48:31 -06:00
jdegenstein
7161462aa5 Update cqgui_env.yml 2025-02-18 08:48:21 -06:00
jdegenstein
41ee6be4e5 pyinstaller-builds-actions-PIP-TAR.yml -> add some missing deps 2025-02-18 08:47:42 -06:00
jdegenstein
9e027d908e Update pyinstaller-builds-actions-PIP-TAR.yml 2025-01-30 21:40:47 -06:00
jdegenstein
58cefa05b0 pyinstaller-builds-actions-PIP-TAR.yml -> ssl investigation for arm64 mac 2025-01-30 21:24:27 -06:00
jdegenstein
c592c9cccf Update pyinstaller_pip.spec 2025-01-30 21:20:27 -06:00
jdegenstein
f9e32b156a updates to work on python 3.13 2025-01-29 16:03:21 -06:00
jdegenstein
70b823ae5d cq_utils.py -> comment out nonexistent reload(cq.occ_impl.exporters.utils) 2025-01-12 15:36:25 -06:00
6 changed files with 28 additions and 18 deletions

View File

@@ -29,7 +29,7 @@ jobs:
micromamba info micromamba info
pip install pyopengl pip install pyopengl
pip install git+https://github.com/jdegenstein/jmwright-CQ-Editor pip install git+https://github.com/jdegenstein/jmwright-CQ-Editor
pip install -vvv --pre git+https://github.com/cadquery/cadquery casadi pip install -vvv --pre git+https://github.com/cadquery/cadquery casadi typish "multimethod>=1.11,<2.0" "nlopt>=2.9.0,<3.0" typish
pip install pyinstaller>=5.6 pip install pyinstaller>=5.6
pip install path pip install path
pip install jupyter-rfb pip install jupyter-rfb
@@ -55,7 +55,7 @@ jobs:
name: CQ-editor-Linux-x86_64 name: CQ-editor-Linux-x86_64
path: dist path: dist
build-macos-x86_64: build-macos-x86_64:
runs-on: macos-13 runs-on: macos-15-intel
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- uses: mamba-org/setup-micromamba@v1 - uses: mamba-org/setup-micromamba@v1
@@ -69,7 +69,7 @@ jobs:
run: | run: |
micromamba info micromamba info
pip install git+https://github.com/jdegenstein/jmwright-CQ-Editor pip install git+https://github.com/jdegenstein/jmwright-CQ-Editor
pip install --pre git+https://github.com/cadquery/cadquery casadi pip install -vvv --pre git+https://github.com/cadquery/cadquery casadi typish "multimethod>=1.11,<2.0" "nlopt>=2.9.0,<3.0" typish
pip install pyinstaller>=5.6 pip install pyinstaller>=5.6
pip install path pip install path
pip uninstall -y PyQt5 pip uninstall -y PyQt5
@@ -107,10 +107,11 @@ jobs:
shell: bash --login {0} shell: bash --login {0}
run: | run: |
micromamba info micromamba info
brew update
brew upgrade
brew install openssl
pip install git+https://github.com/jdegenstein/jmwright-CQ-Editor pip install git+https://github.com/jdegenstein/jmwright-CQ-Editor
pip install https://github.com/CadQuery/ocp-build-system/releases/download/7.7.2.0/cadquery_ocp-7.7.2-cp311-cp311-macosx_11_0_arm64.whl pip install -vvv --pre git+https://github.com/cadquery/cadquery casadi typish "multimethod>=1.11,<2.0" "nlopt>=2.9.0,<3.0" typish
pip install https://github.com/jdegenstein/nlopt-python/releases/download/2.7.1.3/nlopt-2.7.1-cp311-cp311-macosx_11_0_arm64.whl
pip install --pre git+https://github.com/cadquery/cadquery casadi
pip install pyinstaller>=5.6 pip install pyinstaller>=5.6
pip install path pip install path
pip uninstall -y PyQt5 pip uninstall -y PyQt5
@@ -128,6 +129,9 @@ jobs:
run: | run: |
micromamba activate test micromamba activate test
micromamba info micromamba info
echo $LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/home/runner/micromamba/envs/test/lib
echo $LD_LIBRARY_PATH
pyinstaller pyinstaller_pip.spec ${{ github.event.inputs.type }} pyinstaller pyinstaller_pip.spec ${{ github.event.inputs.type }}
cp /Users/runner/work/jmwright-CQ-Editor/jmwright-CQ-Editor/pyinstaller/CQ-editor-mac.sh /Users/runner/work/jmwright-CQ-Editor/jmwright-CQ-Editor/dist/CQ-editor.sh cp /Users/runner/work/jmwright-CQ-Editor/jmwright-CQ-Editor/pyinstaller/CQ-editor-mac.sh /Users/runner/work/jmwright-CQ-Editor/jmwright-CQ-Editor/dist/CQ-editor.sh
- uses: actions/upload-artifact@v4 - uses: actions/upload-artifact@v4
@@ -149,7 +153,7 @@ jobs:
run: | run: |
micromamba info micromamba info
pip install git+https://github.com/jdegenstein/jmwright-CQ-Editor pip install git+https://github.com/jdegenstein/jmwright-CQ-Editor
pip install --pre git+https://github.com/cadquery/cadquery casadi pip install -vvv --pre git+https://github.com/cadquery/cadquery casadi typish "multimethod>=1.11,<2.0" "nlopt>=2.9.0,<3.0" typish
pip install pyinstaller>=5.6 pip install pyinstaller>=5.6
pip install path pip install path
pip install git+https://github.com/gumyr/cq_warehouse.git#egg=cq_warehouse pip install git+https://github.com/gumyr/cq_warehouse.git#egg=cq_warehouse

View File

@@ -2,7 +2,7 @@ import cadquery as cq
from cadquery.occ_impl.assembly import toCAF from cadquery.occ_impl.assembly import toCAF
from typing import List, Union from typing import List, Union
from imp import reload from importlib import reload
from types import SimpleNamespace from types import SimpleNamespace
from OCP.XCAFPrs import XCAFPrs_AISObject from OCP.XCAFPrs import XCAFPrs_AISObject
@@ -31,7 +31,7 @@ def find_cq_objects(results: dict):
def to_compound( def to_compound(
obj: Union[cq.Workplane, List[cq.Workplane], cq.Shape, List[cq.Shape], cq.Sketch] obj: Union[cq.Workplane, List[cq.Workplane], cq.Shape, List[cq.Shape], cq.Sketch],
): ):
vals = [] vals = []
@@ -213,7 +213,7 @@ def reload_cq():
reload(cq.sketch) reload(cq.sketch)
reload(cq.occ_impl.exporters.svg) reload(cq.occ_impl.exporters.svg)
reload(cq.cq) reload(cq.cq)
reload(cq.occ_impl.exporters.utils) # reload(cq.occ_impl.exporters.utils)
reload(cq.occ_impl.exporters.dxf) reload(cq.occ_impl.exporters.dxf)
reload(cq.occ_impl.exporters.amf) reload(cq.occ_impl.exporters.amf)
reload(cq.occ_impl.exporters.json) reload(cq.occ_impl.exporters.json)

View File

@@ -5,7 +5,7 @@ channels:
dependencies: dependencies:
- pyqt=5 - pyqt=5
- pyqtgraph - pyqtgraph
- python=3.11 - python=3.12
- spyder=5 - spyder=5
- path - path
- logbook - logbook

View File

@@ -3,4 +3,4 @@ channels:
- conda-forge - conda-forge
- defaults - defaults
dependencies: dependencies:
- python=3.11 - python=3.12

View File

@@ -10,17 +10,18 @@ spyder_data = Path(site.getsitepackages()[-1]) / 'spyder'
parso_grammar = (Path(site.getsitepackages()[-1]) / 'parso/python').glob('grammar*') parso_grammar = (Path(site.getsitepackages()[-1]) / 'parso/python').glob('grammar*')
cqw_path = Path(site.getsitepackages()[-1]) / 'cq_warehouse' cqw_path = Path(site.getsitepackages()[-1]) / 'cq_warehouse'
bdw_path = Path(site.getsitepackages()[-1]) / 'bd_warehouse' bdw_path = Path(site.getsitepackages()[-1]) / 'bd_warehouse'
b123d_path = Path(site.getsitepackages()[-1]) / 'build123d'
cq_path = Path(site.getsitepackages()[-1]) / 'cadquery' cq_path = Path(site.getsitepackages()[-1]) / 'cadquery'
if sys.platform == 'linux': if sys.platform == 'linux':
occt_dir = os.path.join(Path(sys.prefix), 'share', 'opencascade') occt_dir = os.path.join(Path(sys.prefix), 'share', 'opencascade')
ocp_path = [(os.path.join(HOMEPATH, 'OCP.cpython-311-x86_64-linux-gnu.so'), '.')] ocp_path = [(os.path.join(HOMEPATH, 'OCP', 'OCP.cpython-312-x86_64-linux-gnu.so'), '.')]
elif sys.platform == 'darwin': elif sys.platform == 'darwin':
occt_dir = os.path.join(Path(sys.prefix), 'share', 'opencascade') occt_dir = os.path.join(Path(sys.prefix), 'share', 'opencascade')
ocp_path = [(os.path.join(HOMEPATH, 'OCP.cpython-311-darwin.so'), '.')] ocp_path = [(os.path.join(HOMEPATH, 'OCP', 'OCP.cpython-312-darwin.so'), '.')]
elif sys.platform == 'win32': elif sys.platform == 'win32':
occt_dir = os.path.join(Path(sys.prefix), 'Library', 'share', 'opencascade') occt_dir = os.path.join(Path(sys.prefix), 'Library', 'share', 'opencascade')
ocp_path = [(os.path.join(HOMEPATH, 'OCP.cp311-win_amd64.pyd'), '.')] ocp_path = [(os.path.join(HOMEPATH, 'OCP', 'OCP.cp312-win_amd64.pyd'), '.')]
datas1, binaries1, hiddenimports1 = collect_all('debugpy') datas1, binaries1, hiddenimports1 = collect_all('debugpy')
hiddenimports2 = collect_submodules('xmlrpc') hiddenimports2 = collect_submodules('xmlrpc')
@@ -31,6 +32,7 @@ a = Analysis(['run.py'],
datas=[(spyder_data, 'spyder'), datas=[(spyder_data, 'spyder'),
(cqw_path, 'cq_warehouse'), (cqw_path, 'cq_warehouse'),
(bdw_path, 'bd_warehouse'), (bdw_path, 'bd_warehouse'),
(b123d_path, 'build123d'),
(cq_path, 'cadquery')] + (cq_path, 'cadquery')] +
[(p, 'parso/python') for p in parso_grammar] + datas1, [(p, 'parso/python') for p in parso_grammar] + datas1,
hiddenimports=['ipykernel.datapub', 'debugpy', 'vtkmodules', 'vtkmodules.all', hiddenimports=['ipykernel.datapub', 'debugpy', 'vtkmodules', 'vtkmodules.all',

View File

@@ -3,19 +3,22 @@ import os.path
from setuptools import setup, find_packages from setuptools import setup, find_packages
def read(rel_path): def read(rel_path):
here = os.path.abspath(os.path.dirname(__file__)) here = os.path.abspath(os.path.dirname(__file__))
with codecs.open(os.path.join(here, rel_path), 'r') as fp: with codecs.open(os.path.join(here, rel_path), "r") as fp:
return fp.read() return fp.read()
def get_version(rel_path): def get_version(rel_path):
for line in read(rel_path).splitlines(): for line in read(rel_path).splitlines():
if line.startswith('__version__'): if line.startswith("__version__"):
delim = '"' if '"' in line else "'" delim = '"' if '"' in line else "'"
return line.split(delim)[1] return line.split(delim)[1]
else: else:
raise RuntimeError("Unable to find version string.") raise RuntimeError("Unable to find version string.")
setup( setup(
name="CQ-editor", name="CQ-editor",
version=get_version("cq_editor/_version.py"), version=get_version("cq_editor/_version.py"),
@@ -26,7 +29,7 @@ setup(
"CQ-editor = cq_editor.__main__:main", "CQ-editor = cq_editor.__main__:main",
] ]
}, },
python_requires=">=3.10,<3.13", python_requires=">=3.10,<3.14",
install_requires=[ install_requires=[
"logbook>=1", "logbook>=1",
"ipython", "ipython",
@@ -36,5 +39,6 @@ setup(
"spyder>=5,<6", "spyder>=5,<6",
"pyqtgraph", "pyqtgraph",
"numpy >= 2, <3", "numpy >= 2, <3",
"scipy==1.14.1", # workaround for renamed stuff in scipy optimize
], ],
) )