Skip to content

Releases: jodi-ivan/numbered-notation-xml

v0.08 with all content are fully digitized

Choose a tag to compare

@jodi-ivan jodi-ivan released this 19 Apr 00:28

Content

All content fully digitized 🎉

Changes

Features

  • Barline – Add support for left and right repeat barlines.
  • Footnotes – Add support for title notes, head-only verse footnotes, and verse footnotes without an associated verse.
  • Key Signature – Drop support for multikey modulation guessing.
  • Lyric – Introduce "bait" prefix lyric; improve prefix lyric handling with splitting logic.
  • Measure Text – Add support for rehearsal text, ritardando text with dashed line, and text below the staff.
  • Numbered Notation – Improve spacing for slurred or tied notes.
  • Slurs & Ties – Improve stacking interaction between slurs and ties.
  • Spacing – Fix general spacing handling logic.
  • Staff – Add top margin when first staff contains measure text; improve vertical spacing for text and repeat on top staff.
  • Subtitle – Add subtitle support.
  • Tuplet – Improve tuplet handling logic.
  • Verse – Improve verse spacing; add tab support on verse.

Fixes

  • Beam – Fix beam splitter failing to split on 16th beat at the beginning of a measure.
  • Credits – Fix collision between "for kids" and multiline credits.
  • Measure Text – Fix repeat line indicator positioning above the staff.
  • Various – Miscellaneous bug fixes.

Refactors

  • Alignment – Refactor numbered notation and lyric alignment logic.
  • Credits – Refactor credits and decouple from footnotes.
  • Header – Refactor header rendering in staff layout.
  • Renderer – Move staff and verse logic to dedicated packages.
  • Staff – Refactor rhythm and additional renderers.
  • Verse – Refactor verse handling.

Tests

  • Barline – Add, fix, and adjust unit tests for barline logic.
  • Breath Pause & Fermata – Fix unit tests.
  • Credits – Add unit tests.
  • Fermata – Add unit tests.
  • Footnote – Add unit tests.
  • Header – Add unit tests.
  • Lyric – Add, fix, and adjust unit tests.
  • MusicXML – Add unit tests.
  • Numbered Notation – Add unit tests.
  • Renderer – Add unit tests.
  • Rhythm – Add unit tests.
  • Staff – Add and adjust unit tests.
  • Time Signature – Fix unit tests.
  • Utilities – Add unit tests (two parts).
  • Verse – Add, adjust, and fix unit tests.

Attached Files

kidung-jemaat.db

Type: SQLite database
Purpose: Stores metadata for the music that cannot be represented within MusicXML format.

musicxml.zip

Type: ZIP archive (uncompressed)
Purpose: Contains the MusicXML files required for the application to run.

set the location of extracted to files/etc/numbered-mutation-xml/config.ini


Optional (does not needed for the app to run) mscz.zip

Type: ZIP archive
Purpose: Contains the raw MuseScore (.mscz) source files before export to MusicXML.

goldenfiles.zip

Type: ZIP archive
Purpose: Contains SVG golden standards for snapshot testing.


Note: This changelog follows the Keep a Changelog convention and uses Conventional Commits style.

Full Changelog: v0.07c214...v0.08-all-content

v0.07 and Content Update KJ 214

Choose a tag to compare

@jodi-ivan jodi-ivan released this 19 Mar 18:33

Release Notes v0.07

Content Update

  • Updated content until KJ 214

