Vue d'ensemble

Sanic 25.3, publie le 31 mars 2025, introduit un REPL ameliore et le support d'objets personnalises dans le contexte de l'application.

Fonctionnalites principales

REPL ameliore

Le nouveau REPL interactif permet d'inspecter l'application en cours d'execution, de tester des routes et d'executer du code dans le contexte du serveur.

python
from sanic import Sanic, json

app = Sanic('MyApp')

@app.get('/')
async def hello(request):
    return json({'message': 'Bonjour'})

# Lancer avec REPL : sanic app:app --repl

Objets personnalises

Il est desormais possible d'attacher des objets personnalises au contexte de l'application via app.ctx, avec un typage fort.

python
from sanic import Sanic, json
from dataclasses import dataclass

@dataclass
class AppContext:
    db_url: str = 'sqlite:///app.db'

app = Sanic('MyApp', ctx=AppContext())

@app.get('/config')
async def config(request):
    return json({'db': request.app.ctx.db_url})

Sources