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

[perl] build, test and release improvements #1728

Merged
merged 5 commits into from
Sep 7, 2021
Merged

Conversation

ehuelsmann
Copy link
Contributor

@ehuelsmann ehuelsmann commented Sep 6, 2021

Summary

Main improvement is the release improvement where CHANGELOG.md wasn't included in Gherkin-21.0.0 because it's an unversioned file. On the Cucumber::Messages release, it was included because it was a versioned file until the post-release step removed it.

Details

  1. On the next Cucumber::Messages release, the CHANGELOG.md file would not be included without this change.
  2. To improve understanding for occasional reviewers, remove the MANIFEST.SKIP file as a second source for what might (not) be included in a distribution archive.
  3. Align the clean targets between Gherkin and Cucumber::Messages, where clean does not remove generated files (and clobber does)
  4. Centralize PERL5LIB setting in anticipation of making Gherkin depend on Cucumber::Messages and depend on the version in the repository for CI builds

Motivation and Context

Correct releases, Alignment of infrastructure between various Perl libraries inside a single repo and preparation to integrate Cucumber::Messages into Gherkin.

How Has This Been Tested?

Rerunning make distribution and verifying the content of the distribution tarball.

Types of changes

  • Bug fix (non-breaking change which fixes an issue).
  • New feature (non-breaking change which adds functionality).
  • Breaking change (fix or feature that would cause existing functionality to not work as expected).

Checklist:

  • The change has been ported to Java.
  • The change has been ported to Ruby.
  • The change has been ported to JavaScript.
  • The change has been ported to Go.
  • The change has been ported to .NET.
  • I've added tests for my code.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have updated the CHANGELOG accordingly.

Since the [Git::GatherDir] plugin for Dist::Zilla *only* gathers
versioned files and the CHANGELOG.md file is *not* versioned, but rather
copied into the project directory upon release, it needs to be explicitly
included in the distribution tar file.

Also, in order to reduce the number of files a developer needs to get
to know, move the ignore patterns from `MANIFEST.SKIP` to `dist.ini`,
eliminating the need to have `MANIFEST.SKIP` at all.
…d Makefile

In case of Gherkin, use this centralization to add the in-repository
path for Cucumber::Messages in case we're running in the CI environment.
 1. `clobber` target removes generated files (`clean` does not)
 2. `clean` target removes "imported" `CHANGELOG.md`

Note that the CHANGES file hasn't existed for a long time...
@ehuelsmann ehuelsmann added 🐛 bug Defect / Bug 🔧 build Related to build / release process language: perl labels Sep 6, 2021
Copy link
Contributor

@aurelien-reeves aurelien-reeves left a comment

Choose a reason for hiding this comment

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

A couple of questions related to my un-knowledge of perl 😅

messages/perl/dist.ini Show resolved Hide resolved
gherkin/perl/dist.ini Show resolved Hide resolved
Copy link
Contributor

@aurelien-reeves aurelien-reeves left a comment

Choose a reason for hiding this comment

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

As far as I can tell, it looks good ;)

@ehuelsmann
Copy link
Contributor Author

Thanks for the review! Merging.

@ehuelsmann ehuelsmann merged commit e2e0520 into main Sep 7, 2021
@ehuelsmann ehuelsmann deleted the update-build-perl branch September 7, 2021 08:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🐛 bug Defect / Bug language: perl 🔧 build Related to build / release process
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants