File: CHANGELOG.md

package info (click to toggle)
python-airos 0.6.4-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 704 kB
  • sloc: python: 2,967; sh: 19; makefile: 3
file content (348 lines) | stat: -rw-r--r-- 8,866 bytes parent folder | download
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
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
# Changelog

All notable changes to this project will be documented in this file.

## [0.6.4] - 2026-02-13

### Added

- Re-added reboot functionality

## [0.6.3] - 2026-01-25

### Changed

- Add LBE-5AC-23 (tnx @ecodina)

## [0.6.2] - 2026-01-12

### Changed

- Migrated pre-commit to prek

## [0.6.1] - 2026-01-03

### Added

- Provisional adding LiteAP AC as a mapping towards the full model name

## [0.6.0] - 2025-10-22

Major thanks to user HJ@discord for putting up with testing and dustball62 for confirming

### Added

- Support for v6 firmware XM models using a different login path (XW already was successful)
- Calculated cpuload on v6 if values available (to prevent reporting close to 100%)
- Fix frequency on v6 firmware (if value is cast as a string ending in MHz)
- Added tx/rx rates for v6 as capacity (throughput is available in v6 web interface, but probably through counters, so not yet available)
- Fixed ieeemode (v8) vs opmode (v6) mapped back to IeeeMode enum
- Derived antenna_gain (v8) from antenna (v6 string)
- Improved internal workings and firmware detection

## [0.5.6] - 2025-10-11

### Added

- Model name (devmodel) to SKU (product code) mapper for model_id and model_name matching in Home Assistant

## [0.5.5] - 2025-10-05

### Changed

- Change login from json_data to form_data for v6 login

## [0.5.4] - 2025-10-01

### Added

- Alternate/pre-decessing login url for v6

## [0.5.3] - 2025-09-26

### Changed

- Improved unauthorized and forbidden handling

## [0.5.1] - 2025-08-31

### Changed

- Created a base class based on AirOS8 for both v6 and v8 to consume increasing mypy options for consumption

## [0.5.0] - Not released

Initial support for firmware 6

### Added

