Bug 261103 - devel/libaravis, multimedia/aravis: update to 0.8.20
Summary: devel/libaravis, multimedia/aravis: update to 0.8.20
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: Fernando Apesteguía
URL: https://github.com/AravisProject/arav...
Keywords: cam
Depends on:
Blocks:
 
Reported: 2022-01-11 12:32 UTC by Ivan Rozhuk
Modified: 2022-02-17 09:35 UTC (History)
3 users (show)

See Also:


Attachments
patch (27.48 KB, patch)
2022-01-11 12:32 UTC, Ivan Rozhuk
rozhuk.im: maintainer-approval+
Details | Diff
patch (25.13 KB, patch)
2022-01-13 08:23 UTC, Ivan Rozhuk
rozhuk.im: maintainer-approval+
Details | Diff
patch (25.20 KB, patch)
2022-01-14 12:17 UTC, Ivan Rozhuk
rozhuk.im: maintainer-approval+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ivan Rozhuk 2022-01-11 12:32:09 UTC
Created attachment 230898 [details]
patch

0.8.20
    camera: make set_frame_rate more robust for Basler cameras (Thies)
    misc: add runtime version API (Emmanuel)
    misc: ignore leading spaces in genicam data url (Emmanuel)
    misc: add get_device_manufacturer_info API (Emmanuel)
    qa: fix incorrect memory access (Jose)
    gstreamer: allow to select asynchronous USB mode (Christian)
    windows: fix thread priority helpers (Garfeng)
    meson: fix compilation using meson 0.60 (Emmanuel)
    doc: ubuntu 20.04 build do cimprovements (Brian)


0.8.19
    camera: black level support (Brian)
    camera: GainAbs support for gain setting (Brian)
    camera: FrameBurstStart support for trigger configuration (Emmanuel)
    viewer: minor layout fixes (Emmanuel)
    ci: MSVC improvements (Siim)


0.8.18
    usb3vision: fix header inclusion when USB is disabled (Marc)
    tests: register cache test (Emmanuel)


0.8.17
    windows: Microsoft Visual C++ support (Siim)
    usb3vision: async mode (Takuro, Constantine)
    usb3vision: use GUID for device disambiguation (Takuro)
    test: extend test coverage in arv-test (Emmanuel)
    viewer: in-app notification for save error (Emmanuel)
    camera: make set_trigger more robust (Emmanuel)
    tool: add glob pattern based device and feature selection (Emmanuel)


0.8.16
    ci: use Github actions for linux and macOS (Emmanuel)
    ci: minGW support (Václav)
    gigevision: use proper broadcast addresses during discovery (Václav)
    camera: accessor to float feature increment (Emmanuel)
    camera: make set_trigger more robust (Emmanuel)
    camera: fallback to Continuous mode if SingleFrame is not available
    (Emmanuel)
    viewer: allow to save a snapshot as png or jpeg image (Emmanuel)
    viewer: display all pixel formats in selector (Emmanuel)
    simulator: now works on Windows and macOS (Václav, Emmanuel)
    debug: fix output on Windows (Václav)
    doc: Windows build documentation (Václav)
    tests: new arv-test application for automated testing (Emmanuel)


0.8.15
    gigevision: only disable packet resend after a packet unavailable error
    gigevision: add a new packet timeout for first packet resend request
    doc: improve GvStream property documentation
    code cleanup


0.8.14
    debug: fix debug timestamp on older platforms (Emmanuel)


0.8.13
    viewer: fix incorrect bandwidth and frame rate computation


0.8.12
    usb3vision: initialize stream infos


0.8.11
    stream: add an extensible info API (Emmanuel)
    gvstream: improve packet resend request behaviour in case of unordered gvsp
    packets (Emmanuel)
    gvstream: wait for thread setup during ArvGvStream initialization (Emmanuel)
    gigevision: use MAC as serial number fallback (Emmanuel)
    genicam: fix arv_exposure_mode_to_string (Martin)
    usb3vision: improve error reporting in case of libsub error (Emmanuel)
    usb3vision: automatically detach kernel driver (Emmanuel)
    cameratest: add a test duration parameter (Emmanuel)
    misc: rename internal ArvStatistic to ArvHistogram (Emmanuel)


0.8.10
    arv-tool: make device enumeration faster (Emmanuel)
    debug: rework debug log levels (Emmanuel)
    fakegvcamera: improve streaming reliability - partly fix #499 (Emmanuel)
    gvstream: fix use after reference release - fix #504 (Emmanuel)
    genicam: String node support - fix #507 (Emmanuel)


0.8.9
    windows: build fix (Emmanuel)


