[ANN] ppxlib.0.38.0

The ppxlib team is happy to announce the release of ppxlib.0.38.0.

The main features of this release are support for OCaml 5.5 and improved support of OCaml 5.4 and 5.3. It also comes with a few bug fixes and a couple new API entries, you can read the extensive release notes here.

This is our first release since we announced our new approach to supporting new compilers in this thread. All support for compilers versions >= 5.3 is implemented using this technique and new language features are encoded into the AST. We’ve added Ast_builder and Ast_pattern functions to allow you to manipulate some of those, such as labeled tuples or effect patterns. You can see those in our API documentation here and there. We’ve also illustrated how to use them in our new manual section. If you’re interested in producing or consuming other new language features that cannot be represented with our current internal AST (5.2), please open an issue so we can add the relevant helpers.

Given the ecosystem hasn’t yet recovered from the 5.2 AST bump and ppxlib.0.36.0, we’re glad that we can add support for new compilers without introducing further breakage and keep the maintenance burden within ppxlib’s bounds.
We’ve started discussions with the compiler team to make this approach even more viable in the future on our end.

We’d like to thank @ceastlund who’s our only external contributor for this release.

I’d personally like to thank @patricoferris for his help getting this out the door as well as the OCaml Software Foundation and OCamlPro for funding my work on ppxlib.

Thank you for reading and happy preprocessing!

13 Likes