leptos-rs / book

The home for the Leptos book, which can be found deployed at https://book.leptos.dev
MIT License
80 stars 60 forks source link

Sandbox fails to compile 'Transition' chapter #37

Closed adsick closed 9 months ago

adsick commented 9 months ago

Describe the bug A clear and concise description of what the bug is.

To Reproduce

  1. Go here: https://book.leptos.dev/async/12_transition.html
  2. wait a little
  3. "Setup failed 1/1"
  4. press at it to see logs

logs:

[200 ms] Resolving Feature dependencies for 'ghcr.io/codesandbox/devcontainer-features/codesandbox:0.1.4'...
[1239 ms] Start: Run: /usr/bin/podman build -t dev_container_feature_content_temp -f /tmp/devcontainercli-pitcher-host/container-features/0.50.2-1697618681031/Dockerfile.buildContent /tmp/devcontainercli-pitcher-host/container-features/0.50.2-1697618681031
STEP 1/2: FROM scratch
Error: creating build container: creating container: creating read-write layer with ID "66a2a70d456607e3a3efdce8e46450925fee9231f9c8dd8473167e1c4dee1244": write /project/.cache/podman-shared/overlay/66a2a70d456607e3a3efdce8e46450925fee9231f9c8dd8473167e1c4dee1244/link: no space left on device
{"outcome":"error","message":"Command failed: /usr/bin/podman build -t dev_container_feature_content_temp -f /tmp/devcontainercli-pitcher-host/container-features/0.50.2-1697618681031/Dockerfile.buildContent /tmp/devcontainercli-pitcher-host/container-features/0.50.2-1697618681031","description":"An error occurred building the container."}
Failed to run containers Command failed with exit code 1: devcontainer build --buildkit=never --docker-path=/usr/bin/podman --workspace-folder=/tmp/csb-devcontainers --image-name=localhost/codesandbox/dev-image:latest
gbj commented 9 months ago

Thanks very much! Sometimes the sandboxes die randomly. I've gotten this one restarted.

adsick commented 9 months ago

@gbj My pleasure. But now that I see the sanbox working I'm a little confused - I see "Loading..." when selecting different contacts, but the wording of this page makes me think that it must be displayed only once: When you select a new tab, it continues showing the current contact until the new data loads.

gbj commented 9 months ago

Oh yeah I can see how that can be confusing, especially the way the page is formatted. I've rearranged slightly so it should be more obvious.

Note that when you click each tab, the current contact continues showing. It doesn't fall back to the fallback prop, as it would with Suspense.

An additional "Loading..." message pops up due to this added piece.

move || if user_data.loading().get() {
    "Loading..."
} else {
    ""
}

The intention here is to continue showing the previous data (rather than flashing back to the fallback) while also showing some loading notification, so that users don't think the page is just frozen.