Skip to content

v1.11.0

Choose a tag to compare

@github-actions github-actions released this 23 Jun 11:02
49f1f84

Additive (MINOR) release: multi-lingual lyric tracks, language tags, and language-tagged vocal
stems. Backward-compatible — a 1.0.0 pack is also a valid 1.11.0 pack, and an older reader ignores
the new optional keys and still loads the single lyrics pointer + stems as before.

Added

  • Multi-lingual packs (spec §5.5,
    §5.1, §5.3): three OPTIONAL
    additive keys so a pack can express language and carry more than one lyric representation —

    • a top-level language (BCP 47) naming the song's
      primary sung language;
    • a per-stem language hint tagging a language-specific vocal stem (e.g. vocals_ja /
      vocals_en for a song with two sung-language recordings);
    • a lyric_tracks list of additional lyric files, each with id, file, language, and a
      kind of original / transliteration / translation, plus OPTIONAL lyrics_source,
      lyric_transcription provenance, and a stem pointer pairing a sung original with its vocal
      recording.

    Each track is an ordinary lyrics.json-shaped flat array, so
    no new side-file schema is introduced — only schemas/manifest.schema.json grows (a bcp47
    $def, a lyricTrack $def, the lyric_tracks array, and language on the manifest and on
    $defs/stemEntry). The legacy single lyrics pointer is unchanged: when lyric_tracks is absent
    a reader behaves exactly as before, and when present a writer SHOULD still point lyrics at the
    primary-language original track's file for pre-1.11.0 readers. Exercised by the extended example
    (an English original + a Japanese translation + a romaji transliteration, and a language-tagged
    full stem).

Changed

  • CI (no format change): the version-consistency guard (tools/check_versions.py) now covers
    every place the current version is written — the spec header, the §4.1 feedpak_version
    example + writer-SHOULD line, the README table and citation, and the extended example
    manifest, in addition to the newest CHANGELOG.md version. A missed spot during a bump now
    fails CI with a precise diff instead of drifting silently.
  • Docs (no format change): the hand-editing guide's .jsonc section now spells out the two
    caveats — comments are the only relaxation (no trailing commas / JSON5), and a comment-bearing
    .jsonc needs a JSONC-aware reader, so keep distributed packs as comment-free .json.