shlomif / perl-XML-SemanticDiff

The XML-SemanticDiff CPAN distribution for semantic (= non-ordered and probably not what you want) comparison of two XML docs
https://metacpan.org/release/XML-SemanticDiff
Other
2 stars 5 forks source link

XML::SemanticDiff requires perl 5.12 since 1.0005 - why? #3

Closed mannih closed 7 years ago

mannih commented 7 years ago

Hi.

Our sorry system run on perl 5.10. That's why I just noticed, that installing TAP::Formatter::JUnit bombs our while trying to install XML::SemanticDiff which requires at least perl 5.12. However, hacking your dist and replacing all occurrences of 5.012 with 5.010 shows absolutely no problems. All the tests run just fine and the modules installs smoothly.

shlomif commented 7 years ago

Hi @mannih ! Thanks for your request, but sorry if I sound angry at you - I'll try not to take it too hard on you.

First of all, I should note that TAP::Formatter::JUnit should probably not be using XML::SemanticDiff because the latter does not do an element by element comparison and instead it does a funky, buggy and unreliable way of doing a "semantic diff". I have worked on https://metacpan.org/release/Test-XML-Ordered and I believe I saw some other alternatives and I suggest using them instead in the majority of cases.

Secondly, I hesitate to lower the supported version of perl because that may increase the maintenance burden (CPAN Testers / etc.). You should upgrade to a newer version of perl because 5.10 is very old (last released in August 2009 - http://use.perl.org/use.perl.org/articles/09/08/25/0556226.shtml ), is unmaintained and possibly broken and there's already perl 5.24.1 and 5.26 is scheduled for April or May. There's some discussion of dedicating time to doing such transitions and upgrades here - https://szabgab.com/what-does--if-it-aint-broke-dont-fix-it--really-mean.html .

If you cannot afford to upgrade the system's perl, you can try using perlbrew or similar tools. But I hesitate to lower the requirement to 5.010, and then to 5.8 , 5.6 and finally down to 5.000. 5.012 is already generous enough. Someone told me that Linus Torvalds once said that his main responsibility as the main maintainer of the Linux kernel is to "Say 'No.'". This is one case where I tend to wish to do exactly that.

I'm not closing this issue yet to give you a chance to speak for yourself, but let me know if I can close it.

mannih commented 7 years ago

Thank you for taking the time to respond!

What can I say?

  1. I have no idea why TAP::Formatter::JUnit depends on your module and, frankly, I don't really care either.
  2. Trust me, I know how old and outdated perl 5.10 is.

It's your module, and your decision. Again, thank your for the time.

shlomif commented 7 years ago

Hi @mannih ! Thank you for your prompt reply and your comments. You're welcome too. Thanks for your understanding and I think I'll close this bug. Sorry to disappoint.

jjn1056 commented 6 years ago

I'd really like to revisit this issue. I understand you prefer to only support newer versions of Perl, but I see nothing in this code that requires a newer version of Perl. As the maintainer of a long lived distribution I believe it is your duty to support existing users when it is possible to do so. Now, if you got test fails on Perl 5.8.x and said "I don't personally have time to fix this, so until someone steps up to fix the test case I'm required Perl 5.12.1" that would be different. However from what I can see you just arbitrarily increased the Perl version. Please decrease the version unless there are test fail reports.

shlomif commented 6 years ago

On Thu, 26 Jul 2018 13:51:12 -0700 John Napiorkowski notifications@github.com wrote:

I'd really like to revisit this issue. I understand you prefer to only support newer versions of Perl, but I see nothing in this code that requires a newer version of Perl. As the maintainer of a long lived distribution I believe it is your duty to support existing users when it is possible to do so. Now, if you got test fails on Perl 5.8.x and said "I don't personally have time to fix this, so until someone steps up to fix the test case I'm required Perl 5.12.1" that would be different. However from what I can see you just arbitrarily increased the Perl version. Please decrease the version unless there are test fail reports.

Hi John!

Would you be willing to maintain XML::SD instead of me? Then you can reduce the minimal supported version.

Regards,

Shlomi

--

Shlomi Fish http://www.shlomifish.org/ Parody of "The Fountainhead" - http://shlom.in/towtf

“I hear eclipse is really nice, but I’m still waiting for it to load.” — Freenode’s #perl Please reply to list if it's a mailing list post - http://shlom.in/reply .
perigrin commented 6 years ago

I would be happy to take over primary maint of this module if that's the only blocker from 5.10 support.

shlomif commented 6 years ago

@perigrin : I made you primary maint of two XML::SD namespaces. You'll need to ask https://metacpan.org/author/ADOPTME for the other two. Thanks!

shlomif commented 6 years ago

@perigrin : any news? Ping!

shlomif commented 6 years ago

@jjn1056 : hi, another late reply to your comment. I added a "use 5.012;" statement so dzil can make the Kwalitee / CPANTS (see https://cpants.cpanauthors.org/ ) metrics better (minimum perl version). Reducing it further would have meant that I'd have to: 1. Risk test failures for 5.8 and 5.10. 2. Risk having to support end users with these ancient perl versions. All this is something I don't want to do as a precaution. Also see the joke thread at http://www.shlomifish.org/humour/fortunes/tinic.html#hamakor-discs-mozilla-1.1-1 . You really: 1. Should upgrade to a newer perl5. 2. Should probably not be using XML::SD.

shlomif commented 6 years ago

@jjn1056 : hi! And I forgot to say, that to quote https://www.youtube.com/watch?v=ROZjaxT_0Hw (which I found really funny - NSFW monologue, but SFW imagery): "F**k that!". Sorry for the profanity.