ASPN-LCM
This Python module contains the Python variant of ASPN-LCM.
Release Versioning
This project implements a versioning scheme similar to semantic versioning SemVer, but much lighter. This project does not define an API and therefore has no concrete definition of what constitutes a breaking change.
Nonetheless, if a new release would require significant changes downstream we will attempt to communicate that by incrementing the major version. If there are new features or newly deprecated features, we will attempt to communicate that by incrementing the minor version. If the changes are primarily bug fixes, we will attempt to communicate that by incrementing the patch version.
However, we make no concrete promises about whether or not a given release will be compatible with your project downstream. You may experience breaking changes on minor or patch releases. If this is an issue for your project, we recommend you pin to a specific version of this project rather than a range.
Fingerprints
Each message defined by this project has a unique fingerprint, a hash calculated from all of the fields of the message, recursively. If any fingerprints change this indicates a hard incompatibility with previous versions of this project. In this case, we will increment the major version if any fingerprint changes. Additionally, we maintain a table of fingerprint changes so you can know which messages' compatibility changed.
Breaking Changes
Below is a history of breaking changes between the listed version and the previous version.
2.0.0
This version includes breaking changes to the following ASPN messages, meaning that they have new fingerprints:
measurement_direction_2d_to_pointsmeasurement_direction_3d_to_pointsmeasurement_imagemeasurement_satnav_subframe
This occurred because certain fields were changed from int16_t to byte in order to better
represent ASPN in LCM. Specifically, this change was made to fields which represented opaque data
streams (e.g. image data). This change has the benefit of reducing the size of these fields by half,
which is important since some of these messages can be very large (e.g. images).
Legacy Submodule
The ASPN-LCM Python module ships with the latest version of the previous major release via the
legacy submodule. This submodule is provided as a convenience in order to more easily convert
legacy data to a format compatible with the latest version of ASPN-LCM after breaking changes are
made.
For example, if between 1.0 and 2.0 the fingerprint for the measurement_image message changed, it
will still be possible to decode that message using aspn23_lcm.legacy.measurement_image.
Only the previous major release will be provided.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aspn23_lcm-2.0.0-py3-none-any.whl.
File metadata
- Download URL: aspn23_lcm-2.0.0-py3-none-any.whl
- Upload date:
- Size: 277.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.0.1 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
089da91d00cac6393bc399da580ff37be2285e77be39ac83b3f7cbbf40f1e2d5
|
|
| MD5 |
9bc43e5d996dc61e06bd0bf88ca28f44
|
|
| BLAKE2b-256 |
7f45f4151c13f10c1520b7ce18302ca924ce633fe88002a03c629205507b591e
|