You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Right now opam publish uses the latest git tag in a repo and rely on github to produce the .tar.gz archive
for the source of the repository. Unfortunately, github does not add the code of submodules in the archive
(a known problem: dear-github/dear-github#214 ), and
so in most cases you can't build a project from the archive.
How opam publish could be extended to make it easy to package projects using submodules?
This is a difficult problem. Currently opam-publish doesn’t deal with archive creation at all and mairly picks up autogenerated ones for conveinance sake.
Adding this feature to opam-publish is really involved. We’d need to:
create or make sure a github release is present
create the archive locally manually (there is no git archive option to pull submodules as far as I know)
upload this archive to the github release
If we only make sure the github release is present this could simplify things a lot and avoid some of the pitfalls of dune-release, but this would mean this would be a more manual approach to releasing, as currently users use opam-publish this way:
git tag ... && git push --tags
opam publish
with this option it would be something like:
git tag ... && git push --tags
create the github release by hand by going to github.com/org/proj/releases/new?tag=tag
Right now opam publish uses the latest git tag in a repo and rely on github to produce the .tar.gz archive
for the source of the repository. Unfortunately, github does not add the code of submodules in the archive
(a known problem: dear-github/dear-github#214 ), and
so in most cases you can't build a project from the archive.
How opam publish could be extended to make it easy to package projects using submodules?
See for example: ocaml/opam-repository#23215 for a recent example.
The text was updated successfully, but these errors were encountered: