csunibo/informabot

Fuso orario per i comandi `/lezioni*`

Closed this issue · 14 comments

https://github.com/csunibo/informabot/blob/39a061d901abb9f9997e22265619080132e23d52/model/controller.go#L116C6-L116C15

Quando richiediamo gli orari delle lezioni, dovremmo tenere conto del fuso orario Italiano. Siccome ci interessa solo la data e non l'orario esatto, questa sarà spesso giusta, ma non dalle 23 a mezzanotte se c'è l'ora solare, o dalle 22 a mezzanotte se c'è l'ora legale.

Assegnato @Jabbar03 perché si è offerto di fare un tentativo in una branch separata.

@Jabbar03 se hai dubbi chiedi pure in questa issue taggando @csunibo/sviluppatori-bot (uno dei gruppi di cui fai parte) o su Telegram nella sezione "Bot".

Vedila come una scusa per imparare un linguaggio nuovo (che forse ti piacerà forse no) che in università non avresti visto. Ovviamente urgenza 0 quindi puoi lavorarci solo quando hai voglia e abbandonare se cambi idea. Ho dato un'occhio veloce alla issue e forse basta anche solo una linea, anche se sarebbe bello specificare il fuso orario in settings.json anziché hardcodarlo.

ok, farò del mio meglio

@Jabbar03 dovresti fare un merge da main alla tua branch per ottenere gli ultimi aggiornamenti: ora otteniamo gli orari di unibo.it usando un pacchetto Go nostro, quindi c'è da capire se quello risolva il problema o meno (guardando dentro il codice del pacchetto su https://github.com/csunibo/unibo-go o aprendo una issue per chiedere là citando questo problema.

Evitiamo i merge da main verso altre branch. Piuttosto usiamo rebase che è stato creato per quello :)

Sia merge da main che rebase hanno casi d'uso validi per me. La politica che sapevo io era:

se fare rebase non infrange la regola d'oro di git rebase
    fai rebase
sennò
    fai merge da main

In questo caso lo sa @Jabbar03 se ha dato consenso informale anche ad altra gente di lavorare sulla sua branch o meno. Non mi ero messo a spiegargli la differenza fra le due cose per non complicargli la vita alla prima PR

In questo caso mi sembra che non ci siano ancora commit qui su github relativi alla branch di fix. Direi che può fare tranquillamente un rebase in locale.

Sarò onesto, non mi piace troppo fare il merge di main verso altre branch, però capisco che se si sta facendo una pr con molti commit e ci si lavora in più di uno diventa un po' l'unico modo per portare la branch up to date.

Aspetterei che @VaiTon abbia sistemato l'integrazione di unibo-go prima di cominciare a lavorare.

Se lui invoca tenendo conto del fuso orario locale, questa issue può essere contrassegnata come risolta. Altrimenti, ci mettiamo a lavorare a partire dalla sua implementazione (ma dovrebbe essere sempre questione di una linea).

Aspetterei che @VaiTon abbia sistemato l'integrazione di unibo-go prima di cominciare a lavorare.

Se lui invoca tenendo conto del fuso orario locale, questa issue può essere contrassegnata come risolta. Altrimenti, ci mettiamo a lavorare a partire dalla sua implementazione (ma dovrebbe essere sempre questione di una linea).

ok, aspetto il lavoro di @VaiTon. Intanto inizio a guardare altre issue da principiante.

Sì infatti per me unibo-go va già bene su questo aspetto (fermo restando che va reintegrato in informabot).

Io parlavo di FetchTimetable. Penso che quella funzione dovrebbe tenere conto del fuso orario Italiano quando costruisce l'url da interrogare. Perché se sono le 11 di sera in Italia per esempio quando FetchTimeable recupera anno, mese e giorno lo fa secondo il fuso orario di Greenwhich, e quindi il giorno risulta sbagliato (perché unibo usa il giorno in Italia, non quello a Greenwhich).

Comunque, ho rilasciato una v0.0.9 che parsa le date sempre con la timezone "Europe/Rome"

https://github.com/csunibo/unibo-go/releases/tag/v0.0.9

@Jabbar03 allora il fix diventa facilissimo siccome il problema è stato risolto in un pacchetto Go che usiamo:
basta lanciare go get -u per aggiornare le dipendenze.

Risolto aggiornando le dipendenze