0.8.8
The most interesting improvement is a faster finalization of GigEvision device objects.
    gvdevice: faster finalization (Emmanuel)
    arv-camera-test: promote to installed application (Emmanuel)
    applications: fix policy parameter consistency (Emmanuel)
    debug: timestamped and modernized output (Emmanuel)
    genicam: add a range check debug mode (Emmanuel)
    camera: new DeviceSerialNumber getter (Emmanuel)


0.8.7
Aravis should now be usable on the Windows platform. This release also fixes some regressions introduced by the aravis 0.8 new (and less forgiving) error handling.
    camera: ignore Acquisitiontart feature setting failure (Emmanuel)
    camera: fix trigger setting for Basler cameras (Casperoo)
    camera: add set_exposure API (Emmanuel)
    gigevision: Windows support (Václav)
    usb3vision: better error packet handling (Emmanuel)
    genicam: allow get/set float from an int node (Emmanuel)
    genicam: allow multiple pIndex property nodes (Emmanuel)


0.8.6
This release adds an API for enabling at runtime a range check when setting Integer or Float feature value. It also fixes a regression in arv-fake-gv-camera utility, where it was not possible to set the listening interface anymore.
    camera: handle GainRaw also as a float feature
    camera: add arv_camera_new_with_device()
    camera: ignore error on TriggerSelector and TriggerMode setting in arv_camera_set_trigger()
    gigevision: fail quicker if a device is not found at ArvGvDevice instantiation
    fakegvcamera: fix interface selection
    genicam: implement optional range check for integer and float node values, as a runtime option
    genicam: fix min/max computation for StructEntry and MaskedIntReg nodes
    gstplugin: don't fail camera init if gain or exposure features are not available


0.8.5
The macOS build is now back under Travis continuous integration, and hopefully it will not break again.


0.8.4
ARAVIS_0_8_4
Aravis 0.8.4 release



0.8.3
The most important point in this release is the GigEVision packet size check that happens before the streaming start. A test packet is fired from the device to the host, and if it is not successful, Aravis tries to adjust the packet size to a working value. The behaviour of this packet size adjustment can be tweaked using arv_camera_gv_set_packet_size_adjustement ().
    gigevision: automatically adjust packet size if needed (Emmanuel)
    gstreamer: don’t try to set frame rate if feature is not available (Emmanuel)
    genicam: fix pVariable name with dot (Arrigo)
    genicam: fix parsing of genicam data url (Emmanuel)
    buffer: add arv_buffer_set_frame_id API (Russel)
    usb3vision: add Dahua Technology USB id (H.F)
    build: preparatory work for windows compilation (Eudoxos)


0.8.2
    gvdevice: fix timeout race (casperoo)
    fakecamera: implement Mono16 pixel format (Hinko)
    Enable ppc64le in CI pipeline (nagesh)


0.8.1
ARAVIS_0_8_1
Release of aravis 0.8.1


0.8.0
ARAVIS_0_8_0
Release of Aravis 0.8.0


0.7.5 Pre-release
0.7.x pre-releases: https://download.gnome.org/sources/aravis/0.7/


0.7.4 Pre-release
0.7.x pre-releases: https://download.gnome.org/sources/aravis/0.7/


0_7_3
doc: replace relative file names by files() usage


0_7_2
Aravis 0.7.2 release


0_7_1
Unstable release of aravis 0.7.1


0_7_0
Release of unstable aravis 0.7.0


0_6_4
Aravis 0.6.4 stable release


0_6_3
Release of stable Aravis 0.6.3


0_6_2
Aravis 0.6.2 release
      

0_6_1
Aravis 0.6.1 release
      

0_6_0
Release of Aravis 0.6.0
      

0_5_13
Aravis 0.5.13 release
Comment 1 Ivan Rozhuk 2022-01-13 08:23:15 UTC
Created attachment 230976 [details]
patch

FreeBSD support merged to upstream.
Comment 2 Daniel Engberg freebsd_committer freebsd_triage 2022-01-13 23:04:21 UTC
Please split this into two patches and preferably also PRs in the future.

Any reason why we can't use release archive provided by upstream which is also recommended by Porters Handbook?

https://github.com/AravisProject/aravis/releases/tag/0.8.20 --> https://github.com/AravisProject/aravis/releases/download/0.8.20/aravis-0.8.20.tar.xz

PATCHFILES+= --> PATCHFILES=
LIB_DEPENDS+= --> LIB_DEPENDS=

Is libtool really needed?

Doesn't MESON_ARGS= -Dusb=disabled and -Dintrospection=disabled in multimedia/aravis clash with options in devel/libaravis ?

Did you do run-time testing and do these port pass Poudriere?
Comment 3 Fernando Apesteguía freebsd_committer freebsd_triage 2022-01-14 11:32:32 UTC
portlint complains.

