Opened 4 years ago

Closed 3 years ago

#59429 closed update (fixed)

ocaml: Update to 4.12.0 and fix livecheck

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: pmetzger (Perry E. Metzger)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: ocaml

Description

According to the web site

The latest version of OCaml is 4.09.0.

But port livecheck ocaml doesn't identify that:

$ port livecheck ocaml
Error: livecheck failed for ocaml: extracted version '4.06.0' is older than livecheck.version '4.08.1'

Change History (15)

comment:1 Changed 4 years ago by pmetzger (Perry E. Metzger)

The livecheck should be fixed.

I'm reluctant to update too quickly right now. There's a ton of packages that just don't work under 4.09 and the important ones aren't all fixed yet. I've been (deliberately) slow-walking the updates. (Serious OCaml devs will be using opam to build their own compiler.)

comment:2 Changed 4 years ago by pmetzger (Perry E. Metzger)

Okay, as of now, the livecheck is fixed. We can keep this open (possibly with an edited ticket name?) until I update to 4.09, but I suspect that I'm not going to do the 4.09 update for quite a while.

comment:3 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)

Okay. I didn't think about updates to ocaml breaking other ports, but now that you mention it I do recall that in the past.

What motivated my filing this ticket was a lablgtk2 build failure report. Both lablgtk2 and ocaml are outdated, so I figured a good first step would be to try updating one or both of the ports to the latest version.

comment:4 Changed 4 years ago by pmetzger (Perry E. Metzger)

We should be able to update lablgtk2 to the latest without updating ocaml to 4.09 yet; the opam file indicates it will work with any ocaml after 4.05.

BTW, among other big breaking changes: camlp4 no longer will work with 4.09; 4.08 is the last version that supports it. So we need to update anything in tree that requires camlp4 before we update to 4.09. It would probably also be for the best to update coq (which I've been neglecting for a while) because the latest version no longer needs camlp5 etc.; my suspicion is that we can no longer rely on the camlp5 maintainers to keep that going either.

I'm happy to work with you to do the necessary steps, or you can just needle me until I've gotten them done.

comment:5 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)

I don't know anything about (o)caml and won't be working on this. I just noticed outdated ports and filed tickets to update them.

comment:6 Changed 4 years ago by pmetzger (Perry E. Metzger)

Fair enough.

comment:7 Changed 4 years ago by jason-johnson (Jason)

For me livecheck is working but the version is still behind. OCaml 4.10 has been released but the ports version is still on 4.08.1. I would do a pull request myself but it's not clear to me how to test it. Is there some docker image or something where we can check out the forked repo and make changes?

Version 0, edited 4 years ago by jason-johnson (Jason) (next)

comment:8 Changed 4 years ago by pmetzger (Perry E. Metzger)

Yah, I know, MacPorts is pretty far behind on this. It's just so messy dealing with all the associated upgrades. If you can use MacPorts to install opam and then use opam to install your real OCaml packages that's probably for the best for now. If you want to help me figure out everything that will break if we go to 4.10 (among other things, it's no longer possible to request writable strings with a compiler flag and that breaks even more packages) I'm happy to do so. I will probably get to this myself in a couple of months.

comment:9 Changed 3 years ago by pmetzger (Perry E. Metzger)

Summary: ocaml: Update to 4.09.0 and fix livecheckocaml: Update to 4.12.0 and fix livecheck

comment:10 Changed 3 years ago by pmetzger (Perry E. Metzger)

FYI, at this point, we should be updating to 4.12.0

comment:11 Changed 3 years ago by pmetzger (Perry E. Metzger)

I've updated ocaml to 4.12.0, along with some (but not all) of the associated machinery needed. I'm not closing this yet as a reminder that not everything is yet okay.

Unfortunately I can't check on my own that 4.12.0 works properly on Apple Silicon; build reports solicited.

comment:12 Changed 3 years ago by pmetzger (Perry E. Metzger)

BTW, at this point, an updated camlp4 is in, but camlp5 is broken, and it isn't clear if or when Chet Murthy is going to update the upstream. I've got a request in to him. Generally, anything still using camlp4 is obsolete (though we can still build it) and anything using camlp5 is fragile and dependent on a single maintainer.

comment:13 Changed 3 years ago by pmetzger (Perry E. Metzger)

I've updated coq to a new version that no longer requires camlp5. I believe the ports broken by a lack of a camlp5 are now down to:

libCUDF

geneweb

ledit

comment:14 in reply to:  11 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

Replying to pmetzger:

I've updated ocaml to 4.12.0

in [b2f14bfb064c1cab87eb4c8ea85f57d5b92f07c5/macports-ports]

comment:15 Changed 3 years ago by pmetzger (Perry E. Metzger)

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.