fix(tooling): ontkoppel translate_docs van Flutter zodat de poort weer compileert #1338
No reviewers
Labels
No labels
accepted
bug
declined
docs
duplicate
enhancement
good first issue
in-progress
needs-info
privacy
security
triage
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
LibreKAT/Ocideck!1338
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/decouple-translate-docs-ffi"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
dart run tool/translate_docs.dart --check(de poortmake translate-docs-check) crashte lokaal op een Dart FFI-compilerfout:Oorzaak, empirisch bepaald (per import gebisecteerd, niet aangenomen): de tool importeerde
AppLocalizationsenDocumentationService. Die trekken viapackage:flutter/material.dartendart:uide hele Flutter-graaf de standalone-VM-compilatie in, en dat kan de standalone Dart-VM niet —app_localizationsdoet de FFI-transformer crashen,documentation_servicefaalt op "dart:ui is not available on this platform".flutter testcompileert wél (ander doel), en de anderedart run tool/check_*.dart-poorten importeren geen Flutter, dus die draaien.Fix: de tool heeft alleen platte data nodig — de taalcodes en de docs-brontaal. Die verhuizen naar een Flutter-vrij
lib/l10n/language_registry.dart(kLanguageNames,kDocsBaseLanguage).AppLocalizations.languageNamesenDocumentationService.baseLanguagestellen ze opnieuw beschikbaar (app-API ongewijzigd, één bron van waarheid), en de tool importeert alleen nog het register. Daarmee compileertdart run tool/translate_docs.dartweer schoon.Audit (deel van de opdracht): alle
dart run tool/*.dart-poorten nagelopen — enkeltranslate_docstrok Flutter binnen.build_cwe_catalogleunt op het Flutter-vrijeutils/csv.darten is bovendien geen poort.Verificatie:
dart run tool/translate_docs.dart --checkcompileert en draait; volledigemake checkgroen (8935 tests, coverage 87,1%, alle statische poorten). Het const-only registerbestand staat inuncoveredBaseline(geen uitvoerbare regels, zoalslibrary_scan_limits.dart);test/language_registry_test.dartborgt dat app-API en register dezelfde data zijn. SOURCE_MAP bijgewerkt.Twee bestaande zaken die de crash maskeerde — apart gemeld, buiten deze PR:
--checkgeeft zijn niet-nul-uitkomst niet door:mainisFuture<int>enreturn _runCheck(), maar Dart negeert een teruggegeven int (geenexit()/exitCode), dus de poort eindigt altijd 0. De poort is nu een compile-rooktest, geen inhoudscontrole..nl-varianten bestaan). Punt 1 fixen zou de poort hierop laten falen tot iemandmake translate-docsdraait — een maintainer-besluit, geen onderdeel van deze reparatie.