Skip to content

Commit

Permalink
Merge pull request #140 from rism-digital/develop-facsimile-neume-line
Browse files Browse the repository at this point in the history
Update: Develop facsimile neume line
  • Loading branch information
yinanazhou authored May 14, 2024
2 parents 5d66475 + 35538a9 commit 026819d
Show file tree
Hide file tree
Showing 23 changed files with 330 additions and 132 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/ci_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -100,11 +100,11 @@ jobs:

- os: macos-latest
compiler: xcode
version: "13.1"
version: "14.3"

- os: macos-latest
compiler: xcode
version: "14.2"
version: "15.3"

- os: macos-11
compiler: g++
Expand Down
52 changes: 32 additions & 20 deletions .github/workflows/python-ci-wheel.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,13 +23,16 @@ jobs:
fail-fast: false
# Build the wheels for Linux, Windows and macOS
matrix:
os: [macos-latest, windows-latest, ubuntu-latest]
os: [macos-13, macos-14, windows-latest, ubuntu-latest]
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"]
architecture: [x86, x64]
architecture: [x86, x64, arm64]
include:
- os: macos-latest
- os: macos-13
architecture: x64
platform_id: macosx_*
platform_id: macosx_x86_64
- os: macos-14
architecture: arm64
platform_id: macosx_arm64
- os: windows-latest
architecture: x64
platform_id: win_amd64
Expand All @@ -40,24 +43,35 @@ jobs:
architecture: x64
platform_id: manylinux_x86_64
exclude:
- os: macos-latest
- os: macos-13
architecture: x86
- os: macos-13
architecture: arm64
- os: macos-14
architecture: x86
- os: macos-14
architecture: x64
- os: ubuntu-latest
architecture: x86
- os: ubuntu-latest
architecture: arm64
- os: windows-latest
architecture: arm64

steps:
#===============================================#
# Set up
- uses: actions/checkout@v4
- uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
with:
fetch-depth: 0

