Skip to content

Commit

Permalink
Update changelog and separate changelog for RCs
Browse files Browse the repository at this point in the history
  • Loading branch information
japgolly committed Oct 27, 2021
1 parent 2d1393a commit 36ed403
Show file tree
Hide file tree
Showing 2 changed files with 104 additions and 66 deletions.
80 changes: 80 additions & 0 deletions doc/changelog/2.0.0-RCs.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
# 2.0.0-RC*x*

The full combined list of changes from v1.7.7 to v2.0.0 is [here](./2.0.0.md).

Contents:
- [Changes in RC1](#changes-in-rc1)
- [Changes in RC2](#changes-in-rc2)
- [Changes in RC3](#changes-in-rc3)
- [Changes in RC4](#changes-in-rc4)
- [Changes in RC5](#changes-in-rc5)


# Changes in RC1

[See here.](https://github.com/japgolly/scalajs-react/blob/v2.0.0-RC1/doc/changelog/2.0.0.md)

# Changes in RC2

* Bugfix in the `useCallbackWithDeps{,By}` hook

* Changed the pattern in hook signatures from `(mainArg: => A, deps: => D)` to `(deps: D)(mainArg: D => A)`.
Affected methods:
* `useCallbackWithDeps{,By}`
* `useEffectWithDeps{,By}`
* `useLayoutEffectWithDeps{,By}`
* `useMemo{,By}`

# Changes in RC3

* Bugfixes:
* Expose default sync effect instead of internal type in:
* `SetStateFn(…)`
* `ModStateFn(…)`
* `ModStateWithPropsFn(…)`
* `StateSnapshot` constructors should accept
* `SetStateFn`
* `ModStateFn`
* `ModStateWithPropsFn`
* `TimerSupport.install` had an infinite loop
* `TriStateCheckbox`'s `onKeyDown` handler was calling `event.preventDefault()` on unhandled keys
* Fix the Scala 3 version of `renderBackend` to support polymorphic backends
*(e.g. `renderBackend[Backend[X]]` where `X` is a type already in scope)*
* Support `CallbackOption[Unit]` being passed directly to event handling vdom

* Additions:
* `TriStateCheckbox` now accepts an optional `Reusable[TagMod]` in its `Props` that will be applied to the `<input>`
* Add `.dispatch` to `Callback` and `AsyncCallback` which schedules (-and-forgets) the callback to be run in the background

* Upgrade deps
* Cats-effect to 3.2.2
* Scala.js to 1.7.0
* Microlibs to 3.0.1
* UnivEq to 1.6.0

# Changes in RC4

* Support turning React warnings into runtime exceptions. There are a few ways to do this:
* Via a [new config option](../CONFIG.md#testwarningsreact) for `ReactTestUtils`
* [Manually](../TESTING.md#fatal-react-warnings)

* Document existing `debounce` methods to clarify you need to save them as a `val` and reuse them

* Add:
* `AsyncCallback.debounce(duration): AsyncCallback[Unit]`
* `Callback.debounce(duration): Callback`
* `ScalaFnComponent.withReuse{,By}`
* `ScalaFnComponent.withChildrenAndReuse{,By}`

* `ReactTestUtils` is now a `trait` as well as an `object` so that you can mix it into your own test utils collection

* Upgrade deps
* Cats-effect to 3.2.9
* Microlibs to 4.0.0
* Scala.js to 1.7.1
* scalajs-dom 2.0.0
* UnivEq to 2.0.0

# Changes in RC5

* Add a new bundle called `core-bundle-cb_io` with provides core scalajs-react functionality with `Callback` as the default sync effect and `cats.effect.IO` as the default async effect. (Thanks [@rpiaggio](https://github.com/rpiaggio))
90 changes: 24 additions & 66 deletions doc/changelog/2.0.0.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# 2.0.0-RC3
# 2.0.0

Lots of big, juicy, modernising changes here.
Make sure you at least read the [migration](#migration) guide.
Expand All @@ -11,8 +11,7 @@ Contents:
- [Changes: Backwards-Compatible](#changes-backwards-compatible)
- [Changes: Auto-Migratable](#changes-auto-migratable)
- [Migration](#migration)
- [Changes in RC2](#changes-in-rc2)
- [Changes in RC3](#changes-in-rc3)
- [Changes in RCs](#changes-in-rcs)
- [Thanks](#thanks)


Expand Down Expand Up @@ -55,6 +54,13 @@ Contents:
* Global settings have been fixed and revamped. See the [new guide here](../CONFIG.md).
This allows you to produce different dev and prod builds without making code changes.

* Support turning React warnings into runtime exceptions. There are a few ways to do this:
* Via a [new config option](../CONFIG.md#testwarningsreact) for `ReactTestUtils`
* [Manually](../TESTING.md#fatal-react-warnings)

* Upgrade scala-js-dom to 2.0.0. This is mostly source-compatible with v1.2.0, but isn't binary-compatible.
See the [scala-js-dom v2 release notes](https://github.com/scala-js/scala-js-dom/releases/tag/v2.0.0).


# Minor New Features

Expand Down Expand Up @@ -155,7 +161,14 @@ Contents:
* `CallbackTo`
* `CallbackOption`

* Add `withFilter` to `Callback(To)` and `AsyncCallback`
* Additions
* `AsyncCallback.debounce(duration): AsyncCallback[Unit]`
* `Callback.debounce(duration): Callback`
* `ScalaFnComponent.withReuse{,By}`
* `ScalaFnComponent.withChildrenAndReuse{,By}`
* Add a `withFilter` method to `Callback(To)` and `AsyncCallback`
* Add a `dispatch` method to `Callback` and `AsyncCallback` which schedules (-and-forgets) the callback to be run in the background
* `TriStateCheckbox` now accepts an optional `Reusable[TagMod]` in its `Props` that will be applied to the `<input>`

* Bug fixes:
* ScalaFnComponents now use `VdomNode`s instead of `VdomElement`s
Expand All @@ -165,14 +178,18 @@ Contents:

* Avoid boxing in `React.Context` and `getSnapshotBeforeUpdate`

* `ReactTestUtils` is now a `trait` as well as an `object` so that you can mix it into your own test utils collection

* `Px[A]#extract` now takes an implicit `Px.Extract[A](Px[A] => A)` argument instead of being a macro.
If you're using this exotic feature, you can now provide your own `Px.Extract` typeclass instances.

* Backwards-compatible dependency upgrades:
* Cats to 2.6.1
* Cats Effect to 3.2.9
* Monocle (v2) to 2.1.0
* Monocle (v3) to 3.1.0
* Scala to 2.13.6
* Scala.js to 1.7.0
* Scala.js to 1.7.1
* Sourcecode to 0.2.7


Expand Down Expand Up @@ -314,70 +331,11 @@ You can run the script in the Migration section at the bottom of the page to aut
```


# Changes in RC2

* Bugfix in the `useCallbackWithDeps{,By}` hook
* Changed the pattern in hook signatures from `(mainArg: => A, deps: => D)` to `(deps: D)(mainArg: D => A)`.
Affected methods:
* `useCallbackWithDeps{,By}`
* `useEffectWithDeps{,By}`
* `useLayoutEffectWithDeps{,By}`
* `useMemo{,By}`


# Changes in RC3

* Bugfixes:
* Expose default sync effect instead of internal type in:
* `SetStateFn(…)`
* `ModStateFn(…)`
* `ModStateWithPropsFn(…)`
* `StateSnapshot` constructors should accept
* `SetStateFn`
* `ModStateFn`
* `ModStateWithPropsFn`
* `TimerSupport.install` had an infinite loop
* `TriStateCheckbox`'s `onKeyDown` handler was calling `event.preventDefault()` on unhandled keys
* Fix the Scala 3 version of `renderBackend` to support polymorphic backends
*(e.g. `renderBackend[Backend[X]]` where `X` is a type already in scope)*
* Support `CallbackOption[Unit]` being passed directly to event handling vdom
* Additions:
* `TriStateCheckbox` now accepts an optional `Reusable[TagMod]` in its `Props` that will be applied to the `<input>`
* Add `.dispatch` to `Callback` and `AsyncCallback` which schedules (-and-forgets) the callback to be run in the background
* Upgrade deps
* Cats-effect to 3.2.2
* Scala.js to 1.7.0
* Microlibs to 3.0.1
* UnivEq to 1.6.0
# Changes in RC4
* Support turning React warnings into runtime exceptions. There are a few ways to do this:
* Via a [new config option](../CONFIG.md#testwarningsreact) for `ReactTestUtils`
* [Manually](../TESTING.md#fatal-react-warnings)
* Document existing `debounce` methods to clarify you need to save them as a `val` and reuse them
* Add:
* `AsyncCallback.debounce(duration): AsyncCallback[Unit]`
* `Callback.debounce(duration): Callback`
* `ScalaFnComponent.withReuse{,By}`
* `ScalaFnComponent.withChildrenAndReuse{,By}`
* `ReactTestUtils` is now a `trait` as well as an `object` so that you can mix it into your own test utils collection
* Upgrade deps
* Cats-effect to 3.2.9
* Microlibs to 4.0.0
* Scala.js to 1.7.1
* scalajs-dom 2.0.0
* UnivEq to 2.0.0
# Changes in RCs

If you're interested in the changes between each RC release, [see here](./2.0.0-RCs.md).
# Changes in RC5
* Add a new bundle called `core-bundle-cb_io` with provides core scalajs-react functionality with `Callback` as the default sync effect and `cats.effect.IO` as the default async effect. (Thanks [@rpiaggio](https://github.com/rpiaggio))
s
# Thanks
A lot of this was kindly sponsored by [Gemini](https://www.gemini.edu/)/[NOIRLab](https://nationalastro.org/)/[AURA](https://www.aura-astronomy.org/).
Expand Down

0 comments on commit 36ed403

Please sign in to comment.