Skip to content

refactor(sqlalchemy): move deprecated contrib.sqlalchemy module to plugins.sqlalchemy #4069

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 78 commits into
base: v3.0
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
78 commits
Select commit Hold shift + click to select a range
d6e6eee
docs!: update to v3 style (#3324)
JacobCoffee Apr 10, 2024
4a1cfe3
refactor!: Remove deprecated `StaticFileConfig` (#3357)
provinzkraut Apr 10, 2024
a1a4368
feat!: no implicit default for optional params (#3361)
peterschutt Apr 10, 2024
ac3031d
refactor: removes deprecated OpenAPIController (#3360)
peterschutt Apr 10, 2024
2977223
refactor!: Remove deprecated `app` param of `Response.to_asgi_respons…
provinzkraut Apr 15, 2024
1d094ca
refactor!: Remove deprecated utils (#3394)
peterschutt Apr 15, 2024
0b3b126
refactor(routing)!: Refactor routes and route handlers (#3386)
provinzkraut Apr 21, 2024
5924dba
docs!: update to v3 style (#3324) (#3432)
JacobCoffee Apr 27, 2024
464b71c
Fix rebase issue
provinzkraut Apr 27, 2024
382edae
Resolve merge conflicts
provinzkraut May 25, 2024
b556c69
fix: Port CVE-2024-32982 path traversal fix to v3.0 (#3524)
provinzkraut May 25, 2024
7e4cf3c
feat!: Make route handlers functional decorators (#3436)
provinzkraut May 25, 2024
aa699a2
Fix merge artifact
provinzkraut May 26, 2024
d677c97
test: Remove test for warnings when subclassing route handler decorat…
provinzkraut May 26, 2024
8e599cc
fix merge artifacts
provinzkraut Jun 15, 2024
3e3441c
fix(typing): "Fix" typing for `Controller.as_router` (#3571)
provinzkraut Jun 15, 2024
3e56f3f
feat!: Remove deprecated `litestar.middleware.exceptions` module and …
provinzkraut Jun 15, 2024
95dccdb
feat(logging): always log exceptions by default (#3574)
jderrien Jun 16, 2024
123dbb6
chore: Port fix for #3593 to v3 (#3638)
provinzkraut Jul 21, 2024
7682720
resolve http handler conflicts
provinzkraut Aug 25, 2024
c2d23d8
formatting
provinzkraut Aug 25, 2024
d64ac31
feat: Update MessagPack media type (#3732)
provinzkraut Sep 14, 2024
04e9bec
Fix conflicts
provinzkraut Sep 15, 2024
124d58b
fix conflicts
provinzkraut Nov 20, 2024
7e6b127
conflict resolution
provinzkraut Nov 24, 2024
4e99656
fix conflict
provinzkraut Nov 29, 2024
085ab04
fix ws streaming
provinzkraut Dec 12, 2024
4be2304
docs: fix wording
JacobCoffee Jan 10, 2025
86ea3ab
docs: fix caption
JacobCoffee Jan 10, 2025
d47417c
fix dependency issue
provinzkraut Jan 11, 2025
4a1aecd
formatting
provinzkraut Jan 15, 2025
a3065e1
typing fixes
provinzkraut Jan 15, 2025
ca87f9d
feat!: static handler configuration (#3900)
provinzkraut Jan 16, 2025
f79562d
docs(v3): fix some doc issues (#4012)
provinzkraut Feb 19, 2025
7502702
feat(core)!: drop Python 3.8 support (#4010)
provinzkraut Feb 23, 2025
342cb34
some fixes after rebasing 'main'
provinzkraut Feb 25, 2025
7dbbbcc
feat(plugins)!: Remove `OpenAPISchemaPluginProtocol` (#4026)
provinzkraut Feb 25, 2025
dfe3beb
feat(plugins)!: Remove `CLIPluginProtocol` (#4027)
provinzkraut Feb 26, 2025
fc5592b
Linting fixes
provinzkraut Feb 26, 2025
5d42be9
feat(plugins): Remove deprecated `SerializationPluginProtocol` (#4028)
provinzkraut Feb 27, 2025
3e2fab2
feat: Remove starlette middleware compat (#4030)
provinzkraut Feb 27, 2025
508b1bc
lock update
provinzkraut Feb 28, 2025
b443e34
feat!: Remove deprecated `body` param from streaming and file respons…
provinzkraut Feb 28, 2025
89f9223
feat: v3 - Make `polyfactory` an optional dependency (#4062)
provinzkraut Mar 21, 2025
71412f9
docs(v3): fix build error (#4065)
provinzkraut Mar 22, 2025
84f2f93
feat: v3 - Move `litestar-htmx` to a package extra (#4063)
provinzkraut Mar 22, 2025
83f7890
feat(v3): Move `pyyaml` default dependency to `litestar[yaml]` extra …
provinzkraut Mar 22, 2025
6514b71
feat: v3 - new file system implementation (#4056)
provinzkraut Mar 22, 2025
0d3fc00
fix: change ruff TCH to TC (#4077)
adhtruong Mar 29, 2025
b18cec3
chore: upgrade ruff and apply latest linting config (#4115)
cofin Apr 13, 2025
43d13f1
remove deprecated contrib.sqlalchemy module
provinzkraut Mar 24, 2025
9d6f151
fix remaining things
provinzkraut Mar 24, 2025
5ec18b5
remove deprecated imports
provinzkraut Mar 24, 2025
6dafcb4
fix docs config
provinzkraut Mar 24, 2025
cea2108
fix docs config
provinzkraut Mar 24, 2025
7b24451
feat: lazy load
cofin Apr 12, 2025
cf74931
fix: linting
cofin Apr 12, 2025
66f934a
feat: remove contrib
cofin Apr 12, 2025
c5ff86c
fix: remove pagination ref
cofin Apr 12, 2025
0aaefed
fix: reference
cofin Apr 12, 2025
5deffab
fix: doc build
cofin Apr 13, 2025
ff5d895
fix: linting
cofin Apr 13, 2025
e47e821
fix: reference
cofin Apr 13, 2025
b71f4a1
fix: another one
cofin Apr 13, 2025
ecc8952
chore: tests
cofin Apr 13, 2025
f1b38d9
fix: more tests
cofin Apr 13, 2025
d45d1ad
chore: bump deps
cofin Apr 13, 2025
6e86013
fit: linting
cofin Apr 13, 2025
a198a31
chore: backend fix
cofin Apr 13, 2025
be0c415
fix: revert update
cofin Apr 13, 2025
61f1ded
chore: updated test
cofin Apr 13, 2025
51c9bbe
fix: revert change
cofin Apr 13, 2025
80459ca
fix: ignore
cofin Apr 13, 2025
dfc3d35
fix: revert ruff changes
cofin Apr 13, 2025
7e2b9b6
fix: test coverage
cofin Apr 15, 2025
928acee
hmm...
cofin Apr 15, 2025
76b7347
fix: updated string
cofin Apr 15, 2025
e838590
feat: re-enable flake
cofin Apr 15, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
16 changes: 6 additions & 10 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ on:
push:
branches:
- main
- v1.51

env:
UV_LOCKED: 1
Expand All @@ -19,7 +18,7 @@ jobs:

- uses: actions/setup-python@v5
with:
python-version: "3.8"
python-version: "3.9"

- name: Install Pre-Commit
run: python -m pip install pre-commit
Expand All @@ -41,8 +40,7 @@ jobs:

- uses: actions/setup-python@v5
with:
python-version: "3.8"
allow-prereleases: true
python-version: "3.9"

- name: Install uv
uses: astral-sh/setup-uv@v5
Expand All @@ -60,8 +58,7 @@ jobs:

- uses: actions/setup-python@v5
with:
python-version: "3.8"
allow-prereleases: true
python-version: "3.9"

- name: Install uv
uses: astral-sh/setup-uv@v5
Expand All @@ -79,8 +76,7 @@ jobs:

- uses: actions/setup-python@v5
with:
python-version: "3.8"
allow-prereleases: false
python-version: "3.9"

- name: Install uv
uses: astral-sh/setup-uv@v5
Expand All @@ -96,10 +92,10 @@ jobs:
strategy:
fail-fast: true
matrix:
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"]
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
uses: ./.github/workflows/test.yml
with:
coverage: ${{ (matrix.python-version == '3.12' || matrix.python-version == '3.8') }}
coverage: ${{ (matrix.python-version == '3.12' || matrix.python-version == '3.9') }}
python-version: ${{ matrix.python-version }}

# add an aggregate step here to check if any of the steps of the matrix 'test' job
Expand Down
6 changes: 3 additions & 3 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ default_language_version:
python: "3.12"
repos:
- repo: https://github.com/compilerla/conventional-pre-commit
rev: v3.6.0
rev: v4.0.0
hooks:
- id: conventional-pre-commit
stages: [commit-msg]
Expand All @@ -24,13 +24,13 @@ repos:
- id: unasyncd
additional_dependencies: ["ruff"]
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: "v0.8.1"
rev: "v0.11.5"
hooks:
- id: ruff
args: ["--fix"]
- id: ruff-format
- repo: https://github.com/codespell-project/codespell
rev: v2.3.0
rev: v2.4.1
hooks:
- id: codespell
exclude: "tests/openapi/typescript_converter/test_converter|README.md"
Expand Down
8 changes: 4 additions & 4 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -136,16 +136,16 @@ docs-clean: ## Dump the existing built docs

docs-serve: docs-clean ## Serve the docs locally
@echo "=> Serving documentation"
uv run --python 3.12 sphinx-autobuild docs docs/_build/ -j auto --watch litestar --watch docs --watch tests --watch CONTRIBUTING.rst --open-browser --port=0
uv run --isolated --python 3.12 sphinx-autobuild docs docs/_build/ -j auto --watch litestar --watch docs --watch tests --watch CONTRIBUTING.rst --open-browser --port=0

docs: docs-clean ## Dump the existing built docs and rebuild them
@echo "=> Building documentation"
@uv run --python 3.12 sphinx-build -M html docs docs/_build/ -E -a -j auto -W --keep-going
@uv run --isolated --python 3.12 sphinx-build -M html docs docs/_build/ -E -a -j auto -W --keep-going

.PHONY: docs-linkcheck
docs-linkcheck: ## Run the link check on the docs
@uv run --python 3.12 sphinx-build -b linkcheck ./docs ./docs/_build -D linkcheck_ignore='http://.*','https://.*'
@uv run --isolated --python 3.12 sphinx-build -b linkcheck ./docs ./docs/_build -D linkcheck_ignore='http://.*','https://.*'

.PHONY: docs-linkcheck-full
docs-linkcheck-full: ## Run the full link check on the docs
@uv run --python 3.12 sphinx-build -b linkcheck ./docs ./docs/_build -D linkcheck_anchors=0
@uv run --isolated --python 3.12 sphinx-build -b linkcheck ./docs ./docs/_build -D linkcheck_anchors=0
Binary file added docs/_static/favicon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions docs/_static/favicon.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions docs/_static/litestar-sphinx-theme.css

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

49 changes: 49 additions & 0 deletions docs/_static/litestar-theme.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
function initDropdowns() {
const dropdownToggles = document.querySelectorAll(".st-dropdown-toggle")

const dropdowns = [...dropdownToggles].map(toggleEl => ({
toggleEl,
contentEL: toggleEl.parentElement.querySelector(".st-dropdown-menu")
}))

const close = (dropdown) => {
const {toggleEl, contentEL} = dropdown
toggleEl.setAttribute("aria-expanded", "false")
contentEL.classList.toggle("hidden", true)
}

const closeAll = () => dropdowns.forEach(close)

const open = (dropdown) => {
closeAll()
dropdown.toggleEl.setAttribute("aria-expanded", "true")
dropdown.contentEL.classList.toggle("hidden", false)
const boundaries = [dropdown.contentEL, ...dropdownToggles]
const clickOutsideListener = (event) => {
const target = event.target
if (!target) return

if (!boundaries.some(b => b.contains(target))) {
closeAll()
document.removeEventListener("click", clickOutsideListener)
}

}
document.addEventListener("click", clickOutsideListener)
}


dropdowns.forEach(dropdown => {
dropdown.toggleEl.addEventListener("click", () => {
if (dropdown.toggleEl.getAttribute("aria-expanded") === "true") {
close(dropdown)
} else {
open(dropdown)
}
})
})
}

window.addEventListener("DOMContentLoaded", () => {
initDropdowns()
})
Binary file added docs/_static/logo-dark.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/_static/logo-light.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 3 additions & 3 deletions docs/_static/style.css
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,9 @@
color: #f55353;
}

p {
font-size: 1.1em;
}
/*p {*/
/* font-size: 1.1em;*/
/*}*/

html[data-theme="dark"] .mermaid svg {
background-color: white;
Expand Down
16 changes: 16 additions & 0 deletions docs/_static/tables/framework-comparison.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
Feature,Litestar,FastAPI,Starlette,Sanic,Quart
OpenAPI,:octicon:`check`,:octicon:`check`,-,-,-
Automatic API documentation,"Swagger, ReDoc, Stoplight Elements","Swagger, ReDoc",-,-,-
Data validation,:octicon:`check`,:octicon:`check`,-,-,-
Dependency Injection,:octicon:`check`,:octicon:`check`,-,:octicon:`check`,-
Class based routing,:octicon:`check`,Extension,:octicon:`check`,:octicon:`check`,:octicon:`check`
ORM integration,"SQLAlchemy, Tortoise, Piccolo",-,-,-,Extension
Templating,"Jinja, Mako",Jinja,Jinja,Jinja,Jinja
MessagePack,:octicon:`check`,-,-,-,-
CORS,:octicon:`check`,:octicon:`check`,:octicon:`check`,:octicon:`check`,Extension
CSRF,:octicon:`check`,-,-,-,-
Rate-limiting,:octicon:`check`,-,-,Extension,-
JWT,:octicon:`check`,-,-,-,-
Sessions,:octicon:`check`,Client-side,Client-side,-,Client-side
Authentication,JWT / Session based,-,-,-,-
Caching,:octicon:`check`,-,-,-,-
16 changes: 9 additions & 7 deletions docs/_static/versioning.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,15 @@ const addVersionWarning = (currentVersion, latestVersion) => {
const container = document.createElement("div");
container.id = "version-warning";

const warningText = document.createElement("span");
warningText.textContent = `You are viewing the documentation for ${
currentVersion === "dev" ||
parseInt(currentVersion) > parseInt(latestVersion)
? "a preview"
: "an outdated"
} version of Litestar.`;
const isPreviewVersion = (version) => {
const previewVersions = ['dev', 'develop', 'main', '3-dev'];
return previewVersions.includes(version) || parseInt(version) > parseInt(latestVersion);
};

const warningText = document.createElement("span");
warningText.textContent = `You are viewing the documentation for ${
isPreviewVersion(currentVersion) ? "a preview" : "an outdated"
} version of Litestar.`;
container.appendChild(warningText);

const latestLink = document.createElement("a");
Expand Down
Loading
Loading