Skip to content
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

Add x-commit-hash field to the opam file when releasing #224

Merged
merged 2 commits into from
Jun 16, 2020
Merged

Add x-commit-hash field to the opam file when releasing #224

merged 2 commits into from
Jun 16, 2020

Conversation

gpetiot
Copy link
Contributor

@gpetiot gpetiot commented Apr 20, 2020

First attempt at fixing #222

Copy link
Contributor

@NathanReb NathanReb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good!

We should probably add a CHANGELOG entry about this.

Would you mind adding end to end tests for this feature, something in lines of what we did here: https://github.com/ocamllabs/dune-release/tree/master/tests/bin/delegate_info

We can Pair Program those tests if you'd like! I think it should be fairly easy since it only need a few basic files and a git setup.

It would also make it a good place to ensure that it behaves properly if HEAD isn't where it should be, ie not on the tag we're trying to release (if trying to release a specific tag ofc).

I also think it makes sense for this field to be included in the tarball opam file.

@gpetiot gpetiot marked this pull request as draft April 28, 2020 14:23
@NathanReb
Copy link
Contributor

@gpetiot any news on this front? Is it still a draft?

@gpetiot
Copy link
Contributor Author

gpetiot commented May 15, 2020

I haven't look at this in a while, I think I remember the e2e test was incomplete (the opam file tested is not the right one), plus testing with different tag settings is not done either.

@gpetiot gpetiot marked this pull request as ready for review June 9, 2020 14:36
@gpetiot gpetiot requested a review from NathanReb June 16, 2020 14:19
Copy link
Contributor

@NathanReb NathanReb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@gpetiot gpetiot merged commit 7c48674 into tarides:master Jun 16, 2020
@gpetiot gpetiot deleted the keep-commit-hash branch June 16, 2020 15:51
pitag-ha added a commit to pitag-ha/opam-repository that referenced this pull request Jul 13, 2020
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
@kit-ty-kate
Copy link
Contributor

I wasn't aware of this but it seems rather useful. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants