Bug 491268 (perl-autodie) - Review Request: perl-autodie - Replace functions with equivalents which succeed or die
Summary: Review Request: perl-autodie - Replace functions with equivalents which succe...
Keywords:
Status: CLOSED WONTFIX
Alias: perl-autodie
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
low
medium
Target Milestone: ---
Assignee: Miroslav Suchý
QA Contact: Fedora Extras Quality Assurance
URL: http://search.cpan.org/dist/autodie
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-03-20 06:53 UTC by Chris Weyl
Modified: 2009-03-24 19:17 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-03-24 15:56:39 UTC
Type: ---
Embargoed:
kasal: fedora-review-


Attachments (Terms of Use)

Description Chris Weyl 2009-03-20 06:53:41 UTC
Spec URL: http://fedorapeople.org/~cweyl/review/perl-autodie.spec
SRPM URL: http://fedorapeople.org/~cweyl/review/perl-autodie-1.999-1.fc10.src.rpm

Description:
  bIlujDI' yIchegh()Qo'; yIHegh()!

  It is better to die() than to return() in failure.

    -- Klingon programming proverb.

The autodie pragma provides a convenient way to replace functions that
normally return false on failure with equivalents that throw an exception
on failure.

Koji build: http://koji.fedoraproject.org/koji/taskinfo?taskID=1250698

Additional Comment:

Due to current @INC ordering, at the moment this will only work properly in rawhide.  perl-autodie is a prereq of perl-Git-CPAN-Patch.

*rt-0.05

Comment 1 Miroslav Suchý 2009-03-20 14:11:54 UTC
Will do this.

