How did you migrated over to JSX3? With chenglou/upgrade-reason-react or bloodyowl/upgrade-reason-react-esy?

reasonreact

#1

For me the official suggested migration scripts made things even harder as it tried to bind JSX2 into JSX3, so if you were using any deps inside JSX2 that were upgraded to JSX3 you would get tons of compiler errors.
IMHO looks like either Facebook was already using JSX3 for some time already or they did not had the same pain points as the rest of us while bloodyowl/upgrade-reason-react-esy is much closer to everyone’s reality (IMHO as well) with the suggested ReactCompat.useRecordAPI approach. I recently finished a huge migration and I can say very confidently that it was going to demand much more effort and time if I had used the official migration script.

So I wanted to know if I am the only one feeling this way and why the Reason team preferred the bind-JSX2-into-JSX3 approach to migrate.


#2

I agree that I had this feeling that the “official” migration wasn’t really “real world” usage.
Having to make a “bridge” for each components felt wrong… Or too much work for not having everything jsx3 ready on the long run.
On the opposite, what bloodyowl made feel totally right. That’s why I used this on the reason-react-native migration upgrade doc https://reasonml-community.github.io/reason-react-native/en/docs/migration/jsx3/