test: show wrapped compat incremental builds broken#14088
Conversation
Leonidas-from-XIV
left a comment
There was a problem hiding this comment.
I didn't know this functionality existed but I agree that it should be working. Thanks for the repro.
rgrinberg
left a comment
There was a problem hiding this comment.
Print the dependencies inside the test.
Signed-off-by: Ali Caglayan <alizter@gmail.com>
8a76d34 to
3a2e0fe
Compare
|
By the way, we should start discouraging people from using this feature. It is basically pointless now that we have |
| The compat shim foo.cmi only depends on the wrapper mylib.cmi, not on the | ||
| inner module mylib__Foo.cmi that it re-exports: | ||
|
|
||
| $ dune rules --deps mylib/.mylib.objs/byte/foo.cmi 2>&1 | grep In_build_dir |
There was a problem hiding this comment.
Don't we have percent form that can replace these ugly paths?
There was a problem hiding this comment.
We can write %{cmi:mylib/foo} but not for the compat shim here unfortunately.
Sure, this seems sensible to deprecate. I only found this issue when testing out #14021. |
…ing (ocaml#4572) Add safety test ensuring per-module dependency filtering does not break incremental builds when consumers access a library through wrapped compat shims (bare module name via (wrapped (transition ...))). Related: PR ocaml#14088, ocaml#14090 (wrapped compat incremental build fix). Signed-off-by: Robin Bate Boerop <me@robinbb.com>
Reproduction case for
(wrapped (transition ...))are broken #14089