forked from musescore/MuseScore
-
-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix GH#7449: Almost everything suitable for 3.6.3 or 3.7.0 #80
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
See musescore#8433 and/or musescore#8623, issue possibly caused by another commit though
See musescore#8413, part 2, issue possibly caused by another commit though
See musescore#8556, issue possibly caused by another commit though
See musescore#8298, issue possibly caused by another commit though. Here just disabling the test, as the output doesn't give any hints as to what the issue actually is. ``` 62/62 Test #51: tst_mxml_io ......................***Failed 96.44 sec <diff -u /home/runner/work/MuseScore/MuseScore/mtest/musicxml/io/testInferredFingerings_ref.mscx testInferredFingerings.mscx failed 98% tests passed, 1 tests failed out of 62 ```
The DLL is needed at least for Windows and MinGW, most probably for MSVC too. Making it Qt version dependant (for MinGW and MSVC) should be save as far as downrev QT versions are concerned
Similar to credits, sometimes Dolet exports source information ("from ABC") as direction words near the beginning of the piece. This commit adds a function for inferring these and adding them to the header as a subtitle. Duplicate of musescore#8678, part 1
Dolet also sometimes incorrectly exports footers as direction words, particularly "This music has been legally downloaded . Do not photocopy." This commit throws out staff text with these contents. Duplicate of musescore#8678, part 2
This commit refines the regex for inferring credit directions. It ultimately removes requirements for names (the part after the word "by") due to the inordinate difficulty of writing strict regex that catches all possible characters included in names. To mitigate false positives, it clarifies/restricts the regex for the part before the word "by". This compromise decreases the number of false negatives without significantly increasing false positives. Duplicate of musescore#8678, part 3
Some scores specify header text both in the <identification> element and in the incorrectly-exported staff text. The latter tends to have more information, so this commit hides the former when the latter is present to avoid redundancy. Duplicate of musescore#8678, part 4
Due to inferred (mis-exported) credits not having valid positioning information, there were occasionally collisions with the title text. This commit adds a reformatting function that runs at the end of the import (if any inferred header text is present) that prevents these vertical collisions. Duplicate of musescore#8678, part 5
This commit extends the cases covered by inferred subtitles. Also, it extends this functionality to apply to Titles—some titles are multi- line, where the second line is really a subtitle. This commit adds a function to infer these, extract them from the title, and add them as the subtitle. Duplicate of musescore#8678, part 6
This commit changes the vertical padding to 1.2 * the line height when reformatting a header box with inferred credits or subtitles. Duplicate of musescore#8678, part 7
This commit adds credit inferring to the title text (similar to what already exists for subtitles). It also adds and refines the inference cases for both credits and subtitles. Duplicate of musescore#8678, part 8
See musescore#8678, issue possibly caused by another commit though
…n to determine note length Currently, the importer uses MusicXML note duration instead of note length as calculated from the MusicXML note type, dots, time-modification etcetera to determine how long a note takes and where to place the next note. When the MusicXML note duration does not match the calculated value, various types of corruption occur. When using the calculated duration, none of these problems occur. This change does not affect correctly encoded MusicXML files. Duplicate of musescore#8282, resp. backport of musescore#8429, part 1
…on to set duration as shown in the piano roll editor See discussion in https://musescore.org/en/node/313339. This change enables correct import of Overture files containing changed note durations (while leaving the note type unchanged) by using the duration to change the note's off time. Strictly speaking Overture does not adhere to the MusicMXL spec, but this change does not seem to introduce any regression. If necessary it can be made optional in future (either as a user setting or by making it Overture specific). Duplicate of musescore#8282, resp. backport of musescore#8429, part 2
partial backport of musescore#8762
…there is any partial backport of musescore#8775
as it was needed for MSVC, which uses these in some headers, so they conflict with MuseScore's functions, variables, marcos. Partial backport of musescore#8765
…port in .musicxml format Caused by superfluous and incomplete findUnit() function in exportxml.cpp. Backport of musescore#8793
Dolet exports some N.C. chord symbols as a direction with a words element containing "NmiCmi". This adds a simple inference to handle that. Duplicate of musescore#8651, part 1, plus a compile fix (adding a missing paramenter,`_isBold`)
Dolet seems to occasionally export $ and Ø where segno and coda symbols ought to be exported in lyrics and staff text. This commit adds those as special cases to the map in text2syms. Duplicate of musescore#8651, part 2
Sometimes pedals are imported that begin or end on segments that have notes on tracks (or staves) other than the track the spanner is on. Previously, this would cause incorrect tick adjustments on "change" type pedals, and it would result in some pedals not being able to compute a start or end element. This commit fixes these issues by considering all tracks of a part when assessing pedal change tick adjustments and when computing start elements. Duplicate of #, part 1
Previously, the <offset> element was not correctly applied to any spanners in <direction> elements. This commit fixes that and adjusts the applicable tests accordingly. Duplicate of musescore#8766, part 3
The version of IntervalTree we are using has received many upstream updates, however these have not been merged into here since 2013. Backport of musescore#8808
Regression introduced by (the backport of) musescore#8510. Backport of musescore#8818
The sizing of REPEAT_LEFT and REPEAT_RIGHT text is inconsistent due to the inconsistent sizing of the coda and segno symbols. This commit adds an override on MusicXML import based on the presence of non-symbol text. Duplicate of musescore#8583
Currently, MuseScore displays copyright metadata in a centered footer. This results in the information being displayed on every page, which is inconsistent with many published scores. This commit hides the footers on import and rather creates a VBox, populates it with the copyright metadata, and places it at the bottom of the first page (either below the first explicit pagebreak, or below the last system of the first page after an initial layout). Duplicate of musescore#8763, part 1
reg. One Definition Rule (-Wodr)
Thanks, @mirabilos !
by disabling that broken resp. never completed feature, as in its current state it can lead to score corruption and some other strange and unwanted side effects
follow up to musescore#3633, there this had been forgotten (by me) Backport of musescore#13060
Backport of musescore#14924, to fix musescore#14859 Plus fixing the templates causing the issue in the first place, as those cause other issues too, like adding the brace and also the barline span to an added __instrument__ too, not just to an added staff.
…easure beam Backport of musescore#15001 Also fixing a compiler warning and some formatting
…s a tab note moving to a string at the highest fret. Backport of musescore#15730
Backport of musescore#12086
Backport of musescore#15725
Backport of musescore#15927 Also fix/adjust more mtests
plus a vtest Backport of musescore#14890
… shorter Backport of musescore#16254
This reverts commit 5b30d14, backport of musescore#12133. Causes issues when reading scores containing "pedalLineStyle" with earlier 3.x releases
This reverts commit 89e9471, PR musescore#7711. Causes issues when reading scores containing "dontHideStavesInFirstSystem" with earlier 3.x releases.
This reverts commit d200716. It seems no longer to be needed, most probably got obsoleted by later changes to SMuFL or Bravura/Petaluma See also https://musescore.org/en/node/344717#comment-1175789
Updated version of musescore#5762
Further investigation shows that the current MusicXML importer contains two kinds of MAX_STAVES sized data structures: the voice mapping data and the per staff octave state. It also seems that in the current MuseScore releases (both 3.x and 4.x) MAX_STAVES is used for the maximum number of staves in an instrument template only. It obviously does not limit the actual number of staves in a part. The structural solution would be to make these MusicXML importer data structures dynamically sized. A crude solution is to create a local fixed (larger) size. This here is an experimental 3.x version of the last one, it allows up to 6 staves per part.
Force building 32-bit Windows on GitHub CI using Qt 5.9.9 for now, as there is no 5.15.2 package available currently for the GitHub CI builds. Also allow "Save online" even from an unstable build in GUI and on the commandline. Temp. measure... needed only as long as there is no 'official' release (which may mean forever). Ignore a file generated on a master build same way it is ignored non in the master branch too. Just eases the switching between master and 3.x Fix some GitHub actions warnings reg. deprecated Node.js 12 vs. 16 Fix vtests build using a similar method as the mtest. Doesn't work, so back to 5.9.8, for Linux, for now... Trick musescore.com to allow save, by claiming the score to stem from 3.6.3... Change Linux builds to use Ubuntu 20 and partly sync with master's ci_linux_mu3.yml
reg. declaration hides previous local declaration (C4456)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
See musescore#9000
Mostly resolves musescore#7449 (i.e.: it includes the vast majority of the PRs listed there, but not all. Contains far more than listed there too)
Yes, it really is more than 360 commits (and still counting)...
All this on top of the 81 commits that the 3.x branch is ahead of 3.6.2 already.
So this indeed feels more like a 3.7(.0) rather than a 3.6.3, but as long as such a thing is not planned for, nor another PR for such a much smaller 3.6.3 exists...
Edit: I made up my mind and made it a 3.7.0 now ;-)
(Might also get named 3.9.0, to make clear that it really is the last minor release before/below 4.0)
From PRs against the 3.x branch (not merged into it yet):
[MU3] [DAISY] backport of master fixes to 3.x musescore/MuseScore#7870, part 1 / [DAISY] Fix #298147 MusicXML: Handle measure number offsets musescore/MuseScore#7617(But reverted again later, due to to many mtest failures)and on the commandline. (just for testing),
Not included so far:
[MU4] fix #295235: Same Beat and Measure (Select All Similar Filter) musescore/MuseScore#5637 (Despite its title it is rather based on 3.x)[MU4] FIX#301367 - exclude ties from System::scanElements() musescore/MuseScore#5735 (Despite its title it is rather based on 3.x, causes a regression: ties are not shown anymore at all, @sidewayss?)Adding ability to divide Fraction by integer. musescore/MuseScore#6080PRs backported from master (merged and not yet merged ones):
computeFirstSegmentXPosition()
)physicalLine
method musescore/MuseScore#9309continueSymbol
imports empty in 3.x, crashes in master musescore/MuseScore#10793 (2nd part only, 1st doesn't apply to 3.x)std::gcd()
musescore/MuseScore#11560 (the 2nd commit only, the 1st requires C++17)Not included so far:
added option to always layout the title on the same page as beginning of the score musescore/MuseScore#9092 (UI missing though, seems to need more work, but porting it doesn't seem to make sense anyhow)Fix grip size (replicate MU3 behaviour) and make it easier to select grips musescore/MuseScore#9414 (apparently not needed, not even partly)PRs against the 3.6.2_backend / 3.6.2_backend_musicxml branches (all merged into those). See also musescore#9581 for a forward port of those to master:
[MU3 Backend] Eng-53: Horizontal spacer for FretDiagrams musescore/MuseScore#8296, part 1(causes a regression, so it got reverted (much) later)Not included so far:
[MU3] Fixed adding a separator between data when generating pngs and svgs musescore/MuseScore#10740(reverted by [MU3] Backend json fix musescore/MuseScore#10816)[MU3] Backend json fix musescore/MuseScore#10816(reverts [MU3] Fixed adding a separator between data when generating pngs and svgs musescore/MuseScore#10740)There are still some PRs not (yet) migrated into this one here (see above) and also some open issues (i.e. without a PR or otherwise known fix), see musescore#7449.