02-02-2020, 11:31 AM
(This post was last modified: 02-02-2020, 11:32 AM by Dean Roddey.)
5.4.912
- The ZEN15 Z-Wave widget I just added isn't a light, it's a power outlet. So I set it up to be the wrong type.
- The interface editor's widget palette isn't ignoring change events from the widget list when the template itself changes. Since that event doesn't have a valid widget index, it causes an index error to be logged when you change the template.
- Our floating point rounding methods don't handle negative numbers as advertised. For us, rounding a negative number down means it becomes less negative (-2.5 becomes -2.0) and up means more negative (it becomes -3.0.) This is somewhat different from the standard C style floor/ceil/round methods. Also closest works the same way. -2.6 to the closest goes to -3.0, and -2.4 to closests to goes to -2.0.
- In preparation for a future mixed Linux/Windows world, stop downloading C++ drivers from the MS. Just install them on the machines. That downloading scheme was from the original CQC concept where C++ drivers were going to be all of them, so installing them was a lot of overhead on each machine. But, ultimately they are almost all CML, and only a small number are C++, so we can get rid of a lot of complexity by just installing the C++ ones on each machine. Then Linux machines will load theirs and Windows machines will load theirs, all naturally without any craziness.
- Update the install image builder to adjust for the above. All of the drivers are now just lumped in with the CQC executables and libraries.
- Update the installer to adjust for the above. No separate drivers directory to copy, and remove any old ones still around.
- For Linux support we need to separate the building of the paths to loadable modules (which are platform specific) from the building of paths for things like loadable text files and resource files, which we create and so the names are not platform specific. Currently this fails on Linux because it's using the Linux specific base path to build the path to the loadable text. So just totally rework how the building of module related names is implemented.
- Dump some really old and no longer used C++ drivers.
- Add support to the ISY driver for IOLinc relays, at least the sensor part of it. The relay is not so useful because it's not directly controllable. They will show up as BinSensor_xxx fields.
- Undo all the work done a couple drops back to rework the way collections deal with thread safety. It turned out to be stupid.
Dean Roddey
Explorans limites defectum
Explorans limites defectum