Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1484164 - Review Request: libsocketpp - C++ Standard I/O TCP sockets
Summary: Review Request: libsocketpp - C++ Standard I/O TCP sockets
Keywords:
Status: CLOSED DEFERRED
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Neal Gompa
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: FE-NEEDSPONSOR
TreeView+ depends on / blocked
 
Reported: 2017-08-22 23:00 UTC by Charlie Sale
Modified: 2017-09-13 15:33 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-09-13 14:39:22 UTC
Type: ---
Embargoed:
ngompa13: fedora-review?


Attachments (Terms of Use)

Description Charlie Sale 2017-08-22 23:00:47 UTC
Spec URL: https://raw.githubusercontent.com/softwaresale/libsocketpp_rpm_build_files/master/libsocketpp-devel.spec

SRPM URL: https://raw.githubusercontent.com/softwaresale/libsocketpp_rpm_build_files/master/libsocketpp-devel-1.0.0-1.fc26.src.rpm

Description: Libsocketpp is a C++ development library for creating TCP sockets with the standard C++ I/O interface. This means that socket objects will behave like C++'s cout and cin. This project integrates well with existing C TCP socket code.

Note: This is my first package submission to the Fedora Project, so I will need a sponsor. I am the creator and packager for libsocketpp, so I am extra dedicated to the project and spend quite a lot of time on it. 

Also, the package is submitted is technically called libsocketpp-devel because it is a development library and not a standalone package. Please let me know what I need to do to fix this. Thanks!

Fedora Account System Username: softwaresale

Comment 1 Artur Frenszek-Iwicki 2017-08-23 22:48:28 UTC
>Group:		Development/Tools
The "Group:" tag should not be used.
https://fedoraproject.org/wiki/Packaging:Guidelines#Tags_and_Sections

>License:	GPL+
"GPL+" should only be used when upstream doesn't specify the licence version. You're using GPL v3 or later, so the tag should be "GPLv3+".
https://fedoraproject.org/wiki/Licensing:Main#Good_Licenses

Comment 2 Charlie Sale 2017-08-24 01:38:40 UTC
Thanks. I'll get that fixed up. Quick question: because this is a development library, should I add the suffix "-devel" to my package or not?

Comment 3 Rex Dieter 2017-08-24 21:59:24 UTC
don't rename it, it's fine as-is

Comment 4 Charlie Sale 2017-08-24 22:13:54 UTC
Ok. Thanks!

Comment 5 Neal Gompa 2017-08-24 23:00:43 UTC
Well, actually, the package spec needs to be reorganized and the package does need to be slightly renamed...

Here's a relatively simple example of how a library package looks: https://src.fedoraproject.org/rpms/libbluray/blob/master/f/libbluray.spec

Comment 6 Charlie Sale 2017-08-25 01:59:28 UTC
Thanks. I'll get that fixed and uploaded very soon. Are any of you able to formally review my package or sponsor me? That would be really helpful...

Comment 8 Neal Gompa 2017-08-25 04:32:10 UTC
I can sponsor, and I'll take the review.

Comment 9 Charlie Sale 2017-08-25 10:48:14 UTC
Thanks a ton Neal. Let me know if you have 
any questions for me regarding sponsorship. My email is <chucks.8090>

Comment 10 Charlie Sale 2017-09-01 21:17:27 UTC
Hey Neal. Can I have an update on the review process of my package? Is there anything I can fix for you?

Comment 11 Neal Gompa 2017-09-13 09:42:21 UTC
> %autosetup -n %{name}-%{version}

This is redundant, just use "%autosetup", as "-n %{name}-%{version}" is the default

> make %{?_smp_mflags}

Use %make_build

> rm -f $RPM_BUILD_ROOT/%{_infodir}/dir
> rm -f $RPM_BUILD_ROOT/%{_libdir}/libsocketpp.la

Use %{buildroot} instead of $RPM_BUILD_ROOT

> ldconfig

Use "/sbin/ldconfig"

> %postun
> ldconfig

Use "%postun -p /sbin/ldconfig"

Comment 12 Neal Gompa 2017-09-13 09:47:25 UTC
> %global gittag0 v1.0.0

This is unnecessary, as %{version} is already defined at 1.0.0

> Source0:        https://github.com/softwaresale/%{name}/archive/%{gittag0}/%{name}-%{version}.tar.gz

Change usage of "%{gittag0}" to "v%{version}". This lets you control the version bump from a single location.

Comment 13 Charlie Sale 2017-09-13 14:38:40 UTC
Hey Neal

I am actually retracting my submission due to C++20 releasing a networking library, which makes libsocketpp redundant and therefore unnecessary. Thanks for your time anyways!

Comment 14 Jonathan Wakely 2017-09-13 15:33:14 UTC
This code leaks memory and doesn't close sockets.

Fedora already has a number of mature C++ libraries providing similar functionality (boost-asio, asio, poco-net, ...) so I don't see why we would want this anyway.


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