Skip to content
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

Create a blog entry for 0.11 and Melange #743

Merged
merged 26 commits into from
Aug 22, 2023
Merged
Changes from 6 commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
eed9f91
Create a blog entry
davesnx Jul 11, 2023
502f8eb
Update website/blog/2023-06-11-reborn.md
davesnx Jul 11, 2023
1d61bec
Improve dune notation
davesnx Jul 11, 2023
887d0c0
Merge branch 'Blog-Melange-0-11' of github.com:/reasonml/reason-react…
davesnx Jul 11, 2023
d1bd831
Change title
davesnx Jul 11, 2023
fb313b0
Merge branch 'main' of github.com:/reasonml/reason-react into Blog-Me…
davesnx Jul 11, 2023
a59effe
Update website/blog/2023-06-11-reborn.md
davesnx Jul 11, 2023
241788a
Update website/blog/2023-06-11-reborn.md
davesnx Jul 11, 2023
d926dce
Update website/blog/2023-06-11-reborn.md
davesnx Jul 11, 2023
97da8c9
Update website/blog/2023-06-11-reborn.md
davesnx Jul 11, 2023
09770bf
Update website/blog/2023-06-11-reborn.md
davesnx Jul 11, 2023
f8789be
Update website/blog/2023-06-11-reborn.md
davesnx Jul 11, 2023
bc1460c
Update website/blog/2023-06-11-reborn.md
davesnx Jul 11, 2023
7992061
Update website/blog/2023-06-11-reborn.md
davesnx Jul 11, 2023
d78b159
Update website/blog/2023-06-11-reborn.md
davesnx Jul 11, 2023
bcec009
Update website/blog/2023-06-11-reborn.md
davesnx Jul 11, 2023
7a402ce
Update website/blog/2023-06-11-reborn.md
davesnx Jul 11, 2023
53f022f
Update website/blog/2023-06-11-reborn.md
davesnx Jul 11, 2023
e8b4aab
Update website/blog/2023-06-11-reborn.md
davesnx Jul 11, 2023
9d3d231
Update website/blog/2023-06-11-reborn.md
davesnx Jul 11, 2023
aef3186
Update website/blog/2023-06-11-reborn.md
davesnx Jul 11, 2023
c2d027d
Update website/blog/2023-06-11-reborn.md
davesnx Jul 11, 2023
2942ff1
Update website/blog/2023-06-11-reborn.md
davesnx Jul 11, 2023
ca0dfcc
Update website/blog/2023-06-11-reborn.md
davesnx Jul 11, 2023
9724f31
Update website/blog/2023-06-11-reborn.md
davesnx Jul 11, 2023
5b4642d
Move changelog to last
davesnx Jul 11, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 56 additions & 0 deletions website/blog/2023-06-11-reborn.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
---
title: ReasonReact is back (now with Melange)
davesnx marked this conversation as resolved.
Show resolved Hide resolved
---

Since the ReScript project diverged from ReasonML and moved ReasonReact into `@rescript/react`, ReasonReact has been in limbo. While this happened, the Melange team released the first major release of [Melange](https://buttondown.email/anmonteiro/archive/melange-hits-v10/) and made the first steps towards a deeper integration with the OCaml ecosystem.
davesnx marked this conversation as resolved.
Show resolved Hide resolved

We are happy to announce that ReasonReact is back and will be maintained and developed by the Melange team.
davesnx marked this conversation as resolved.
Show resolved Hide resolved

## What this means
davesnx marked this conversation as resolved.
Show resolved Hide resolved

We released ReasonReact to the [opam registry](https://opam.ocaml.org/packages/reason-react) and be installed with opam or esy if you prefer (even though Melange team recommends using opam).
davesnx marked this conversation as resolved.
Show resolved Hide resolved

We updated the documentation to reflect these new changes and we will continue to improve it over time.

## Changes
davesnx marked this conversation as resolved.
Show resolved Hide resolved
davesnx marked this conversation as resolved.
Show resolved Hide resolved

The previous version published in npm compatible with ReScript is 0.9.0. Between 0.9.0 and 0.11.0, we've fixed a few things:
davesnx marked this conversation as resolved.
Show resolved Hide resolved

- [0.9.2] Add drag event API binding
- [0.9.2] Add `aria-haspopup` as ariaHaspopup as prop
- [0.9.2] Add `aria-current` as ariaCurrent as prop
- [0.9.2] Add `aria-checked` as ariaChecked as prop
- [0.10.0] Deprecate legacy modules (ReasonReact, ReasonReactCompat, ReasonReactOptimizedCreateClass)

### Version 0.11

- [0.11.0] Add suppressHydrationWarning
- [0.11.0] Created opam package (reason-react.opam)
- [0.11.0] Requires dune 3.8.0 (via dune-project)
- [0.11.0] Full migration to Melange

## Migration
davesnx marked this conversation as resolved.
Show resolved Hide resolved

First make sure your project builds with Melange, once this is done, you can follow the migration guide:
davesnx marked this conversation as resolved.
Show resolved Hide resolved

- Install latest version of ReasonReact: `opam install reason-react`
davesnx marked this conversation as resolved.
Show resolved Hide resolved
- Use this as a package in the dune file `(libraries reason-react)` (make sure to add `(preprocess (pps react-jsx-ppx))` as well).
davesnx marked this conversation as resolved.
Show resolved Hide resolved
- Replace usages of modules with their newer names: `ReactDOMRe` -> `ReactDOM`, `ReactEventRe` -> `ReactEvent`, `ReasonReact` -> `React`.
davesnx marked this conversation as resolved.
Show resolved Hide resolved
- Remove usages of `ReasonReactCompat` and `ReasonReactOptimizedCreateClass`. They were deprecated a long time ago, and we removed them in this version.
davesnx marked this conversation as resolved.
Show resolved Hide resolved

## Future

We started moving all ReasonReact related packages to Melange and 0.11 and want to make sure the ReasonML community can update the 3rd party libraries to use Melange as well.

Some of them are published in [github.com/melange-community](https://github.com/melange-community/) or [github.com/ahrefs](https://github.com/ahrefs) such as [https://github.com/ahrefs/melange-react-dates](melange-react-dates) or [melange-recharts](https://github.com/ahrefs/melange-recharts).
davesnx marked this conversation as resolved.
Show resolved Hide resolved

There's a lot of work to do for 0.12 work, but we are excited to continue to improve ReasonReact and make it a great library for the Melange and ReasonML community.
davesnx marked this conversation as resolved.
Show resolved Hide resolved

- Bring reacjs-jsx-ppx into this repository
davesnx marked this conversation as resolved.
Show resolved Hide resolved
- Use the JSX transformation from React 17
davesnx marked this conversation as resolved.
Show resolved Hide resolved
- Fix code-generation locations for JSX and props
- A bunch of documentation work
davesnx marked this conversation as resolved.
Show resolved Hide resolved

Please contact us if you have any questions or want to help, joining [our Discord](https://discord.gg/reasonml) is the best way to reach us.
davesnx marked this conversation as resolved.
Show resolved Hide resolved

Have a good day!