BLD: Install pyca from PyPI#1246
Conversation
…nd install it from PyPI during our testing workflows
…Only Windows doesn't have support for the other optional EPICS client packages now.
|
Interesting that the macos pyca installs are failing here, particularly since I was testing this locally on my mac... Details
(pyca)roberttk@PC100147:~$ pip install pyca-epics
...
Downloading pyca_epics-3.3.3-cp312-cp312-macosx_11_0_arm64.whl (698 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 698.7/698.7 kB 10.8 MB/s eta 0:00:00
Installing collected packages: pyca-epics
Successfully installed pyca-epics-3.3.3
(cd into my env...)
(pyca)roberttk@PC100147:~/miniconda3/envs/pyca/lib/python3.12/site-packages/epicscorelibs/lib$ ll
total 48696
drwxrwxr-x 31 roberttk 1704612529 992 May 9 10:11 .
drwxrwxr-x 20 roberttk 1704612529 640 May 9 10:11 ..
-rw-rw-r-- 1 roberttk 1704612529 342 May 9 10:11 Com_dsoinfo.py
-rw-rw-r-- 1 roberttk 1704612529 0 May 9 10:11 __init__.py
drwxrwxr-x 12 roberttk 1704612529 384 May 9 10:11 __pycache__
-rw-rw-r-- 1 roberttk 1704612529 362 May 9 10:11 ca_dsoinfo.py
-rw-rw-r-- 1 roberttk 1704612529 398 May 9 10:11 dbCore_dsoinfo.py
-rw-rw-r-- 1 roberttk 1704612529 432 May 9 10:11 dbRecStd_dsoinfo.py
-rwxrwxr-x 1 roberttk 1704612529 1013568 May 9 10:11 libCom.7.0.7.99.1.dylib
-rwxrwxr-x 1 roberttk 1704612529 1013568 May 9 10:11 libCom.dylib
-rwxrwxr-x 1 roberttk 1704612529 894976 May 9 10:11 libca.7.0.7.99.1.dylib
-rwxrwxr-x 1 roberttk 1704612529 894976 May 9 10:11 libca.dylib
-rwxrwxr-x 1 roberttk 1704612529 1271120 May 9 10:11 libdbCore.7.0.7.99.1.dylib
-rwxrwxr-x 1 roberttk 1704612529 1271120 May 9 10:11 libdbCore.dylib
-rwxrwxr-x 1 roberttk 1704612529 735552 May 9 10:11 libdbRecStd.7.0.7.99.1.dylib
-rwxrwxr-x 1 roberttk 1704612529 735552 May 9 10:11 libdbRecStd.dylib
-rwxrwxr-x 1 roberttk 1704612529 3468696 May 9 10:11 libpvAccess.7.0.7.99.1.dylib
-rwxrwxr-x 1 roberttk 1704612529 3468696 May 9 10:11 libpvAccess.dylib
-rwxrwxr-x 1 roberttk 1704612529 797120 May 9 10:11 libpvAccessCA.7.0.7.99.1.dylib
-rwxrwxr-x 1 roberttk 1704612529 797120 May 9 10:11 libpvAccessCA.dylib
-rwxrwxr-x 1 roberttk 1704612529 154568 May 9 10:11 libpvAccessIOC.7.0.7.99.1.dylib
-rwxrwxr-x 1 roberttk 1704612529 154568 May 9 10:11 libpvAccessIOC.dylib
-rwxrwxr-x 1 roberttk 1704612529 2941672 May 9 10:11 libpvData.7.0.7.99.1.dylib
-rwxrwxr-x 1 roberttk 1704612529 2941672 May 9 10:11 libpvData.dylib
-rwxrwxr-x 1 roberttk 1704612529 1152984 May 9 10:11 libqsrv.7.0.7.99.1.dylib
-rwxrwxr-x 1 roberttk 1704612529 1152984 May 9 10:11 libqsrv.dylib
-rw-rw-r-- 1 roberttk 1704612529 468 May 9 10:11 pvAccessCA_dsoinfo.py
-rw-rw-r-- 1 roberttk 1704612529 529 May 9 10:11 pvAccessIOC_dsoinfo.py
-rw-rw-r-- 1 roberttk 1704612529 408 May 9 10:11 pvAccess_dsoinfo.py
-rw-rw-r-- 1 roberttk 1704612529 398 May 9 10:11 pvData_dsoinfo.py
-rw-rw-r-- 1 roberttk 1704612529 508 May 9 10:11 qsrv_dsoinfo.py
(pyca)roberttk@PC100147:~/miniconda3/envs/pyca/lib/python3.12/site-packages/epicscorelibs/lib$ sw_vers
ProductName: macOS
ProductVersion: 14.7.2
BuildVersion: 23H311 |
|
Oh I think it might actually be epicscorelibs being pinned to a version below what pyca expects
That being said, I installed both packages on my mac and pip resolved epicscorelibs to a compatible version |
|
Thanks for taking a look at this! I'm betting it solves with the older epicscorelibs because of the ancient p4p version on conda-forge. I can't remember if there was a reason for not using the PyPI version of p4p in this workflow. If there was I'll figure it out again now and fix whatever that was. |
|
Moving the p4p install to use PyPI did fix the epicscorelibs issue. But then it was taking 10+ minutes to install pyca-epics since it was using source instead of the wheel file. (like here https://github.com/slaclab/pydm/actions/runs/15073922618/job/42376799112) This was because the workflow used x64 for macOS and the wheel files for pyca are for arm64. So I moved the workflow to use arm64 instead and ran into this |
Context
With pyca available on PyPI now here:
https://pypi.org/project/pyca-epics/
This just reverts the temporary change from #1211 and adds it back as a PyPI installable package in both the
dev-requirements.txtfile and our testing workflow.