Hi,

My name is Alexander Pevzner, and I am the author of two widely distributed projects: sane-airscan (a "driverless" driver for SANE scanners) and ipp-usb (a daemon for IPP-over-USB printer support). Both projects utilize Avahi extensively.

I am excited to announce the release of a new Golang binding for Avahi:

https://github.com/alexpevzner/go-avahi

This binding aims to closely mirror the original C API, with a few exceptions:

- It reports events via Go channels instead of callbacks, which is more idiomatic in Golang. - It follows Go naming conventions (e.g., NewAddressResolver vs. avahi_address_resolver_new). - It provides an automatic workaround for Avahi issues related to localhost and loopback address handling.
- It implies the AVAHI_CLIENT_NO_FAIL mode.

Additionally, I have made an effort to create comprehensive documentation for the Avahi API:

https://pkg.go.dev/github.com/alexpevzner/go-avahi

Since the Go API implemented in this package closely resembles the original C API, this documentation may also be useful for users of other programming languages.

--

        Wishes, Alexander Pevzner ([email protected])

Reply via email to