Skip to content

Commit 2aef79c

Browse files
committed
docs: added notes about hydration bugs
1 parent 6077181 commit 2aef79c

File tree

4 files changed

+16
-0
lines changed

4 files changed

+16
-0
lines changed

docs/0.3.4/en-US/reference/pitfalls-and-bugs.md

+6
Original file line numberDiff line numberDiff line change
@@ -49,3 +49,9 @@ If you add `default-features = false` to your `Cargo.toml` and expect Perseus to
4949
If you've tried to download the bleeding-edge version of the CLI with `cargo install`, using a Git dependency on the `perseus-cli` package, you've probably been hit with a whole host of errors that don't make a whole lot of sense! The reason for this is that the Perseus CLI depends on including a folder that's not checked into Git (the engine, `.perseus/`, but transformed in various ways). That means that, to build the CLI, you need to have that folder available, which `cargo install` isn't smart enough to do yet from a Git dependency.
5050

5151
The way you get around this is unfortunately inconvenient, you'll have to manually clone the whole Perseus repository and then build the CLI yourself. You can do that by running `bonnie setup` in the root of the Perseus repo (after you've cloned it), and then you can build the binary in `packages/perseus-cli/` -- that will give you a copy of the CLI in `target/`! Be warned though that ussing the bleeding-edge CLI is generally not recommended, as the interdependencies in the engine can be quite fragile, and even the smallest changes that aren't breaking usually can be breaking when you're using the bleeding-edge version of the CLI with a released version of Perseus.
52+
53+
## Hydration doesn't work with X
54+
55+
Perseus v0.3.x uses Sycamore v0.7.x, which still has several hydration bugs, so there are multiple things that won't work with it yet. In fact, as a general rule, if you're getting weird layout bugs that make absolutely no logical sense, try disabling hydration, it will often fix things at the moment.
56+
57+
Sycamore v0.8.0 has been released in beta to solve these problems and many others, though it also radically changes Sycamore's API, and the upgrade of Perseus (a very large and complex system) is still ongoing. Once this is complete, Perseus v0.4.0 will be released in beta, and that should fix all current hydration bugs. In other words, if you have an error solely due to hydration at the moment, you should disable it for now and wait until Perseus v0.4.0, which will hopefully fix it. When that's released, if you're still experiencing problems with hydration, please let us know!

docs/next/en-US/reference/pitfalls-and-bugs.md

+6
Original file line numberDiff line numberDiff line change
@@ -49,3 +49,9 @@ If you add `default-features = false` to your `Cargo.toml` and expect Perseus to
4949
If you've tried to download the bleeding-edge version of the CLI with `cargo install`, using a Git dependency on the `perseus-cli` package, you've probably been hit with a whole host of errors that don't make a whole lot of sense! The reason for this is that the Perseus CLI depends on including a folder that's not checked into Git (the engine, `.perseus/`, but transformed in various ways). That means that, to build the CLI, you need to have that folder available, which `cargo install` isn't smart enough to do yet from a Git dependency.
5050

5151
The way you get around this is unfortunately inconvenient, you'll have to manually clone the whole Perseus repository and then build the CLI yourself. You can do that by running `bonnie setup` in the root of the Perseus repo (after you've cloned it), and then you can build the binary in `packages/perseus-cli/` -- that will give you a copy of the CLI in `target/`! Be warned though that ussing the bleeding-edge CLI is generally not recommended, as the interdependencies in the engine can be quite fragile, and even the smallest changes that aren't breaking usually can be breaking when you're using the bleeding-edge version of the CLI with a released version of Perseus.
52+
53+
## Hydration doesn't work with X
54+
55+
Perseus v0.3.x uses Sycamore v0.7.x, which still has several hydration bugs, so there are multiple things that won't work with it yet. In fact, as a general rule, if you're getting weird layout bugs that make absolutely no logical sense, try disabling hydration, it will often fix things at the moment.
56+
57+
Sycamore v0.8.0 has been released in beta to solve these problems and many others, though it also radically changes Sycamore's API, and the upgrade of Perseus (a very large and complex system) is still ongoing. Once this is complete, Perseus v0.4.0 will be released in beta, and that should fix all current hydration bugs. In other words, if you have an error solely due to hydration at the moment, you should disable it for now and wait until Perseus v0.4.0, which will hopefully fix it. When that's released, if you're still experiencing problems with hydration, please let us know!

examples/core/plugins/README.md

+2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
11
# Plugins Example
22

33
This example shows how Perseus' plugins system works by creating a very simple plugin and applying it to a simple app.
4+
5+
*Note: this example doesn't work with hydration yet.*

examples/demos/auth/README.md

+2
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,6 @@
22

33
This example demonstrates how to set up a basic authentication system in Perseus.
44

5+
*Note: this example doesn't work with hydration yet.*
6+
57
*Note: the way this is implemented uses very rudimentary storage of simple identifiers in the browser's local storage. Not only is the 'token' implementation ludicrously insecure and for educational purposes only, using web storage simply will not work in some implementation of private browsing mode (e.g. Safari, which makes using this API effectively impossible in that mode). See [here](https://developer.mozilla.org/en-US/docs/Web/API/Web_Storage_API#private_browsing_incognito_modes) for further details.*

0 commit comments

Comments
 (0)