Skip to content

Commit

Permalink
bump
Browse files Browse the repository at this point in the history
  • Loading branch information
LoicGrobol committed Dec 17, 2024
1 parent 63cbb10 commit 2c82c48
Show file tree
Hide file tree
Showing 8 changed files with 61 additions and 29 deletions.
25 changes: 25 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [

{
"name": "Python Debugger: Remote Attach",
"type": "debugpy",
"request": "attach",
"connect": {
"host": "localhost",
"port": 5678
},
"justMyCode": false,
// "pathMappings": [
// {
// "localRoot": "${workspaceFolder}",
// "remoteRoot": "."
// }
// ]
}
]
}
2 changes: 1 addition & 1 deletion requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ httpx[http2]
ipycytoscape
ipympl
Jinja2
jupyter_server!=2.11.0
jupyter_server != 2.11.0
jupyterlab
jupyterlab_rise
jupytext
Expand Down
4 changes: 3 additions & 1 deletion slides/08-html/examples/html_receiver.py
Original file line number Diff line number Diff line change
@@ -1,14 +1,16 @@
import itertools
import pathlib

from typing import Annotated

from fastapi import FastAPI, Form


app = FastAPI()


@app.post("/")
async def read_message(message: str = Form(...)):
async def read_message(message: Annotated[str, Form()]):
file_number = next(
i for i in itertools.count() if not pathlib.Path(f"{i}.txt").exists()
)
Expand Down
24 changes: 9 additions & 15 deletions slides/08-html/html-slides.py.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ jupyter:
extension: .md
format_name: markdown
format_version: '1.3'
jupytext_version: 1.16.0
jupytext_version: 1.16.5
kernelspec:
display_name: Python 3 (ipykernel)
language: python
Expand All @@ -18,10 +18,6 @@ jupyter:
<!-- LTeX: language=fr -->
<!-- #endregion -->

```python

```

<!-- #region slideshow={"slide_type": "slide"} -->
Cours 10 : Générer du HTML
==========================
Expand All @@ -30,10 +26,6 @@ Cours 10 : Générer du HTML

<!-- #endregion -->

```python slideshow={"slide_type": "-"}
from IPython.display import display
```

<!-- #region slideshow={"slide_type": "slide"} -->
## HTML

