Kalender ueber EventKit, Orte nach dem Import, Fotos verkleinert, Signalsperre (2026.9.3.1-.3)
- Kalendertermine gehen nativ ueber EventKit statt ueber das Teilen-Blatt:
Apples Kalender meldet sich beim System gar nicht als Teilen-Ziel an, ein
anderes Dateiformat haette also nie geholfen (Abschnitt BS).
- Der Rueckblick stoesst jetzt selbst das Screening an, wenn er Fahrten
angelegt hat - sonst blieb eine importierte Fahrt ohne Ort liegen, solange
das Fahrzeug steht (Abschnitt BT).
- Fahrzeugfotos werden vor dem Upload im Browser auf 2000 px/WebP gebracht.
Gemessen: 3.099.022 -> 325.994 Bytes. Damit ist die Nachrichtengrenze der
WebSocket-Verbindung kein Thema mehr ("connection lost" auf der realen
Instanz). Formate, die der Browser weder umwandeln noch anzeigen kann,
werden mit klarer Meldung abgelehnt statt roh gespeichert.
- Zwei Wechsel des Fahrtsignals in derselben Sekunde kosteten eine ganze
Fahrt: das "on" ueberholte den noch laufenden Beende-Vorgang und fiel durch
beide Zweige. Neue asyncio-Sperre plus Regressionstest, der ohne sie
nachweislich rot ist (Abschnitt BU).
Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
@@ -41,6 +41,7 @@ import datetime
|
||||
import logging
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
from . import screening
|
||||
from .batterie import SPANNUNG_MIN_V
|
||||
from .fahrterkennung import leere_fahrt
|
||||
from .tankerkennung import LITER_SCHWELLE, leerer_tankvorgang, schwelle_prozent
|
||||
@@ -524,6 +525,23 @@ async def importieren(k: Koordinator, start: object, ende: object) -> None:
|
||||
await k.tankvorgang_nachbereiten()
|
||||
await k.batterieverlauf_veroeffentlichen()
|
||||
|
||||
# Der Rückblick trägt nur ein, was er aus dem Verlauf selbst ableiten kann.
|
||||
# Ortsnamen, Verbrauchseichung und der Radzähler hängen dagegen am
|
||||
# Screening - und das lief bis zum 03.09.2026 nur bei einem Wechsel des
|
||||
# Kilometerstands, nach einem Neustart oder aus dem Nachfassen heraus.
|
||||
# Steht das Fahrzeug, ist keines davon der Fall: eine frisch importierte
|
||||
# Fahrt blieb ohne Ort liegen, obwohl beide Koordinaten dastanden und
|
||||
# sogar im Zwischenspeicher schon aufgelöst waren (gemeldet vom
|
||||
# Eigentümer). Dass es so gemeint war, sagt das Nachfassen selbst - sein
|
||||
# Docstring nennt den Import als einen der zwei Fälle, für die es
|
||||
# existiert; nur ausgelöst hat ihn nie jemand.
|
||||
#
|
||||
# Nur bei wirklich angelegten Fahrten: ein Import ohne Ergebnis (der
|
||||
# Normalfall beim zweiten Lauf über denselben Zeitraum) soll keinen
|
||||
# Durchlauf kosten.
|
||||
if fahrten["angelegt"]:
|
||||
await screening.durchfuehren(k)
|
||||
|
||||
ergebnis = {
|
||||
"von": von.isoformat(),
|
||||
"bis": bis.isoformat(),
|
||||
|
||||
Reference in New Issue
Block a user