]> git.ipfire.org Git - thirdparty/google/fonts.git/commitdiff
DM Sans: add corrected override config.yaml for fontc_crater build
authorFelipe Correa da Silva Sanches <juca@members.fsf.org>
Thu, 21 May 2026 20:34:33 +0000 (21:34 +0100)
committerFelipe Corrêa da Silva Sanches <juca@members.fsf.org>
Thu, 21 May 2026 22:03:22 +0000 (23:03 +0100)
The upstream config Sans/Source/config.yaml has valid content but every
line is indented 4 spaces with no top-level key, so it cannot be parsed.
fontc_crater failed with "no config file was found".

Added an override config.yaml: the upstream config de-indented to valid
top-level YAML, with source paths made repo-root-relative
(Sans/Source/DMSans.glyphs, Sans/Source/DMSans-Italic.glyphs). Removed the
config_yaml field from METADATA.pb so the override is auto-detected. The
recorded commit and sources are otherwise correct.

Assisted by an AI agent (Claude Opus 4.7)

ofl/dmsans/METADATA.pb
ofl/dmsans/config.yaml [new file with mode: 0644]
ofl/dmsans/upstream_info.md

index 319fecf7e1226cab80ad6ca2a1196daa8eeb28f7..bc40f78c6b8e917312c2321248cdcbec55cb7796 100644 (file)
@@ -37,7 +37,6 @@ axes {
 source {
   repository_url: "https://github.com/googlefonts/dm-fonts"
   commit: "d0520ba03bd780f5dccb3024854463d44f699b78"
-  config_yaml: "Sans/Source/config.yaml"
   files {
     source_file: "Sans/OFL.txt"
     dest_file: "OFL.txt"
diff --git a/ofl/dmsans/config.yaml b/ofl/dmsans/config.yaml
new file mode 100644 (file)
index 0000000..e6a3b98
--- /dev/null
@@ -0,0 +1,109 @@
+# Override config.yaml for ofl/dmsans
+# The upstream config (Sans/Source/config.yaml in googlefonts/dm-fonts) has
+# valid content but every line is indented 4 spaces with no top-level key,
+# so it cannot be parsed ("no config file was found"). This override is the
+# same config de-indented to valid top-level YAML, with the source paths
+# made relative to the repository root.
+sources:
+  - Sans/Source/DMSans.glyphs
+  - Sans/Source/DMSans-Italic.glyphs
+axisOrder:
+  - opsz
+  - wght
+  - ital
+familyName: DM Sans
+stat:
+  DMSans[opsz,wght].ttf:
+  - name: Optical size
+    tag: opsz
+    values:
+    - name: 9pt
+      value: 9
+    - name: 14pt
+      value: 14
+    - name: 18pt
+      value: 18
+    - name: 24pt
+      value: 24
+    - name: 36pt
+      value: 36
+    - name: 40pt
+      value: 40
+  - name: Weight
+    tag: wght
+    values:
+    - name: Thin
+      value: 100
+    - name: ExtraLight
+      value: 200
+    - name: Light
+      value: 300
+    - name: Regular
+      value: 400
+      linkedValue: 700
+      flags: 2
+    - name: Medium
+      value: 500
+    - name: SemiBold
+      value: 600
+    - name: Bold
+      value: 700
+    - name: ExtraBold
+      value: 800
+    - name: Black
+      value: 900
+    - name: ExtraBlack
+      value: 1000
+  - name: Italic
+    tag: ital
+    values:
+    - name: Roman
+      value: 0
+      linkedValue: 1
+      flags: 2
+  DMSans-Italic[opsz,wght].ttf:
+  - name: Optical size
+    tag: opsz
+    values:
+    - name: 9pt
+      value: 9
+    - name: 14pt
+      value: 14
+    - name: 18pt
+      value: 18
+    - name: 24pt
+      value: 24
+    - name: 36pt
+      value: 36
+    - name: 40pt
+      value: 40
+  - name: Weight
+    tag: wght
+    values:
+    - name: Thin
+      value: 100
+    - name: ExtraLight
+      value: 200
+    - name: Light
+      value: 300
+    - name: Regular
+      value: 400
+      linkedValue: 700
+      flags: 2
+    - name: Medium
+      value: 500
+    - name: SemiBold
+      value: 600
+    - name: Bold
+      value: 700
+    - name: ExtraBold
+      value: 800
+    - name: Black
+      value: 900
+    - name: ExtraBlack
+      value: 1000
+  - name: Italic
+    tag: ital
+    values:
+    - name: Italic
+      value: 1
index 25ad670919bcc647d8e41a8dbd8a4755a5337c59..1ae5b5fc9880424f1afad6db74970049424e2391 100644 (file)
@@ -49,4 +49,20 @@ DM Sans shares the `googlefonts/dm-fonts` repository with DM Serif Display and D
 
 ## Issues Found
 
-None. The tracking data is accurate and complete. The METADATA.pb on main already has the correct commit hash, config_yaml, and branch.
+The METADATA.pb commit hash and branch are correct. However, the upstream `Sans/Source/config.yaml` is malformed (see fontc_crater fix below).
+
+## fontc_crater Build Fix (2026-05-21)
+
+**Model**: Claude Opus 4.7
+
+### Initial state
+fontc_crater failed with `no config file was found`, even though `Sans/Source/config.yaml` exists at the recorded commit.
+
+### Investigation
+The upstream `Sans/Source/config.yaml` has valid content, but every one of its lines is indented by 4 spaces with no top-level key — the whole YAML document is nested under an empty/implicit root. A parser finds no top-level `sources`/`recipe`, so the config is rejected. The defect is still present at upstream HEAD. The recorded commit and the `.glyphs` sources are otherwise correct.
+
+### Actions taken
+A corrected override `config.yaml` was added to the family directory: the upstream config de-indented to valid top-level YAML, with the source paths made repo-root-relative (`Sans/Source/DMSans.glyphs`, `Sans/Source/DMSans-Italic.glyphs`). The `config_yaml` field was removed from METADATA.pb so the override is auto-detected. An upstream fix to the indentation of `Sans/Source/config.yaml` should be filed separately.
+
+### Final state
+The family directory carries a valid gftools-builder config with a parseable top-level `sources` list pointing at the existing `.glyphs` sources.