Bug 204911 - net/nanomsg: Update 0.8-beta
Summary: net/nanomsg: Update 0.8-beta
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: Thomas Zander
URL:
Keywords: easy, patch, patch-ready
Depends on:
Blocks:
 
Reported: 2015-11-30 11:53 UTC by Jan Bramkamp
Modified: 2015-12-07 10:18 UTC (History)
4 users (show)

See Also:
crest: maintainer-feedback+


Attachments
Patch from nanomsg-0.5 to nanomsg-0.8.b (5.61 KB, patch)
2015-11-30 11:53 UTC, Jan Bramkamp
no flags Details | Diff
Patch from nanomsg-0.5 to nanomsg-0.8.b (with separate MAN and DOCS options) (5.61 KB, patch)
2015-11-30 14:09 UTC, Jan Bramkamp
no flags Details | Diff
Patch from nanomsg-0.5 to nanomsg-0.8.b (with separate MAN and DOCS options) (5.73 KB, patch)
2015-11-30 14:15 UTC, Jan Bramkamp
no flags Details | Diff
Patch from nanomsg-0.5 to nanomsg-0.8.b (change option name from MAN to MANPAGES) (5.97 KB, patch)
2015-11-30 14:48 UTC, Jan Bramkamp
crest: maintainer-approval+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jan Bramkamp 2015-11-30 11:53:58 UTC
Created attachment 163682 [details]
Patch from nanomsg-0.5 to nanomsg-0.8.b

Update the net/nanomsg port to nanomsg version 0.8-beta, fix the DOCS option and adapt the port to fetch the source from the official github.com repo.
Comment 1 Kubilay Kocak freebsd_committer freebsd_triage 2015-11-30 13:03:59 UTC
I believe DOCS should be separate from MAN pages, which should be installed by default unless disabled by a MANPAGES option.

You can also use post-install-DOCS-on: to make the target conditional on DOCS being enabled
Comment 2 Jan Bramkamp 2015-11-30 13:15:46 UTC
The HTML docs and manpages are generated from the same sources and require the same dependencies (asciidoc and xmlto). The resulting HTML documentation and manpages are tiny and not known to conflict with any other port. The only reason I made the documentation optional is to avoid the build dependencies on xmlto and asciidoc. In my opinion there is no good reason to generate but not install the HTML documentation.
Comment 3 Kubilay Kocak freebsd_committer freebsd_triage 2015-11-30 13:25:03 UTC
(In reply to Jan Bramkamp from comment #2)

That all certainly makes sense, and thank you for adding in conditional dependency options. It may be worth considering the impact on the nanomsg binary package in particular (and package users in general), where manual pages are useful, and the build dependencies are not necessary.

This is one of the reasons why man pages are highly desirable by default, even if there is an option to disable them (for those that don't like extra dependencies).

While separate DOCS and MANPAGES option may add additional (requisite) complexity to the port, I would argue it provides the most benefit for all users, without removal of choice which aligns with the spirit of this change.
Comment 4 Jan Bramkamp 2015-11-30 14:09:14 UTC
Created attachment 163688 [details]
Patch from nanomsg-0.5 to nanomsg-0.8.b (with separate MAN and DOCS options)

It turned out to be easier than expected to split the manpages from the other HTML documentation but I still argue that the HTML documentation is worth including by default as hyperlinked documentation is very useful when developing against a library. 

While it makes a difference of ca. 780KB in flat package size both amd64 packages (with manpages and HTML docs, just with manpages) compress to 258K with the default xz compression.

I added the requested option for users with OCD and to provide knobs for knobs to play with.
Comment 5 Kubilay Kocak freebsd_committer freebsd_triage 2015-11-30 14:12:45 UTC
(In reply to Jan Bramkamp from comment #4)

Most if not all ports default to DOCS enabled by default, so that's fine.

The new attachment 163688 [details] appears to have the same contents as the original patch
Comment 6 Jan Bramkamp 2015-11-30 14:15:37 UTC
Created attachment 163689 [details]
Patch from nanomsg-0.5 to nanomsg-0.8.b (with separate MAN and DOCS options)

Upload the correct patch
Comment 7 Kubilay Kocak freebsd_committer freebsd_triage 2015-11-30 14:28:04 UTC
(In reply to Jan Bramkamp from comment #6)

Thanks Jan :)

Can you rename the option to MANPAGES, which has an existing *_DESC in bsd.options.desc.mk so you don't need MANPAGES_DESC in the Makefile
Comment 8 Jan Bramkamp 2015-11-30 14:48:18 UTC
Created attachment 163691 [details]
Patch from nanomsg-0.5 to nanomsg-0.8.b (change option name from MAN to MANPAGES)

Change option name to include man pages from MAN to MANPAGES and change the DOC option description to fit to the default MAN_DESC value from bsd.options.desc.mk.
Comment 9 commit-hook freebsd_committer freebsd_triage 2015-12-05 19:15:37 UTC
A commit references this bug:

Author: riggs
Date: Sat Dec  5 19:14:39 UTC 2015
New revision: 403075
URL: https://svnweb.freebsd.org/changeset/ports/403075

Log:
  Update to upstream version 0.8b, fix DOCS

  - Update from 0.5 to 0.8-beta
  - Fix DOCS option
  - Fetch distfile from github

  PR:		204911
  Submitted by:	crest@bultmann.eu (maintainer)
  Reviewed by:	koobs, riggs

Changes:
  head/net/nanomsg/Makefile
  head/net/nanomsg/distinfo
  head/net/nanomsg/pkg-plist
Comment 10 Thomas Zander freebsd_committer freebsd_triage 2015-12-05 19:19:58 UTC
Thanks for the update!
Just a heads-up: I needed to add a REINPLACE_CMD to make the port respect datadir and install the pkgconfig file in the right location.
Testing with poudriere would have helped you to identify this issue. It's really a valuable tool and worth using.
Best regards
Comment 11 Jan Bramkamp 2015-12-07 10:18:14 UTC
Portlint found the same problem, but `svn diff` ignored the patch directory containing  just the same patch to Makefile.am.