Skip to content

dev meeting 19 12 2023

Patrick Ferris edited this page Aug 24, 2024 · 1 revision

Agenda

  • 0.32.0 release
    • Reason for the release: Attribute API addition.
    • Preparation for the release: What else to merge before the release?
    • Caution for the release: Caml -> Stdlib change.
  • Compiler change of AST context format.
    • Are there still use cases where the ppx driver is compiled on a different OCaml version than the project is compiled with? In those cases, that compiler change would affect us.
  • Change of philosophy for trunk-support branch.

Present

  • Sonja / @pitag-ha
  • Paul-Elliot / @panglesd

Notes

0.32.0 release

The addition to the Attribute API to add support for flags is important enough to cut a release. We've noticed the changelog entry of that change is wrong.

Action-point Paul-Elliot: Fix the changelog (done) .

It's not a blocker, but it would be amazing to merge the PRs that improve the error handling before the release. @NathanReb has offered to review before the release 🎉

@NathanReb will also take care of cutting the release.

For that release, we need some extra caution: We've introduced a change, that's theoretically breaking since the release: We've replaced Caml with Stdlib. We're not expecting to break anyone for real, but we'll pay extra attention to the opam-repo CI. Side-note: The changelog entry of the Caml -> Stdlib change is in the wrong section.

Action-point Paul-Elliot: Fix the changelog (done) .

Change of philosophy of trunk support

The trunk support banch was supposed to be maintained to always be compatible with the trunk branch from the OCaml compiler. It turned out to be more work than expected.

Last meeting, dropping support for it was considered.

After discussing with people using trunk-support, instead of dropping support, we are just going to review and merge community-contributed PRs on it, to avoid duplicated work, without writing the PRs ourselves.

The conversation can be found here. An excerpt:

The trunk support branch could be a branch for "quick and not perfect" patch, that are useful for testing opam packages against trunk. In this case, it could be community-driver, with quick merges (since it does not have to be perfect!) and at least, the community would do the work (such as your patch) only once!

This compiler change will affect ppxlib iff there are people compiling the PPX driver on a different OCaml version than they compile their project with. Is that the case?

For sure, people using dune are not in this situation. What about others?

It used to be the case in the bucklescript ecosystem. From what we understand, the rescript ecosystem works differently and shouldn't be a problem.

Apart from rescript users, this might also be a problem for people with a manual set-up, who have one fixed compiled PPX driver, which they use in all their OCaml make files, independent from the OCaml version used. We don't know if anyone does this.

We won't put effort into keeping on supporting a workflow of which we don't know if it's used by anyone. If this ends up being a problen for anyone, we hope people file an issue. We'll make sure to communicate well about this in the release, in which we'll add OCaml 5.2 support.

Clone this wiki locally