Repository navigation
v4.2.3 - Naprawa krytyczna: Filtrowanie lekcji po dacie
🎯 NAPRAWA KRYTYCZNA - Wymagana aktualizacja!
Ta wersja naprawia krytyczny błąd powodujący wyświetlanie lekcji z przyszłych dat zamiast dzisiejszych.
🐛 Problem który został naprawiony
Objawy:
- Wszystkie sensory lekcji pokazują "niedostępny" (unavailable)
- Lekcje 9-10 pokazują "-" (co jest OK gdy nie ma tylu lekcji)
- Logi pokazują daty z 2026 roku (czerwiec 2026) zamiast dzisiejszej daty
Przyczyna:
- API zwraca lekcje na cały rok szkolny (2025-2026, setki lekcji)
- Kod w
fetch_data.pynie filtrował po dacie - W rezultacie dla każdej pozycji (1, 2, 3...) brał OSTATNIĄ znalezioną lekcję
- Ostatnie lekcje w bazie były z czerwca 2026
- Sensory pokazywały dane z przyszłości →
available()zwracałoFalse→ "niedostępny"
✅ Co zostało naprawione
Dodano filtrowanie lekcji po dacie w fetch_data.py (linie 103-122):
# Only add lessons for the requested date (date_from)
lesson_date_str = temp_dict.get("date")
if lesson_date_str and date_from:
# Convert lesson date to date object for comparison
if isinstance(lesson_date_str, str):
try:
lesson_date = datetime.datetime.strptime(lesson_date_str, "%Y-%m-%d").date()
except (ValueError, TypeError):
lesson_date = None
elif isinstance(lesson_date_str, datetime.date):
lesson_date = lesson_date_str
else:
lesson_date = None
# Only add if date matches date_from
if lesson_date == date_from:
dict_ans[f"lesson_{lesson_position}"] = temp_dictTeraz:
- ✅ Kod filtruje lekcje tylko dla żądanej daty (
date_from) - ✅ Sensory "dzisiaj" pokazują lekcje z dzisiejszej daty
- ✅ Sensory "jutro" pokazują lekcje z jutrzejszej daty
- ✅ Wszystko działa poprawnie!
📋 Jak zaktualizować
Przez HACS:
- Otwórz HACS → Integrations
- Znajdź "Librus (Private API)"
- Kliknij "Update"
- Zrestartuj Home Assistant
Ręcznie:
cd /config/custom_components/librus_private
git pull
# Zrestartuj Home Assistant🧪 Jak sprawdzić czy działa
Po aktualizacji i restarcie:
- Sprawdź sensory lekcji - powinny pokazywać dzisiejsze lekcje
- Sprawdź atrybuty sensora - data powinna być dzisiejsza
- Logi debug powinny pokazywać:
Lesson 1: lesson_date_str = 2025-10-30 Lesson 1 (today): 2025-10-30 == 2025-10-30 -> True
📝 Zmiany techniczne
Zmienione pliki:
custom_components/librus_private/fetch_data.py- dodano filtrowanie lekcji po daciecustom_components/librus_private/manifest.json- zaktualizowano wersję do 4.2.3README.md- aktualizacja changelog
🙏 Podziękowania
Dziękuję za cierpliwość podczas debugowania tego problemu. Logi debug z wersji 4.2.2 pomogły zidentyfikować problem!
Pełna dokumentacja: https://github.com/piterkos/HALibrus
Zgłaszanie problemów: https://github.com/piterkos/HALibrus/issues