Conversation

cometkim

@cristianoc As I mentioned here, this change makes results of the @deriving(accessors) ppx are also reflected in genType.

This is also important to achieve #6196 later. Because, after all, people want correct typing for the whole JS output.

It's not a difficult change here, but requesting every custom ppx author to add the genType attribute themselves. They cannot accurately determine whether the code uses genType or not (currently genType is pretty dependency-aware)

It makes sense to migrate from #6196 to switch to per-file or per-project genType config. A downward is build speed. Obviously, if genType is enabled on the entire project, it will reduce overall build speed somehow. It needs to be measured IMHO.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great. Did a quick changelog commit to trigger CI.

| {Location.txt = "genType" | "gentype"; _}, _ -> true
| _ -> false

let gentype : attr = ({txt = "genType"; loc = locg}, Ast_payload.empty)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks like this is not used?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ahhh right. I think it's better to use it instead of copying the original attrs

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done. can you push the changelog commit again? I forgot pull.

@cristianoccristianoc merged commit 00cb645 into rescript-lang:master Dec 22, 2023
@cometkimcometkim deleted the preserve-gentype branch December 22, 2023 16:16
Sign up for free to join this conversation on . Already have an account? Sign in to comment
None yet
None yet

Successfully merging this pull request may close these issues.