Bug 497948

Summary: Review Request: mulk - Non-interactive multi-connection network downloader with image filtering and Metalink support.
Product: [Fedora] Fedora Reporter: Ant Bryan <anthonybryan>
Component: Package ReviewAssignee: Susi Lehtola <susi.lehtola>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: fedora-package-review, notting, pahan, susi.lehtola
Target Milestone: ---Flags: susi.lehtola: fedora-review+
j: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: 0.4.1-2.fc11 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-05-28 22:27:47 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 497947    
Bug Blocks:    

Description Ant Bryan 2009-04-28 03:00:46 UTC
Spec URL: http://pastebin.ca/1405677
SRPM URL: http://www.metalinker.org/mirrors/mulk/mulk-0.4.0-1.fc10.src.rpm
Description: Multi-connection command line tool for downloading Internet sites with image filtering and Metalink support. Similar to wget and cURL, but it manages up to 50 simultaneous and parallel links. Main features are: HTML code parsing, recursive fetching, Metalink retrieving, segmented download and image filtering by width and height.

Comment 1 Ant Bryan 2009-04-29 04:36:28 UTC
Spec URL: http://pastebin.ca/1406989
SRPM URL: http://www.metalinker.org/mirrors/mulk/mulk-0.4.0-1.fc10.src.rpm

One tiny change
BuildRequires:  libmetalink-devel

Comment 2 Susi Lehtola 2009-05-07 07:10:05 UTC
You're missing at least BuildRequires: libjpeg-devel. Doesn't build in mock.

Comment 3 Susi Lehtola 2009-05-07 07:21:11 UTC
Okay, after adding libjpeg-devel builds.

However, the package uses its own versions of libmetalink and uri, which is not allowed. You have already packaged libmetalink; there isn't a package of uri yet. You need to make one and patch this package to use the packaged versions of libmetalink and uri.


https://gna.org/projects/uri/