FATAL: Makefile: [48]: contiguous blank lines (> 1 lines) found.
WARN: Makefile: FAST_HEARTBEAT is listed in OPTIONS_DEFINE, but no PORT_OPTIONS:MFAST_HEARTBEAT appears.
WARN: Makefile: USB is listed in OPTIONS_DEFINE, but no PORT_OPTIONS:MUSB appears.
FATAL: Package conflicts with itself. You should remove "libaravis*" from CONFLICTS.
WARN: Makefile: "USES" has to appear earlier.

Easy to fix, no need to upload a new patch.

Just remember to use portlint and portclippy.

Cheers
Comment 4 Ivan Rozhuk 2022-01-14 12:17:52 UTC
Created attachment 231001 [details]
patch
Comment 5 Ivan Rozhuk 2022-01-14 12:21:17 UTC
(In reply to Daniel Engberg from comment #2)

> Please split this into two patches and preferably also PRs in the future.

For now lib have only one consumer - viewer, so splitting have no sense.


> Any reason why we can't use release archive provided by upstream which is also recommended by Porters Handbook?

No, there is no technical reason for that.


> Doesn't MESON_ARGS= -Dusb=disabled and -Dintrospection=disabled in multimedia/aravis clash with options in devel/libaravis ?

No, it is separate build from same sources.


> Did you do run-time testing and do these port pass Poudriere?

No, I do not use it.
Comment 6 Fernando Apesteguía freebsd_committer freebsd_triage 2022-01-14 13:04:56 UTC
multimedia/aravis fails to build for me in poudriere:

...
...
Library m found: YES
Run-time dependency aravis-0.8 found: YES 0.8.20
Run-time dependency gtk+-3.0 found: YES 3.24.31
Run-time dependency gstreamer-base-1.0 found: YES 1.16.2
Run-time dependency gstreamer-app-1.0 found: YES 1.16.2
Run-time dependency gstreamer-video-1.0 found: YES 1.16.2
WARNING: Gettext not found, all translation targets will be ignored.
Found pkg-config: /usr/local/bin/pkgconf (1.8.0)
Program glib-compile-resources found: YES (/usr/local/bin/glib-compile-resources)
Configuring arv-viewer-0.8.appdata.xml using configuration
Configuring arv-viewer.desktop.in using configuration

viewer/data/meson.build:11:0: ERROR: Can not assign None to variable.

A full log can be found at /wrkdirs/usr/ports/multimedia/aravis/work/aravis-0.8.20/_build/meson-logs/meson-log.txt
===>  Script "configure" failed unexpectedly.
Please report the problem to rozhuk.im@gmail.com [maintainer] and attach the
"/wrkdirs/usr/ports/multimedia/aravis/work/aravis-0.8.20/_build/meson-logs/meson-log.txt"
including the output of the failure of your make command. Also, it might be
a good idea to provide an overview of all packages installed on your system
(e.g. a /usr/local/sbin/pkg-static info -g -Ea).
*** Error code 1

Does it build for you?
Comment 7 commit-hook freebsd_committer freebsd_triage 2022-02-17 09:33:47 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=7d0f2b043d4e9d0156a9f98eec740a69193b7ff2

commit 7d0f2b043d4e9d0156a9f98eec740a69193b7ff2
Author:     Ivan Rozhuk <rozhuk.im@gmail.com>
AuthorDate: 2022-01-14 12:45:40 +0000
Commit:     Fernando Apesteguía <fernape@FreeBSD.org>
CommitDate: 2022-02-17 09:31:41 +0000

    devel/libaravis: multimedia/aravis: update to 0.8.20

    ChangeLog: https://github.com/AravisProject/aravis/pull/620

    PR:     261103
    Reported by:    rozhuk.im@gmail.com (maintainer)
    Reviewed by:    diizzy@

 devel/libaravis/Makefile                           |  37 ++-
 devel/libaravis/distinfo                           |   8 +-
 devel/libaravis/files/patch-Makefile.am (gone)     |  20 --
 devel/libaravis/files/patch-configure.ac (gone)    |  11 -
 .../libaravis/files/patch-src_arvgvdevice.c (gone) |  27 --
 .../files/patch-src_arvgvinterface.c (gone)        |  10 -
 .../libaravis/files/patch-src_arvrealtime.c (gone) |  24 --
 devel/libaravis/pkg-plist                          | 306 +++++++++++++--------
 multimedia/aravis/Makefile                         |  34 +--
 multimedia/aravis/distinfo                         |   6 +-
 multimedia/aravis/files/patch-Makefile.am (gone)   |  41 ---
 multimedia/aravis/pkg-plist                        |  45 ++-
 12 files changed, 268 insertions(+), 301 deletions(-)
Comment 8 Fernando Apesteguía freebsd_committer freebsd_triage 2022-02-17 09:35:40 UTC
Committed with changes. USES=gettext was missing.

Please, ensure you use a clean environment for testing, like poudriere.

Thanks!