Skip to content

Conversation

@bobmyhill
Copy link
Member

@bobmyhill bobmyhill commented Oct 6, 2024

The update of pycddlib to Version 3 comes with several improvements:

  • a standalone package (pycddlib-standalone) for float representations of polytopes that doesn't require non-python dependencies that can be difficult to install
  • a separation of float and fraction modules that makes it easier to type check.
  • several new convenience functions.

One downside of the new version is that the old github workflow for installation of the full pycddlib is broken, and I can't figure out how to make the necessary changes.

In this PR, I've added pycddlib-standalone as a dependency, and changed the polytope functions to allow either pycddlib-standalone or the full pycddlib module. If cdd.gmp (the Fractions module) is not found, any calculations that would have used that module instead use cdd (the floats module).

@bobmyhill bobmyhill force-pushed the pycddlib3 branch 2 times, most recently from 8b42fcd to 277994f Compare October 7, 2024 07:29
@bobmyhill
Copy link
Member Author

@mcmtroffaes, thank you for the new version of pycddlib!

@bobmyhill bobmyhill merged commit 1f5260d into geodynamics:main Oct 7, 2024
5 checks passed
@bobmyhill bobmyhill deleted the pycddlib3 branch October 7, 2024 14:41
@bobmyhill bobmyhill restored the pycddlib3 branch October 7, 2024 14:51
@mattiejastje
Copy link

Swell! I was a bit nervous to release this since it's a big API change. But hopefully for the better in the long term.

I don't know if you managed this yet, but to get things working for pycddlib (the non-standalone version) on the github actions workflow, on Ubuntu it should be enough to simply install gmp and cddlib itself from apt:

sudo apt-get install -y libcdd-dev libgmp-dev

Pycddlib should then find the headers and library and use those.

@bobmyhill
Copy link
Member Author

It was a big API change, but your changelog was really helpful. The changes also allowed me to streamline some calculations and isolate some odd type behaviour.

I did try your apt-get suggestion this morning, and it failed, but trying again this afternoon it works. My guess is the update to using ubuntu 24.04 in the tester (rather than 20.04) fixed the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants