Hi everyone. I was digging around and came across Jenga (https://github.com/janestreet/jenga). Is it getting deprecated in favour of Dune. This is not mentioned in the repo’s README but can be found in its aux packages: https://github.com/janestreet/jane-build and https://github.com/janestreet/jenga-rules. What is also confusing is the note in Dune’s readme mentioning a possible jenga bridge (https://github.com/ocaml/dune#jenga-bridge)
Does Jenga complement Dune? Or is dune replacing jenga?
That’s indeed the idea, I just updated the Jenga repository to reflect that and the Dune’s readme. Currently Jenga offers a different feature set. It scales well to very large repositories, but on the other hand it doesn’t have rules to build OCaml projects in an classic open source environment such as with opam and it is less portable than Dune.
Initially, the plan was to have this Jenga bridge. We are still using Jenga inside Jane Street, however we are now planning to add what’s missing in Dune to replace Jenga and then completely switch to Dune.
17 Likes
It’s really nice that we at last have a decent build system for OCaml, which is widely adopted by the community and which is backed by an industrial user.
Thanks for that.
5 Likes
Yeah, we’re pretty excited about how this has turned out. Jenga is an incredibly important system, both for us and for the development of Dune. It build out a lot of the core idioms and ideas that Dune’s design was based on. Dune made all of this portable, cleaned up a bunch of the base abstractions, and is now advancing in new ways on its own. I’m pretty excited with the progression (and glad I’ll no longer have to sheepishly admit that Jane Street maintains two home-brewed build systems.)
And of course one of the most exciting things about Dune is that it is no longer just Jane Street’s system. It now has a legitimate core of developers outside of our walls! A lot of credit for the current velocity of Dune belongs to them.
y
10 Likes