-
Notifications
You must be signed in to change notification settings - Fork 39
Do not write 'version' and 'name' fields in opam file #200
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
I gave this a quick look and I think it's a different issue. From what I understood the It appears that this isn't done in I also don't think we should hardcode such things in anycase, if someone which to release a |
Just checked with the opam team and best practice is not to have the version field in opam-repository so we should strip it there as well! |
We should also strip the |
I moved the opam-file-upgrading logics into Pkg and added simple unit tests. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
From a quick look it looks good to me. Do you confirm that the opam file that makes it to the tarball is not affected by this change but only the one produced by dune-release opam pkg
?
Also a tiny thing that I think we should change here is not to put the upgrade_opam_file
function in Pkg
. I think this module should be better scoped, it does a bit too much atm. Would you mind moving it to an Opam_file
module or something?
I think in the future it might make sense to extract a module to abstract opam files and provide a good testable API on top as I think for now this logic is a bit spread. That's not urgent at all but I think it makes this a good occasion to create such a module.
What do you think?
Indeed it is not affected, I will try to fix that |
My last commit also strips these fields from the opam file in the distrib, there is not much code shared with the other opam file right now. (it's not clear to me how to factorize this without introducing some bugs as the code is already different to begin with) |
Sorry I should have been clearer, I think it's good they still were in the distrib opam files! Let's leave them unchanged for now! |
I wasn't sure I should have asked. Anyway I reverted this commit. |
CHANGES: ### Added - Add a `dune-release config` subcommand to display and edit the global configuration (tarides/dune-release#220, @NathanReb). - Add command `delegate-info` to print information needed by external release scripts (tarides/dune-release#221, @pitag-ha) - Use Curly instead of Cmd to interact with github (tarides/dune-release#202, @gpetiot) - Add `x-commit-hash` field to the opam file when releasing (tarides/dune-release#224, @gpetiot) - Add support for common alternative names for the license and ChangeLog file (tarides/dune-release#204, @paurkedal) ### Changed - Command `tag`: improve error and log messages by comparing the provided commit with the commit correspondent to the provided tag (tarides/dune-release#226, @pitag-ha) - Error logs: when an external command fails, include its error message in the error message posted by `dune-release` (tarides/dune-release#231, @pitag-ha) - Error log formatting: avoid unnecessary line-breaks; indent only slightly in multi-lines (tarides/dune-release#234, @pitag-ha) - Linting step of `dune-release distrib` does not fail when opam's `doc` field is missing. Do not try to generate nor publish the documentation when opam's `doc` field is missing. (tarides/dune-release#235, @gpetiot) ### Deprecated - Deprecate opam 1.x (tarides/dune-release#195, @gpetiot) ### Fixed - Separate packages names by spaces in `publish` logs (tarides/dune-release#171, @hannesm) - Fix uncaught exceptions in distrib subcommand and replace them with proper error messages (tarides/dune-release#176, @gpetiot) - Use the 'user' field in the configuration before inferring it from repo URI and handles HTTPS URIs (tarides/dune-release#183, @gpetiot) - Ignore backup files when looking for README, CHANGES and LICENSE files (tarides/dune-release#194, @gpetiot) - Do not echo input characters when reading token (tarides/dune-release#199, @gpetiot) - Improve the output of VCS command errors (tarides/dune-release#193, @gpetiot) - Better error handling when checking opam version (tarides/dune-release#195, @gpetiot) - Do not write 'version' and 'name' fields in opam file (tarides/dune-release#200, @gpetiot) - Use Yojson to parse github json response and avoid parsing bugs. (tarides/dune-release#177, @gpetiot) - The `git` command used in `publish doc` should check `DUNE_RELEASE_GIT` (even if deprecated) before `PATH`. (tarides/dune-release#242, @gpetiot) - Adapt the docs to the removal of the `log` subcommand (tarides/dune-release#196, @gpetiot) ### Removed ### Security
Should fix #189 if I understood correctly.