🚀 New Features

  • Verse Engine: Implemented new verse engine for improved verse insertion and workflow (#9)
  • Key Signatures: Added support for multiple key signatures
  • Verse Footnotes: Introduced headless footnotes for verses
  • Lyric Syllables: Added syllable breakdown using existing stored and reusable components

📈 Improvements

  • Staff Layout: Enhanced new line support for content that transfers across multiple lines (2+ lines)
  • Rhythm: Improved line beam splitting for better visual rendering
  • Breath Pause: Proper handling of breath pause and beam line interaction
  • Lyrics: Fixed multi-layer lyrics handling for optional lyrics on other layers

🎯 Specialized Support: KJ-124

  • Added custom left margin for the lyric leading header
  • Utilized MusicXML's method (rehearsal) as the leading header for staff notes
image

🐛 Bug Fixes

  • Fixed credits line out-of-bounds and wrapping issues (now properly wraps to new lines)
  • Various minor fixes and optimizations

🧹 Code Refactoring

  • Multiple code refactoring and cleanup across the codebase

Full Changelog: [Link to compare changes]

Full Changelog: v0.06c110...v0.07c214

Version v0.06c110 and Content Update kj-110

Choose a tag to compare

@jodi-ivan jodi-ivan released this 05 Mar 20:08

Release Notes v0.06c110

New Features

  • Hyphenation: Added hyphen support from the beginning of the line for improved lyric formatting
  • Key Signatures: Added Mixolydian mode support
  • Ties: Added support for ties represented as notes

Bug Fixes

  • Bar lines: Fixed repeat backward bar line not providing proper spacing for subsequent notes
  • Breath pauses: Fixed beam line stopping on breath mark in last position
  • Lyrics: Fixed hyphen calculation and right-aligned lyric out-of-bounds issues
  • Rhythm:
    • Fixed panic on rhythm line reassignment
    • Fixed rhythm beam line handling for splitting and proper rendering
  • Slurs/Ties: Fixed merging ties for notes with more than 3 occurrences
  • Staff layout: Fixed new page not creating a new line
  • Verse formatting: Fixed verse footnotes header style
  • Various: Multiple miscellaneous fixes across the codebase

Improvements

  • Credits: Enhanced credits rendering
  • Slurs/Ties: Improved visual appearance of slurs and ties
  • Moveable Do: Changed approach to "pitch-first" method instead of semitone counting

Code Refactoring

  • General codebase refactoring for better maintainability
  • Refactored ties handling in slurs/ties module

Testing

Added unit tests for multiple package:

  • internal/breathpause
  • internal/credits
  • internal/keysig
  • internal/lyric
  • internal/numbered
  • internal/rhythm
  • internal/staff
  • internal/timesig
  • internal/utils
  • General test cleanup and organization

Full Changelog: v0.05c59...v0.06c110


Engraving notes

  • kj-007 (use ties as representing 2 beat 8th note)
  • kj-046 (fix wrong octave la (6) on bar 5)
  • kj-051 (fix wrong note length on bar 1)

Required files

(current content is from kj 1-110 of 478)

  • kidung-jemaat.db : the metadata of the music that cannot be stored in the musicxml (SQLite)
  • musicxml.zip : musicxml files that needed for the app to run

always to set the config in the files/etc/numbered-mutation-xml/config.ini

  • mscz.zip is the musescore raw file before exported to musicxml (uncompressed)
  • goldenfiles.zip the svg golden standard for snapshot testing, can also be used as preview of final render

Features, bug fixes and content update KJ-059

Choose a tag to compare

@jodi-ivan jodi-ivan released this 23 Feb 17:33

Feature updates, bug fix and content-update

Features

  • add fermata support
  • add support for footnotes in verse
  • add support for one measure, time signature and multiple breakline support.
  • add support for continuous rhythm line with breath marks

Bugfix

Rhythm

  • fix rhythm line separation for 6/8 beat (2x3 ketuk)
  • fix rhythm line sepaation for 1 beat, 1 measure

Lyric

  • fix doble line lyric used tagge number instead of xml ordering

and Others

Full Changelog: v0.0c41...v0.05c59


Required files

(current content is from kj 1-59 of 478)

  • kidung-jemaat.db : the metadata of the music that cannot be stored in the musicxml (SQLite)
  • musicxml.zip : musicxml files that needed for the app to run

always to set the config in the files/etc/numbered-mutation-xml/config.ini

  • mscz.zip is the musescore raw file before exported to musicxml (uncompressed)
  • goldenfiles.zip the svg golden standard for snapshot testing, can also be used as preview of final render

Content update: KJ-41

Choose a tag to compare

@jodi-ivan jodi-ivan released this 14 Feb 20:39

Required files
(current content is from kj 1-41 of 478)

  • kidung-jemaat.db : the metadata of the music that cannot be stored in the musicxml (SQLite)
  • musicxml.zip : musicxml files that needed for the app to run

always to set the config in the files/etc/numbered-mutation-xml/config.ini

  • mscz.zip is the musescore raw file before exported to musicxml (uncompressed)
  • goldenfiles.zip the svg golden standard for snapshot testing, can also be used as preview of final render

[hotfix] Content update: KJ-31

Choose a tag to compare

@jodi-ivan jodi-ivan released this 20 Dec 21:26

hotfix

  • fix panic kj-007 because of the split staff mechanism
  • fix the fixed dotted spacing

improvement

  • proper the golden generation file

Content update: KJ-31a

Required files
(current content is from kj 1-31a of 478)

kidung-jemaat.db : the metadata of the music that cannot be stored in the musicxml
musicxml.zip : musicxml files that needed for the app to run
always to set the config in the files/etc/numbered-mutation-xml/config.ini

mscz.zip is the musescore raw file before exported to musicxml (uncompressed)
goldenfiles.zip the svg golden standard, can be used as preview and for snapshot testing

Content update: KJ-31

Choose a tag to compare

@jodi-ivan jodi-ivan released this 07 Dec 23:02

Required files
(current content is from kj 1-31a of 478)

kidung-jemaat.db : the metadata of the music that cannot be stored in the musicxml
musicxml.zip : musicxml files that needed for the app to run
always to set the config in the files/etc/numbered-mutation-xml/config.ini

mscz.zip is the musescore raw file before exported to musicxml (uncompressed)
goldenfiles.zip the svg golden standard, can be used as preview and for snapshot testing

Initial Release.

Choose a tag to compare

@jodi-ivan jodi-ivan released this 27 Nov 22:42

Separating engine related and content related files.
All content related file will be added in releases tab

Required files

(current content is from kj 1-22 of 478)

  • kidung-jemaat.db : the metadata of the music that cannot be stored in the musicxml
  • musicxml.zip : musicxml files that needed for the app to run

always to set the config in the files/etc/numbered-mutation-xml/config.ini

  • mscz.zip is the musescore raw file before exported to musicxml (uncompressed)
  • goldenfiles.zip the svg golden standard, can be used as preview and for snapshot testing