Expand All @@ -59,10 +51,13 @@ Concevoir
Assurez-vous qu'elle passe au [valideur du W3C](https://validator.w3.org)
- Une API avec FastAPI qui reçoit des requêtes de type POST venant de la page que vous avez créé et
qui crée pour chacune un nouveau fichier texte sur votre machine dont le contenu est le contenu du
champ de texte. Vous aurez besoin de regarder [dans sa
doc](https://fastapi.tiangolo.com/tutorial/request-forms/) comment on récupère dans FastAPI des
champ de texte. **Vous aurez besoin de regarder [dans sa
doc](https://fastapi.tiangolo.com/tutorial/request-forms/)** comment on récupère dans FastAPI des
données envoyées depuis un formulaire (malheureusement ce n'est pas du JSON ! Pour ça il faut
court-circuiter avec du JavaScript).
- **Attention** les champs de formulaire sont référencés par leur attribut `name` dans une un
envoi de formulaire via POST. Si cette phrase est complètement obscure pour vous, allez **lire
les docs**.
<!-- #endregion -->

<!-- #region slideshow={"slide_type": "slide"} -->
Expand Down Expand Up @@ -137,9 +132,7 @@ fichier et qui écrit dans ce fichier une page HTML qui contient une liste non-o
<!-- #endregion -->

```python
from typing import List

def make_ul(elems: List[str], path: str):
def make_ul(elems: list[str], path: str):
pass # À vous de jouer

# Pour tester
Expand Down Expand Up @@ -259,7 +252,8 @@ En plus dans aucun des deux cas on a le confort de
- Une gestion correcte par git
-

Ce qui serait **bien** ça serait de pouvoir écrire du HTML normalement et en Python de ne faire que changer les parties intéressantes.
Ce qui serait **bien** ça serait de pouvoir écrire du HTML normalement et en Python de ne faire que
changer les parties intéressantes.
<!-- #endregion -->

<!-- #region slideshow={"slide_type": "subslide"} -->
Expand Down
6 changes: 6 additions & 0 deletions slides/08-html/rise.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
/* This to fix the code size in RISE slideshows. Unstable, untested etc. And must be present in
every directory where there are slide notebooks */

.rise-enabled .cm-editor{
font-size: 1.75rem;
}
5 changes: 2 additions & 3 deletions slides/08-html/solutions.py.md
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ async def read_message(message: str = Form(...)):
Bien entendu, vérifiez que votre HTML passe au [valideur du W3C](https://validator.w3.org).

```python
def make_ul(elems: List[str], path: str):
def make_ul(elems: list[str], path: str):
above = """<!DOCTYPE html>
<html lang="en">
<head>
Expand Down Expand Up @@ -126,7 +126,6 @@ print(open("local/moody_bands.html").read())
```python
# %load examples/echo_list_api.py
from typing import List
from fastapi import FastAPI
from pydantic import BaseModel
from fastapi.responses import HTMLResponse
Expand All @@ -135,7 +134,7 @@ app = FastAPI()


class InputData(BaseModel):
lines: List[str]
lines: list[str]


@app.post("/", response_class=HTMLResponse)
Expand Down
18 changes: 9 additions & 9 deletions slides/09-debug/debug-slides.py.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ jupyter:
extension: .md
format_name: markdown
format_version: '1.3'
jupytext_version: 1.16.0
jupytext_version: 1.16.5
kernelspec:
display_name: Python 3 (ipykernel)
language: python
Expand Down Expand Up @@ -322,7 +322,7 @@ On va utiliser [Ruff](https://pypi.org/project/ruff/), pensez à l'installer ave
avant de lancer la cellule suivante.

```python
!ruff lintme.py
!ruff check lintme.py
```

[`lintme.py`](lintme.py) contient les fonctions qu'on a défini précédemment, allez voir ce qu'il y a
Expand Down Expand Up @@ -414,7 +414,7 @@ Voici un fichier moche
Est-ce que c'est un problème ? Oui. Ruff vous le dira

```python
!ruff --select "E" ugly.py
!ruff check --select "E" ugly.py
```
<!-- #endregion -->

Expand Down Expand Up @@ -526,31 +526,31 @@ Ah, c'est bon d'avoir du code qui marche
<!-- #endregion -->

```python
display(common_neighbours("moi", ancor_t2i, ancor_i2t, ancor_cooc))
common_neighbours("moi", ancor_t2i, ancor_i2t, ancor_cooc)
```

<!-- #region slideshow={"slide_type": "subslide"} -->
Enfin, on a fini, la fonction marche, on peut l'appliquer à ce qu'on veut
<!-- #endregion -->

```python
display(common_neighbours("bonjour", ancor_t2i, ancor_i2t, ancor_cooc))
common_neighbours("bonjour", ancor_t2i, ancor_i2t, ancor_cooc)
```

```python slideshow={"slide_type": "subslide"}
display(common_neighbours("Russie", ancor_t2i, ancor_i2t, ancor_cooc))
common_neighbours("Russie", ancor_t2i, ancor_i2t, ancor_cooc)
```

<!-- #region slideshow={"slide_type": "fragment"} -->
Euh
<!-- #endregion -->

```python slideshow={"slide_type": "subslide"}
display(common_neighbours("Orléans", ancor_t2i, ancor_i2t, ancor_cooc))
common_neighbours("Orléans", ancor_t2i, ancor_i2t, ancor_cooc)
```

```python
display(common_neighbours("médecin", ancor_t2i, ancor_i2t, ancor_cooc))
common_neighbours("médecin", ancor_t2i, ancor_i2t, ancor_cooc)
```

<!-- #region slideshow={"slide_type": "fragment"} -->
Expand Down Expand Up @@ -597,7 +597,7 @@ code en particulier ça va être compliqué à gérer.
<!-- #region slideshow={"slide_type": "subslide"} -->
### Pour les grand⋅e⋅s

On va débugger dans [Visual Studio Code](https://code.visualstudio.com/).
On va débugger dans [Visual Studio Code](https://code.visualstudio.com/) avec `debugpy`.

(On regarde le tableau, désolé pour celleux qui ne sont pas là)
<!-- #endregion -->
Expand Down
6 changes: 6 additions & 0 deletions slides/09-debug/rise.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
/* This to fix the code size in RISE slideshows. Unstable, untested etc. And must be present in
every directory where there are slide notebooks */

.rise-enabled .cm-editor{
font-size: 1.75rem;
}

0 comments on commit 2c82c48

Please sign in to comment.