You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Use case dataset download fails on Windows with CERTIFICATE_VERIFY_FAILED #2676
On a clean Windows machine running 6.8.0 RC1, RunUseCase.py can't download use case data:
> & 'C:\Program Files\ShapeWorks\bin\swpython.bat' .\RunUseCase.py deep_ssm --tiny_test
Step 1. Acquire Data
Downloading deep_ssm_femur_tiny_test from https://www.sci.utah.edu/~shapeworks/data-sets/use-case-data/deep_ssm_femur_tiny_test-v1.zip
...
RuntimeError: Could not reach https://www.sci.utah.edu/~shapeworks/data-sets/use-case-data/deep_ssm_femur_tiny_test-v1.zip
<urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1000)>
Cause
The certificate chain for www.sci.utah.edu ends at the emSign Root CA - G1 root. A fresh Windows install ships with only a small set of roots and downloads the rest on demand, but only when Windows itself verifies a connection (for example, in a browser). Python verifies through OpenSSL, which reads the Windows root store as it stands, so it doesn't find the root.
This explains why it works on some machines and not others: visiting the site once in Edge installs the root.
Fix
Have shapeworks/datasets.py verify against certifi's root bundle as well as the system roots. certifi is already in python_requirements.txt and bundled with the install. The fix goes to master first. release_v6.8.0 also needs it; it will come over with the other master fixes being merged into 6.8.
Workaround
Open the dataset URL once in Edge, or set SSL_CERT_FILE to the path of certifi's cacert.pem in the ShapeWorks Python install.
Activity
Merge pull request #2677 from SCIInstitute/amorris/2676-dataset-downl…
akenmorris commentedon Oct 27, 2026
Fixed in #2677