Problem
Iirc, I had similar questions as @Luc_ML on my first starts with dune in regards to the naming conventions of bin/lib/test and why files in subdirectories couldn’t immediately compile. I remember speedrunning through the Examples and https://dune.readthedocs.io/en/latest/quick-start.html
to try out some lib, missing some key details here and there haha.
Solution(s)
-
But maybe a respective readme should be generated with each
dune init
templates because dune’s quick start docs explain a handful of these questions really early on. -
Maybe
include_subdirs
should be default for new init’ed templates. But now we unknowingly introduce users to the rules ofinclude_subdirs
. We do know the dune team is working on(include_subdirs qualified)
- thread. So once this is shipped, defaulting new projects to have(include_subdirs qualified/unqualified)
may be a great help.
I’m on team-make-startup-as-easy-as-possible because it makes experimentation for new users really easy and lets them continue down the ocaml rabbit hole. I expect software developers to be of the patient, debugging, doc-reading type, but having to dig into build docs when you want to experiment with a library is always a hassle.