- uses: nuget/setup-nuget@v1
- uses: nuget/setup-nuget@a21f25cd3998bf370fde17e3f1b4c12c175172f9 # v2.0.0
if: always() && runner.os == 'Windows'
with:
nuget-version: "latest"

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # v5.1.0
with:
python-version: ${{ matrix.python-version }}
architecture: ${{ matrix.architecture }}
Expand All @@ -82,16 +96,14 @@ jobs:
#===============================================#
# wheels
- name: Build wheels
uses: pypa/cibuildwheel@v2.16.5
uses: pypa/cibuildwheel@8d945475ac4b1aac4ae08b2fd27db9917158b6ce # v2.17.0
with:
output-dir: wheelhouse
env:
CIBW_SKIP: cp37-macosx_arm64
CIBW_BUILD: ${{ env.CIBW_BUILD_IDENTIFIER }}
CIBW_ARCHS_MACOS: x86_64 arm64
CIBW_ENVIRONMENT_MACOS:
MACOSX_DEPLOYMENT_TARGET=10.15
CIBW_TEST_SKIP: cp*-macosx_arm64
CIBW_MANYLINUX_X86_64_IMAGE: manylinux2014
CIBW_MANYLINUX_I686_IMAGE: manylinux2014
CIBW_BEFORE_ALL_MACOS: brew update && brew install swig
Expand Down Expand Up @@ -119,7 +131,7 @@ jobs:
- name: Install from wheel on macOS
working-directory: wheelhouse
if: always() && runner.os == 'macOS'
run: python -m pip install ./*x86_64.whl
run: python -m pip install ./*.whl

# Wildcard use is different with PowerShell
# cf. https://stackoverflow.com/a/43900040
Expand All @@ -134,9 +146,9 @@ jobs:

#===============================================#
# Upload artifacts
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
with:
name: cibuildwheel-${{ runner.os }}-python-${{ matrix.python-version }}
name: cibuildwheel-${{ runner.os }}-python-${{ matrix.python-version }}-${{ matrix.architecture }}
path: ./wheelhouse/*.whl

#===============================================#
Expand All @@ -149,12 +161,12 @@ jobs:
steps:
#===============================================#
# Set up
- uses: actions/checkout@v4
- uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
with:
fetch-depth: 0

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # v5.1.0
with:
python-version: "3.9"

Expand Down Expand Up @@ -210,7 +222,7 @@ jobs:

#===============================================#
# Upload artifact
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
with:
name: sdist-${{ runner.os }}-python-3.9
path: dist/*.tar.gz
Expand All @@ -226,10 +238,10 @@ jobs:
steps:
#===============================================#
# Set up
- uses: actions/checkout@v4
- uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4

- name: Set up Python 3.9
uses: actions/setup-python@v4
uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # v5.1.0
with:
python-version: "3.9"
architecture: "x64"
Expand All @@ -244,7 +256,7 @@ jobs:
#===============================================#
# Prepare artifacts
- name: Download artifacts
uses: actions/download-artifact@v3
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
with:
path: bindings/python/artifacts/

Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/tests_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ jobs:
runs-on: ubuntu-22.04

steps:
- uses: FranzDiebold/github-env-vars-action@v2.7.0
- uses: FranzDiebold/github-env-vars-action@v2.8.0
- name: Get Short SHA
run: |
echo "SHORT_SHA=`echo ${{ github.event.pull_request.head.sha }} | cut -c1-7`" >> $GITHUB_ENV
Expand Down Expand Up @@ -109,14 +109,14 @@ jobs:
ls -al
- name: Upload results as artefacts
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: test-suite-diff
path: ${{ github.workspace }}/${{ env.OUTPUT_DIR }}/

- name: Check existence of the log.md file
id: check_files
uses: andstor/file-existence-action@v2
uses: andstor/file-existence-action@v3
with:
files: "${{ github.workspace }}/${{ env.OUTPUT_DIR }}/log.md"

Expand Down
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,16 @@
# Changelog

## [unreleased]

## [4.2.1] - 2024-05-07
* Fix GitHub actions (Python release only)

## [4.2.0] - 2024-05-05
* Support for `fTrem@unitdur` (@eNote-GmbH)
* Upgrade to C++20
* Update of the Midifile library
* Fix lyric position in MIDI output
* Fix string formatting output with some locale configurations (@ammatwain)

## [4.1.0] - 2023-12-15
* Support for staves ordered by `scoreDef`
Expand Down
2 changes: 1 addition & 1 deletion Verovio.podspec
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Pod::Spec.new do |s|
s.name = 'Verovio'
s.version = '4.2.0-dev'
s.version = '4.3.0-dev'
s.license = { :type => 'LGPL', :file => 'COPYING' }
s.homepage = 'https://www.verovio.org/index.xhtml'
s.authors = { 'Contributors List' => 'https://github.com/rism-digital/verovio/graphs/contributors' }
Expand Down
16 changes: 16 additions & 0 deletions Verovio.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -785,6 +785,12 @@
4DCB7AA426D3C9600047F01D /* crc.h in Headers */ = {isa = PBXBuildFile; fileRef = 4DCB7AA226D3C9600047F01D /* crc.h */; settings = {ATTRIBUTES = (Public, ); }; };
4DD11DC42240E78B00A405D8 /* c_wrapper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4DD11DC22240E78B00A405D8 /* c_wrapper.cpp */; };
4DD11DC52240E78B00A405D8 /* c_wrapper.h in Headers */ = {isa = PBXBuildFile; fileRef = 4DD11DC32240E78B00A405D8 /* c_wrapper.h */; };
4DD49C662BECC073006D1C2E /* adjustyrelfortranscriptionfunctor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4DD49C652BECC073006D1C2E /* adjustyrelfortranscriptionfunctor.cpp */; };
4DD49C682BECC096006D1C2E /* adjustyrelfortranscriptionfunctor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4DD49C652BECC073006D1C2E /* adjustyrelfortranscriptionfunctor.cpp */; };
4DD49C692BECC097006D1C2E /* adjustyrelfortranscriptionfunctor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4DD49C652BECC073006D1C2E /* adjustyrelfortranscriptionfunctor.cpp */; };
4DD49C6A2BECC098006D1C2E /* adjustyrelfortranscriptionfunctor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4DD49C652BECC073006D1C2E /* adjustyrelfortranscriptionfunctor.cpp */; };
4DD49C6B2BECC0A0006D1C2E /* adjustyrelfortranscriptionfunctor.h in Headers */ = {isa = PBXBuildFile; fileRef = 4DD49C672BECC083006D1C2E /* adjustyrelfortranscriptionfunctor.h */; };
4DD49C6C2BECC0A1006D1C2E /* adjustyrelfortranscriptionfunctor.h in Headers */ = {isa = PBXBuildFile; fileRef = 4DD49C672BECC083006D1C2E /* adjustyrelfortranscriptionfunctor.h */; settings = {ATTRIBUTES = (Public, ); }; };
4DD7C0FC27A55CEA00B9C017 /* timemap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4DD7C0FB27A55CEA00B9C017 /* timemap.cpp */; };
4DD7C0FD27A55CEA00B9C017 /* timemap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4DD7C0FB27A55CEA00B9C017 /* timemap.cpp */; };
4DD7C0FF27A55CFD00B9C017 /* timemap.h in Headers */ = {isa = PBXBuildFile; fileRef = 4DD7C0FE27A55CFD00B9C017 /* timemap.h */; };
Expand Down Expand Up @@ -2016,6 +2022,8 @@
4DCB7AA226D3C9600047F01D /* crc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = crc.h; path = include/crc/crc.h; sourceTree = SOURCE_ROOT; };
4DD11DC22240E78B00A405D8 /* c_wrapper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = c_wrapper.cpp; path = tools/c_wrapper.cpp; sourceTree = "<group>"; };
4DD11DC32240E78B00A405D8 /* c_wrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = c_wrapper.h; path = tools/c_wrapper.h; sourceTree = "<group>"; };
4DD49C652BECC073006D1C2E /* adjustyrelfortranscriptionfunctor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = adjustyrelfortranscriptionfunctor.cpp; path = src/adjustyrelfortranscriptionfunctor.cpp; sourceTree = "<group>"; };
4DD49C672BECC083006D1C2E /* adjustyrelfortranscriptionfunctor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = adjustyrelfortranscriptionfunctor.h; path = include/vrv/adjustyrelfortranscriptionfunctor.h; sourceTree = "<group>"; };
4DD7C0FB27A55CEA00B9C017 /* timemap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = timemap.cpp; path = src/timemap.cpp; sourceTree = "<group>"; };
4DD7C0FE27A55CFD00B9C017 /* timemap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = timemap.h; path = include/vrv/timemap.h; sourceTree = "<group>"; };
4DDBBB551C7AE43E00054AFF /* hairpin.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = hairpin.h; path = include/vrv/hairpin.h; sourceTree = "<group>"; };
Expand Down Expand Up @@ -3088,6 +3096,8 @@
E7A3790929BB41CD00E3BA98 /* adjustxposfunctor.h */,
E78F204929D98D2300CD5910 /* adjustxrelfortranscriptionfunctor.cpp */,
E78F204629D98CD400CD5910 /* adjustxrelfortranscriptionfunctor.h */,
4DD49C652BECC073006D1C2E /* adjustyrelfortranscriptionfunctor.cpp */,
4DD49C672BECC083006D1C2E /* adjustyrelfortranscriptionfunctor.h */,
E7ED8A6729C111C300735875 /* cachehorizontallayoutfunctor.cpp */,
E7ED8A6429C1119000735875 /* cachehorizontallayoutfunctor.h */,
E790165E298BCB27008FDB4E /* calcalignmentxposfunctor.cpp */,
Expand Down Expand Up @@ -3240,6 +3250,7 @@
4DACCA172990F2E600B55913 /* attdef.h in Headers */,
4DB3D8EC1F83D18300B5FC2B /* proport.h in Headers */,
4DEC4DDE21C8295700D1D273 /* lem.h in Headers */,
4DD49C6B2BECC0A0006D1C2E /* adjustyrelfortranscriptionfunctor.h in Headers */,
E778BDAE29D5BD3D00672D51 /* adjuststaffoverlapfunctor.h in Headers */,
E7E9C11A29B0EF9600CFCE2F /* adjusttempofunctor.h in Headers */,
8F59294518854BF800FE51AD /* layerelement.h in Headers */,
Expand Down Expand Up @@ -3479,6 +3490,7 @@
E790165A298BCA97008FDB4E /* calcalignmentxposfunctor.h in Headers */,
BB4C4B9622A932E5001F6AF0 /* drawinginterface.h in Headers */,
BB4C4B4022A932D7001F6AF0 /* barline.h in Headers */,
4DD49C6C2BECC0A1006D1C2E /* adjustyrelfortranscriptionfunctor.h in Headers */,
BB4C4B9E22A932E5001F6AF0 /* plistinterface.h in Headers */,
4DA0EADE22BB77AF00A7EBEB /* zone.h in Headers */,
BB4C4A9122A9328F001F6AF0 /* boundingbox.h in Headers */,
Expand Down Expand Up @@ -4079,6 +4091,7 @@
4D1694391E3A44F300569BF4 /* tuplet.cpp in Sources */,
4D72A5E0208A37F0009DEC1E /* mnum.cpp in Sources */,
4D4FCD0D1F5455FF0009C455 /* staffgrp.cpp in Sources */,
4DD49C682BECC096006D1C2E /* adjustyrelfortranscriptionfunctor.cpp in Sources */,
4D16943A1E3A44F300569BF4 /* pugixml.cpp in Sources */,
403BEFF5206C00E900D022D5 /* multirest.cpp in Sources */,
4DA0EAEB22BB77C300A7EBEB /* editortoolkit_neume.cpp in Sources */,
Expand Down Expand Up @@ -4341,6 +4354,7 @@
E778BDB129D5BD6000672D51 /* adjuststaffoverlapfunctor.cpp in Sources */,
E7A03CD429D6176000C02941 /* adjusttupletsyfunctor.cpp in Sources */,
403BEFEE206C00B500D022D5 /* mrpt.cpp in Sources */,
4DD49C662BECC073006D1C2E /* adjustyrelfortranscriptionfunctor.cpp in Sources */,
8F086F04188539540037FD8E /* tie.cpp in Sources */,
4D1BE7711C688F5A0086DC0E /* MidiFile.cpp in Sources */,
4D89F9122018A93300A4D336 /* svg.cpp in Sources */,
Expand Down Expand Up @@ -4646,6 +4660,7 @@
4DACC9BA2990F29A00B55913 /* atts_frettab.cpp in Sources */,
8F3DD32618854B090051330C /* iodarms.cpp in Sources */,
8F3DD32818854B090051330C /* iomei.cpp in Sources */,
4DD49C6A2BECC098006D1C2E /* adjustyrelfortranscriptionfunctor.cpp in Sources */,
8F3DD32A18854B090051330C /* iomusxml.cpp in Sources */,
40E1CEDF205060FD0007C8AF /* labelabbr.cpp in Sources */,
4DEC4DA821C81ED400D1D273 /* reg.cpp in Sources */,
Expand Down Expand Up @@ -4930,6 +4945,7 @@
4DA0EAED22BB77C300A7EBEB /* editortoolkit_neume.cpp in Sources */,
BB4C4B3722A932CF001F6AF0 /* trill.cpp in Sources */,
BB4C4B1F22A932CF001F6AF0 /* breath.cpp in Sources */,
4DD49C692BECC097006D1C2E /* adjustyrelfortranscriptionfunctor.cpp in Sources */,
BB4C4AC522A932B6001F6AF0 /* measure.cpp in Sources */,
4D2461DE246BE2E9002BBCCD /* expansionmap.cpp in Sources */,
E7BCFFB6281297980012513D /* resources.cpp in Sources */,
Expand Down
2 changes: 1 addition & 1 deletion bindings/java/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

