Skip to content

Refactor some types into query_protocol_kernel #1952

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

Open
wants to merge 9 commits into
base: main
Choose a base branch
from

Conversation

liam923
Copy link
Contributor

@liam923 liam923 commented Jul 23, 2025

This PR is difficult for me to motivate as it makes much more sense in the https://github.com/oxcaml/merlin context, but I figured it would be worth opening for the sake of keeping that fork in line with the main fork.

The main goal of this PR is to move some more type definitions (as well as some serializers/deserializers for them) into query_protocol_kernel. This is a new directory that I introduced in #1951 that facilitates sharing code between Merlin and VSCode extensions by being js_of_ocaml compatible.

This also replaces some functions with ppx-derived functions. This involves adding ppx_jane as a dependency, which I expect to be controversial. There's a related discussion in-progress in #1951 about ppx_yojson_conv, so I expect the resolution of that discussion to inform this one.

Reviewing Note

These changes are based on the changes from #1951 as they overlap slightly, but I pointed the PR at the main branch so that this PR can live in the oxcaml/merlin repo rather than my personal fork. Thus, the commits up to and including f71ee32 should be ignored while reviewing.

@liam923
Copy link
Contributor Author

liam923 commented Jul 25, 2025

I've realized that the ppx_jane question is actually a moot point as ppx_yojson_conv depends on ppx_jane.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant