Skip to content

Releases: daq-tools/kotori

0.28.1

27 Feb 00:22

Choose a tag to compare

What's Changed

  • Core: Got rid of a few runtime warnings

Details

  • CI: Verify compatibility with Grafana 12.4.0 by @amotl in #247
  • CI: Use uv for installing dependency packages for faster workflow runs by @amotl in #248
  • Get rid of runtime warnings by @amotl in #250

Full Changelog: 0.28.0...0.28.1

0.28.0

10 Feb 03:07

Choose a tag to compare

What's Changed

DAQ

  • MQTT: Fixed error when connecting to MQTT broker without authentication credentials.
  • HTTP: Improved export capabilities by adding parameters sort, direction, limit, and scalar. Thanks, @ClemensGruber.
  • Grafana/InfluxDB: Started permitting only numeric fields to be established on graph panels. Other types would make the panel raise errors like InfluxDB Error: unsupported mean iterator type: *query.stringInterruptIterator or InfluxDB Error: not executed.

Integrations

Documentation

Maintenance

  • CI: Validated support on Python 3.12, 3.13, 3.14.
  • CI: Validated support for Grafana 9.5.21, 10.4.19, 11.6.9, 12.3.2.
  • Python: Downgraded to setuptools v80 to bring back pkg_resources.
  • Python: Relaxed dependency specifications.

Details

  • CI: Update to Grafana 9.3.0 by @amotl in #103
  • Add Dependabot configuration for package updates by @amotl in #111
  • Bump pyclibrary from 0.1.3 to 0.2.1 by @dependabot[bot] in #112
  • Bump pycparser from 2.17 to 2.21 by @dependabot[bot] in #113
  • Update cornice requirement from <6,>=5.0.3 to >=5.0.3,<7 by @dependabot[bot] in #115
  • Update bokeh requirement from <2.3,>=1.4.0 to >=1.4.0,<3.1 by @dependabot[bot] in #114
  • Update numpy requirement from <1.24 to <1.25 by @dependabot[bot] in #116
  • Grafana: Only permit numeric fields to be established on Graph panels by @amotl in #126
  • Update pytest requirement from <7 to <8 by @dependabot[bot] in #119
  • [TTN] Add TTS (The Things Stack) / TTN (The Things Network) decoder by @amotl in #81
  • Documentation: Host documentation site on Read the Docs / Migrate to "Furo" theme by @amotl in #135
  • [TTN] extract metadata from full TTN payload by @thiasB in #134
  • [DA] Add per-device addressing (DA) to WAN topic/channel decoding strategy by @amotl in #136
  • [DA] Add protection for SensorWAN "direct" addressing scheme (fixup) by @amotl in #140
  • [TTN] Add documentation about multi-tenant data acquisition by @amotl in #141
  • [core] Fix connecting to MQTT broker without authentication credentials by @amotl in #144
  • [docs] Refactor "decoders" section to "integrations" by @amotl in #145
  • [InfluxDB] Improve database subsystem, and testing by @amotl in #149
  • [InfluxDB] Improve export adapter interfaces, and naming things by @amotl in #151
  • Documentation: Add descriptions about databases InfluxDB and MongoDB by @amotl in #152
  • Documentation: This and that by @amotl in #153
  • CI: Update to Grafana 9.5.7 and 10.0.3 by @amotl in #154
  • Bump sympy from 0.7.6.1 to 1.12 by @dependabot[bot] in #138
  • Update funcy requirement from <2,>=1.15 to >=1.15,<3 by @dependabot[bot] in #131
  • [export] Improve export transformation capabilities by @amotl in #146
  • Update twisted[tls] requirement from <23 to <24 by @dependabot[bot] in #157
  • Update xarray requirement from <2023 to <2024 by @dependabot[bot] in #156
  • Update pyasn1-modules requirement from <0.3,>=0.2.8 to >=0.2.8,<0.4 by @dependabot[bot] in #158
  • Update munch requirement from <3,>=2.5.0 to >=2.5.0,<5 by @dependabot[bot] in #159
  • Update autobahn[twisted] requirement from <21,>=20.7.1 to >=20.7.1,<24 by @dependabot[bot] in #160
  • Update plumbum requirement from <1.7,>=1.6.1 to >=1.6.1,<1.9 by @dependabot[bot] in #161
  • Update bokeh requirement from <3.1,>=1.4.0 to >=1.4.0,<3.4 by @dependabot[bot] in #162
  • Update attrs requirement from <22,>=20.2.0 to >=20.2.0,<24 by @dependabot[bot] in #165
  • Update keyring requirement from <24 to <25 by @dependabot[bot] in #167
  • Maintenance 202602a by @amotl in #183
  • Bump actions/setup-python from 4 to 6 by @dependabot[bot] in #184
  • Runtime: Validate support on Python 3.12, 3.13, 3.14 by @amotl in #188
  • Bump actions/checkout from 3 to 6 by @dependabot[bot] in #186
  • CI: Don't expand test matrix along the Grafana axis by @amotl in #189
  • Bump codecov/codecov-action from 3 to 5 by @dependabot[bot] in #185
  • Update invoke requirement from <2 to <3 by @dependabot[bot] in #166
  • Bump pyparsing from 2.2.0 to 3.3.2 by @dependabot[bot] in #187
  • CI: Validate on MongoDB 6, 7, 8 by @amotl in #190
  • RTD: Use Python 3.14 and Ubuntu 24.04 by @amotl in #191
  • Update gitpython requirement from <3,>=2.0.5 to >=2.0.5,<4 by @dependabot[bot] in #121
  • CI: Only use newest Grafana version to save resources by @amotl in #193
  • Relax dependencies by @amotl in #192
  • Package: Add versioningit by @amotl in #202
  • Chore: Reformat setup.py by @amotl in #204
  • CI: Migrate from Dependabot to Renovate by @amotl in #205
  • Update twine requirement from <5 to <7 by @dependabot[bot] in #208
  • Update sh requirement from <2 to <3 by @dependabot[bot] in #209
  • Update pytest-cov requirement from <5 to <8 by @dependabot[bot] in #206
  • Packaging: Fix sdist and wheel contents by @amotl in #203
  • Update dependency keyring to v25 by @renovate[bot] in #238
  • Update dependency sphinxcontrib-mermaid to v2 by @renovate[bot] in #235
  • Update dependency myst-parser to v5 by @renovate[bot] in #239
  • Update dependency matplotlib to >=3,<3.11 by @renovate[bot] in #213
  • Update dependency pyclibrary to <0.4 by @renovate[bot] in #219
  • Update dependency pycparser to v3 by @renovate[bot] in #229
  • Update dependency sympy to <1.15 by @renovate[bot] in #221
  • Update dependency Twisted to v24 [SECURITY] by @renovate[bot] in #210
  • Update dependency Twisted to v25 by @renovate[bot] in #242
  • Dependencies: Relax more package requirements by @amotl in #241
  • Dependencies: Relax autobahn and paho-mqtt by @amotl in #243
  • Documentation: Minor copy-editing by @amotl in #244
  • Documentation: Maintenance and copy editing. Add SensorWAN 3.0 specification page. by @amotl in #245

