Releases: sdwilsh/siobrultech-protocols
Releases · sdwilsh/siobrultech-protocols
v0.14.0
v0.13
v0.12
v0.11
v0.10.0
New Features
- ECM-1240 API support
get_serial_number
set_packet_send_interval
ApiCall
can be used to add support for more APIs outside of this library
- Ability to make GEM API calls without pausing packet sending, making them vastly faster than before. This is experimental for now; pass
send_packet_delay=True
toBidirectionalProtocol
's constructor to enable. - Support for API calls that have no response (pass
None
for theparser
parameters toApiCall
)
Fixes
- ECM-1240 serial numbers are now parsed correctly
Breaking Changes
PacketProtocol
no longer has aclose()
method. Users should close the transports directly. For example, ifself._server
is anasyncio.Server
:
for s in self._server.sockets:
s.shutdown(socket.SHUT_RDWR)
s.close()
BidirectionalProtocol
no longer hassend_api_request
andreceive_api_response
methods. Instead, there is now aninvoke_api
method that takes aFuture
which will be completed as soon as the API response comes in. SeeREADME.md
for more details on its use. This change allows API responses to be returned to the caller much faster.- The
serial_number
field for ECM-1240 packets is now treated as a 16-bit little-endian value. Previous versions treated it as a big-endian value. ECM-1240 packets received with this version of the library will thus have a serial number field that is in the opposite byte order from those returned by the previous verson.
v0.9.0
v0.8.0
v0.7.0
New Features
- Added the ability to set the packet clear time for API commands. This can be useful if the default of three seconds was too slow for the GEM to finish sending a packet.
Breaking Changes
siobrultech_protocols.gem.protocol.T
andsiobrultech_protocols.gem.protocol.R
have been removed. Any imports should replace them withsiobrultech_protocols.gem.api.T
andsiobrultech_protocols.gem.api.R
, respectively.- The constant
PACKET_DELAY_CLEAR_TIME
fromsiobrultech_protocols.gem.protocol
has been removed. A new constant,PACKET_DELAY_CLEAR_TIME_DEFAULT
is added tosiobrultech_protocols.gem.const
, which is the default value we use if a value is not provided to theBidirectionalProtocol
.
Full Changelog: v0.6.0...v0.7.0
v0.6.0
New Features
- Added a new method,
get_average_power
, toPacket
to get the average power between thePacket
and anotherPacket
for a given channel index. - Added a new method,
get_average_pulse_rate
, toPacket
to get the average pulse rate between thePacket
and anotherPacket
for a given pulse counter index.
Full Changelog: v0.5.0...v0.6.0
v0.5.0
Breaking Changes
- The
Queue
s used byPacketProtocol
/BidirectionalProtocol
now containPacketProtocolMessage
s instead ofPacket
s.
New Features
- Send API commands to a specific serial number
Protocol
implementations now include aclose
method and send messages to theirQueue
s for connections made and lost
What's Changed
- Run GitHub workflows on release branches too by @sdwilsh in #41
- Add some documentation for properties on a
Packet
by @sdwilsh in #42 - Bump pre-commit from 2.15.0 to 2.16.0 by @dependabot in #46
- Update protocol logging by @jkeljo in #50
- Enable callers to properly close protocol transports by @jkeljo in #51
- Support targeting API requests to a specific serial by @jkeljo in #52
Full Changelog: v0.4.1...v0.5.0