streamStatus accidentals inconsistencies
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
Línea de trabajo
Start by running the four-line snippet from the report and checking the note's accidental display. The mismatch sits between PartExporter.fixupNotationMeasured() in music21/musicxml/m21ToXml.py, which checks haveAccidentalsBeenMade(), and makeAccidentals() in music21/stream/makeNotation.py, which sets the property directly; streamStatus.accidentals is also involved. Done means a note whose accidental has displayType 'never' is exported with no accidental, and existing accidental tests still pass.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
music21 version
9.2.0b2
Problem summary
Accidentals are remade on streams that users may have already made accidentals for instead of short-circuiting. Discovered responding to #1667.
Steps to reproduce
n = note.Note()
n.pitch.accidental = pitch.Accidental('flat')
n.pitch.accidental.displayType = 'never'
n.show()
Expected vs. actual behavior
Expected: no accidental
Actual: accidental
More information
PartExporter.fixupNotationMeasured() checks haveAccidentalsBeenMade():
https://github.com/cuthbertLab/music21/blob/a938a8c8c74f21ceec5a99a1998d96c00d5f77e9/music21/musicxml/m21ToXml.py#L2866
But makeAccidentals sets the property instead:
https://github.com/cuthbertLab/music21/blob/a938a8c8c74f21ceec5a99a1998d96c00d5f77e9/music21/stream/makeNotation.py#L1739-L1740
But even PartExporter.fixupNotationMeasured() is probably too late, given that fromGeneralObject() runs first, runs makeNotation, and neither streamStatus.accidentals nor streamStatus.haveAccidentalsBeenMade() is checked.
- Lenguaje dominante
- Python
- Estrellas
- 2.6k
- Forks
- 459
- Merge medio
- 1 d 1 h
- PR fusionados (30 d)
- 42
Preparar el entorno
Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de cuthbertLab/music21
-
Midi bank number supportAbiertoenhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
cuthbertLab/music21#2088 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
cuthbertLab/music21#2084 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
cuthbertLab/music21#2055 · 3 comentarios ·
Los mantenedores suelen responder en 1 día
-
Slur bezier-x/y from start element gets overwritten by stop element's valuesQuizá libre de nuevo @bingliscodes la tomó hace 15 días y no hay ningún pull request abierto. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
cuthbertLab/music21#2019 · 3 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
cuthbertLab/music21#1714 ·
Los mantenedores suelen responder en 1 día
Todos los issues de cuthbertLab/music21
Issues similares
-
bug good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
yunaremaia/proto-drift#22 ·
-
bug good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
yunaremaia/memwatch#96 ·
-
bug good first issue
Dificultad 1/5 Menos de una hora Aptitud para principiantes 91/100
yunaremaia/ci-gate-watch#34 ·
-
bug good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
yunaremaia/agent-capability-attestation#64 ·
Los mantenedores suelen responder en 1 día
-
bug good first issue
Dificultad 1/5 Menos de una hora Aptitud para principiantes 86/100
yunaremaia/agent-call-graph#43 ·
Los mantenedores suelen responder en 1 día