New Contributors

Full Changelog: 0.27.0...0.28.0

0.27.0

26 Nov 13:21

Choose a tag to compare

What's Changed

  • Add documentation about running Kotori with RabbitMQ as MQTT broker, see Running Kotori with RabbitMQ
  • Allow connecting to individual MQTT broker per application
  • Improve MQTT logging when connection to broker fails
  • Make MQTT broker credential settings username and password optional
  • Add software tests for simulating all advanced actions against Grafana
    • Publish single reading in JSON format to MQTT broker and proof that a
      corresponding datasource and a dashboard was created in Grafana.
    • Publish two subsequent readings in JSON format to MQTT broker and
      proof that a corresponding datasource and a dashboard was first
      created and then updated in Grafana.
    • Publish two subsequent readings to two different topics and proof that
      a corresponding datasource and a dashboard with two panels has been
      created in Grafana.
    • Publish two subsequent readings to two different topics and proof that
      a corresponding datasource and two dashboards have been created in
      Grafana.
  • Adjust logging format re. milli/microseconds
  • Because accessing dashboards by slug has been removed with Grafana 8, Kotori
    will now use the slug-name of the data channel for all of Grafana's uid,
    name and title fields.
  • Improve decoding fractional epoch timestamps
  • Update to numpy<1.24 on Python >3.10
  • Replace Bunch with Munch

Breaking changes

  • Stop converging latitude and longitude ingress fields to tags.
    It has been implemented as a convenience case when processing LDI data,
    but it is not applicable in standard data acquisition scenarios, specifically
    when recording positions of moving objects. Thanks, @Tonkenfo.

Infrastructure

  • Improve sandbox and CI setup, software tests and documentation
  • Update to Twisted <23
  • CI: Update to Grafana 7.5.17, 8.5.15, and 9.2.6
  • CI: Update to MongoDB 5.0
  • Tests: Remove nosetests test runner, replace with pytest
  • Build: Use python -m build for building sdist and wheel packages
  • Add support for Python 3.10 and 3.11
  • Drop support for Python 3.5 and 3.6
  • CI: Modernize GHA workflow recipe
  • Documentation: Add link checker and fix a few broken links
  • Documentation: Update to Sphinx 5

Full Changelog: 0.26.12...0.27.0