Mailing List Archive

CPAN release of ExtUtils-ParseXS
Ben Bullock wrote:

#####
I've assembled a pre-release here:

https://github.com/benkasminbullock/extutils-parsexs/releases/tag/3.43_01
#####

What is the point (commit) in Perl 5 blead to which we should be
comparing the code in the tarball at the above URL?

(It appears to be later than perl-5.32.1 but earlier than HEAD.)

Thank you very much.
Jim Keenan
Re: CPAN release of ExtUtils-ParseXS [ In reply to ]
On Wed, 7 Apr 2021 22:10:50 -0400, James E Keenan <jkeenan@pobox.com>
wrote:

> Ben Bullock wrote:
>
> #####
> I've assembled a pre-release here:
>
> https://github.com/benkasminbullock/extutils-parsexs/releases/tag/3.43_01
> #####

I added one comment with a suggestion, otherwise looks fine!
https://github.com/benkasminbullock/extutils-parsexs/commit/221a0655a8fdcb8a86b1709cd79fe4836e29fb85#comments

> What is the point (commit) in Perl 5 blead to which we should be
> comparing the code in the tarball at the above URL?
>
> (It appears to be later than perl-5.32.1 but earlier than HEAD.)
>
> Thank you very much.
> Jim Keenan


--
H.Merijn Brand https://tux.nl Perl Monger http://amsterdam.pm.org/
using perl5.00307 .. 5.33 porting perl5 on HP-UX, AIX, and Linux
https://tux.nl/email.html http://qa.perl.org https://www.test-smoke.org
Re: CPAN release of ExtUtils-ParseXS [ In reply to ]
On 4/7/21 10:10 PM, James E Keenan wrote:
> Ben Bullock wrote:
>
> #####
> I've assembled a pre-release here:
>
> https://github.com/benkasminbullock/extutils-parsexs/releases/tag/3.43_01
> #####
>
> What is the point (commit) in Perl 5 blead to which we should be
> comparing the code in the tarball at the above URL?
>
> (It appears to be later than perl-5.32.1 but earlier than HEAD.)
>

Ben, I'm concerned that in your tarball you are not completely capturing
the state of ExtUtils-ParseXS as it currently appears in blead. As a
consequence, if you were to release what's in your tarball to CPAN, what
is stated to be version 3.43 on CPAN would be subtly different from what
will presumably be version 3.43 in dist/ExtUtils-ParseXS when we release
perl-5.34.0 next month.

If we look at Perl 5 blead we see that the last changes to
dist/ExtUtils-ParseXS were a series of 4 commits on March 24 of this
year, 2 of which were substantive fixes submitted by Ed J and 2 of which
were p5p housekeeping by me:

#####
$ git log --format=fuller --reverse
7365f8f7fa7940e5e4422c10fc07c18aa0447ee3..HEAD -- dist/ExtUtils-ParseXS/
|cat
commit e3a57d70d0b8c89c2c37833064dd4e2ecc302b58
Author: Ed J <mohawk2@users.noreply.github.com>
AuthorDate: Sat Mar 20 16:35:25 2021 +0000
Commit: James E Keenan <jkeenan@cpan.org>
CommitDate: Wed Mar 24 08:41:56 2021 -0400

use PERL_VERSION_LE not 5.33+ PERL_VERSION_LT

As ExtUtils::ParseXS is dual-life it needs to use stable Perl macros.

commit f1f3e1235de245a2fc5947224992ed28b9e75f99
Author: Ed J <mohawk2@users.noreply.github.com>
AuthorDate: Sun Apr 21 22:18:13 2019 +0100
Commit: James E Keenan <jkeenan@cpan.org>
CommitDate: Wed Mar 24 08:41:56 2021 -0400

ExtUtils::ParseXS fix error-message bug

commit 7ed63354fd06d48bccb0abf1278e6333edf41536
Author: James E Keenan <jkeenan@cpan.org>
AuthorDate: Wed Mar 24 14:20:46 2021 +0000
Commit: James E Keenan <jkeenan@cpan.org>
CommitDate: Wed Mar 24 14:20:46 2021 +0000

Bump $VERSION to keep porting tests happy

