Skip to content

Commit 2696d71

Browse files
committed
Reorganised changelogs
1 parent 960810a commit 2696d71

24 files changed

+284
-309
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ Includes a router, testing utils, performance utils, more.
2222
- [Performance Management](doc/PERFORMANCE.md).
2323
- [Smaller stuff](doc/EXTRA.md).
2424
- [Testing](doc/TESTING.md).
25-
- [Changelogs](doc/)[Latest](doc/CHANGELOG-0.10.md).
25+
- [Changelogs](doc/changelog)[Latest](doc/changelog/0.10.1.md).
2626

2727

2828
##### External Resources

doc/CHANGELOG-0.8.md

Lines changed: 0 additions & 63 deletions
This file was deleted.
Lines changed: 0 additions & 120 deletions
Original file line numberDiff line numberDiff line change
@@ -1,123 +1,3 @@
1-
# 0.10.2 (unreleased)
2-
3-
##### Upgrade React to 0.14.3.
4-
Adds new attributes:
5-
* `integrity`
6-
* `nonce`
7-
* `reversed`
8-
9-
React is now published to Bower in such a way that `ReactDOMServer` is accessible.
10-
`ReactDOMServer` now appears in scalajs-react and its methods on `React` have been deprecated.
11-
12-
To upgrade:
13-
14-
1. Update your codebase to use `ReactDOMServer` with:
15-
```
16-
find . -name '*.scala' -exec perl -pi -e 's/(?<=React)([ .]+renderTo(?:String|StaticMarkup))(?!\w)/DOMServer$1/g' {} +
17-
```
18-
19-
2. Ensure that you change your dependencies in SBT to use Bower instead of NPM.
20-
<br>[SBT snippet here](/doc/TESTING.md#setup).
21-
22-
##### Core
23-
* Added shortcuts for `<input>` DOM with type: `<.input.{type}`.
24-
<br>Example: `<.input.text(…)` can replace ```<.input(^.`type` := "text", …)```
25-
* Bugfix: `CallbackTo(…).flatten` usage wouldn't compile.
26-
* Bugfix: There were a number of `Event` methods missing and with incorrect signatures. *([diff](https://github.com/japgolly/scalajs-react/commit/010ab527f62013f82afc94f5bee1f5900d8ddcde))*
27-
* Added `ReactMouseEvent.targetsNewTab_?` to determine whether a mouse event (applied to a link), would open it in a new tab?
28-
* Added to `CallbackTo` object:
29-
* `sequence`
30-
* `sequenceO`
31-
* `traverse`
32-
* `traverseO`
33-
* Added to `CallbackOption` object:
34-
* `liftOptionCallback`
35-
* `liftOptionLikeCallback`
36-
* `sequence`
37-
* `sequenceO`
38-
* `traverse`
39-
* `traverseO`
40-
* Added type aliases to CompState: `{,Read,Write}Access{,D}, AccessRD`.
41-
* Deprecated and renamed:
42-
* `StateAccessCB``CompState.Access`
43-
* `StateAccessDirect``CompState.AccessD`
44-
45-
##### `extra` module
46-
* Allow router-provided links to be opened in new tabs via the normal browser mechanisms (middle-click, ctrl-click).
47-
* Add convenience methods to `router.BaseUrl`:
48-
* `BaseUrl.fromWindowUrl(String => String)`
49-
* `BaseUrl.until(String)`
50-
* `BaseUrl.until_#` ← Replaces `BaseUrl(dom.window.location.href.takeWhile(_ != '#'))`
51-
* Add to `ExternalVar` and `ReusableVar` objects: `s$(state, $)`.
52-
53-
##### `ext-monocle` module
54-
* Add to component scopes: `modStateL` and `setStateL`.
55-
* Add to `ExternalVar` and `ReusableVar` objects: `at(lens)(state, $)`.
56-
57-
##### `ext-scalaz` module
58-
* Add `Monad[CallbackOption]`.
59-
60-
##### `test` module
61-
* More test event properties settable. *([diff](https://github.com/japgolly/scalajs-react/commit/d58883a58becc1eda6aa5371a55e798c2d1b71c0))*
62-
* Many `Simulation` events now get default event properties. (prevents stupid PhantomJS crashing) *([diff](https://github.com/japgolly/scalajs-react/commit/5a20e96e27e78af86c691f52565941029ec7e35b))*
63-
64-
---
65-
66-
# 0.10.1 ([commit log](https://github.com/japgolly/scalajs-react/compare/v0.10.0...v0.10.1))
67-
68-
* Added conversions between `Callback` and `Future`.
69-
70-
| Input | Method | Output |
71-
| -------------------------- | ---------------------- | ----------------------- |
72-
| `CallbackTo[A]` | `cb.toFuture` | `Future[A]` |
73-
| `CallbackTo[Future[A]]` | `cb.toFlatFuture` | `Future[A]` |
74-
| `=> Future[A]` | `CallbackTo(f)` | `CallbackTo[Future[A]]` |
75-
| `=> Future[CallbackTo[A]]` | `CallbackTo.future(f)` | `CallbackTo[Future[A]]` |
76-
| `=> Future[CallbackTo[A]]` | `Callback.future(f)` | `Callback` |
77-
78-
If you're looking for ways to block (eg. turning a `Callback[Future[A]]` into a `Callback[A]`),
79-
it is not supported by Scala.JS (See [#1996](https://github.com/scala-js/scala-js/issues/1996)).
80-
81-
**NOTE:** It's important that when going from `Future` to `Callback`, you're aware of when the `Future` is instantiated.
82-
83-
```scala
84-
def queryServer: Future[Data] = ???
85-
86-
def updateComponent: Future[Callback] =
87-
queryServer.map($ setState _)
88-
89-
// This is GOOD because the callback wraps the updateComponent *function*, not an instance.
90-
Callback.future(updateComponent)
91-
92-
// This is BAD because the callback wraps a single instance of updateComponent.
93-
// 1) The server will be contacted immediately instead of when the callback executes.
94-
// 2) If the callback is executed more than once, the future and old result will be reused.
95-
val f = updateComponent
96-
Callback.future(f)
97-
98-
// This is GOOD too because the future is created inside the callback.
99-
Callback.future {
100-
val f = updateComponent
101-
f.onComplete(???)
102-
f
103-
}
104-
```
105-
106-
* Add `CallbackOption.{pass,fail}`.
107-
108-
* Add `Callback{,Option}.voidExplicit`.
109-
110-
* Add `React.Children.toArray`.
111-
112-
* Upgrade React to 0.14.1. Adds new attributes:
113-
* `default`
114-
* `kind`
115-
* `srcLang`
116-
117-
* Upgrade Scala.JS to 0.6.5.
118-
119-
---
120-
1211
# 0.10.0 ([commit log](https://github.com/japgolly/scalajs-react/compare/v0.9.2...v0.10.0))
1222

1233
This release packs a lot of changes to improve the quality, safety and coding experience.

doc/changelog/0.10.1.md

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
# 0.10.1 ([commit log](https://github.com/japgolly/scalajs-react/compare/v0.10.0...v0.10.1))
2+
3+
* Added conversions between `Callback` and `Future`.
4+
5+
| Input | Method | Output |
6+
| -------------------------- | ---------------------- | ----------------------- |
7+
| `CallbackTo[A]` | `cb.toFuture` | `Future[A]` |
8+
| `CallbackTo[Future[A]]` | `cb.toFlatFuture` | `Future[A]` |
9+
| `=> Future[A]` | `CallbackTo(f)` | `CallbackTo[Future[A]]` |
10+
| `=> Future[CallbackTo[A]]` | `CallbackTo.future(f)` | `CallbackTo[Future[A]]` |
11+
| `=> Future[CallbackTo[A]]` | `Callback.future(f)` | `Callback` |
12+
13+
If you're looking for ways to block (eg. turning a `Callback[Future[A]]` into a `Callback[A]`),
14+
it is not supported by Scala.JS (See [#1996](https://github.com/scala-js/scala-js/issues/1996)).
15+
16+
**NOTE:** It's important that when going from `Future` to `Callback`, you're aware of when the `Future` is instantiated.
17+
18+
```scala
19+
def queryServer: Future[Data] = ???
20+
21+
def updateComponent: Future[Callback] =
22+
queryServer.map($ setState _)
23+
24+
// This is GOOD because the callback wraps the updateComponent *function*, not an instance.
25+
Callback.future(updateComponent)
26+
27+
// This is BAD because the callback wraps a single instance of updateComponent.
28+
// 1) The server will be contacted immediately instead of when the callback executes.
29+
// 2) If the callback is executed more than once, the future and old result will be reused.
30+
val f = updateComponent
31+
Callback.future(f)
32+
33+
// This is GOOD too because the future is created inside the callback.
34+
Callback.future {
35+
val f = updateComponent
36+
f.onComplete(???)
37+
f
38+
}
39+
```
40+
41+
* Add `CallbackOption.{pass,fail}`.
42+
43+
* Add `Callback{,Option}.voidExplicit`.
44+
45+
* Add `React.Children.toArray`.
46+
47+
* Upgrade React to 0.14.1. Adds new attributes:
48+
* `default`
49+
* `kind`
50+
* `srcLang`
51+
52+
* Upgrade Scala.JS to 0.6.5.

doc/changelog/0.10.2.md

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
# 0.10.2 (unreleased)
2+
3+
##### Upgrade React to 0.14.3.
4+
Adds new attributes:
5+
* `integrity`
6+
* `nonce`
7+
* `reversed`
8+
9+
React is now published to Bower in such a way that `ReactDOMServer` is accessible.
10+
`ReactDOMServer` now appears in scalajs-react and its methods on `React` have been deprecated.
11+
12+
To upgrade:
13+
14+
1. Update your codebase to use `ReactDOMServer` with:
15+
```
16+
find . -name '*.scala' -exec perl -pi -e 's/(?<=React)([ .]+renderTo(?:String|StaticMarkup))(?!\w)/DOMServer$1/g' {} +
17+
```
18+
19+
2. Ensure that you change your dependencies in SBT to use Bower instead of NPM.
20+
<br>[SBT snippet here](/doc/TESTING.md#setup).
21+
22+
##### Core
23+
* Added shortcuts for `<input>` DOM with type: `<.input.{type}`.
24+
<br>Example: `<.input.text(…)` can replace ```<.input(^.`type` := "text", …)```
25+
* Bugfix: `CallbackTo(…).flatten` usage wouldn't compile.
26+
* Bugfix: There were a number of `Event` methods missing and with incorrect signatures. *([diff](https://github.com/japgolly/scalajs-react/commit/010ab527f62013f82afc94f5bee1f5900d8ddcde))*
27+
* Added `ReactMouseEvent.targetsNewTab_?` to determine whether a mouse event (applied to a link), would open it in a new tab?
28+
* Added to `CallbackTo` object:
29+
* `sequence`
30+
* `sequenceO`
31+
* `traverse`
32+
* `traverseO`
33+
* Added to `CallbackOption` object:
34+
* `liftOptionCallback`
35+
* `liftOptionLikeCallback`
36+
* `sequence`
37+
* `sequenceO`
38+
* `traverse`
39+
* `traverseO`
40+
* Added type aliases to CompState: `{,Read,Write}Access{,D}, AccessRD`.
41+
* Deprecated and renamed:
42+
* `StateAccessCB``CompState.Access`
43+
* `StateAccessDirect``CompState.AccessD`
44+
45+
##### `extra` module
46+
* Allow router-provided links to be opened in new tabs via the normal browser mechanisms (middle-click, ctrl-click).
47+
* Add convenience methods to `router.BaseUrl`:
48+
* `BaseUrl.fromWindowUrl(String => String)`
49+
* `BaseUrl.until(String)`
50+
* `BaseUrl.until_#` ← Replaces `BaseUrl(dom.window.location.href.takeWhile(_ != '#'))`
51+
* Add to `ExternalVar` and `ReusableVar` objects: `s$(state, $)`.
52+
53+
##### `ext-monocle` module
54+
* Add to component scopes: `modStateL` and `setStateL`.
55+
* Add to `ExternalVar` and `ReusableVar` objects: `at(lens)(state, $)`.
56+
57+
##### `ext-scalaz` module
58+
* Add `Monad[CallbackOption]`.
59+
60+
##### `test` module
61+
* More test event properties settable. *([diff](https://github.com/japgolly/scalajs-react/commit/d58883a58becc1eda6aa5371a55e798c2d1b71c0))*
62+
* Many `Simulation` events now get default event properties. (prevents stupid PhantomJS crashing) *([diff](https://github.com/japgolly/scalajs-react/commit/5a20e96e27e78af86c691f52565941029ec7e35b))*
Lines changed: 0 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,3 @@
1-
## 0.5.4 ([commit log](https://github.com/japgolly/scalajs-react/compare/v0.5.3...v0.5.4))
2-
3-
* Added `nop` and `_nop` to `ReactS.Fix{,T}`.
4-
* Added `T[A]` to `ReactS.Fix{,T}`.
5-
* Added `ReactS.liftIO` (workaround for Intellij).
6-
* Made `ReactS.>>` lazy.
7-
8-
## 0.5.3 ([commit log](https://github.com/japgolly/scalajs-react/compare/v0.5.2...v0.5.3))
9-
10-
* Deprecated and renamed `StateT.liftR` in favour of `liftS`.
11-
* Workaround for Scala's type inference failing with `StateT.liftS` on functions.
12-
Instead of `f(_).liftS`, `f.liftS` is now available and is confirmed to work in `_runState`.
13-
14-
## 0.5.2 ([commit log](https://github.com/japgolly/scalajs-react/compare/v0.5.1...v0.5.2))
15-
16-
* Added `ReactEventI` aliases for the very common case that the underlying node is an `<input>`.
17-
* Added tag attributes:
18-
* `dangerouslySetInnerHTML`. Usage example: `div(dangerouslySetInnerHtml("<span>"))`.
19-
* `colspan`
20-
* `rowspan`
21-
* Added to `ReactS`, `Fix` and `FixT`:
22-
* `callbackM`
23-
* `zoom`
24-
* `zoomU`
25-
* Added `ReactS.FixT`:
26-
* `applyS`
27-
* `getsS`
28-
* `modS`
29-
* Added `StateT` extension `liftR` to `ReactST`
30-
* Deprecated `runState` methods handling `StateT` directly. Use `liftR` first.
31-
* Bump Scala 2.11.2 to 2.11.4.
32-
33-
## 0.5.1 ([commit log](https://github.com/japgolly/scalajs-react/compare/v0.5.0...v0.5.1))
34-
35-
* Fixed Scalatags rejecting `VDom`.
36-
* Added `ScalazReact.ReactS.setM`.
37-
* Added `Listenable.install{IO,F}`, added `M[_]` to `Listenable.installS`.
38-
* Added `LogLifecycle` which when applied to a component, logs during each lifecycle callback.
39-
401
# 0.5.0 ([commit log](https://github.com/japgolly/scalajs-react/compare/v0.4.1...v0.5.0))
412

423
##### New features

doc/changelog/0.5.1.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
## 0.5.1 ([commit log](https://github.com/japgolly/scalajs-react/compare/v0.5.0...v0.5.1))
2+
3+
* Fixed Scalatags rejecting `VDom`.
4+
* Added `ScalazReact.ReactS.setM`.
5+
* Added `Listenable.install{IO,F}`, added `M[_]` to `Listenable.installS`.
6+
* Added `LogLifecycle` which when applied to a component, logs during each lifecycle callback.

doc/changelog/0.5.2.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
## 0.5.2 ([commit log](https://github.com/japgolly/scalajs-react/compare/v0.5.1...v0.5.2))
2+
3+
* Added `ReactEventI` aliases for the very common case that the underlying node is an `<input>`.
4+
* Added tag attributes:
5+
* `dangerouslySetInnerHTML`. Usage example: `div(dangerouslySetInnerHtml("<span>"))`.
6+
* `colspan`
7+
* `rowspan`
8+
* Added to `ReactS`, `Fix` and `FixT`:
9+
* `callbackM`
10+
* `zoom`
11+
* `zoomU`
12+
* Added `ReactS.FixT`:
13+
* `applyS`
14+
* `getsS`
15+
* `modS`
16+
* Added `StateT` extension `liftR` to `ReactST`
17+
* Deprecated `runState` methods handling `StateT` directly. Use `liftR` first.
18+
* Bump Scala 2.11.2 to 2.11.4.

doc/changelog/0.5.3.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
## 0.5.3 ([commit log](https://github.com/japgolly/scalajs-react/compare/v0.5.2...v0.5.3))
2+
3+
* Deprecated and renamed `StateT.liftR` in favour of `liftS`.
4+
* Workaround for Scala's type inference failing with `StateT.liftS` on functions.
5+
Instead of `f(_).liftS`, `f.liftS` is now available and is confirmed to work in `_runState`.

doc/changelog/0.5.4.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
## 0.5.4 ([commit log](https://github.com/japgolly/scalajs-react/compare/v0.5.3...v0.5.4))
2+
3+
* Added `nop` and `_nop` to `ReactS.Fix{,T}`.
4+
* Added `T[A]` to `ReactS.Fix{,T}`.
5+
* Added `ReactS.liftIO` (workaround for Intellij).
6+
* Made `ReactS.>>` lazy.

0 commit comments

Comments
 (0)