-
Notifications
You must be signed in to change notification settings - Fork 90
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP] Deprecate the ppx_deriving API in favour of ppxlib #250
base: master
Are you sure you want to change the base?
Conversation
I'm not too enthusiastic about breaking people's projects (with a deprecation-warning-turned-into-an-error). What do we gain here, and what are the costs? There is already a note at the beginning of the README of the project (Kate of course knows, but for the context):
My impression is that it is reasonably possible to do what is proposed in the note: encourage Your point 2, if I understand correctly, is to rewrite the builtin ppx_deriving plugins to use ppxlib.Deriving directly instead of the ppx_deriving API. I think that this is a good idea, because it reduces the chance that end-users are hit with the limitations of the ppxlib implementation of ppx_deriving. In general we could try to gradually port existing ppx_deriving plugins to ppxlib.Deriving (those that don't have a replacement already), and close the light when there are no dependencies on the ppx_deriving API on opam (add a deprecation warning, and eventually retire the API). |
I realize this is an old issue, but 2. would be super useful because of the deriving inline feature. Having 0 actual dependency on ppx, for such an important and foundational set of derivers as |
Hey @c-cube, I definitely agree with you that
Have you seen our WIP
Right, thanks for reminding me of Btw, cc @@ayc9 who is working on the |
Is there some problem due to which visitors.ppx can't be ported to |
This PR has two goals:
ppxlib
for the builtin deriving plugins (show, eq, ord, …). This will help pinpoint the possible issues that users will encounter when migrating and help theppxlib
API itself by adding helpful functions if something is missing there.I don't have time or motivation to implement the last point right now, so if anyone has either of those things feel free to try it out in the meantime.