lightsd uses semantic versionning, here is the summary:
Given a version number MAJOR.MINOR.PATCH:
- MAJOR version gets incremented when you may need to modify your lightsd configuration to keep your setup running;
- MINOR version gets incremented when functionality or substantial improvements are added in a backwards-compatible manner;
- PATCH version gets incremented for backwards-compatible bug fixes.
This release doesn't have any new user-facing feature for lightsd but packs a bunch of fixes and improvements, both in the code but also the documentation and examples.
However, this release sees the start of a Python client library for lightsd which you'll find in the clients
directory of the lightsd repository. This library is currently used to build another child project of lightsd: monolight, an user-interface for the Monome grid. Both project should end up on PyPi soon.
Also worth noting, is the full continuous integration pipeline that has been setup behind the scenes. Most of the work for this release went into it. It will hopefully make it a lot easier to work on lightsd.
- Discovery now works properly on computers with multiple network interfaces (closes
2
); - Correctly support optional arguments in the JSON-RPC API;
- A couple of crash/security fixes, one being in the jsmn JSON parser which has been upgraded to its latest version;
- FreeBSD build (more BSD fixes to come though, see
16
); get_light_state
now returns a valid target for the bulb's label (the bulb id) when it doesn't have a label set.
Thanks to:
- Sylvain Laurent for his original work on fixing discovery;
- Xavier Deguillard for his contributions; additional automated tests will be setup to make crashes and security issues much harder to creep in;
- Guillaume Gomez & Michael Zapata for their help with the landing page on https://www.lightsd.io/;
- All the people who have been trying the project and reporting issues!
- Fix LIFX LAN protocol V2 handling (properly set RES_REQUIRED and properly listen on each gateway's socket);
- The bulb timeout has been increased from 3 to 20s;
- Improved LIFX traffic logging.
Warning
This release broke the compatibility with the LIFX LAN protocol "v2", please upgrade to 1.1.2.
- Greatly improve responsiveness by setting the LIFX source identifier1.
- Fix parallel builds in the Debian package & fix the homebrew formulae for OS X 10.11 (El Capitan).
Note
The -f
(--foreground
) option is being deprecated with this release and isn't documented anymore, lightsd starts in the foreground by default and this option is not necessary, please stop using it.
- Add syslog support via the
--syslog
and--syslog-facility
options (closes1
); - Debian & OpenWRT packaging and installation instructions.
- lightsc.sh: support OSes with openssl but without a base64 utility (closes
3
); - lightsc.py: unix url support fixes and bump the receive buffer size to accommodate people with many bulbs;
- Add missing product ids/models.
- Fix set_waveform on big endian architectures;
- Fix build under Debian oldstable;
- Fix build under OpenBSD2;
- Fix process title even when no bulbs are discovered;
- Add product id for the 230V version of the LIFX White 800.
- First announced release.
http://lan.developer.lifx.com/docs/header-description#frame↩
Using GCC 4.2, so you just need to do
pkg_add cmake libevent
to build a release.↩