- Add logging redacted data on interface [issue](https://github.com/home-assistant/core/issues/151348)
- W.r.t. reported NanoBeam 8.7.18; Mark mtu optional on interfaces
- W.r.t. reported NanoStation 6.3.16-22; Provide preliminary status reporting

## [0.4.4] - 2025-08-29

### Changed

- Made signal in Disconnected optional as reported on LiteBeam 8.7.15

## [0.4.3] - 2025-08-22

### Changed

- Made antenna_gain and nol_* optional as reported on  Prism and LiteBeam 8.7.8 support

## [0.4.2] - 2025-08-17

### Changed

- Aligned quality targets either improved or tagged

## [0.4.1] - 2025-08-17

### Changed

- Further refactoring of the code (HA compatibility)

## [0.4.0] - 2025-08-16

### Added

- Refactoring of the code (DRY-ing up)
- Documentation on available class functions
- Added the additional firmware update related functions

## [0.3.0] - 2025-08-15

### Added

- Implementation of `[AP|Sta]-[MODE]` to Enums.
- Added update check (non-forced) endpoint
- Added warnings fetch endpoint

## [0.2.11] - 2025-08-14

### Changed

- Addition of more fixtures (thanks @Zrzyck)

## [0.2.10] - 2025-08-13

### Changed

- Maintenance chores
- Added pylint and pytest (and applicable changes)

## [0.2.9] - 2025-08-12

### Changed

- Bug Fixes
  - More consistent error handling across login, status, stakick, and provmode; login now returns False when an auth token is missing. Improved discovery transport setup and resilience.
- Refactor
  - Tightened type hints and clarified method signatures for predictable return types and safer usage.
- Tests
  - Substantially expanded coverage, especially for discovery edge cases and error paths.
- Chores
  - Enabled type checking in CI and gated coverage on it; added pre-commit hook and supporting environment script; updated test dependencies.

## [0.2.8] - 2025-08-12

### Changed

- Improved exception handling
- GPS data optional (reported on NanoStation via HA Core Issue 150491)

## [0.2.7] - 2025-08-08

### Added

- Added support for 8.7.11 NanoStation not having 'age' in the 'remote'(s)
- Added debugging script for pinpointing issues in the dataclass

## [0.2.6] - 2025-08-06

### Added

- Added redaction of data in exceptions when requesting `status()`
- Additional settings in dataclass (HA Core Issue 150118)
- Added 'likely' mocked fixture for above issue
- Added additional devices (see [Contributing](CONTRIBUTE.md) for more information)

### Changed

- Changed name and kwargs for discovery function

## [0.2.5] - 2025-08-05

### Added

- Added booleans determining station/accesspoint and PTP/PTMP in derived subclass

## [0.2.4] - 2025-08-03

### Added

- Added support handling a LiteBeam 5AC, including new wireless and IEEE mode options and allowing for unset height.

## [0.2.3] - 2025-08-02

### Changed

- Fixed callback function to async.
- Added changelog.

## [0.2.2] - 2025-08-02

### Changed

- Added a method to control provisioning mode for AirOS devices.
- Introduced a high-level asynchronous device discovery function for AirOS devices.
- Standardized class, exception, and log naming from "Airos" to "AirOS" across the codebase.
- Renamed enum members in WirelessMode for improved clarity.
- Updated tests and fixtures to use new naming conventions and to cover new discovery functionality.

## [0.2.1] - 2025-08-02

### Added

- Added a new field to device status data showing the MAC address and interface name of the primary enabled interface.

### Changed

- Updated wireless fixture data to reflect the correct access point MAC address.

## [0.2.0] - 2025-07-28

### Added

- Added UDP-based discovery for Ubiquiti airOS devices, enabling automatic detection and information retrieval from devices on the network.
- Introduced detailed error handling and new exception types for discovery-related issues.
- Improved code consistency by standardizing logger variable naming.
- Added a script to generate mock discovery packet fixtures for testing.
- Introduced comprehensive tests for the new device discovery functionality.

## [0.1.8] - 2025-07-28

### Added

- Improved device connection status reporting with clearer distinction between connected and disconnected devices.
- Enhanced status information for UNMS connectivity.
- Clarified descriptions for connected and disconnected device states.

## [0.1.7] - 2025-07-27

### Changed

- Improved login error handling by providing a clear error message when authentication is denied.

## [0.1.6] - 2025-07-26

### Changed

- Renamed the AirOS data class to clarify its association with AirOS v8 devices.
- Updated documentation to specify support for AirOS v8 devices.
- Adjusted import statements to reflect the class renaming.

## [0.1.5] - 2025-07-23

### Changed

- Improved handling of unknown or invalid enum values in device data by logging and removing them during data processing, reducing the chance of errors.
- Streamlined warning logging for device status, ensuring warnings are logged immediately rather than being cached.
- Simplified internal data handling and validation logic for device configuration fields.

## [0.1.4] - 2025-07-22

### Changed

- Improved warning handling to ensure each unique warning is only logged once per session.
- Added support for a new wireless mode labeled "AUTO".
- Enhanced warning messages to prompt users to report unknown remote wireless modes.

## [0.1.3] - 2025-07-22

### Changed

- Updated device status retrieval to always return structured data instead of raw JSON.

### Removed

- Dropped JSON output
- Removed a redundant test related to JSON status output.

## [0.1.2] - 2025-07-22

### Added

- Introduced a comprehensive and strongly typed data model for AirOS device data, enabling structured parsing and validation.
- The device status method now supports returning either a structured object or raw JSON, with improved warning handling for unknown values.
- Updated the README to include an example that prints the wireless mode from the device status.
- Added new test to verify device status retrieval returns structured data objects alongside existing JSON-based tests.

### Changed

- Updated dependencies to include mashumaro and removed asyncio.
- Bumped project version to 0.1.2.
- Changed output/returns from JSON to mashumaro (tnx @joostlek)

## [0.1.1] - 2025-07-21

### Added

- Error/exception handling and raising

## [0.1.0] - 2025-07-20

### Changed

- Improve station reconnect

## [0.0.9] - 2025-07-19

### Added

- Add tests
- Add station reconnect (`stakick`)

## [0.0.8] - 2025-07-16

### Changed

- Reworked exceptions

## [0.0.7] - 2025-07-16

### Changed

- Adjust function returns

## [0.0.6] - 2025-07-16

### Added

- Revert setting verify_ssl, leaving it up to the ingestor to set session

## [0.0.5] - 2025-07-15

### Add

- Add basic testing
- Add renovate for chores

## [0.0.4] - 2025-07-13

### Added

- Improve session handling and ssl, bump version
- Add `pre-commit`, prep `uv`
- Add more actions and pypi publishing
- Switch pypi publishing to Trusted Publishing
- Ensure environment and permissions improving publishing
- Actions and pypi

## [0.0.1] - 2025-07-13

### Added

- Initial commits