Bug 243916

Summary: [NEW PORT] misc/biblesync: Multicast shared co-navigation library for Bible programs
Product: Ports & Packages Reporter: Lorenzo Salvadore <salvadore>
Component: Individual Port(s)Assignee: freebsd-ports-bugs (Nobody) <ports-bugs>
Status: Closed FIXED    
Severity: Affects Only Me CC: tcberner
Priority: ---    
Version: Latest   
Hardware: Any   
OS: Any   
URL: https://github.com/karlkleinpaste/biblesync
Bug Depends on:    
Bug Blocks: 243934    
Attachments:
Description Flags
biblesync port creation
salvadore: maintainer-approval+
biblesync new port 2 salvadore: maintainer-approval+

Description Lorenzo Salvadore freebsd_committer freebsd_triage 2020-02-05 22:30:57 UTC
Created attachment 211399 [details]
biblesync port creation

Tested successfully with poudriere on {11.3,12.1}-RELEASE {i386,amd64}.

-------------------------------------------------------
This is a C++ single class library encapsulating a protocol conduit.  The
premise is that there is a local network over which to multicast Bible
navigation, and someone, possibly several someones, will transmit, and others
will receive.  The choices for when you decide to xmit and what to do when you
recv are up to you as the application designer.

Access to the conduit is by creating the object, setting the mode, calling
Transmit() to xmit nav events, and arranging the frequent polling of Receive()
to recv nav events.  There is more than just navigation to be handled; there
are live/dead events for potential Speakers as well as mismatches, presence
announcements, and errors.  There is a programming reference biblesync.7 which
explains the details, both from a high level view of the essentials of the
protocol's behavior and at a low level of how you create, access, and use the
conduit class.  The (single) BibleSync object should persist throughout the
life of your application, but at any time you can set the mode to "disable,"
and preferably stop the receive polling, and then re-enable it later as the
user needs.
-------------------------------------------------------
Comment 1 Lorenzo Salvadore freebsd_committer freebsd_triage 2020-02-06 11:19:25 UTC
Created attachment 211409 [details]
biblesync new port 2

The official release has a know bug: https://github.com/karlkleinpaste/biblesync/issues/9

I patched my Makefile to include the temporary solution.
Comment 2 Tobias C. Berner freebsd_committer freebsd_triage 2020-02-23 07:21:07 UTC
Committed. Thanks.
Comment 3 commit-hook freebsd_committer freebsd_triage 2020-02-23 07:22:43 UTC
A commit references this bug:

Author: tcberner
Date: Sun Feb 23 07:21:51 UTC 2020
New revision: 526881
URL: https://svnweb.freebsd.org/changeset/ports/526881

Log:
  New port: misc/biblesync: Multicast shared co-navigation library for Bible programs

  This is a C++ single class library encapsulating a protocol conduit.  The
  premise is that there is a local network over which to multicast Bible
  navigation, and someone, possibly several someones, will transmit, and others
  will receive.  The choices for when you decide to xmit and what to do when you
  recv are up to you as the application designer.

  Access to the conduit is by creating the object, setting the mode, calling
  Transmit() to xmit nav events, and arranging the frequent polling of Receive()
  to recv nav events.  There is more than just navigation to be handled; there
  are live/dead events for potential Speakers as well as mismatches, presence
  announcements, and errors.  There is a programming reference biblesync.7 which
  explains the details, both from a high level view of the essentials of the
  protocol's behavior and at a low level of how you create, access, and use the
  conduit class.  The (single) BibleSync object should persist throughout the
  life of your application, but at any time you can set the mode to "disable,"
  and preferably stop the receive polling, and then re-enable it later as the
  user needs.

  Much work has been done in integrating this library into its first application,
  Xiphos.  It is useful to examine Xiphos' code to see where and how integration
  has been done.  Get a Xiphos source tree using:
  git clone https://github.com/crosswire/xiphos

  WWW: https://github.com/karlkleinpaste/biblesync

  PR:		243916
  Submitted by:	salvadore

Changes:
  head/misc/Makefile
  head/misc/biblesync/
  head/misc/biblesync/Makefile
  head/misc/biblesync/distinfo
  head/misc/biblesync/pkg-descr
  head/misc/biblesync/pkg-plist