v0.1.61 - Field Name Standardization (2025-12-18)¶
What Changed?¶
This release standardizes device response field names to use a consistent naming convention with _us suffix for microsecond timestamps. All timestamp fields (detected_at, sent_at, received_at) are renamed to their _us variants to explicitly indicate the unit of measurement. This improves code clarity and prevents timestamp unit confusion.
What's New¶
Field Name Standardization: Timestamp Unit Clarity¶
What it does:
Renames all timestamp fields in device responses to use explicit _us suffix, indicating microseconds since epoch. This standardization applies to all responses and events from the device.
Field Name Changes:
detected_at→detected_us: Event detection timestampsent_at→sent_us: Device response transmission timestampreceived_at→received_us: Library reception timestampsensorValue→adc: ADC sensor reading (previously updated)
How to use it: Update code that references timestamp fields to use the new names:
# Before
event = device.receive_response()
print(event.detected_at) # Old name
print(event.received_at) # Old name
# After
event = device.receive_response()
print(event.detected_us) # New name with explicit unit
print(event.received_us) # New name with explicit unit
Benefits:
- Explicit unit indication prevents timestamp unit confusion
- Consistent naming across all timestamp fields
- Clearer code when working with timestamp calculations
Installation¶
Quick Start¶
# Get the release
git checkout v0.1.61
# Setup
task env:setup
# Run CLI
uv run kazunoko --help
What's Different from the Last Version?¶
✅ Added¶
- None (no new features)
🔧 Changed¶
- Field name standardization for timestamp fields across all device responses:
detected_at→detected_ussent_at→sent_usreceived_at→received_us- Updated all code, tests, documentation, and examples to use new field names
🐛 Fixed¶
- None (no bug fixes)
Is It Safe to Upgrade?¶
Backward Compatible: No
- Breaking Change: Field names have changed. Any code that references
detected_at,sent_at, orreceived_atfields will need to be updated to use the new_ussuffixed names. - Migration: Update imports, field accesses, and example code that references the old field names. The change is straightforward - rename the field with the
_ussuffix. - Examples Updated: All documentation, tutorials, and example code have been updated to use the new names.
Tests Passed¶
- ✅ Code changes compile without errors
- ✅ All field name references updated consistently
- ✅ Documentation and examples verified
Release Details¶
- Date: 2025-12-18
- Version: v0.1.61
- Files Changed: 34 files (Python code, JSON templates, Markdown docs, JSONL data)
- Commits: 12 commits with systematic field name updates across all components
Next Steps¶
- Consider adding a deprecation period if this library is used widely (current approach: breaking change with complete documentation)
- Plan future timestamp field enhancements based on feedback
- Continue improving field naming consistency across device responses