Bug 1026764 - Review Request: uhttpmock - HTTP web service mocking library
Review Request: uhttpmock - HTTP web service mocking library
Status: CLOSED ERRATA
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
unspecified Severity medium
: ---
: ---
Assigned To: Cole Robinson
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2013-11-05 06:47 EST by Philip Withnall
Modified: 2014-03-27 23:14 EDT (History)
4 users (show)

See Also:
Fixed In Version: uhttpmock-0.2.0-1.fc20
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2014-03-27 23:14:39 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
crobinso: fedora‑review+
limburgher: fedora‑cvs+


Attachments (Terms of Use)

  None (edit)
Description Philip Withnall 2013-11-05 06:47:42 EST
Spec URL: http://people.collabora.co.uk/~pwith/packaging/uhttpmock.spec
SRPM URL: http://people.collabora.co.uk/~pwith/packaging/uhttpmock-0.2.0-1.fc19.src.rpm
Description: Mocking test utility for HTTP and HTTPS web APIs
Fedora Account System Username: pwithnall

I am the upstream maintainer. This is my second package, and I need a sponsor (my first package is bug #1026432).
Comment 2 Christopher Meng 2013-11-05 07:04:59 EST
Like ur first package, please use %global instead of %define.

Initial thoughts:

1. Remove obsoleted lines for EL5 only:
BuildRoot
%clean
%defattr(-,root,root,-)

2. URL is https://gitorious.org/uhttpmock/.

3. $RPM_BUILD_ROOT/%{_libdir} --> $RPM_BUILD_ROOT%{_libdir}

4. Missing %{?_isa} macro of Requires in -devel subpackage, which actually should be:

Requires:       %{name}%{?_isa} = %{version}-%{release}

5. Some fields in -devel subpackage is not good.
Summary: Header files, libraries and development documentation for %{name}

%description devel
This package contains the header files, static libraries and development
documentation for %{name}. If you like to develop programs using %{name},
you will need to install %{name}-devel.

Well I think this is bogus...First there is no static libs, second it's too long...

Should be:

Summary:            Development files for %{name}

%description       devel
This package contains libraries, header files and documentation for
developing applications that use %{name}.

6. %{_includedir}/libuhttpmock-0.0

Your package name is uhttpmock, have you made a decision of which name is better, uhttpmock or libuhttpmock?

And 0.0 stands for what?

7. Summary:        Mocking test utility for HTTP and HTTPS web APIs

Isn't it a library?

From pc file: HTTP web service mocking library

From homepage: A HTTP web service mocking library for GNOME

Ideas?

---------------

I'm not a sponsor, please take a look at:
http://fedoraproject.org/wiki/Join_the_package_collection_maintainers
Comment 3 Philip Withnall 2013-11-06 04:12:52 EST
Updated spec file: http://people.collabora.co.uk/~pwith/packaging/uhttpmock.spec
Updated SRPM URL: http://people.collabora.co.uk/~pwith/packaging/uhttpmock-0.2.0-1.fc19.src.rpm
Latest Koji build: http://koji.fedoraproject.org/koji/taskinfo?taskID=6143116

(In reply to Christopher Meng from comment #2)
> Like ur first package, please use %global instead of %define.

Fixed.

> 1. Remove obsoleted lines for EL5 only:
> BuildRoot
> %clean
> %defattr(-,root,root,-)

Fixed. I got them from https://fedoraproject.org/wiki/How_to_create_an_RPM_package#SPEC_templates_and_examples; would it be wise to update that page?

> 2. URL is https://gitorious.org/uhttpmock/.

Fixed.

> 3. $RPM_BUILD_ROOT/%{_libdir} --> $RPM_BUILD_ROOT%{_libdir}

Fixed.

> 4. Missing %{?_isa} macro of Requires in -devel subpackage, which actually
> should be:

Fixed.

> 5. Some fields in -devel subpackage is not good.

Fixed.

> 6. %{_includedir}/libuhttpmock-0.0
> 
> Your package name is uhttpmock, have you made a decision of which name is
> better, uhttpmock or libuhttpmock?

uhttpmock is the project name, libuhttpmock is a library which is part of the project. I full expect that a ‘uhttpmock’ program will be added to the project in future, hence I carefully chose to use ‘uhttpmock’ and ‘libuhttpmock’ in appropriate places.

> And 0.0 stands for what?

The API version of libuhttpmock, so that API-incompatible versions can be parallel installed. I’ve updated the spec file to move this into a %global.

> 7. Summary:        Mocking test utility for HTTP and HTTPS web APIs
> 
> Isn't it a library?

See above.

> From pc file: HTTP web service mocking library
> 
> From homepage: A HTTP web service mocking library for GNOME

I’ve unified these.

Thanks for your help!
Comment 4 Cole Robinson 2014-02-26 20:36:07 EST
Unless you are planning on building for EPEL, you can drop the Group: tags:

https://fedoraproject.org/wiki/Packaging:Guidelines#Group_tag


rpmlint gives:

uhttpmock.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libuhttpmock-0.0.so.0.0.1 /lib64/libgthread-2.0.so.0
uhttpmock.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libuhttpmock-0.0.so.0.0.1 /lib64/libpthread.so.0

'git grep gthread' and some poking seems to show that gthread doesn't appear to be used at all, except in configure and the pkgconfig file. (I might be missing something though, not too savvy here)


Mark the gtk-doc bits with %doc


It seems inconsistent to use explicit file listing like:

%{_datadir}/vala/vapi/libuhttpmock-%{uhm_api_version}.dep

Mixed with wildcards like:

%{_libdir}/*.so

I'd recommend to standardize on using all explicit paths.


It appears the package has tests, consider running them in a %check section if it's safe to do so.
Comment 5 Philip Withnall 2014-03-06 11:06:40 EST
Updated spec file: http://people.collabora.co.uk/~pwith/packaging/uhttpmock.spec
Updated SRPM URL: http://people.collabora.co.uk/~pwith/packaging/uhttpmock-0.2.0-1.fc19.src.rpm
Latest Koji builds:
 • f19: http://koji.fedoraproject.org/koji/taskinfo?taskID=6605664
 • f20: http://koji.fedoraproject.org/koji/taskinfo?taskID=6605665
 • f21: http://koji.fedoraproject.org/koji/taskinfo?taskID=6605666

(In reply to Cole Robinson from comment #4)
> Unless you are planning on building for EPEL, you can drop the Group: tags:
> 
> https://fedoraproject.org/wiki/Packaging:Guidelines#Group_tag

Removed.

> rpmlint gives:
> 
> uhttpmock.x86_64: W: unused-direct-shlib-dependency
> /usr/lib64/libuhttpmock-0.0.so.0.0.1 /lib64/libgthread-2.0.so.0
> uhttpmock.x86_64: W: unused-direct-shlib-dependency
> /usr/lib64/libuhttpmock-0.0.so.0.0.1 /lib64/libpthread.so.0
> 
> 'git grep gthread' and some poking seems to show that gthread doesn't appear
> to be used at all, except in configure and the pkgconfig file. (I might be
> missing something though, not too savvy here)

Dropped upstream: https://gitorious.org/uhttpmock/uhttpmock/commit/45c22b046dff336113d7b812da6ada0675d4bcc7
This can get picked up in the RPM with the next release of uhttpmock (not yet made).

> Mark the gtk-doc bits with %doc

Fixed.

> It seems inconsistent to use explicit file listing like:
> 
> %{_datadir}/vala/vapi/libuhttpmock-%{uhm_api_version}.dep
> 
> Mixed with wildcards like:
> 
> %{_libdir}/*.so
> 
> I'd recommend to standardize on using all explicit paths.

Fixed. I kept a wildcard for the SO version.

> It appears the package has tests, consider running them in a %check section
> if it's safe to do so.

Ah, excellent. Added, and they all pass. Thanks!
Comment 6 Cole Robinson 2014-03-06 11:56:53 EST
> 
> Dropped upstream:
> https://gitorious.org/uhttpmock/uhttpmock/commit/
> 45c22b046dff336113d7b812da6ada0675d4bcc7
> This can get picked up in the RPM with the next release of uhttpmock (not
> yet made).

Sounds good.

New version looks good to me now, setting fedora-review+
Comment 7 Philip Withnall 2014-03-10 18:49:07 EDT
New Package SCM Request
=======================
Package Name: uhttpmock
Short Description: HTTP web service mocking library
Owners: pwithnall
Branches: f19 f20
Comment 8 Gwyn Ciesla 2014-03-11 08:06:15 EDT
Git done (by process-git-requests).
Comment 9 Fedora Update System 2014-03-13 11:29:06 EDT
uhttpmock-0.2.0-1.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/uhttpmock-0.2.0-1.fc19
Comment 10 Fedora Update System 2014-03-13 11:30:19 EDT
uhttpmock-0.2.0-1.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/uhttpmock-0.2.0-1.fc20
Comment 11 Fedora Update System 2014-03-15 11:03:18 EDT
uhttpmock-0.2.0-1.fc19 has been pushed to the Fedora 19 testing repository.
Comment 12 Fedora Update System 2014-03-27 23:14:39 EDT
uhttpmock-0.2.0-1.fc19 has been pushed to the Fedora 19 stable repository.
Comment 13 Fedora Update System 2014-03-27 23:14:52 EDT
uhttpmock-0.2.0-1.fc20 has been pushed to the Fedora 20 stable repository.

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