Skip to content
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

Breaks all compilation on newer opam (in a difficult-to-track way) #94

AltGr opened this Issue Aug 18, 2016 · 3 comments


None yet
3 participants
Copy link

AltGr commented Aug 18, 2016

here, opam config env is called and its output parsed. This is wrong, and opam 2.0 changed its shell-directed output format to use single instead of double quotes (protecting against double-evaluation), which leads to values for e.g. PATH including the quotes and triggers weird errors.

I am not sure tuareg should take care of updating the compilation-environment anyway ; but if this feature is to be kept for now, opam config env --sexp, which is intended for that purpose and won't break, should be called instead. here is an example using shell-command-to-string then read-from-string


This comment has been minimized.

Copy link

Drup commented Aug 18, 2016

My personal grain of salt (as the one who got hit by that bug): tuareg should really not do that, opam user-setup does it better and in a more reliable way.
Please make tuareg not mess with merlin, opam, the PATH, or any of the other tool, it's just painful.


This comment has been minimized.

Copy link
Member Author

AltGr commented Aug 25, 2016

@Chris00 can something be done about this ? Otherwise I'll have to add a patch on the opam repo (or fork) before I can push forward the opam dev release. Thanks


This comment has been minimized.

Copy link

Chris00 commented Aug 26, 2016

I'll try ro fix this ASAP.

AltGr added a commit to AltGr/opam-repository that referenced this issue Sep 14, 2016

@Chris00 Chris00 closed this in db1939a Nov 27, 2016

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.