| Summary: | Review Request: perl-DBIx-Class-Cursor-Cached - Cursor class with built-in caching support | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Iain Arnell <iarnell> |
| Component: | Package Review | Assignee: | Marcela Mašláňová <mmaslano> |
| Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | unspecified | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | rawhide | CC: | fedora-package-review, notting, rc040203 |
| Target Milestone: | --- | Flags: | mmaslano:
fedora-review+
j: fedora-cvs+ |
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| URL: | http://search.cpan.org/dist/DBIx-Class-Cursor-Cached/ | ||
| Whiteboard: | |||
| Fixed In Version: | perl-DBIx-Class-Cursor-Cached-1.001001-1.fc15 | Doc Type: | Bug Fix |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2011-05-25 02:29:51 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
|
Description
Iain Arnell
2011-03-13 08:32:46 UTC
* Package doesn't build on Fedora < 15:
On f14, the testsuite fails:
...
DBIx::Class::ResultSet::all(): Invoking connector coderef CODE(0x2f01e78) in order to obtain cache-lookup information at t/simple.t line 132
...
I'd guess, the perl(DBIx::Class) being shipped with f14 is too old and is suffering from bugs being triggered by this package's testsuite.
I'd recommend to
a) upgrade perl(DBIx::Class) on fedora < 15
b) Add BR: perl(DBIx::Class) >= 0.8227
c) Report this to upstream
On f13, Module::AutoInstall is complaining.
I'd suggest to add --skipdeps to %build:
%{__perl} Makefile.PL INSTALLDIRS=vendor --skipdeps
With skipdeps applied building for f13 fails with the same error as f14.
Yes, it does seem to be a quirk with older DBIx::Class. All is fine with 0.8124 (reported upstream at https://rt.cpan.org/Ticket/Display.html?id=66601). I've no intention of building this for f13, so I've only update the DBIx::Class R/BR. Spec URL: http://fedorapeople.org/~iarnell/review/perl-DBIx-Class-Cursor-Cached.spec SRPM URL: http://fedorapeople.org/~iarnell/review/perl-DBIx-Class-Cursor-Cached-1.001000-2.fc16.src.rpm Koji build: http://koji.fedoraproject.org/koji/taskinfo?taskID=2911486 (In reply to comment #2) > Yes, it does seem to be a quirk with older DBIx::Class. All is fine with 0.8124 > (reported upstream at https://rt.cpan.org/Ticket/Display.html?id=66601). OK, but are you sure this breakdown is not caused by a latent defect/bug of older DBIx::Class's, which building this package just happens to trigger? I am not, but certainly would be glad to be tought otherwise > I've no intention of building this for f13, so I've only update the DBIx::Class > R/BR. That's OK with me wrt. this review. Remains adding --skipdeps. (In reply to comment #3) > (In reply to comment #2) > > Yes, it does seem to be a quirk with older DBIx::Class. All is fine with 0.8124 > > (reported upstream at https://rt.cpan.org/Ticket/Display.html?id=66601). > OK, but are you sure this breakdown is not caused by a latent defect/bug of > older DBIx::Class's, which building this package just happens to trigger? > > I am not, but certainly would be glad to be tought otherwise It certainly doesn't feel like a real bug. Without Cursosr::Cached, DBIx::Class behaves as defined (i.e. $rs->all executes a query against the database). But it doesn't really matter - we now know that Cursor::Cached is only working properly with DBIx::Class >= 0.08124. > Remains adding --skipdeps. Added. And by far the nicest way of avoiding Module::AutoInstall. You should add this to https://fedoraproject.org/wiki/PackagingTips/Perl (and have https://fedoraproject.org/wiki/Packaging:Perl#Useful_tips removed - tips don't belong in packaging guidelines). Spec URL: http://fedorapeople.org/~iarnell/review/perl-DBIx-Class-Cursor-Cached.spec SRPM URL: http://fedorapeople.org/~iarnell/review/perl-DBIx-Class-Cursor-Cached-1.001000-3.fc16.src.rpm Koji build: http://koji.fedoraproject.org/koji/taskinfo?taskID=2916330 It looks like --skipdeps are not needed at the moment http://koji.fedoraproject.org/koji/getfile?taskID=2959800&name=build.log Using --skipdeps is better than redirect to /dev/null, which is also used in talkative Perl builds. --skipdeps prevents Module::AutoInstall from trying to load modules from CPAN, in cases a module is missing or an installed module is insufficient.
I.e. the purpose of --skipdeps here is to prevent M:AI from contacting CPAN and from trying to go interactive in cases it diagnoses a package's requirements are not fulfilled.
This package goes interactive when a package dep is missing
(BR: perl(DB::SQLite) commented out):
+ /usr/bin/perl Makefile.PL INSTALLDIRS=vendor
*** Module::AutoInstall version 1.03
*** Checking for Perl dependencies...
[Core Features]
- DBD::SQLite ...missing. (would need 1.25)
- Test::More ...loaded. (0.98)
- Cache::FileCache ...loaded. (0)
- DBIx::Class ...loaded. (0.08127 >= 0.08100)
- Digest::SHA1 ...loaded. (2.13)
- Carp::Clan ...loaded. (6.04 >= 6.0)
==> Auto-install the 1 mandatory module(s) from CPAN? [Y/n] y
*** Dependencies will be installed the next time you type 'make'.
(You may need to do that as the 'root' user.)
*** Module::AutoInstall configuration finished.
Checking if your kit is complete...
Looks good
Warning: prerequisite DBD::SQLite 1.25 not found.
Upstream agrees that DBIx::Class >= 0.08124 is indeed a requirement for this package, and released new version with the necessary change. Spec URL: http://fedorapeople.org/~iarnell/review/perl-DBIx-Class-Cursor-Cached.spec SRPM URL: http://fedorapeople.org/~iarnell/review/perl-DBIx-Class-Cursor-Cached-1.001001-1.fc16.src.rpm Koji build: http://koji.fedoraproject.org/koji/taskinfo?taskID=2962504 (In reply to comment #6) > --skipdeps prevents Module::AutoInstall from trying to load modules from CPAN, > in cases a module is missing or an installed module is insufficient. > > I.e. the purpose of --skipdeps here is to prevent M:AI from contacting CPAN and > from trying to go interactive in cases it diagnoses a package's requirements > are not fulfilled. > > This package goes interactive when a package dep is missing > (BR: perl(DB::SQLite) commented out): And with f13 CPAN.pm, it doesn't just go interactive; CPAN will go through its setup process and under mock, gets stuck in a loop (when asking for CPAN mirror, if memory serves). - rpmlint OK
- package must be named according to Guidelines OK
- spec file name must match the base package %{name} OK
- package must meet the Packaging Guidelines OK
- package must be licensed with Fedora approved license OK
- license field must match actual license OK
- text of the license in its own file must be included in %doc OK
- sources must match the upstream source OK
- package MUST successfully compile and build OK
- architecture listed in ExcludeArch MUST have a bug filed in bugzilla OK
- build dependencies must be listed in BuildRequires OK
- handle locales properly with %find_lang macro OK
- shared library files must call ldconfig in %post(un) OK
- packages must NOT bundle system libraries OK
- package must own all directories that it creates OK
- permissions on files must be set properly OK
- package must consistently use macros OK
- package must contain code, or permissable content OK
- large documentation must go in a -doc OK
- %doc must not affect the runtime of the application OK
- header files must be in a -devel package OK
- static libraries must be in a -static package OK
- library files that end in .so (without suffix) must go in a -devel OK
- devel package usually require base package OK
- packages must NOT contain any .la libtool archives OK
- GUI applications must include a %{name}.desktop file OK
- packages must not own files or directories already owned by other packages OK
resolvedeps-f16 perl-DBIx-Class-Cursor-Cached-1.001001-1.fc16.noarch.rpm
Binary dependencies resolvable. Ok.
rpm -qp --provides perl-
perl-CGI-Application-Plugin-RequireSSL-0.04-1.fc15.noarch.rpm perl-DBIx-Class-Cursor-Cached-1.001001-1.fc16.noarch.rpm
rpm -qp --provides perl-DBIx-Class-Cursor-Cached-1.001001-1.fc16.noarch.rpm
perl(DBIx::Class::Cursor::Cached) = 1.001001
perl-DBIx-Class-Cursor-Cached = 1.001001-1.fc16
rpm -qp --requires perl-DBIx-Class-Cursor-Cached-1.001001-1.fc16.noarch.rpm
perl(Carp::Clan) >= 6.0
perl(DBIx::Class) >= 0.08124
perl(:MODULE_COMPAT_5.12.3)
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(CompressedFileNames) <= 3.0.4-1
perl >= 0:5.008001
perl(Digest::SHA1)
perl(Storable)
perl(strict)
perl(vars)
perl(warnings)
rpmlib(PayloadIsXz) <= 5.2-1
(For the record it would build fine in rawhide. Older Fedora would need updates of packages).
APPROVED
(In reply to comment #9) > (For the record it would build fine in rawhide. Older Fedora would need updates > of packages). It's been so long, I'd forgotten why I needed it in the first place - a new requirement for latest Catalyst-Model-DBIC-Schema, so I'm not in a desperate rush to push it to the branches. > APPROVED Thanks, as always. New Package SCM Request ======================= Package Name: perl-DBIx-Class-Cursor-Cached Short Description: Cursor class with built-in caching support Owners: iarnell Branches: f13 f14 f15 InitialCC: perl-sig Git done (by process-git-requests). perl-DBIx-Class-Cursor-Cached-1.001001-1.fc15 has been submitted as an update for Fedora 15. https://admin.fedoraproject.org/updates/perl-DBIx-Class-Cursor-Cached-1.001001-1.fc15 perl-DBIx-Class-Cursor-Cached-1.001001-1.fc15 has been pushed to the Fedora 15 testing repository. perl-DBIx-Class-Cursor-Cached-1.001001-1.fc15 has been pushed to the Fedora 15 stable repository. |