1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165
|
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## Unreleased
## [0.4.2] - 2026-03-18
### Fixed
- Tests are more reliable in CI/CD.
## [0.4.1] - 2026-03-01
### Changed
- Increased discovery timeout to 100s.
## [0.4.0] - 2026-01-11
### Improved
- Updated build instructions.
### Added
- Extract mount matrix and apply it for accelerometers.
### Fixed
- Cleaned up white space.
- Fixed 2 memory leaks caused.
- Properly close QMI client.
- Do not initialize variables if not needed.
- Do not check for `NULL` when not needed.
- Move Xiaomi Davinci struct to private header.
- Add symbol list to avoid exposing more symbols.
- Deprecation warning of protobuf-c tool.
- Do not run tests if `Q_IPCRTR protocol` is not available.
- Skip tests on ARMv7/armhf due to floating point problems with protobuf-c decoding.
- Fix printf formats for sensor UIDs.
- ABI of compass signal.
- Reworked synchronous handling.
## [0.3.0] - 2025-12-26
### Added
- Gyroscope sensor support.
- Vala bindings generation.
- GObject introspection generation.
### Fixed
- Thread symbol leaking into global scope.
### Changed
- Drop reporting threads as these are not necessary.
## [0.2.2] - 2025-02-21
### Fixed
- Load libqrtr on Debian correctly for mocking SSC.
- Use `g_assert_no_error` in tests.
- Let meson look for Python instead of specifying the binary name when mocking.
- Add `g_cond` for report threads to avoid race conditions.
## [0.2.1] - 2025-01-12
### Fixed
- Mocking Protobuf messages are now stored in the right directory.
- Mocking binary and data are now installed in the right directory.
## [0.2.0] - 2025-01-11
### Added
- Unittests for CI/CD.
- Mocking SSC DSP with ssc-server to emulate DSP on non-Qualcomm environments.
- Release instructions in RELEASE.md.
- Set `G_LOG_DOMAIN` during build to 'libssc' for easier debugging.
- Wait for DSP to become available during boot.
### Changed
- Reduced API surface. All private interfaces are now excluded from public usage.
- API is now solely exposed through `libssc.h`.
- Use proper GErrors instead of g\_warning for errors.
### Fixed
- Passing GTask in libssc-sensor was missing.
- Light sensor intensity is always positive, reject negative measurements.
- Proximity sensor will always output a measurement now when opened.
- Document availability sensor attribute and specify QMI header length.
- Path to protoc and protoc-c for compiling ProtoBuff messages.
- Public headers are now correctly installed.
- Sync API race conditions.
## [0.1.6] - 2024-06-08
### Fixed
- Ownership of GError is now properly performed when using GTasks.
- Handle access denied to address family AF\_QIPCRTR in lockdown mode.
- Fix verbose argument for enabling debug mode in ssccli.
- Race condition if the sensor is rapidly probed by opening and closing it.
## [0.1.5] - 2024-05-17
### Fixed
- Fixed LICENSE to properly indicate GPLv3.
- Add architecture diagram referenced in reverse engineering notes.
- Fix .so library name to avoid twice 'lib': liblibssc.so
### Added
- Timeout parameter for ssccli.
- Flush stdout after each sensor measurement in ssccli.
- Add support for proximity sensor of xiaomi-davinci (SM7150).
### Changed
- Expanded README with proper description and link to landing page.
- Added build instructions to README.
- Added custom domain for landing page in README.
## [0.1.4] - 2023-08-19
### Fixed
- Link with math library.
- Assert QMI client not NULL during sensor disposing.
### Added
- Define unknown type in QMI Report messages as Report Type.
### Changed
- Update to latest libqmi API changes.
- Search for sensors with a non-zero sample rate such as sensors on Pixel 3A.
## [0.1.3] - 2023-05-20
### Fixed
- Release QMI client before sensor disposing.
## [0.1.2] - 2023-05-20
### Fixed
- Segfault with unknown parameter.
- Segfault during sensor disposing.
## [0.1.1] - 2023-05-01
### Fixed
- Fix format-security warning.
## [0.1.0] - 2023-05-01
Initial release.
<!-- links to diffs between releases -->
[0.1.0]: https://codeberg.org/DylanVanAssche/libssc/compare/01fe59f06aa107a556dd2cdf33e65fd6378eaf32...0.1.0
[0.1.1]: https://codeberg.org/DylanVanAssche/libssc/compare/0.1.0...0.1.1
[0.1.2]: https://codeberg.org/DylanVanAssche/libssc/compare/0.1.1...0.1.2
[0.1.3]: https://codeberg.org/DylanVanAssche/libssc/compare/0.1.2...0.1.3
[0.1.4]: https://codeberg.org/DylanVanAssche/libssc/compare/0.1.3...0.1.4
[0.1.5]: https://codeberg.org/DylanVanAssche/libssc/compare/0.1.4...0.1.5
[0.1.6]: https://codeberg.org/DylanVanAssche/libssc/compare/0.1.5...0.1.6
[0.2.0]: https://codeberg.org/DylanVanAssche/libssc/compare/0.1.6...v0.2.0
[0.2.1]: https://codeberg.org/DylanVanAssche/libssc/compare/v0.2.0...v0.2.1
[0.2.2]: https://codeberg.org/DylanVanAssche/libssc/compare/v0.2.1...v0.2.2
[0.3.0]: https://codeberg.org/DylanVanAssche/libssc/compare/v0.2.2...v0.3.0
[0.4.0]: https://codeberg.org/DylanVanAssche/libssc/compare/v0.3.0...v0.4.0
[0.4.1]: https://codeberg.org/DylanVanAssche/libssc/compare/v0.4.0...v0.4.1
[0.4.2]: https://codeberg.org/DylanVanAssche/libssc/compare/v0.4.1...v0.4.2
|