82 lines
2.8 KiB
Markdown
82 lines
2.8 KiB
Markdown
|
<!--
|
||
|
SPDX-FileCopyrightText: 2024 Kent Gibson <warthog618@gmail.com>
|
||
|
|
||
|
SPDX-License-Identifier: MIT
|
||
|
-->
|
||
|
## [Unreleased](https://github.com/warthog618/gpiod/compare/v0.9.0...HEAD)
|
||
|
|
||
|
## v0.9.0 - 2024-03-16
|
||
|
|
||
|
- rename from **gpiod** to **gpiocdev**.
|
||
|
- move cli into its own repo - **go-gpiocdev-cli**.
|
||
|
- remove SPI examples.
|
||
|
|
||
|
## v0.8.3 - 2024-03-16
|
||
|
|
||
|
- deprecate in favour of **go-gpiocdev**
|
||
|
|
||
|
## v0.8.2 - 2023-07-28
|
||
|
|
||
|
- switch tests from **gpio-mockup** to **gpio-sim**.
|
||
|
- drop test dependency on *pilebones/go-udev*.
|
||
|
- drop example dependency on *warthog618/config*.
|
||
|
|
||
|
## v0.8.1 - 2022-12-31
|
||
|
|
||
|
- add bananapi pin mappings.
|
||
|
- fix config check in **gpioset**.
|
||
|
|
||
|
## v0.8.0 - 2022-02-13
|
||
|
|
||
|
- add top level *RequestLine* and *RequestLines* functions to simplify common use cases.
|
||
|
- **blinker** and **watcher** examples interwork with each other on a Raspberry Pi with a jumper across **J8-15** and **J8-16**.
|
||
|
- fix deadlock in **gpiodctl set** no-wait.
|
||
|
|
||
|
## v0.7.1 - 2021-10-10
|
||
|
|
||
|
- restore LICENSE file for go.dev.
|
||
|
|
||
|
## v0.7.0 - 2021-10-08
|
||
|
|
||
|
- *LineEvent* exposes sequence numbers for uAPI v2 events.
|
||
|
- Info tools (**gpiodctl info** and **gpioinfo**) report debounce-period.
|
||
|
- **gpiodctl mon** and watcher example report event sequence numbers.
|
||
|
- **gpiodctl mon** supports setting debounce period.
|
||
|
- **gpiodctl detect** reports kernel uAPI version in use.
|
||
|
- Watchers use Eventfd instead of pipes to reduce open file descriptors.
|
||
|
- start migrating to Go 1.17 go:build style build tags.
|
||
|
- make licensing [REUSE](https://reuse.software/) compliant.
|
||
|
|
||
|
## v0.6.0 - 2020-12-12
|
||
|
|
||
|
- *gpiod* now supports both the old GPIO uAPI (v1) and the newer (v2) introduced
|
||
|
in Linux 5.10. The library automatically detects the available uAPI versions
|
||
|
and makes use of the latest.
|
||
|
- applications written for uAPI v1 will continue to work with uAPI v2.
|
||
|
- applications that make use of v2 specific features will return errors when run
|
||
|
on Linux kernels prior to 5.10.
|
||
|
|
||
|
Breaking API changes:
|
||
|
|
||
|
1. The event handler parameter has been moved from edge options into the
|
||
|
*WithEventHandler(eh)* option to allow for reconfiguration of edge detection
|
||
|
which is supported in Linux 5.10.
|
||
|
|
||
|
Old edge options should be replaced with the *WithEventHandler* option and
|
||
|
the now parameterless edge option, e.g.:
|
||
|
|
||
|
```sed
|
||
|
s/gpiod\.WithBothEdges(/gpiod.WithBothEdges, gpiod.WithEventHandler(/g
|
||
|
```
|
||
|
|
||
|
2. *WithBiasDisable* is renamed *WithBiasDisabled*. This option is probably
|
||
|
rarely used and the renaming is trivial, so no backward compatibility is
|
||
|
provided.
|
||
|
|
||
|
3. *FindLine* has been dropped as line names are not guaranteed to be unique.
|
||
|
Iterating over the available chips and lines to search for line by name can
|
||
|
be easily done - the *Chips* function provides the list of available chips as
|
||
|
a starting point.
|
||
|
|
||
|
Refer to the *find* command in **gpiodctl** for example code.
|