Skip to content

v3.37.1

Choose a tag to compare

@tjloong tjloong released this 14 Oct 04:28
· 6 commits to main since this release
2821c24

Follow-ups to WithUrlFilters from the v3.36.0 review (#100, #102).

Changed

  • Reserved query keys. page is reserved only on a component that uses WithPagination (every AtomComponent still does; WithoutUrlPagination does not change this, because Livewire still reads the page from the URL). tab is no longer reserved by name: atom writes no tab query key, and a host's own tab (#[Url] property or queryString entry) is still caught by the collision check.
  • A throwing isUrlFilterValid() is still refused on both paths (no 500), and is now logged with Log::warning at most once an hour per component + key + exception class. The log names the component, key, exception class and file:line, never the exception message or the value. When the cache can't remember (null store, or it throws), it falls back to once per process.

Fixed

  • A filter key that is also a custom paginator page name now throws a LogicException on the initial render. The two used to share one URL key, so ?search=ap seeded the page with a string and the next page click threw. The check runs on the initial render only, so a client-written paginators value can never 500 an update request; a page name registered only on a later request is not caught.