Skip to content

0.18.1 Release Notes

Joel Bender edited this page Apr 22, 2020 · 3 revisions

A snarly old bug has finally been solved, and some contributions from the user community (and this needs to be added to the project the way other projects do to give credit where it's due!).

ReadRange Sample - Property is not a list (#295)

The basic premise of the library is that property values should have Pythonic values whenever possible. For example, if the presentValue (a.k.a. Present_Value) of an object is a Real then the Python value should be a float. There is no distinction between the concept of a "list" and "array" in Python, so lists of character strings should simply be ["this", "is", "a", "list"] and exactly the same for an array.

This non-distinction wasn't properly accounted for, so in some cases the property value needed to be constructed like ArrayOf(Integer)([1, 2, 3]). There is nothing wrong with creating them that way, but it caused some confusion in the sample applications and in code.

'cov_detection' is not defined (#307)

This is cascade of bugs, the last one being solved by the fix above.

Enumerated Keylist (#323)

Sorting has changed in Python3.6+.

Fixed call to bvlpdu_contents() for FDTEntry (#325) (#324)

Building Python dictionaries out of objects and PDUs is an ongoing thing, so it was a surprise that someone else finds this useful, and including a fix is awesome.

'weeklySchedule' Fixed Array Size (#327)

There are probably other fixed size array properties hidden in undiscovered countries, this is a fix for one of them.

LocalScheduleObject and changing exceptionSchedule (#330)

This resulted in a new sample application.

Added a Check Installation Script

While I'm testing different versions of BACpypes with different versions of Python I lose track of which version is installed where; system, user, virtual environment, etc. This script launches each version of Python and attempts to import the library, then dump out the version and path.

Additional Auto-discover Application

There are a few versions of auto-discover applications that I have floating around and this one dives deeper into properties of objects and arrays. It has a "ToDoList" class which acts like a single threaded queue for requests and processing responses, and there can be multiple lists "running" at the same time.

There are better versions of this application over in the bacpypes-snapshot project which also has an application to "replay" the results.

Updated Tests

Yep.