commit 99155265b6644bc3178a61cd413e989b2ecf90d9
Author: James E Keenan <jkeenan@cpan.org>
AuthorDate: Wed Mar 24 10:44:08 2021 -0400
Commit: James E Keenan <jkeenan@cpan.org>
CommitDate: Wed Mar 24 10:44:08 2021 -0400

Bump $VERSION throughout dist/ExtUtils-ParseXS/lib

Build was gagging after mktables.lst.
#####

So, if I had been asked to prepare a CPAN release of ExtUtils-ParseXS,
commit 99155265 would have been my starting point.

Now, if (a) I download and unpack your tarball, then (b) do a "git
checkout 99155265", and then (c) diff blead against your tarball, I come
up with the diff attached (eupp.99155265b6.vs.proposed.diff). Much of
the diff is housekeeping, but I'm concerned that Ed J's changes don't
make the diff. Also missing are changes to
dist/ExtUtils-ParseXS/t/XSTest.xs and dist/ExtUtils-ParseXS/t/XSUsage.xs
that were committed in Nov 2017 in commit a8c15670317. The most
relevant differences I am attaching as "relevant.diff".

Up until now most CPAN releases of blead-upstream, dual-life modules
(i.e., those under dist/) have been performed by whoever was the current
pumpking. It has not been a widely distributed task and, perhaps as a
consequence, we lack (to the best of my knowledge) specific instructions
for doing such releases. So it's not surprising that there may be
confusion or differences of opinion as to "where do we start from."

I want to further acknowledge that dual-life-ing of ExtUtils-ParseXS is
particularly challenging, as its Makefile in core is automatically
generated while its Makefile.PL on CPAN is rather complicated.

Sawyer, Rik, can we get clarification on this?

Thank you very much.
Jim Keenan
Re: CPAN release of ExtUtils-ParseXS [ In reply to ]
On Thu, 8 Apr 2021 at 22:47, James E Keenan <jkeenan@pobox.com> wrote:

> Ben, I'm concerned that in your tarball you are not completely capturing
> the state of ExtUtils-ParseXS as it currently appears in blead. As a
> consequence, if you were to release what's in your tarball to CPAN, what
> is stated to be version 3.43 on CPAN would be subtly different from what
> will presumably be version 3.43 in dist/ExtUtils-ParseXS when we release
> perl-5.34.0 next month.

I personally am not currently due to release anything to CPAN, I'm
just doing the work on preparing the files for release. The current
job is to review the changes and check the files are all OK.

> Now, if (a) I download and unpack your tarball, then (b) do a "git
> checkout 99155265", and then (c) diff blead against your tarball, I come
> up with the diff attached (eupp.99155265b6.vs.proposed.diff). Much of
> the diff is housekeeping, but I'm concerned that Ed J's changes don't
> make the diff. Also missing are changes to
> dist/ExtUtils-ParseXS/t/XSTest.xs and dist/ExtUtils-ParseXS/t/XSUsage.xs
> that were committed in Nov 2017 in commit a8c15670317. The most
> relevant differences I am attaching as "relevant.diff".

We lost some changes because I didn't copy /t/ properly. Originally I
copied all the files under dist/ExtUtils-ParseXS, then found that the
perldoc files in lib weren't part of the dual-life distribution by
Stefan Mueller on CPAN, so I just copied lib, to omit the perldoc
files, and forgot to copy /t/. I've now copied this and made a new tag
release here:

https://github.com/benkasminbullock/extutils-parsexs/releases/tag/3.43_02

Could you check it again?

> I want to further acknowledge that dual-life-ing of ExtUtils-ParseXS is
> particularly challenging, as its Makefile in core is automatically
> generated while its Makefile.PL on CPAN is rather complicated.

