Skip to content

Releases: takaswie/libhinoko

libhinoko v0.8.0 release

18 Dec 06:50
v0.8.0
Compare
Choose a tag to compare

The release includes renames for each type of object class for isochronous context.

  • Hinoko.FwIsoIrSingle from Hinoko.FwIsoRxSingle for IR context of packet-per-buffer mode
  • Hinoko.FwIsoIrMultiple from Hinoko.FwIsoRxMultiple for IR context of buffer-fill mode
  • Hinoko.FwIsoIt from Hinoko.FwIsoTx for IT context
  • enuerations in Hinoko.FwIsoCtxMode
    • Hinoko.FwIsoCtxMode.IR_SINGLE from Hinoko.FwIsoCtxMode.RX_SINGLE
    • Hinoko.FwIsoCtxMode.IR_MULTIPLE from Hinoko.FwIsoCtxMode.RX_MULTIPLE
    • Hinoko.FwIsoCtxMode.IT from Hinoko.FwIsoCtxMode.TX

Old symbols are obsoleted and deleted, thus it loses backward compatibility to old releases.
I wish this is the last development version for stable release.

libhinoko version 0.7.4 release

01 Dec 08:03
v0.7.4
Compare
Choose a tag to compare

This micro release includes some bug fixes.

The call of ioctl(2) with FW_CDEV_IOC_FLUSH_ISO requires one argument,
while current implementation passes no argument. As a result, the call
returns EFAULT always. The release fixes the bug.

libhinoko version 0.7.3 release

24 Nov 04:04
v0.7.3
Compare
Choose a tag to compare

This micro release includes some bug fixes.

When calling Hinoko.FwIsoRxSingle.get_payload(), user application can
retrieve context payload greater than actual length by 8 in the case
that the length of context header is greater than 8. It's due to wrong
calculation for the length of context payload.

Additionally, Hinoko.FwIsoRxSingle.map_buffer() is not documented property
due to missing annotation.

Furthermore, documentation for some public APIs includes wrong numeric
number for CLOCK_MONOTONIC_RAW macro in Linux environment.

The release fixes them. The URL of documentation is changed as well since
it's the part of gobject-introspection team of alsa-project project in
github.com.

Version 0.7.2 release

30 Jun 03:07
v0.7.2
Compare
Choose a tag to compare

This micro release includes refinement of test scripts, complement of
inclusion guard, and some minor fixes.

Version 0.7.1 release

26 May 13:30
v0.7.1
Compare
Choose a tag to compare

The maintenance release includes annotation fixes and minor bug in function prototype of Hinoko.FwIsoResource.allocate_async() and .allocate_sync().

v0.7.0 release

08 May 09:48
v0.7.0
Compare
Choose a tag to compare

The release includes heavy changes and lose backward compatibility. The largest change is that all of included GObject-derived object classes implements two GObject Interface instead of inheritance of them. Hinoko.FwIsoCtx is an interface to operate isochronous context defined in 1394 OHCI specification. Hinoko.FwIsoResource is an interface to operate isochronous resource via UAPI of Linux FireWire subsystem.

Hinoko.FwIsoRxSingle is for packet-per-buffer mode of IR context, while Hinoko.FwIsoRxMultiple is for buffer-fill mode of IR context. Hinoko.FwIsoTx is for IT context.

Hinoko.FwIsoResourceAuto is for isochronous resource maintained by Linux FireWire subsystem, while Hinoko.FwIsoResourceOnce is for isochornous resource allocation/deallocation bound to generation of bus topology.

The most of public API is rewritten and bound to 0.7.0 symbol table, thus existent applications are forced to be rewritten and rebuilt, sorry. Please refer to README.rst for details.

This large change is a preparation for future v1.0.0 stable release.

Version 0.6.0 release

19 Dec 01:08
v0.6.0
Compare
Choose a tag to compare

Version 0.6.0 release

In this release, the minor part of version is incremented so that some
APIs are newly public to support control flow without scheduling hardware
interrupt.

Linux FireWire subsystem supports flushing operation to process content of
isochronous packets processed until recent isochronous cycle. When using the
operation with enough length of packet queue, applications can process the
content without scheduling hardware interrupt.

Supporting the operation brings some changes to APIs available since the
first release, therefore libhinoko loses backward compatibility between
v0.5 and v0.6 release. I'm sorry for users, but please figure out that
the status of libhinoko is still under development. Below APIs got change
to break the compatibility:

  • hinoko_fw_iso_tx_start()
  • hinoko_fw_iso_tx_register_packet()
  • hinoko_fw_iso_rx_single_start()

Below APIs are newly added:

  • hinoko_fw_iso_rx_single_register_packet()
  • hinoko_fw_iso_ctx_flush_completions()

The documentations for the above APIs and each type of interrupt event
are updated. Please refer to them if you are interested in the control
flow to process packets, hardware interrupts, and interrupt event.

Version 0.5.1 release

12 Dec 09:21
v0.5.1
Compare
Choose a tag to compare

In this release, the micro part of version is incremented so that some
bugs are fixed. The fixed bugs are:

  • Hinawa.FwIsoCtx reports wrong type of error (Hinawa.FwIsoResource)
  • warning due to deprecation of g_memdup() in GLib v2.68

Version 0.5.0 release

30 Aug 23:57
Compare
Choose a tag to compare

In this release, the minor part of version is incremented so that some
symbols are newly available as public API for new features. The new
features are mainly for error reporting.

In the initial release, libhinoko have used GError for error reporting.
However the implementation is not necessarily following to guidelines of
GError. In the release, the implementation is improved for enhancement.

Firstly, below public symbols are defined for implementation of GQuark and
declared in public headers, so that they can represent unique value for
domains of GError.

  • hinoko_fw_iso_ctx_error_quark()
  • hinoko_fw_iso_resource_error_quark()
  • hinoko_fw_iso_resource_auto_error_quark()

Secondly, below public symbols are defined for implementation of GLib
enumerations and declared in public headers, so that they can represent
actual error code for GError.

  • hinoko_fw_iso_resource_auto_error_get_type()
  • hinoko_fw_iso_ctx_error_get_type()

Thirdly, the prototype of handlers for below GObject signals are changed
to receive argument for the instance of GError so that applications can
get the error of allocation and deallocation operations.

  • HinokoFwIsoResource.allocated
  • HinokoFwIsoResource.deallocated

Finally, many error checks are simplified according to GLib's guideline so
that programming errors should not reported by GError. The error of invalid
arguments and unexpected function call is not handled by GError. In the
cases, function call just returns with warnings.

Version 0.4.0 release

31 May 08:38
Compare
Choose a tag to compare

In this release, some GObject-derived objects are added for allocation of isochronous resource.

  • HinokoFwIsoResource
  • HinokoFwIsoResourceAuto

Additionally, the instances of GQuark is unified into a single one.