Releases: takaswie/libhinoko
libhinoko v0.8.0 release
The release includes renames for each type of object class for isochronous context.
Hinoko.FwIsoIrSingle
fromHinoko.FwIsoRxSingle
for IR context of packet-per-buffer modeHinoko.FwIsoIrMultiple
fromHinoko.FwIsoRxMultiple
for IR context of buffer-fill modeHinoko.FwIsoIt
fromHinoko.FwIsoTx
for IT context- enuerations in
Hinoko.FwIsoCtxMode
Hinoko.FwIsoCtxMode.IR_SINGLE
fromHinoko.FwIsoCtxMode.RX_SINGLE
Hinoko.FwIsoCtxMode.IR_MULTIPLE
fromHinoko.FwIsoCtxMode.RX_MULTIPLE
Hinoko.FwIsoCtxMode.IT
fromHinoko.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
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
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
This micro release includes refinement of test scripts, complement of
inclusion guard, and some minor fixes.
Version 0.7.1 release
The maintenance release includes annotation fixes and minor bug in function prototype of Hinoko.FwIsoResource.allocate_async() and .allocate_sync().
v0.7.0 release
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
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
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
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
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.