Project

General

Profile

Développement #97932

passer à django 4.2

Added by Valentin Deniaud about 1 month ago. Updated 10 days ago.

Status:
Solution déployée
Priority:
Normal
Target version:
-
Start date:
31 October 2024
Due date:
% Done:

0%

Estimated time:
Patch proposed:
No
Planning:
No

Description

Toutes les briques sont OK, c'est le moment (probablement le même patch à faire que #74867)


Related issues

Related to Publik Installation Développeur - Bug #97959: Django 4.2 : "Unknown command: 'migrate_schemas'Fermé31 October 2024

Actions
Related to Welco - Développement #97966: passer à django 4Solution déployée31 October 2024

Actions

History

#1

Updated by Gael Pasgrimaud about 1 month ago

J'en profiterai bien pour proposer de changer un peu la logique. En l'état seul la version de django est configurable. Hors on a parfois d'autres paquet un peu sensible ou on aimerait avoir une version fixe (c'est bien ce qu'on fait dans les noxfile)

Ma proposition serait d'utiliser des requirements.txt par version:

files/
   3.2/requirements.txt (qui contiendrai django==3.2 et autres DRF)
   4.2/requirements.txt (qui contiendrai django==4.2 et autres DRF)

On copie le fichier dans le venv. Et ici on rajoute "-r {{ chemin_ver_le_bon_requirements }}" https://git.entrouvert.org/entrouvert/publik-devinst/src/branch/main/tasks/install_source.yml#L14

Possiblement, on pourrait peut-être même avoir des venv différent par version. ~/envs/publik-env-py3/ deviendrai un symlink vers ~/envs/publik-env-py3-django-3.x/

En hyper bonus, avoir des env par version de python / django ~/envs/publik-env-py3.11-django-3.x/ (avant j'utilisais beaucoup https://github.com/pyenv/pyenv pour avoir plein d’interpréteurs et anticiper les montées de versions)

Je penses qu'à terme ça pourrai simplifier la bascule d'environement d'une version à l'autre. Surtout si cette histoire de symlink passe sans accros (pas certain)

#2

Updated by Valentin Deniaud about 1 month ago

Gael Pasgrimaud a écrit :

J'en profiterai bien pour proposer de changer un peu la logique.

Le but c'est de faire vite pour la montée de version django sur laquelle on a pris du retard, un patch d'une ligne ici me semblerait satisfaire cet objectif.

Je n'ai aucun avis sur l'idée (perso jamais eu besoin de jongler entre les versions dans devinst).

#3

Updated by Emmanuel Cazenave about 1 month ago

Gael Pasgrimaud a écrit :

En l'état seul la version de django est configurable [...je vais]

Je ne suis pas sûr de bien comprendre quel problème tu cherches à résoudre, j'ai besoin d'un exemple concret. Aussi le requirements.txt par version de django me perd un peu parce qu'on ne cherche pas vraiment à maintenir la compat avec plus plusieurs version de django en même temps, on ne fait que aller de l'avant (dans les versions).

Je vais me permettre de faire le patch d'une ligne attendu ici, on peut discuter de ta proposition dans un ticket dédié.

#4

Updated by Robot Gitea about 1 month ago

  • Status changed from Nouveau to En cours
  • Assignee set to Emmanuel Cazenave

Emmanuel Cazenave (ecazenave) a ouvert une pull request sur Gitea concernant cette demande :

#5

Updated by Gael Pasgrimaud about 1 month ago

Emmanuel Cazenave a écrit :

Je vais me permettre de faire le patch d'une ligne attendu ici, on peut discuter de ta proposition dans un ticket dédié.

Ca marche. Je vais mûrir le truc et je ferai un ticket

#6

Updated by Emmanuel Cazenave about 1 month ago

  • Related to Bug #97959: Django 4.2 : "Unknown command: 'migrate_schemas' added
#7

Updated by Benjamin Dauvergne about 1 month ago

#8

Updated by Robot Gitea 27 days ago

  • Status changed from En cours to Solution proposée
#9

Updated by Robot Gitea 27 days ago

  • Status changed from Solution proposée to Solution validée

Gael Pasgrimaud (gpasgrimaud) a approuvé une pull request sur Gitea concernant cette demande :

#10

Updated by Robot Gitea 27 days ago

  • Status changed from Solution validée to Résolu (à déployer)

Emmanuel Cazenave (ecazenave) a mergé une pull request sur Gitea concernant cette demande :

#11

Updated by Emmanuel Cazenave 10 days ago

  • Status changed from Résolu (à déployer) to Solution déployée

Also available in: Atom PDF