linux-gpio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Bartosz Golaszewski <brgl@bgdev.pl>
To: "open list:GPIO SUBSYSTEM" <linux-gpio@vger.kernel.org>
Cc: Drew Fustini <drew@pdp7.com>, Kent Gibson <warthog618@gmail.com>,
	Linus Walleij <linus.walleij@linaro.org>,
	Geert Uytterhoeven <geert@linux-m68k.org>
Subject: [ANNOUNCE] libgpiod v1.5
Date: Mon, 27 Jan 2020 18:18:12 +0100	[thread overview]
Message-ID: <CAMRc=MenRimgW=1X93gh-pyuKbLhRir1rBUPYaLOXTT1v2SE8g@mail.gmail.com> (raw)

Hello!

libgpiod v1.5 is now released with just a couple fixes on top of
v1.5-rc1. Final changelog is below.

The sources are available at:

    git://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git

The release tarballs can be downloaded from:

    https://mirrors.edge.kernel.org/pub/software/libs/libgpiod/

I'm also making a bug-fix release for the v1.4.x series because v1.5
will be unavailable in yocto until it integrates linux v5.5.

Best regards,
Bartosz Golaszewski

---

libgpiod v1.5
=============

New features:
- switched to using the GLib testing framework for core library tests and BATS
  (Bash Automated Testing System) for command-line tools
- used Catch2 C++ testing framework to implement a proper test-suite for C++
  bindings while also reusing the API provided by libgpiomockup
- used Python's unittest package to implement a proper test suite for Python
  bindings and reused libgpiockup again
- provided line::update() and Line.update() routines for C++ and Python
  bindings respectively allowing to update the line info from bindings as well
- added support for bias flags which are a new functionality first available in
  linux v5.5; subsequently the library now requires v5.5 kernel headers to
  build; the new flags are supported in the core library, C++ and Python
  bindings as well as the command-line tools
- added support for the new SET_CONFIG ioctl(): this too is a new functionality
  added in linux v5.5; both features have been implemented in the library by
  Kent Gibson
- added routines for reading multiple line events at once to the core library,
  C++ and Python bindings

Improvements:
- constified function arguments where applicable in libgpiomockup
- fixed the name of the test exeucutable displayed at build time
- improved the function pointer casting in Python bindings to avoid warnings
  emitted by GCC8
- switched to using the KERNEL_VERSION() macro in tests instead of handcoded
  version parsing
- improved the setup ordering in tests (setup libgpiomockup before checking
  the kernel version
- add 'extern "c"' to the libgpiomockup header to make it usable from C++
- add chip index validation to libgpiomockup functions
- check if the debugfs directory used by libgpiomockup is writable before
  using it to set the pull of dummy lines
- add several new test cases
- improved Python example programs (made gpiomon's output similar to the
  original tool, make gpioset wait for an ENTER pres by default)
- fixed the major:minor number comparison between the device and sysfs
- deprecated the gpiod_line_needs_update() function and removed the logic
  behind it from the library
- shrank the Python bindings a bit by directly returning the value from
  PyErr_SetFromErrno()
- dropped noexcept from methods which can throw in C++ bindings
- switched to initializing the bitset with integers instead of strings in C++
  bindings
- allowed gpiod_line_set_value_bulk() to accept null pointers
- when building Python bindings: check for the existence of python-config
- improved the readability of help text messages for command-line tools
- reworked the .gitignore file: added libtool scripts generated during
  cross-compilation and split the main .gitignore into several fine-grained
  files
- fixed several misspellings
- other minor tweaks and improvements

Bug fixes:
- fixed memory leaks in libgpiomockup
- fixed memory leaks in the testing framework
- fixed a segfault in error path in tests
- make gpioinfo show lines claimed by the kernel as used even if they have no
  named consumer
- fixed the test cases validating the '--active-low' switch in gpiomon and
  the GPIOHANDLE_REQUEST_ACTIVE_LOW flag in the core library after a fix
  for incorrect behavior was merged in linux v5.2.7
- stopped failing at init-time of libgpiomockup if gpio-mockup is already
  loaded
- added a missing throw keyword in error path in C++ bindings
- fixed a segfault in Python bindings when calling Line.request() without
  the consumer argument

                 reply	other threads:[~2020-01-27 17:18 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAMRc=MenRimgW=1X93gh-pyuKbLhRir1rBUPYaLOXTT1v2SE8g@mail.gmail.com' \
    --to=brgl@bgdev.pl \
    --cc=drew@pdp7.com \
    --cc=geert@linux-m68k.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=warthog618@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).