Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Page state store caching, preloading, and memory management #204

Merged
merged 18 commits into from
Oct 29, 2022

Commits on Oct 10, 2022

  1. feat: added eviction to the pss

    This should fix any memory blowouts (not leaks, just the storage of
    every single page's state can get a bit heavy), which occasionally
    occurred in development.
    arctic-hen7 committed Oct 10, 2022
    Configuration menu
    Copy the full SHA
    1c44ef1 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    6815503 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    f1fa672 View commit details
    Browse the repository at this point in the history

Commits on Oct 14, 2022

  1. Configuration menu
    Copy the full SHA
    81dd180 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3818b04 View commit details
    Browse the repository at this point in the history

Commits on Oct 17, 2022

  1. feat: prevented network requests for cached head/state

    After a page is fetched as a subsequent load, it won't be fetched again
    until the PSS fills up! This doesn't work with initial loads, since the
    head is pre-interpolated (and I don't want to increase the bundle size
    by doubling it up in a variable; reading from the HTML is unreliable
    since JS will likely have already modified it).
    arctic-hen7 committed Oct 17, 2022
    Configuration menu
    Copy the full SHA
    e5ebebe View commit details
    Browse the repository at this point in the history

Commits on Oct 22, 2022

  1. feat: added preloading infrastructure

    This has involved making `RenderCtx` hold much more data in the browser,
    like the error pages and render context, though this should make routing
    much lighter.
    arctic-hen7 committed Oct 22, 2022
    Configuration menu
    Copy the full SHA
    8e3762d View commit details
    Browse the repository at this point in the history
  2. fix: fixed longstanding clones in app route system

    Apparently, it's perfectly valid to pass the Sycamore scope through to
    the Sycamore router, which means we an access everything we need from
    the render context! (I reckon there'll be a performance improvement to
    moving the render context into a dedicated system though, beyond
    Sycamore's context.)
    arctic-hen7 committed Oct 22, 2022
    Configuration menu
    Copy the full SHA
    124fe85 View commit details
    Browse the repository at this point in the history

Commits on Oct 23, 2022

  1. chore: merged branch 'main' into feat-pss-improvements

    This was needed for the website fixes to make the tests pass.
    arctic-hen7 committed Oct 23, 2022
    Configuration menu
    Copy the full SHA
    0f3381b View commit details
    Browse the repository at this point in the history

Commits on Oct 26, 2022

  1. refactor: removed unnecessary if clause in fetching example

    I think this led to some confusion the other day, so it's clarified now.
    Just that we don't need `G::IS_BROWSER` if we're target-gating as well.
    arctic-hen7 committed Oct 26, 2022
    Configuration menu
    Copy the full SHA
    8d180f4 View commit details
    Browse the repository at this point in the history
  2. feat: created user-facing preload system

    This includes a new `core/preload` example.
    arctic-hen7 committed Oct 26, 2022
    Configuration menu
    Copy the full SHA
    42bba47 View commit details
    Browse the repository at this point in the history

Commits on Oct 28, 2022

  1. chore: merged branch 'main' into feat-pss-improvements

    This was for the #212 fix.
    arctic-hen7 committed Oct 28, 2022
    Configuration menu
    Copy the full SHA
    6b5ad1a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    227abe7 View commit details
    Browse the repository at this point in the history
  3. chore: merged branch 'main' into feat-pss-improvements

    This was for the #212 fix on `examples/.base/`.
    arctic-hen7 committed Oct 28, 2022
    Configuration menu
    Copy the full SHA
    db0c3c0 View commit details
    Browse the repository at this point in the history
  4. chore: merged branch 'main' into feat-pss-improvements

    And this one was for the #212 fix on the testing script!
    arctic-hen7 committed Oct 28, 2022
    Configuration menu
    Copy the full SHA
    e1ae26a View commit details
    Browse the repository at this point in the history

Commits on Oct 29, 2022

  1. chore: merged branch 'main' into feat-pss-improvements

    This was for the CI fixes.
    arctic-hen7 committed Oct 29, 2022
    Configuration menu
    Copy the full SHA
    0f466c4 View commit details
    Browse the repository at this point in the history
  2. feat: added initially loaded page caching

    This is achieved through an extra `<meta>` delimiter that denotes the
    end of the `<head>`, which should be pretty reliable at getting what the
    user intended.
    arctic-hen7 committed Oct 29, 2022
    Configuration menu
    Copy the full SHA
    2630ac1 View commit details
    Browse the repository at this point in the history
  3. feat: added feature to control initial page caching

    Advanced `<head>` manipulations *could* in rare cases lead to bugs, so
    the user can turn this off if necessary, and it's documented in the FAQ section.
    arctic-hen7 committed Oct 29, 2022
    Configuration menu
    Copy the full SHA
    981185e View commit details
    Browse the repository at this point in the history