With regards to ppx, IIUC I think (?) there are plans to upstream some of the work done in ppxlib to ocaml proper (astlib?) which should hopefully make ppx tenable across OCaml versions.
@jeremiedimino @pitag maybe able to shed some light on it.
Here is the link which details some of the ppx work. Ppx: omp 2.0.0 and next steps