-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
basisisp dependencies versions #805
Comments
We can open up Pyrsistent to
I use caret dependencies in general to avoid changes due to major version increases. With the exception of Immutables and Pyrsistent, I feel comfortable with the current pins.
I moved away from Pyrsistent for maps intentionally in #559 to get a C map implementation. Pyrsistent only has a C implementation of the vector type and a Python version of a map which uses the C vector under the hood. I do not wish to switch back. Immutables uses a HAMT which is specifically the same underlying data structure used in Clojure. |
I put up #806 to loosen those two dependencies which should allow you to use 0.19+ |
Hi,
most of the python dependencies in Basilisp are all fixed with a caret. This can prevent from installing Basilisp in environments where packages are constrained to a particular version.
For example, the
pyrsistent
dependency is declared asrequiring that a 0.18.x version is available in the environment. This can prevent Basilisp from installing when any other package in the environment is dependent/constrained on a higher version (e.g. 0.19.x).
Would it be possible to change the Basilisp dependency to accommodate a wider range of its dependencies versions (.e.g. >=0.18.0)?
I suppose, if we go down this road, we could also have some limited integration tests for each dependency that is deemed having a big effect in basilisp.
Also, while at it,
pyrsistent
appears to support maps, can we fold in the immutable maps into it and remove theimmutables
dependency? Less dependencies, less likely for it to cause issue when installing Basilisp in python environments with diverse package and dependencies requirements.Thanks
latest
pyrsistent
versions as of todayThe text was updated successfully, but these errors were encountered: