Changeset ed5e7ab in Klonkt for scripts/import-archive.mjs


Ignore:
Timestamp:
08/07/2026 05:41:20 PM (5 weeks ago)
Author:
Robin <roboburr@…>
Branches:
main
Children:
c25eff7
Parents:
ba76bf5 (diff), a4fea5e (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge de drie nieuwste van GitHub, met hun exporter-fix boven de mijne

De parallelle sessie pushte drie commits terwijl deze kant aan het werk was. Een
ervan, 6248497, repareert dezelfde exporter-tijdzonebug die hier een uur eerder in
ba76bf5 was gerepareerd. Twee keer hetzelfde werk, langs twee routes gevonden: daar
via een vraag van Bart, hier via de test die in Europe/Amsterdam omviel.

Het enige conflict zat dan ook in ArchiveExportService.js, op precies die functie.
Hun versie is aangehouden, en dat is geen hoffelijkheid maar een meting: hun regex
accepteert ook een stempel zonder seconden ("2026-07-01 12:56"), waar de mijne
seconden eist. Ze pakten bovendien export-archive.mjs, import-archive.mjs en een
nieuwe instance-env.mjs mee, plus een test in archive-export.test.js. Mijn variant is
daarmee vervallen en verdwijnt uit de boom; de bug blijft gedekt.

Nagemeten dat die keuze de dekking niet kost: archive-import 21 groen en
archive-export 16 groen, in UTC en in Europe/Amsterdam. Zonder een fix valt de
import-test alleen buiten UTC om, dus de tijdzone-afhankelijkheid is echt weg.

Changed files:
src/services/ArchiveExportService.js

  • conflict opgelost ten gunste van 6248497; de eigen toISO is eruit

remarks: dit is de derde keer vandaag dat de GitHub-mirror faalde omdat GitHub
verder stond dan prutfolio.git. De VPS is volgens de deploy-afspraak canoniek,
maar de andere sessie pusht rechtstreeks naar GitHub, dus het divergeert elke paar
uur opnieuw en dat kostte nu dubbel werk. Eén bron aanwijzen is een besluit voor
Robin, geen technische keuze.

-robo
Co-Authored-By: Claude Opus 4.8 <noreply@…>

File:
1 edited

Legend:

Unmodified
Added
Removed
  • scripts/import-archive.mjs

    rba76bf5 red5e7ab  
    1717// en hoort een aparte, bewuste actie te zijn.
    1818
    19 import { readArchive, importArchive } from '../src/services/ArchiveImportService.js';
     19import { kiesInstance, eisOrigin, splitsArgs } from './instance-env.mjs';
    2020
    2121const args = process.argv.slice(2);
    22 const vrij = args.filter((a) => !a.startsWith('-'));
     22const { vrij, vlaggen } = splitsArgs(args, ['--data-root', '--env']);
    2323const [slug, bron] = vrij;
    2424
    2525if (!slug || !bron) {
    26   console.error('gebruik: node scripts/import-archive.mjs <slug> <archief.zip|map> [--dry-run] [--overwrite]');
     26  console.error('gebruik: node scripts/import-archive.mjs <slug> <archief.zip|map> [--data-root <map>] [--env <pad>] [--dry-run] [--overwrite]');
    2727  process.exit(1);
    2828}
     29
     30// EERST de instance kiezen, DAN pas de service laden -- database.js opent de
     31// database bij import. Bij een IMPORT weegt dit zwaarder dan bij een export: in
     32// de verkeerde database schrijven is niet terug te draaien.
     33const vlag = (naam) => vlaggen[naam] ?? null;
     34let gekozen;
     35try {
     36  gekozen = kiesInstance(slug, { dataRoot: vlag('--data-root'), envPad: vlag('--env') });
     37} catch (e) { console.error(e.message); process.exit(1); }
     38eisOrigin(gekozen.bron);
     39console.log(`instellingen uit: ${gekozen.bron || 'de omgeving'}`);
     40console.log(`database        : ${process.env.DATABASE_PATH || '(standaard in de code-map)'}`);
     41
     42const { readArchive, importArchive } = await import('../src/services/ArchiveImportService.js');
    2943
    3044let files;
Note: See TracChangeset for help on using the changeset viewer.