nodejs / nodejs/node

fs: support utimes BigInt

Aperta
#50,859 3 commenti 1 reazione 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

feature request fs never-stale
Lingua principale
JavaScript
Stelle
122k
Fork
37.3k
Merge medio
4g 2h
PR unite (30g)
283

Descrizione

What is the problem this feature will solve?

Current utimes FS functions have a granularity of microseconds, while the stats BigInt functionality has a granularity of nanoseconds.

What is the feature you are proposing to solve the problem?

Adding support for BigInt to the utimes functions to enable nanosecond granularity for setting timestamps.

What alternatives have you considered?

The underlying reason for this issue is that floating point second values only have 24 significant digits, which does not extend to exact nanoseconds. Having stats support BigInt u64 times, while having utimes not creates the inability to exactly set and read the same level of precision. Relying on a BigInt input as a u64 nanoseconds value seems the most sensible way to resolve this to me.

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia individuando le funzioni utimes del filesystem e la funzionalità BigInt esistente di stats. Confronta il modo in cui ciascuna rappresenta la precisione dei timestamp e identifica i percorsi rilevanti specifici della piattaforma. Il lavoro è completato quando gli input BigInt possono impostare timestamp con precisione al nanosecondo e questi valori possono essere riletti con la stessa precisione.

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

Valutazione

Stack tecnologico
javascript
Ambito
operating-systems
Tipo di issue
Funzionalità
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.