<groupId>org.rism.verovio</groupId>
<artifactId>VerovioToolkit</artifactId>
<version>4.2.0-dev</version>
<version>4.3.0-dev</version>
<packaging>jar</packaging>

<name>VerovioToolkit</name>
Expand Down
2 changes: 1 addition & 1 deletion bindings/python/.pypi-version
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# dummy file used by setup.py for counting revisions when publishing to test.pypi
# counting can be reset by making a change to this file
4.2.0
4.3.0
4 changes: 4 additions & 0 deletions cmake/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,10 @@ else()
add_definitions(-DDEBUG)
endif()

if(WIN32)
include_directories(../include/win32)
endif()

# jsonxx raises -Wdollar-in-identifier-extension
# gcc 8.3.1 does not like -Wdollar-in-identifier-extension option.
add_definitions(-Wall -W -pedantic -Wno-unused-parameter -Wno-dollar-in-identifier-extension)
Expand Down
4 changes: 2 additions & 2 deletions codemeta.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
"identifier": "Verovio",
"name": "Verovio",
"description": "Verovio is a fast, portable and lightweight open-source library for engraving Music Encoding Initiative (MEI) music scores into SVG.",
"softwareVersion": "4.2.0-dev",
"datePublished": "2023-12-15",
"softwareVersion": "4.3.0-dev",
"datePublished": "2024-05-07",
"license": "https://www.gnu.org/licenses/lgpl-3.0",
"programmingLanguage": [{
"@type": "ComputerLanguage",
Expand Down
2 changes: 1 addition & 1 deletion emscripten/npm/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "verovio",
"version": "4.2.0-alpha",
"version": "4.3.0-alpha",
"description": "This is the stable version of the verovio package",
"main": "dist/verovio-toolkit-wasm.js",
"exports": {
Expand Down
8 changes: 5 additions & 3 deletions include/midi/Binasc.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,11 @@
#ifndef _BINASC_H_INCLUDED
#define _BINASC_H_INCLUDED

#include <iostream>
#include <cstdlib>
#include <fstream>
#include <iostream>
#include <string>
#include <cstdlib>
#include <stdlib.h> /* needed for MinGW */


namespace smf {

Expand Down Expand Up @@ -149,6 +149,8 @@ class Binasc {
int getWord (std::string& word, const std::string& input,
const std::string& terminators, int index);

static const char *GMinstrument[128];

};

} // end of namespace smf
Expand Down
7 changes: 7 additions & 0 deletions include/midi/MidiEvent.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,11 @@
#define _MIDIEVENT_H_INCLUDED

#include "MidiMessage.h"

#include <ostream>
#include <vector>


namespace smf {

class MidiEvent : public MidiMessage {
Expand Down Expand Up @@ -63,6 +66,10 @@ class MidiEvent : public MidiMessage {

};


std::ostream& operator<<(std::ostream& out, MidiEvent& event);


} // end of namespace smf

#endif /* _MIDIEVENT_H_INCLUDED */
Expand Down
2 changes: 2 additions & 0 deletions include/midi/MidiEventList.h
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,10 @@
#define _MIDIEVENTLIST_H_INCLUDED

#include "MidiEvent.h"

#include <vector>


namespace smf {

class MidiEventList {
Expand Down
Loading

0 comments on commit 026819d

Please sign in to comment.