Skip to content

docs: Update Offset Pagination With SQLAlchemy example #4144

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

Open
wants to merge 52 commits into
base: v3.0
Choose a base branch
from

Conversation

ames0k0
Copy link

@ames0k0 ames0k0 commented Apr 24, 2025

Add missing sync_to_thread=False argument
Also fixed the slice method arguments

Description

slice context

# get_items(limit=1, offset=3) -> slice(start=3, stop=1)
#
# sqlalchemy/sql/util.py
limit_clause = _offset_or_limit_clause(stop - start)
# sqlite
select * from person limit -2 offset 3;
-- ...

# postgres
select * from person limit -2 offset 3;
-- LIMIT must not be negative

Closes

#4141

JacobCoffee and others added 30 commits April 18, 2025 16:21
* Trigger documentation build

* Trigger documentation build

* docs: update to v3 style

* docs: move some things to litestar.dev repo, change versioning, add environment tag

* docs: update landing page

* chore: update lockfile

* chore: add AA upper constraint

* fix(docs): re-colonize

* docs: enable sphinx-togglebutton

* docs: use current year var

* deps: update deps

* fix(docs): do not link __name__ for now

* fix(docs): use correct link to page

---------

Co-authored-by: Peter Schutt <peter.github@proton.me>
* Remove deprecated StaticFiles and StaticFilesConfig
* remove special casing of static files app from handlers/router
* remove outdated docs sections
* Add what's new section
* Rename tests for consistency
This PR changes behavior of parameters that are typed in a union with `None`. Prior behavior was to implicitly default their value to `None` if a value wasn't provided making an apparently non-optional parameter (i.e., no declared default) actually optional. Surprising behavior at best, dangerous at worst.

New behavior is to throw a client error when a parameter without a default is not provided.
* refactor: removes deprecated OpenAPIController

This PR removes all deprecated elements of OpenAPIConfig and the OpenAPIController, removes any obsolete tests and refactors tests that were parametrized to test both OpenAPIController and the router-based approach.

* docs: What's new entry

* Update docs/usage/openapi/ui_plugins.rst

Co-authored-by: Jacob Coffee <jacob@z7x.org>

* Update litestar/openapi/config.py

* fix: remove whitespace

* fix: import table formatting

(i hope)

---------

Co-authored-by: Jacob Coffee <jacob@z7x.org>
…e` (litestar-org#3393)

* Remove 'app' parameter from `.to_asgi_response`
Remove the deprecated utility functions, `get_litestar_scope_state``, ``set_litestar_scope_state``, ``delete_litestar_scope_state``, and ``is_sync_or_async_generator``.
…3386)

* remove handler names
* Remove option handler creation from HTTPRoute
* Remove methods attribute from BaseRoute
* Move kwargs model to handlers and creation to on_registration
* Store kwargs model on handlers instead of routes
* Simplify HTTPRoute route_handler_map creation
* Simplify Router.route_handler_method_map
* Relax typing of HTTPRoute
* Move handling logic to route handlers
* Remove scope_type
* Don't pass route to HTTPRouteHandler during handling
* Don't pass scope to handle methods
* Resolve and establish connections in routes; Only pass connections to handlers

---------

Co-authored-by: Jacob Coffee <jacob@z7x.org>
Co-authored-by: Peter Schutt <peter.github@proton.me>
…deprecated params of internal `ExceptionHandlerMiddleware` (litestar-org#3435)

* refactor!: Remove deprecated `app` param of `Response.to_asgi_response` (litestar-org#3393)
* Remove 'app' parameter from `.to_asgi_response`
* Remove debug param
* Remove exception_handlers param
* Remove litestar.middleware.exceptions
Port parse_values_from_connection_kwargs changes
provinzkraut and others added 19 commits April 18, 2025 16:22
…es (litestar-org#4034)

remove 'body' param from streaming and file responses
Remove polyfactory from default dependencies
Remove litestar-htmx from default dependencies
fix: update ruff TCH rule to TC
Add missing `sync_to_thread=False` argument
Also fixed the `slice` method arguments
@ames0k0 ames0k0 requested review from a team as code owners April 24, 2025 22:40
@github-actions github-actions bot added area/docs This PR involves changes to the documentation size: small type/docs pr/external Triage Required 🏥 This requires triage labels Apr 24, 2025
Copy link
Member

@provinzkraut provinzkraut left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/docs This PR involves changes to the documentation pr/external size: small Triage Required 🏥 This requires triage type/docs
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants