Changeset ba76bf5 in Klonkt for src/services/ArchiveExportService.js
- Timestamp:
- 08/07/2026 05:33:24 PM (5 weeks ago)
- Branches:
- main
- Children:
- ed5e7ab
- Parents:
- 952baf3
- git-author:
- Robin <roboburr@…> (08/07/2026 05:32:58 PM)
- git-committer:
- Robin <roboburr@…> (08/07/2026 05:33:24 PM)
- File:
-
- 1 edited
-
src/services/ArchiveExportService.js (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
src/services/ArchiveExportService.js
r952baf3 rba76bf5 38 38 39 39 const sha256 = (buf) => crypto.createHash('sha256').update(buf).digest('hex'); 40 const toISO = (d) => { const t = Date.parse(d); return isNaN(t) ? null : new Date(t).toISOString(); }; 40 // SQLite's CURRENT_TIMESTAMP schrijft 'YYYY-MM-DD HH:MM:SS' in UTC, zonder marker. 41 // Kale Date.parse leest dat als LOKALE tijd, dus op een server op UTC+2 ging er twee 42 // uur van elke stempel af voordat hij het archief in ging. Die verschuiving wordt bij 43 // het exporteren ingebakken en valt niet weg bij het importeren: exporteer je in 44 // Amsterdam, dan is die post overal permanent twee uur te vroeg, en in zomer- en 45 // wintertijd verschillend. Het raakte de stempels die de database zelf zet (concepten, 46 // ingeplande posts, gearchiveerde antwoorden), niet die uit de editor, dus de schade 47 // was stil en gedeeltelijk. EXPORT-FORMAT.md schreef altijd al "ISO 8601, UTC" voor. 48 // Zelfde regel als isoStamp() in ActivityPubService en stampMs() in guardianship/offers. 49 const SQL_STAMP = /^\d{4}-\d{2}-\d{2}[ T]\d{2}:\d{2}:\d{2}(\.\d+)?$/; 50 const toISO = (d) => { 51 const s = String(d == null ? '' : d); 52 const t = Date.parse(SQL_STAMP.test(s) ? `${s.replace(' ', 'T')}Z` : s); 53 return isNaN(t) ? null : new Date(t).toISOString(); 54 }; 41 55 42 56 const MIME_BY_EXT = {
Note:
See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)