-
Notifications
You must be signed in to change notification settings - Fork 41
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
Make it build with Melange #293
Conversation
Thanks so much for doing this! I was just reaching out to @johnhaley81 to see if there was anything I could do to help this effort, and it looks like it's done! I should be able to review sometime over the next few days (definitely feel free to ping me on Discord if I don't by next weekend). For the |
Do you have thoughts on CI? Should I try to set up a build with both ReScript and Melange, or just one of them? Can be a separate PR too. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This all looks good to me! Thanks for doing the work to get this upgraded - long live melange! As far as CI build - if you wanted to submit a build for melange
that would be appreciated - I haven't really kept up with how that would be done in these different ecosystems. We can also check out how it's done in other projects if you know of any we could copy.
I'm fine with <$$>
- I think <#>
was somewhat arbitrary too. I'll let @mlms13 take a look too before we merge.
Ah yeah, good call. I think we maybe picked
I think CI was broken for other reasons before this PR. Specifically, I think the OCaml base image we were using for the Giuthub Actions went away, and we couldn't switch to the better-supported OCaml image because it didn't support 4.06. But now we should be able to use a good OCaml version, so that's awesome! 🤗 No need to make that change as part of this PR, though... CI fixes can be tackled separately. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A couple super minor comments, but overall, this looks really great and basically ready to merge.
Since this opens us up to supporting newer OCaml features that will be incompatible with the Rescript compiler (specifically looking at you, letops), we probably want to have a conversation about how we want to manage versions from here on out. Maybe we make a 1.0 release that is the final Relude release to officially work with the Rescript compiler, then we turn our attention to a 2.0 branch that leverages some of the newer OCaml goodies.
But it looks like this PR probably still works with the Rescript compiler, so we might not need to make that call right now.
Just fixed the code review items, thanks for the review all! |
Oops, we never merged this! Let's party, yeah?! |
This sets up a build with Melange.
\
(backslash) escapes in thebsconfig.json
arguments to bisect_ppx. Dune treats\
as a first class citizen, so these escapes aren't needed.<#>
(flipMap
) to<$$>
: OCaml 4.12 apparently disallows any infix operator that has#
in its name. I chose<$$>
randomly, and I'm not aware of any conventions forflipMap
. Suggestions appreciated for a better name here.