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

Add support for `(include_subdirs qualified)` #1084

Open
diml opened this Issue Aug 1, 2018 · 1 comment

Comments

Projects
None yet
2 participants
@diml
Copy link
Member

diml commented Aug 1, 2018

With the following project:

./src:
dune       # containing (include_subdirs qualified)
x.ml

./src/a:
y.ml

./src/a/b:
z.ml

x.ml would see y.ml as A.Y and z.ml as A.B.Z. Then y.ml would see z.ml as B.Z but couldn't see x.ml.

This should allow to organize the modules using the FS layout.

I'm interested in this as it would allow to port Camlp4 to dune, which would simplify it's maintenance, and it's also a nice feature to have. However, I'm not planning to work on this in the near future, so anyone should feel free to assign themselves this feature if they are interested in it.

@rgrinberg rgrinberg self-assigned this Aug 6, 2018

@rgrinberg rgrinberg added this to the 1.2.0 milestone Aug 6, 2018

@rgrinberg rgrinberg removed this from the 1.2.0 milestone Feb 12, 2019

@rgrinberg

This comment has been minimized.

Copy link
Member

rgrinberg commented Feb 12, 2019

There's a few complications that have kept this feature on the back burner. I'll just list them here to note that I haven't forgotten about this feature:

  • Our current code relies on passing around a lot of maps keyed by the module name. Naturally, this doesn't quite work anymore since the module names are no longer unique.

  • I'd like to it be possible to define a lib interface module for every subdirectory. Our codebase currently assumes there's only one such module in many places.

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.