Skip to content

Commit

Permalink
Docs: 16.0.0 blog post draft
Browse files Browse the repository at this point in the history
  • Loading branch information
raquo committed Jul 9, 2023
1 parent b6d3b39 commit ebb55cd
Show file tree
Hide file tree
Showing 13 changed files with 126 additions and 11 deletions.
2 changes: 1 addition & 1 deletion website/blog/2020-10-10-hello.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Previous News & Release Notes
author: Nikita
authorURL: http://twitter.com/raquo
authorURL: https://twitter.com/raquo
---

Before this website went up, Changelog was hosted [on github](https://github.com/raquo/Laminar/blob/master/CHANGELOG.md). It's still there, with release notes up to and including v0.10.3.
Expand Down
2 changes: 1 addition & 1 deletion website/blog/2020-10-12-laminar-v0.11.0.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Laminar v0.11.0 & New Website
author: Nikita
authorURL: http://twitter.com/raquo
authorURL: https://twitter.com/raquo
---

I am pleased to announce the release of Laminar v0.11.0, Airstream v0.11.0, and our new website.
Expand Down
2 changes: 1 addition & 1 deletion website/blog/2020-10-17-airstream-v0.11.1.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Airstream v0.11.1
author: Nikita
authorURL: http://twitter.com/raquo
authorURL: https://twitter.com/raquo
---

I have just released a bugfix for Airstream which fixes [#45](https://github.com/raquo/Airstream/issues/42).
Expand Down
2 changes: 1 addition & 1 deletion website/blog/2021-02-03-laminar-v0.12.0.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Laminar v0.12.0, Laminext, Material UI & more!
author: Nikita
authorURL: http://twitter.com/raquo
authorURL: https://twitter.com/raquo
---

Laminar v0.12.0 and Airstream v0.12.0 are out! 🎉
Expand Down
2 changes: 1 addition & 1 deletion website/blog/2021-02-26-laminar-v0.12.1.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Laminar v0.12.1
author: Nikita
authorURL: http://twitter.com/raquo
authorURL: https://twitter.com/raquo
---

Tiny release to remove debug logging for controlled inputs that I accidentally left in the production build of Laminar 0.12.0. No breaking changes unless this broke your heart.
Expand Down
2 changes: 1 addition & 1 deletion website/blog/2021-04-01-laminar-v0.12.2.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Laminar v0.12.2
author: Nikita
authorURL: http://twitter.com/raquo
authorURL: https://twitter.com/raquo
---

Bug fixes for source maps, SVG xmlns, and XHR headers. A couple new convenience methods. Requires Scala.js 1.5.0.
Expand Down
2 changes: 1 addition & 1 deletion website/blog/2021-05-04-laminar-v0.13.0.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Laminar v0.13.0
author: Nikita
authorURL: http://twitter.com/raquo
authorURL: https://twitter.com/raquo
---

Laminar & Airstream are now published directly for Scala 3. This required an internal refactoring of Airstream to satisfy Scala 3's stricter variance checks.
Expand Down
2 changes: 1 addition & 1 deletion website/blog/2021-07-10-laminar-v-0.13.1.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Laminar v0.13.1 & Waypoint 0.4.2
author: Nikita
authorURL: http://twitter.com/raquo
authorURL: https://twitter.com/raquo
---

Fixes a regression in Laminar controlled inputs when filtering user input, and an unrelated issue with file:// URLs in Waypoint.
Expand Down
2 changes: 1 addition & 1 deletion website/blog/2022-06-23-ecosystem.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: 2022 Laminar Ecosystem Updates
author: Nikita
authorURL: http://twitter.com/raquo
authorURL: https://twitter.com/raquo
---

Here is a deluge of new libraries, web components, tutorials, sponsors – all the news that couldn't wait until the next Laminar release. Hope I didn't miss anything!
Expand Down
2 changes: 1 addition & 1 deletion website/blog/2022-10-24-laminar-v0.14.5.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Laminar v0.14.5, Discord and More News
author: Nikita
authorURL: http://twitter.com/raquo
authorURL: https://twitter.com/raquo
---

This release was built with Scala 3.2.0, which fixes Scala.js sourcemaps on 3.x.
Expand Down
2 changes: 1 addition & 1 deletion website/blog/2023-03-22-laminar-v15.0.0.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Laminar v15.0.0 Mega Release
author: Nikita
authorURL: http://twitter.com/raquo
authorURL: https://twitter.com/raquo
---

Huge release with better Airstream semantics and many new features.
Expand Down
105 changes: 105 additions & 0 deletions website/blog/2023-07-11-laminar-v16.0.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
---
title: Laminar v16.0.0
author: Nikita
authorURL: https://twitter.com/raquo
---

Fixes a few bugs, and adds a few small features.

<!--truncate-->

> Laminar is a Scala.js library for building web application interfaces and managing UI state. Learn more in [a few short examples](https://laminar.dev/examples/hello-world) or [one long video](https://www.youtube.com/watch?v=L_AHCkl6L-Q).

## News

Releases: Laminar 16.0.0, Airstream 16.0.0, Waypoint 7.0.0

New Laminar libraries by Blue Pitaya: [Laminar dragging](https://github.com/blue-pitaya/laminar-dragging), [Laminar color](https://github.com/blue-pitaya/laminar-color), [Laminar contenteditable](https://github.com/blue-pitaya/laminar-contenteditable)

[Network Threat Monitor](https://github.com/alexeybi/threat-monitor) Laminar app by Alexey Bityukov

[Semagrams Laminar App](https://github.com/AlgebraicJulia/Semagrams.jl) by Owen Lynch + [demo](https://semagrams.algebraicjulia.org/apps/dwd/index.html)


## New Features

* `renderDetached(laminarNode, activateNow = true)` method lets you pass manually managed DOM nodes to third party JS libraries that want to render them. You need to manually `.deactivate()` the node after it's no longer needed to stop its subscriptions. Basically it's similar to the `render` method, but does not require a container node upfront. See the [new doc section](https://laminar.dev/documentation#passing-laminar-elements-to-third-party-libraries) for details.

* Support for [passive](https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener#passive) event listeners (thanks, [@fgoepel](https://github.com/fgoepel)!)

* AjaxStream `uploadProgressObserver` (thanks, [@Dennis4b](https://github.com/Dennis4b)!)

* A few more low level DOM manipulation methods: `ParentNode.insertChildBefore`, `insertChildAfter`, `DomApi.insertAfter`

* `tabIndex` attribute for SVG, `startselect` and `selectionchange` events


## New Documentation Sections

* [Network Requests](https://laminar.dev/documentation#network-requests)

* [Passing Laminar Elements to Third Party Libraries](https://laminar.dev/documentation#passing-laminar-elements-to-third-party-libraries)

* [Troubleshooting](https://laminar.dev/documentation#troubleshooting)


## Bug Fixes

* The optional SVG `xmlns` attribute did not work in Firefox because its namespace was incorrectly specified ([#143](https://github.com/raquo/Laminar/issues/143))

* `FetchStream` did not emit events if initialized outside a transaction ([Airstream#106](https://github.com/raquo/Airstream/issues/106)).

* `stream1.mergeWith(stream2, stream3)` helper method was ignoring the `stream1` itself. Note: `EventStream.merge(stream1, stream2, stream3)` was unaffected.


## Breaking Changes

* `DomApi` children-related methods like `appendChild` now accept raw `dom.Node`-s now instead of Laminar nodes.

* Migration: if you use those methods directly, pass `node.ref` instead of `node`.

* Remove `ParentNode.replaceChildren`, `replaceAllChildren`, `CollectionCommand.ReplaceAll`

* Remove `CollectionCommand.Move` alias – use `Insert`

* Remove `ChildNode.isNodeMounted` method – use `DomApi.isDescendantOf(node.ref, dom.document)`

* Rename ParentNode.insertChild -> insertChildAtIndex


## Other Changes

* Laminar no longer maintains its own list of children for every Laminar element (`ParentNode._maybeChildren`). This makes integrations easier, increases resilience to external DOM changes, and improves performance a bit in most cases.

* Laminar is now published for [Scala 3.3.0 LTS](https://www.scala-lang.org/blog/2023/05/30/scala-3.3.0-released.html) and Scala.js 1.13.2, and scalajs-dom 2.6.0. By the way, we [plan](https://github.com/raquo/Laminar/issues/132) to drop support for Scala 2.12 in 2024.


## Thank You

The development of Laminar is kindly sponsored by [people](https://github.com/sponsors/raquo) who use it in their businesses and personal projects.

**GOLD** sponsors supporting Laminar:

<div class="-sponsorsList x-alignItemsEnd">
<div class="-sponsor x-person x-yurique">
<img class="-avatar x-rounded" src="/img/sponsors/yurique.jpg" alt="" />
<div class="-text">
<div class="-name"><a href="https://github.com/yurique">Iurii Malchenko</a></div>
</div>
</div>
<div class="-sponsor x-company x-aurinko">
<a class="x-noHover" href="https://www.aurinko.io/">
<img class="-logo" src="/img/sponsors/aurinko-light-300px.png" alt="" />
<div class="-tagline"><u>Aurinko</u> is an API platform for workplace addons and integrations.</div>
</a>
</div>
<div class="-sponsor x-company x-heartai">
<a class="x-noHover" href="https://www.heartai.net/">
<img class="-logo" src="/img/sponsors/heartai.svg" alt="" />
<div class="-tagline"><u>HeartAI</u> is a data and analytics platform for digital health and clinical care.</div>
</a>
</div>
</div>

Thank you for supporting me! ❤️
10 changes: 10 additions & 0 deletions website/docs/resources.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,10 @@ title: Resources

* [Hippo](https://github.com/indoorvivants/hippo) – web-based heap dump viewer.

* [Network Threat Monitor](https://github.com/alexeybi/threat-monitor)

* [Semagrams.jl](https://github.com/algebraicjulia/Semagrams.jl) + [Demo](https://semagrams.algebraicjulia.org/apps/dwd/index.html)



## Starter Kits & More Examples
Expand Down Expand Up @@ -124,6 +128,12 @@ Warning: Using `ModuleKind.ESModule` (e.g when using Vite or Snowpack) results i

* [Laminar.cycle](https://github.com/vic/laminar_cycle) – Cycle.js dialogue abstraction in Laminar

* [Laminar dragging](https://github.com/blue-pitaya/laminar-dragging)

* [Laminar color](https://github.com/blue-pitaya/laminar-color)

* [Laminar contenteditable](https://github.com/blue-pitaya/laminar-contenteditable)



## Component Libraries
Expand Down

0 comments on commit ebb55cd

Please sign in to comment.