elastic / elastic/ml-cpp

Investigate replacing strptime() with std::chrono::parse

Aperta
#1,459 1 commento 0 reazioni 0 assegnatari Vedi su GitHub
:ml
Lingua principale
C++
Stelle
157
Fork
67
Merge medio
17h 52m
PR unite (30g)
20

Descrizione

Currently we are using the `strptime()` C function for time parsing. This is a pain, as it requires workaround for Linux and Windows, so is one of our least platform independent pieces of code.

In theory [`std::chrono::parse`](https://en.cppreference.com/w/cpp/chrono/parse) might be better. However some investigation is required to find out if `std::chrono::parse` is as portable as it should be. Given what we found with `strptime()` Linux and Windows are the platforms most likely to not implement the standard fully, with timezone support being the likely problematic area.

If the portability _is_ better then we should remove our `strptime()` wrapper code and all uses of it and replace them with `std::chrono::parse`. If workarounds would still be required then we might as well stick with what we've got until the C++ library _is_ consistent.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia esaminando l'attuale wrapper strptime e ogni suo utilizzo, quindi confronta std::chrono::parse su Linux e Windows, incluso il supporto dei fusi orari. Il lavoro è completo quando viene documentato se la portabilità è sufficiente per la sostituzione o se l'approccio esistente debba rimanere invariato.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
cpp
Ambito
operating-systems
Tipo di issue
Refactoring
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
30/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.