openlilylib / snippets

A place to store useful pieces of LilyPond code - custom functions, engravers, hacks, templates, examples etc.
Other
120 stars 38 forks source link

Build tests broken through notation font stuff #111

Closed uliska closed 9 years ago

uliska commented 9 years ago

Now that the notation font examples are included in master all build tests break.

The solution for this is to add the font installation script to the build test. Question is how to achieve that, now that the installation script is not part of openLilyLib anymore but in its own repository???

It should be possible to

The question how that relates to Travis' caching mechanism.

A workaround would be to temporarily exclude the font usage examples from the tests (but I'd prefer not to do that, as it might be forgotten to revert that later).

uliska commented 9 years ago

This is partially fixed in the test/add-font-install branch.

I have successfully integrated the font installation script to the Travis builds, but I experienced a very strange issue in that now the caches for the lilypond installations are not separated anymore. That is, when 2.19.17 is installed in a test build, then this is detected as valid in the next 2.18.2 test build.

Apart from that we have the problem that the font stuff requires version 2.19.12 or higher, therefore 2.18 test builds fail. So we now should finally have a way to exclude files based on the required LiylPond version.

uliska commented 9 years ago

The version issue has been fixed, but not the caching peculiarity. Maybe this has been there all the time and we just didn't run into the situation ?

uliska commented 9 years ago

I have pushed a new branch, rebased on master after merging #112. It seemed to work, but looking closely it is clear that the LilyPond installation didn't work, and instead of 2.18.2 and 2.19.17 both times 2.19.15 was used. See

After clearing all caches:

Next build with existing cache:

There is also only one cache indicated for that branch.
So it seems clear that the cache is shared between the build matrix.

If that is true it is clear that just checking with lilypond --version is not enough. We should kind of revert to an approach where the LilyPond installation goes into a dedicated directory in e.g. ? $HOME/.lilypond/VERSION

uliska commented 9 years ago

Checking a random old test build, e.g. https://travis-ci.org/openlilylib/openlilylib/builds/53783690 shows that it obviously never was correct. That one ran both builds with 2.18.2.

So we have to verify again how caching is handled and modify the install script according to my previous comment.

Cecca commented 9 years ago

Maybe this is something to ask to Travis-CI, support, since from the documentation it appears that each branch and entry of the build matrix has its own cache.

uliska commented 9 years ago

I thought so too, and will do ASAP