Dune: Merge dune-release into dune

Created on 18 May 2019  路  6Comments  路  Source: ocaml/dune

https://github.com/samoht/dune-release is a separate binary that is the de-factor standard for publishing dune based opam packages. The integration between these tools currently suffers from them not sharing a codebase and a release schedule. Both of these problems would be solved if dune-release was integrated into dune itself.

The only thing that is preventing such an integration is dune-release's external dependencies. Therefore, we must remove all external dependencies or replace them with libraries from dune itself.

@diml can we assign @NathanReb to this issue?

All 6 comments

Sure. I added Nathan to the repo, welcome @NathanReb :).

To give a clear scope to this work, I suggest to import only the two following features:

  • dune-release tag as dune tag
  • dune-release as dune release

And once these are in, we can decide later if we want more.

Thanks!

Sounds good to me!

I wonder if it's a good idea to flatten the command structure. I think that things like $ dune tag aren't really self explanatory and it wouldn't be clear to a user that it's part of the release workflow.

Yh, I don't disagree. It's just that sub-commands are not well supported by cmdliner. We always do dune release just after dune tag, maybe we should just make dune release add the tag?

Does it make sense to put in some work into cmdliner to fix this problem however? This becomes a need for many large command line applications. Opam had to address it as well.

That would surely be nice as it would benefit other people as well. It seems worth a try. BTW, it seems that other people have been looking at this: https://github.com/dbuenzli/cmdliner/issues/24

Was this page helpful?
0 / 5 - 0 ratings