Comment 2 Ralf Corsepius 2009-03-20 14:41:44 UTC
(In reply to comment #0)
>
> Due to current @INC ordering, at the moment this will only work properly in
> rawhide.

Care to explain? Such kind of issues often indicate (include-) file conflicts, i.e. likely indicates a severe design flaw somewhere.

Comment 3 Chris Weyl 2009-03-20 15:08:27 UTC
(In reply to comment #2)
> (In reply to comment #0)
> >
> > Due to current @INC ordering, at the moment this will only work properly in
> > rawhide.
> 
> Care to explain? Such kind of issues often indicate (include-) file conflicts,
> i.e. likely indicates a severe design flaw somewhere.  

Sure -- see bug 489221 for details, but the short version is that this package contains a newer Fatal.pm than core.  As in currently released Perl packages core comes before vendor in @INC, it's not a simple matter to override core by delivering anything in vendor.

Comment 4 Miroslav Suchý 2009-03-20 15:38:12 UTC
==============

Key:
 - = N/A
 x = Check
 ! = Problem
 ? = Not evaluated

=== REQUIRED ITEMS ===
 [x] Package is named according to the Package Naming Guidelines.
 [x] Spec file name must match the base package %{name}, in the format
%{name}.spec.
 [x] Package meets the Packaging Guidelines including the Perl specific items
 [x] Package successfully compiles and builds into binary rpms on at least one
supported architecture.
     Tested on: ppc
 [x] Rpmlint output: empty
 [x] Package is not relocatable.
 [x] Buildroot is correct
%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) 
 [x] Package is licensed with an open-source compatible license and meets other
legal requirements as defined in the legal section of Packaging Guidelines.
 [x] License field in the package spec file matches the actual license.
     License type: GPL+ or Artistic
 [-] If (and only if) the source package includes the text of the license(s) in
its own file, then that file, containing the text of the license(s) for the
package is included in %doc.
 [x] Spec file is legible and written in American English.
 [x] Sources used to build the package matches the upstream source, as provided
in the spec URL.
     SHA1SUM of package:  42dd17fa43025b02a9f300dedf95ced3
autodie-1.999.tar.gz
 [x] Package is not known to require ExcludeArch
 [x] All build dependencies are listed in BuildRequires, except for any that
are listed in the exceptions section of Packaging Guidelines.
 [-] The spec file handles locales properly.
 [-] ldconfig called in %post and %postun if required.
 [x] Package must own all directories that it creates.
 [x] Package requires other packages for directories it uses.
 [x] Package does not contain duplicates in %files.
 [x] Permissions on files are set properly.
 [x] Package has a %clean section, which contains rm -fR $RPM_BUILD_ROOT.
 [x] Package consistently uses macros.
 [x] Package contains code, or permissable content.
 [-] Large documentation files are in a -doc subpackage, if required.
 [x] Package uses nothing in %doc for runtime.
 [-] Header files in -devel subpackage, if present.
 [-] Static libraries in -devel subpackage, if present.
 [-] Package requires pkgconfig, if .pc files are present.
 [-] Development .so files in -devel subpackage, if present.
 [-] Fully versioned dependency in subpackages, if present.
 [x] Package does not contain any libtool archives (.la).
 [-] Package contains a properly installed %{name}.desktop file if it is a GUI
application.
 [x] Package does not own files or directories owned by other packages.

=== SUGGESTED ITEMS ===
 [x] Latest version is packaged.
 [x] Package does not include license text files separate from upstream.
 [-] Description and summary sections in the package spec file contains
translations for supported Non-English languages, if available.
 [x] Reviewer should test that the package builds in mock.
     Tested on: koji scratch build
 [x] Package should compile and build into binary rpms on all supported
architectures.
     Tested on:koji scratch build
 [?] Package functions as described.
 [-] Scriptlets must be sane, if used.
 [-] The placement of pkgconfig(.pc) files is correct.
 [-] File based requires are sane.
 [x] %check is present and the tests pass


================
*** APPROVED ***
================

Comment 5 Ralf Corsepius 2009-03-20 16:16:01 UTC
(In reply to comment #3)
> (In reply to comment #2)
> > (In reply to comment #0)
> > >
> > > Due to current @INC ordering, at the moment this will only work properly in
> > > rawhide.
> > 
> > Care to explain? Such kind of issues often indicate (include-) file conflicts,
> > i.e. likely indicates a severe design flaw somewhere.  
> 
> Sure -- see bug 489221 for details, but the short version is that this package
> contains a newer Fatal.pm than core.
=> your package overrides a module from core, which will interfere with any other user of Fatal.pm

It's a mistake to approve and add it to Fedora.

Comment 6 Ralf Corsepius 2009-03-20 16:19:29 UTC
Revoking approval. This issue needs further discussion.

Comment 7 Miroslav Suchý 2009-03-20 16:23:16 UTC
Well if you do not want to overriden, then you should not install it... 
Anyway they both provide the same functionality and can be exchanged for each other if I read it correctly.

Comment 8 Chris Weyl 2009-03-20 23:28:32 UTC
(In reply to comment #6)
> Revoking approval. This issue needs further discussion.  

Ralf, I might be missing something here, but in claiming to revoke a properly granted package approval I'm pretty sure you're way overstepping your authority.  I clearly have a vested interest in this matter (given that this is a package I submitted for review), but, absent actual malfeasance, I've never seen anything like your behaviour here before.

I'm certainly happy to discuss the merits of this with you, preferably on fedora-perl-devel-list, but Miroslav is correct: the module is (AFAICT) fungible with core Fatal (except without respect to autodie); and if someone doesn't want it, it's certainly not mandated.  I fail to see the impact here...  Especially as:

"Fatal has been obsoleted by the new autodie pragma. Please use autodie in preference to Fatal. autodie supports lexical scoping, throws real exception objects, and provides much nicer error messages."

Comment 9 Jason Tibbitts 2009-03-21 03:09:44 UTC
Ralf just makes things up as he goes along, and there's no sense in expecting him to be polite about anything.  You'd be better off reading comment #6 as "I think there's a significant issue here that bears discussion.  Could you please wait a bit before importing this so that we can talk about it?"  Reasonable community members, I think, would respond well to such a reasonable request.

Comment 10 Chris Weyl 2009-03-23 18:01:29 UTC
(In reply to comment #9)
> Reasonable
> community members, I think, would respond well to such a reasonable request.  

If only that's what had happened here :)

Anyways, I have no problem with that.  I'll start a thread over on fpdl and wait a couple more days (at least) before taking any action here.

Comment 11 Ralf Corsepius 2009-03-24 04:54:30 UTC
(In reply to comment #8)
> (In reply to comment #6)
> > Revoking approval. This issue needs further discussion.  
> 
> Ralf, I might be missing something here, but in claiming to revoke a properly
> granted package approval I'm pretty sure you're way overstepping your
> authority.
Well, I guess it's obvious that I don't agree with you.

I revoked the "approval" to prevent this package to cause damage from Fedora, because I think the reviewer missed how mis-designed and how harmful this package is.

(In reply to comment #9)
> Ralf just makes things up as he goes along, and there's no sense in expecting
> him to be polite about anything.  You'd be better off reading comment #6 as "I
> think there's a significant issue here that bears discussion.  Could you please
> wait a bit before importing this so that we can talk about it?"  Reasonable
> community members, I think, would respond well to such a reasonable request.

Reasonable reviewers would have waited for such discussions to have settled and would not have "approved" this package. Unfortunately, this didn't happen here.

I therefore had to resort to "revoking" as "ultimate ratio".

Comment 12 Stepan Kasal 2009-03-24 15:56:39 UTC
autodie is a core perl package (perl-5.10 branch currently contains autodie-1.998)
Consequently, it should be maintained inside the main perl package.
perl-5.10.0-64, to appear soon in rawhide and F-9 and F-10 testing updates, contains autodie-1.999.

FAIL, OTHER

Comment 13 Chris Weyl 2009-03-24 19:17:34 UTC
(In reply to comment #12)
> autodie is a core perl package (perl-5.10 branch currently contains
> autodie-1.998)
> Consequently, it should be maintained inside the main perl package.
> perl-5.10.0-64, to appear soon in rawhide and F-9 and F-10 testing updates,
> contains autodie-1.999.

Awesome.  Thanks Stepan!  :-)


Note You need to log in before you can comment on or make changes to this bug.