• v1.9.5 Stable

    Siphonight released this 2026-09-20 12:56:15 +02:00 | 17 commits to main since this release

    Corrigé — revue de code post-v1.9.4 (audit lecture-seule des deux dépôts)

    • #67 — les ticks X ignoraient le fuseau choisi : drawXLabels formatait
      les labels DANS le fuseau choisi mais appelait xLabelTicks SANS le
      passer — les ticks étaient alignés sur le fuseau de l'appareil (heures
      décalées dès que les deux divergent, contredisant le fix #55). Fix :
      zone passée + pas avancé par Calendar (un +24 h fixe dérivait d'1 h
      aux transitions DST) ; test DST épinglé (Europe/Paris, 29/03/2026).
    • EstrannaiseCloud.compute : paramètre nowMs mort supprimé (jamais
      lu — le KDoc prétendait une sémantique que le code n'avait pas) ;
      appelants + tests mis à jour.

    Amélioré — perf (suite de l'optimisation v1.8.2)

    • Contexte moteur pré-calculé (E2Context + prepareE2Context) : le
      tracé labs appelle e2At par point de grille (720 pts) — chaque appel
      reconstruisait les maps internes (groupBy/cutoffs/Bateman), diluant
      l'optimisation v1.8.2. Préparé UNE fois par courbe labs ET par
      calibration par ester ; résultat bit-identique (244 tests verts).
    • Canvas : Paints texte MÉMOÏSÉS par (couleur, taille, align, gras)
      (une alloc par extremum/label × frame → une par clé) ; detectExtrema
      mémoïsé par série (scan O(n) par frame → par changement de séries) ;
      formatters X/marqueurs mémoïsés (SimpleDateFormat par frame → par
      fuseau).

    Documenté — commentaires et docs rattrapés après les refontes

    • Commentaires à jour avec le code : PKPresets.kt (l'ODS n'existe plus
      au runtime), Treatment.kt (ESE analytique 6 esters),
      LabTimingTest.kt (t½ analytique), doc §7.2/§7.3 (asset historique,
      cutoff = 10 × t½ depuis v1.9.0).
    • Règle anti-#59 ré-appliquée : labels de modèle via modelLabelRes (le
      when inline de l'éditeur violait la règle) ; literals « ESE »/« TFS »/
      « WHS » remplacés par PKModels.* (ChartScreen/CurveChart) ;
      scheduler2 supprimé (le scheduler de l'écran existe déjà).
    Downloads