The Makefile.PL in the above is copied from the CPAN one, not from the
distro files.
Re: CPAN release of ExtUtils-ParseXS [ In reply to ]
On 4/8/21 5:22 PM, Ben Bullock wrote:
> On Thu, 8 Apr 2021 at 22:47, James E Keenan <jkeenan@pobox.com> wrote:
>
>> Ben, I'm concerned that in your tarball you are not completely capturing
>> the state of ExtUtils-ParseXS as it currently appears in blead. As a
>> consequence, if you were to release what's in your tarball to CPAN, what
>> is stated to be version 3.43 on CPAN would be subtly different from what
>> will presumably be version 3.43 in dist/ExtUtils-ParseXS when we release
>> perl-5.34.0 next month.
>
> I personally am not currently due to release anything to CPAN, I'm
> just doing the work on preparing the files for release. The current
> job is to review the changes and check the files are all OK.
>
>> Now, if (a) I download and unpack your tarball, then (b) do a "git
>> checkout 99155265", and then (c) diff blead against your tarball, I come
>> up with the diff attached (eupp.99155265b6.vs.proposed.diff). Much of
>> the diff is housekeeping, but I'm concerned that Ed J's changes don't
>> make the diff. Also missing are changes to
>> dist/ExtUtils-ParseXS/t/XSTest.xs and dist/ExtUtils-ParseXS/t/XSUsage.xs
>> that were committed in Nov 2017 in commit a8c15670317. The most
>> relevant differences I am attaching as "relevant.diff".
>
> We lost some changes because I didn't copy /t/ properly. Originally I
> copied all the files under dist/ExtUtils-ParseXS, then found that the
> perldoc files in lib weren't part of the dual-life distribution by
> Stefan Mueller on CPAN, so I just copied lib, to omit the perldoc
> files, and forgot to copy /t/. I've now copied this and made a new tag
> release here:
>
> https://github.com/benkasminbullock/extutils-parsexs/releases/tag/3.43_02
>
> Could you check it again?

That looks a lot better. Sawyer / Rik: could you take this from here?

Thank you very much.
Jim Keenan
Re: CPAN release of ExtUtils-ParseXS [ In reply to ]
On Sat, 10 Apr 2021 at 02:46, James E Keenan <jkeenan@pobox.com> wrote:

> > Could you check it again?
>
> That looks a lot better.

Thank you for checking it.

> Sawyer / Rik: could you take this from here?

The information I was given is that various people will be asked to
check the distribution before anything else is decided.
Re: CPAN release of ExtUtils-ParseXS [ In reply to ]
I have just uploaded ExtUtils-ParseXS-3.43_02.tar.gz to the CPAN. This was basically the product of running
perl Makefile.PL && make manifest && make dist
…from Ben's work. It may be imperfect, but seems right to me. I'll make a stable release of this in a week or two, assuming things look good.

Side note: I'd love to figure out exactly how to manage our upstream-blead dual-life dists so that they're straightforward to release. I think this is probably a simple but tedious set of tasks, if begun correctly. But I'm not sure.

More importantly: Thanks very much, Ben! These kind of jobs often languish because they're not particularly exciting, but they need doing, and you were the only person to not only volunteer, but also *do* it. Talk is cheap, and you took action.

--
rjbs
Re: CPAN release of ExtUtils-ParseXS [ In reply to ]
On Sun, 18 Apr 2021 at 02:53, Ricardo Signes <perl.p5p@rjbs.manxome.org>
wrote:

> I have just uploaded ExtUtils-ParseXS-3.43_02.tar.gz to the CPAN. This
> was basically the product of running
>
> perl Makefile.PL && make manifest && make dist
>
> …from Ben's work. It may be imperfect, but seems right to me. I'll make
> a stable release of this in a week or two, assuming things look good.
>

I guess the main anticipated problem is backward compatibility with "old"
Perls, but it seems to be OK:

http://matrix.cpantesters.org/?dist=ExtUtils-ParseXS+3.43_02


>
> Side note: I'd love to figure out exactly how to manage our
> upstream-blead dual-life dists so that they're straightforward to release.
> I think this is probably a simple but tedious set of tasks, if begun
> correctly. But I'm not sure.
>
>
This script I excluded from the repository deliberately but it might be
some use:

https://gist.github.com/benkasminbullock/12c185e2922e5dd70da803c02471a421

The modules used at the top (Z and Perl::Build) are not the same ones as on
CPAN, but the reversion and diff subroutines might be useful.

I'm not sure it is a competely simple task to automate this across various
modules. For example in this case documentation such as perlxs.pod is in
dist/ExtUtils-ParseXS/lib/, which is what led to the problem pointed out
above.