Comment 4 Ant Bryan 2009-05-13 17:44:20 UTC
(In reply to comment #3)
> Okay, after adding libjpeg-devel builds.

This is fixed upstream. Thanks for pointing it out!

> However, the package uses its own versions of libmetalink and uri, which is not
> allowed. You have already packaged libmetalink; there isn't a package of uri
> yet. You need to make one and patch this package to use the packaged versions
> of libmetalink and uri.
> 
> 
> https://gna.org/projects/uri/  

I found out that uri has not been maintained for 8 years, but a similar library called uriparser is actively developed.

The current plan upstream is to switch to uriparser ( http://uriparser.sourceforge.net/ ) which is already packaged for Fedora & other distributions.

Comment 5 Ant Bryan 2009-05-24 21:31:35 UTC
(In reply to comment #4)
> (In reply to comment #3)
> > Okay, after adding libjpeg-devel builds.
> 
> This is fixed upstream. Thanks for pointing it out!

This is included in new upstream release, 0.4.1
 
> > However, the package uses its own versions of libmetalink and uri, which is not
> > allowed. You have already packaged libmetalink; there isn't a package of uri
> > yet. You need to make one and patch this package to use the packaged versions
> > of libmetalink and uri.
> > 
> > 
> > https://gna.org/projects/uri/  
> 
> I found out that uri has not been maintained for 8 years, but a similar library
> called uriparser is actively developed.
> 
> The current plan upstream is to switch to uriparser (
> http://uriparser.sourceforge.net/ ) which is already packaged for Fedora &
> other distributions.  

Upstream has switched from uri to uriparser.

The package no longer uses its own version of libmetalink.

* Sun May 24 2009 Ant Bryan <anthonybryan at gmail.com> - 0.4.1-1
- Upstream release 0.4.1, change from liburi to uriparser
- Add BuildRequires: uriparser-devel
- Remove BuildRequires: libjpeg-devel

Spec URL: http://pastebin.ca/1433317
SRPM URL: http://www.metalinker.org/mirrors/mulk/mulk-0.4.1-1.fc10.src.rpm

Comment 6 Susi Lehtola 2009-05-25 07:30:51 UTC
rpmlint output:
mulk-debuginfo.x86_64: W: spurious-executable-perm /usr/src/debug/mulk-0.4.1/src/uri_parser.c
3 packages and 0 specfiles checked; 0 errors, 1 warnings.

- Fix this in setup phase.


MUST: The spec file for the package is legible and macros are used consistently. OK
MUST: The package must be named according to the Package Naming Guidelines. OK
MUST: The spec file name must match the base package %{name}. OK
MUST: The package must be licensed with a Fedora approved license and meet the  Licensing Guidelines. OK
MUST: The License field in the package spec file must match the actual license. OK
MUST: The sources used to build the package must match the upstream source, as provided in the spec URL. OK
MUST: The package MUST successfully compile and build into binary rpms. OK
MUST: The spec file MUST handle locales properly. N/A
MUST: Optflags are used and time stamps preserved. OK
MUST: Packages containing shared library files must call ldconfig. N/A
MUST: A package must own all directories that it creates or require the package that owns the directory. OK
MUST: Files only listed once in %files listings. OK
MUST: Debuginfo package is complete. OK
MUST: Permissions on files must be set properly. OK
MUST: Clean section exists. OK
MUST: Large documentation files must go in a -doc subpackage. N/A

MUST: All relevant items are included in %doc. Items in %doc do not affect runtime of application. NEEDSWORK
- Add THANKS and TODO.

MUST: Header files must be in a -devel package. N/A
MUST: Static libraries must be in a -static package. N/A
MUST: Packages containing pkgconfig(.pc) files must 'Requires: pkgconfig'. N/A
MUST: If a package contains library files with a suffix then library files ending in .so must go in a -devel package. N/A
MUST: In the vast majority of cases, devel packages must require the base package using a fully versioned dependency. N/A
MUST: Packages does not contain any .la libtool archives. N/A
MUST: Desktop files are installed properly. N/A
MUST: No file conflicts with other packages and no general names. OK
MUST: Buildroot cleaned before install. OK
SHOULD: %{?dist} tag is used in release. OK
SHOULD: If the package does not include license text(s) as separate files from upstream, the packager should query upstream to include it. OK
SHOULD: The package builds in mock. OK


Fix the above before import to CVS. The package has been

APPROVED

Comment 7 Ant Bryan 2009-05-25 18:20:45 UTC
(In reply to comment #6)
> rpmlint output:
> mulk-debuginfo.x86_64: W: spurious-executable-perm
> /usr/src/debug/mulk-0.4.1/src/uri_parser.c
> 3 packages and 0 specfiles checked; 0 errors, 1 warnings.
> 
> - Fix this in setup phase.

Thanks, I had not been using rpmlint on debuginfo packages.

rpmlint mulk-0.4.1-2.fc10.i386.rpm mulk-debuginfo-0.4.1-2.fc10.i386.rpm 
2 packages and 0 specfiles checked; 0 errors, 0 warnings.

> MUST: The spec file for the package is legible and macros are used
> consistently. OK
> MUST: The package must be named according to the Package Naming Guidelines. OK
> MUST: The spec file name must match the base package %{name}. OK
> MUST: The package must be licensed with a Fedora approved license and meet the 
> Licensing Guidelines. OK
> MUST: The License field in the package spec file must match the actual license.
> OK
> MUST: The sources used to build the package must match the upstream source, as
> provided in the spec URL. OK
> MUST: The package MUST successfully compile and build into binary rpms. OK
> MUST: The spec file MUST handle locales properly. N/A
> MUST: Optflags are used and time stamps preserved. OK
> MUST: Packages containing shared library files must call ldconfig. N/A
> MUST: A package must own all directories that it creates or require the package
> that owns the directory. OK
> MUST: Files only listed once in %files listings. OK
> MUST: Debuginfo package is complete. OK
> MUST: Permissions on files must be set properly. OK
> MUST: Clean section exists. OK
> MUST: Large documentation files must go in a -doc subpackage. N/A
> 
> MUST: All relevant items are included in %doc. Items in %doc do not affect
> runtime of application. NEEDSWORK
> - Add THANKS and TODO.

Done!

> MUST: Header files must be in a -devel package. N/A
> MUST: Static libraries must be in a -static package. N/A
> MUST: Packages containing pkgconfig(.pc) files must 'Requires: pkgconfig'. N/A
> MUST: If a package contains library files with a suffix then library files
> ending in .so must go in a -devel package. N/A
> MUST: In the vast majority of cases, devel packages must require the base
> package using a fully versioned dependency. N/A
> MUST: Packages does not contain any .la libtool archives. N/A
> MUST: Desktop files are installed properly. N/A
> MUST: No file conflicts with other packages and no general names. OK
> MUST: Buildroot cleaned before install. OK
> SHOULD: %{?dist} tag is used in release. OK
> SHOULD: If the package does not include license text(s) as separate files from
> upstream, the packager should query upstream to include it. OK
> SHOULD: The package builds in mock. OK
> 
> 
> Fix the above before import to CVS. The package has been
> 
> APPROVED  

Thanks for your time and help, Jussi! I think the package upstream has been improved and your comments will make it easier for mulk to be packaged elsewhere too!



New Package CVS Request
=======================
Package Name: mulk
Short Description: Multi-connection network downloader with Metalink support
Owners: ant
Branches: F-9 F-10 F-11
InitialCC:

Comment 8 Jason Tibbitts 2009-05-26 22:36:35 UTC
CVS done.

Comment 9 Fedora Update System 2009-05-28 22:14:50 UTC
mulk-0.4.1-2.fc10 has been submitted as an update for Fedora 10.
http://admin.fedoraproject.org/updates/mulk-0.4.1-2.fc10

Comment 10 Fedora Update System 2009-05-28 22:14:55 UTC
mulk-0.4.1-2.fc11 has been submitted as an update for Fedora 11.
http://admin.fedoraproject.org/updates/mulk-0.4.1-2.fc11

Comment 11 Fedora Update System 2009-05-28 22:14:59 UTC
mulk-0.4.1-2.fc9 has been submitted as an update for Fedora 9.
http://admin.fedoraproject.org/updates/mulk-0.4.1-2.fc9

Comment 12 Fedora Update System 2009-06-02 14:17:53 UTC
mulk-0.4.1-2.fc9 has been pushed to the Fedora 9 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 13 Fedora Update System 2009-06-02 14:34:33 UTC
mulk-0.4.1-2.fc10 has been pushed to the Fedora 10 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 14 Fedora Update System 2009-06-02 14:35:18 UTC
mulk-0.4.1-2.fc11 has been pushed to the Fedora 11 stable repository.  If problems still persist, please make note of it in this bug report.