yoriyuki / Camomile

A Unicode library for OCaml
Other
125 stars 26 forks source link

v.1.0.0 opam CI test failure #67

Closed yoriyuki closed 6 years ago

yoriyuki commented 6 years ago

gasoline, liquidsoup, patoline fail to build using Camomile 1.0.0 Alpine Linux fails to build Camomile 1.0.0

https://github.com/ocaml/opam-repository/pull/11711

Did we introduce incompatible changes? Wrap the library?

kit-ty-kate commented 6 years ago

I'm not sure how jbuilder is supposed to work here but my guess is that the problem comes from here: https://github.com/yoriyuki/Camomile/blob/master/Camomile/jbuild#L42

As far as I understand, this creates a empty library right ? Well at least ocamlobjinfo doesn't see anything there:

$  ocamlobjinfo camomile_yuge.cma
File camomile_yuge.cma
Force custom: no
Extra C object files:
Extra C options:
Extra dynamically-loaded libraries:
kit-ty-kate commented 6 years ago

Oh no, that something else, sorry. liquidsoap is looking for camomileLibraryDyn.cmi which isn't built

Btw there are no other problems:

You can see all the logs by clicking to [logs] on the CI's page

yoriyuki commented 6 years ago

Thank you for investigating,

I don't know how configure.ml works, but camomileLibraryDyn.cmi is missing because we changed the module structure. We can revert the change but it is supposed to be an improvement. Maybe changing liquidsoup is easier? I think detecting a library by looking at a particular file is not terribly a good way to do so.

rgrinberg commented 6 years ago

Maybe changing liquidsoup is easier? I think detecting a library by looking at a particular file is not terribly a good way to do so.

Yes, this is definitely not the kind of backwards compatibility we strive to maintain. We should look into updating liquidsoap if it's relying on something hacky.

cc @toots

toots commented 6 years ago

I'll look at it.

toots commented 6 years ago

Fixed in our latest source code, I've pushed a PR against the opam-repository PR..

yoriyuki commented 6 years ago

There are still build failures, but by failure of building camomile.0.8.7. Failure is seemingly random. I do not know opam's CI infrastructure, so I don't know why.

yoriyuki commented 6 years ago

Successfully merged to opam https://github.com/ocaml/opam-repository/commit/820cd1990b6bfa8530696187ee356b39effa11b0

Thank you, everyone!