Queste note di rilascio si applicano solo a The Photographer’s Ephemeris Web sito beta (vedi anche le note di rilascio della versione di produzione release notes.) Si prega di inviare feedback e osservazioni tramite il pulsante Help in basso a destra della pagina.
3.19.10 - 2 aprile 2026
Correzioni
- Cache: modifiche per eliminare o mitigare le richieste di contenuti obsoleti dopo un aggiornamento dell’app web. Aggiunta la logica di ricarica automatica quando vengono rilevati errori di contenuti obsoleti.
3.19.9 - 2 aprile 2026
Correzioni
- Abbonamenti: risolto il crash nella anteprima del cambio piano quando
selectedPlanè undefined
3.19.8 - 1 aprile 2026
Correzioni
- Mappe: corretti problemi con le mappe premium che non si caricavano dopo il primo accesso (#642)
3.19.6 - 31 marzo 2026
Correzioni
- Mappe: risolto il problema per gli utenti Pro che vedevano il watermark “ PRO ” sulle tile satellitari Mapbox quando il recupero delle credenziali restituiva uno stato non-200 in modo silente — ora le risposte non-200 generano un’eccezione in modo che si attivi il meccanismo di retry (#642)
- Mappe: estesa la gate di attesa delle credenziali per coprire i layer premium di Leaflet (es. Mapbox Satellite) — in precedenza solo Google Maps attivava l’interfaccia di attesa/retry/timeout; ora qualsiasi layer premium è bloccato fino al caricamento del suo token API (#642)
- Mappe: ristanilizzato l’UI “ In attesa della configurazione della mappa ” e l’interfaccia di errore/ricarica per essere centrati nell’area della mappa con spinner e pulsante stilizzato (#642)
Modificato
- UI: sostituito lo spinner GIF di caricamento con il componente CSS-driven
Spinnerin tutti gli stati di caricamento — controlli mappa, overlay, modal di condivisione, canvas dell’eclisse e la classe CSS.loading
3.19.5 - 31 marzo 2026
Correzioni
- Mappe: risolto il blocco permanente su “ In attesa della configurazione della mappa… ” per utenti Pro con Google Maps abilitato quando il recupero delle credenziali falliva in modo silente — aggiunto retry automatico dopo 3 secondi e interfaccia di errore con pulsante Ricarica dopo 10 secondi (#640)
3.19.4 - 27 marzo 2026
Correzioni
- Eclissi solare: corretto il percorso dell’eclissi e il caricamento degli eventi di circostanza locale che non venivano caricati al primo accesso tramite URL; ora si attende inoltre la risoluzione del fuso orario prima del controllo dell’eclissi per evitare una condizione di race secondaria (#637)
3.19.3 – 17 marzo 2026
- Posizioni/Listhe: risolto il pulsante del pin secondario (grigio) mancante nella vista dettagli lista quando geodetics è abilitato
3.19.2 – 17 marzo 2026
Nuovo
- Posizioni: la pagina delle posizioni è stata rivista e ora include il supporto per liste personalizzate
- Liste: crea una o più liste di posizioni. Una posizione può essere associata a qualsiasi numero di liste (es. “ Sunrise Spots ” e “ Colorado ”). Le liste possono avere nome, descrizione, icona e colore. Sono sincronizzate automaticamente con i dati del tuo account
- Preferiti sono ora separati in una pagina dedicata accessibile dal link nella nuova barra laterale
3.19.1 – 15 marzo 2026
Correzioni
- Pannello di aiuto: varie correzioni e perfezionamenti
3.19.0 – 15 marzo 2026
Aggiunto
- Help Widget: nuovo pulsante in alto a destra della pagina invece che in basso a destra
- Modulo ticket di supporto: nuovo modulo accessibile tramite il pulsante Help
Modificato
- React 19: enorme aggiornamento interno dell’app (versioni delle librerie, gestione dello stato, styling e altro); qualsiasi componente tu indichi, lo abbiamo aggiornato
- Tipografia: sostituito il font Cabin con Source Sans 3; niente più simbolo ‘@’ anomalo
- Divisione del bundle: dimensione del chunk iniziale molto più piccola
Correzioni
- Varie correzioni di UI e dello stato dell’app
3.18.2 – 6 marzo 2026
- Ottimizzazioni del processo di build per ridurre la dimensione del bundle
3.18.1 – 6 marzo 2026
Correzioni
- Dialog: corretti i componenti dialog (Geodetics, Horizon, Edit Location, Import/Export Locations) che potevano essere aperti una sola volta
3.18.0 – 26 febbraio 2026
Correzioni
- Prestazioni: risolto un blocco progressivo dell’UI su ripetute navigazioni di route causato da Sentry Session Replay (rrweb) che serializzava ogni mutazione del DOM durante i cambi di route – rimosso completamente
replayIntegration()(#581) - Varie: molteplici problemi minori legati a prestazioni e UI
Migliorato
- Prestazioni: vari miglioramenti delle prestazioni in tutto l’app, in particolare relativi al cambio della pagina selezionata
- Icone: ridisegnati SVG personalizzati (terrain, lightbulb, meteor, sunrise, sunset, visual search, wireframe); aggiunta icona terrain-off separata per uno stato di toggle più evidente
- Componenti UI: migrate buttons, dialogs, switches, tabs, tooltips, selects e form inputs – styling coerente, navigazione completa da tastiera e ruoli ARIA appropriati in tutto (#564, #565, #566, #567, #568, #569)
- Tooltip: tutti i tooltip interattivi ora usano un popover stilizzato invece degli attributi
titlenativi del browser – aspetto coerente, accessibile e focalizzabile via tastiera (#569, #576) - Accessibilità: aggiunti
aria-labelai pulsanti con solo icona, associazionehtmlFor/idsu tutte le etichette dei form,role="alert"sugli errori di validazione e focus trapping nelle dialog (#564, #565, #566, #576) - Icone: migrato a una nuova libreria di icone, con maggiore coerenza in tutto il sito (#560, #562, #563)
- WebGL: aggiunta la ripresa automatica dal loss del contesto WebGL sul canvas della bussola 3D (#571)
- Resilienza di rete: gli errori non di rete (es. risposte 4xx) non vengono più ritentati nell’helper di retry (#574)
Rimosso
- Sentry: disabilitata l’integrazione Session Replay – il MutationObserver di rrweb è incompatibile con i cicli di mount-unmount di Three.js/Leaflet; la correzione upstream è tracciata in getsentry/sentry-javascript#16816 (#581)
3.17.9 – 14 febbraio 2026
Migliorato
- Resilienza di rete: aggiunta logica di retry con backoff esponenziale (fino a 3 retry) per le query di elevation, timezone, secondary elevation, geo IP e query combinate tz+elevation (#548, TPE-WEB-APP-1BE, TPE-WEB-APP-35G, TPE-WEB-APP-61, TPE-WEB-APP-3GQ)
- Reporting errori: i fallimenti di rete transitori (assenza di risposta del server) ora vengono loggati solo come warning in console e non più inviati a Sentry – riduce il rumore filtrando i problemi di connettività del client fuori dal nostro controllo (#548)
- Reporting errori: risolto il doppio invio di ogni errore a Sentry (sia
captureMessagechecaptureException) - Connettività: aggiunto tracking host raggiungibile/non raggiungibile alla saga di elevation, replicando il pattern già presente nella saga di timezone (#548)
3.17.8 – 13 febbraio 2026
Modificato
- Moon Simulator: schiarita la tinta del blood moon durante l’eclisse lunare totale per migliorarne la visibilità (#C62A19, prima #881D11)
3.17.7 – 13 febbraio 2026
- Gli eventi di eclissi lunare sulla timeline sono ora disponibili a tutti gli utenti, indipendentemente dallo stato di abbonamento.
3.17.6 – 11 febbraio 2026
Correzioni
- Terreno 3D: risolto il rendering intermittente del terreno piatto al ricaricamento della vista 3D (~\5% di failure) causato dalla cache
useLoaderdi R3F che restituiva istanze condivise diTHREE.Texturetra i componenti – ogni texture di base ora usa un parametro di query unico per invalidare la cache e garantire dati GPU isolati (#515)
3.17.5 – 10 febbraio 2026
Correzioni
- Mappa: risolto crash durante la navigazione via away da Landing Map, Solar Eclipse Map o Moon Simulator Map durante un’animazione di zoom
- Localizzazione: risolto
RangeErrorda tag locale non validoen-US@posixinIntl.DateTimeFormat/Intl.NumberFormatrimuovendo le estensioni POSIX dalle stringhe di locale i18n (#542, TPE-WEB-APP-5B3)
3.17.4 – 10 febbraio 2026
Correzioni
- Eclissi solare: risolto il crash nella visualizzazione di un’eclissi solare da una posizione esterna al percorso dell’eclissi dove il contatto c1 non esiste (
TypeError: undefined is not an object evaluating contacts.c1.date) (TPE-WEB-APP-5AK) - WebGL: risolti warning false-positive di Sentry per perdita del contesto WebGL innescati dalla normale navigazione away dai canvas 3D (TPE-WEB-APP-5AE)
- WebGL: risolto crash su iOS/Safari causato da race condition tra perdita del contesto WebGL e il render loop di R3F –
gl.render()è ora protetto da try-catch che rileva la perdita del contesto prima del relativo evento DOM (TPE-WEB-APP-5AT) - Mappa: risolto il crash Leaflet “ Map container is already initialized ” durante la navigazione di route causato dai 4 componenti del container mappa che condividevano
id="map"(#540, TPE-WEB-APP-5AV)
3.17.3 – 9 febbraio 2026
Correzioni
- Localizzazione: risolto il crash di Firefox (“ too much recursion ”) quando si passa il mouse sugli eventi astro_set nella timeline, causato dal nesting di
$t()di i18next nei file di locale en, pl, it e ko (#535) - Moon Simulator: risolta una falla silente nei calcoli lunari – gli errori venivano ignorati, mostrando una canvas vuota invece di un messaggio di errore
- Moon Simulator: risolta l’allocazione per frame di Vector3 nel render loop che causava pressione GC non necessaria
- UI: corrette le overlay modali nascoste dietro la riga dei controlli aumentando lo z-index dell’overlay sopra la riga dei controlli
- UI: corretti i menu a discesa (Body Controls, Display Options) che venivano renderizzati dietro i popup del simulatore luna/eclisse aumentando lo z-index della riga dei controlli sopra gli overlay del simulatore
- Bussola 3D: risolto leak del target DirectionalLight nel componente SunLight al unmount
- Moon Simulator: risolto un glitch transitorio del colore del cielo causato da una race di invalidazione cache Jotai che produceva un’altitudine del Sole errata per singoli frame di render (#537)
Migliorato
- WebGL: aggiunta gestione della perdita del contesto a tutti i canvas React Three Fiber con hook condiviso, UI di fallback e reporting a Sentry (precedentemente gestito solo dal canvas della Luna)
- Three.js: aggiunta validazione delle patch degli shader con warning su Sentry in modo da far emergere i fallimenti silenziosi dopo un aggiornamento di Three.js
- Moon Simulator: transizione fluida della scala del bump attraverso la zona del crepuscolo civile – sostituisce il taglio netto all’altitudine del Sole -6° con interpolazione smoothstep e riduce la riduzione eccessiva del bump diurno
- Moon Simulator: transizione fluida dell’intensità della luce al crepuscolo nautico – sostituisce il taglio netto a -6° di altitudine del Sole con una fusione smoothstep su -8° a -6° (#537)
3.17.2 – 5 febbraio 2026
Correzioni
- Pagina 3D: aggiunta una error boundary per prevenire crash a schermo vuoto quando la creazione del contesto WebGL fallisce su dispositivi iOS (#529)
- Ricerca visiva: risolto crash nell’interazione con il form dei filtri causato da react-hook-form che mutava lo stato Redux frozen (#531)
- Prestazioni: risolte chiamate API N+1 a
/services/detailsdurante il caricamento della pagina prevenendo richieste concorrenti (#532) - Mappa: risolto TypeError su Mobile Safari quando si navigava away durante un’animazione di zoom della mappa (#533)
- Eclissi solare: risolto il bug di logging “ Error: undefined ” e aggiunta gestione timeout/fallimento per prevenire blocchi quando i dati dell’eclissi non si caricano (#534)
- Credenziali di servizio: aggiunto retry con backoff esponenziale per risposte 429 rate-limit (#535)
3.17.1 – 4 febbraio 2026
Correzioni
- Simulatore di eclissi solare: risolto crash nella visualizzazione dell’eclissi da una posizione non visibile dove i tempi di contatto (c1/c4) non esistono (#525)
- Contatti eclissi lunare: corretta la verifica dei diritti per includere correttamente gli utenti Pro nelle funzionalità dei tempi di contatto dell’eclissi
- Query string URL: risolto crash nella costruzione dell’URL con valore data non valido (#522)
Migliorato
- Errori interni del browser DuckDuckGo (#521)
- Ambienti browser rotti privi di API standard (#523, #524)
- Fallimenti del contesto WebGL in ambienti headless/bot (#526)
- Errori “ request aborted ” dovuti a navigazione utente (#527)
3.17.0 – 3 febbraio 2026
Aggiunto
- Moon Simulator: nuova funzionalità interattiva di visualizzazione 3D della Luna
- Rendering in tempo reale della Luna con fase, librazione e posizione accurate
- Etichette delle caratteristiche lunari (maria, crateri) con filtering livello-di-dettaglio basato sullo zoom
- Controlli della camera con indicatori di azimut/altitudine e reset con doppio clic
- Controlli di playback per l’animazione temporale con diverse velocità
- Barra degli strumenti delle opzioni di visualizzazione (gradiente del cielo, etichette, anelli d’ombra, orizzonte)
- Visualizzazione dell’ombra della Terra nelle eclissi lunari con coni di umbra/penombra
- Pulsanti per i tempi di contatto dell’eclissi lunare (P1, U1, U2, Max, U3, U4, P4)
- Indicatore “ sotto l’orizzonte ” quando la Luna non è visibile
- Overlay di direzione camera che mostra azimut e altitudine
- Controlli di navigazione per giorno per cambi rapidi di data
- Visualizzazione distanza lunare e dati di librazione
- Mini anteprima 3D della Luna nel popup del simulatore sulla mappa
- Restrizioni di accesso basate sulla data per i livelli di abbonamento (Free: 1 giorno di anticipazione, Supporter: 5 giorni, Pro: senza limiti)
- Messaggio di reindirizzamento per eclissi solare quando si visualizza durante un’eclissi solare
- Error boundary per una gestione elegante degli errori
- Link di aiuto alla documentazione di supporto
- Impostazione Nascondi Simulatori: nuova opzione per nascondere i simulatori Luna ed Eclissi Solare dall’UI
Modificato
- Mini view del Simulatore di eclissi solare: layout semplificato per un aspetto più pulito
- Motore 3D aggiornato: aggiornato per una gestione colore moderna
- Migrato a unità di illuminazione fisicamente corrette\
- Risolti problemi di corruzione delle ombre con architettura Canvas persistente
- Migliorato il caricamento del terreno
- Risolto oscillazione LOD in AzimuthIndicator
3.16.1 – 19 gennaio 2026
- Migliorate le mappe delle eclissi: risolti attraversamenti dell’anti-meridiano e occasionali artefatti alle estremità del percorso
- Stile del percorso dell’eclissi: corretto il rendering per geometrie MultiLineString
3.16.0 – 14 gennaio 2026
- Molteplici miglioramenti al simulatore di eclissi solare – leggi sotto per i dettagli
- Selettore filtro solare: nuovo controllo UI per scegliere tra diverse simulazioni di filtro solare (Default, Nisi Pro Nano, Baader AstroSolar, Thousand Oaks Optical)
- Selettore soglia di oscuramento: nuovo controllo UI per configurare quando il filtro solare simulato viene rimosso, con opzioni da 99.99% a 99.5% di oscuramento
- Indicatore di avviso: icona gialla di avviso che appare quando la soglia di oscuramento è impostata sotto 99.9% per ricordare la protezione del sensore della fotocamera
- Tooltip localizzati: aggiunti tooltip per controllo filtro solare e soglia di oscuramento in tutte le 7 lingue supportate
- Coordinate del massimo dell’eclissi calcolate: quando si visualizzano eventi di eclissi solare, la selezione dell’eclissi ora calcola coordinate, orario e durata più accurati usando elementi besseliani invece dei dati della tabella di lookup NASA 5MCSE
- Tempi di Baily’s Beads migliorati: la rimozione del filtro è ora sincronizzata con la visibilità dei Baily’s beads per una simulazione dell’eclissi più realistica
- Visibilità unificata delle beads: sia per l’osservatore in totalità sia per scenari vicino al percorso ora si usa la visibilità basata sull’oscuramento
- Etichetta del cursore di esposizione: rinominata da “ Baily’s Beads ” in “ ±EV ” per chiarezza poiché ora controlla l’esposizione simulata durante la totalità, non solo il “ flare ” delle beads
- Miglioramenti alla simulazione dell’eclissi: miglior rendering della cromosfera, controllo della visibilità della corona
- Transizioni del filtro più rapide: la transizione di rimozione del filtro è ora molto più veloce (ampiezza di oscuramento 0.00025) per una simulazione più realistica
Note di rilascio più vecchie sono disponibili qui.