Projet

Général

Profil

Development #68025

Publik - Project management #64274: montée de version django (→ 3.2 LTS)

fonctionner avec django 3.2

Ajouté par A. Berriot il y a plus d'un an. Mis à jour il y a plus d'un an.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Catégorie:
-
Version cible:
-
Début:
08 août 2022
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non
Tags:

Description

Cf tache parente


Fichiers

Révisions associées

Révision 7c4ea510 (diff)
Ajouté par A. Berriot il y a plus d'un an

enable django 3.2 testing in tox file (#68025)

Révision 963871ce (diff)
Ajouté par A. Berriot il y a plus d'un an

fix Django 3.2 related test failures (#68025)

Historique

#1

Mis à jour par A. Berriot il y a plus d'un an

#2

Mis à jour par A. Berriot il y a plus d'un an

Pas grand chose à signaler, j'ai du toucher un tout petit peu à certains appels à l'ORM, et malheureusement il y a un changement d'ordering dans les résultats d'une requête qui cassait le test dans test_events_multiple_agendas.py

J'ai considéré que l'ordering n'était pas important et je me suis contentée de vérifier l'équivalence via des set, si l'ordering des overlaps est important en termes d'API, il va falloir que je trouve une solution pour le forcer au niveau de l'ORM

#3

Mis à jour par Frédéric Péters il y a plus d'un an

  • Statut changé de Solution proposée à Solution validée

Sur les intitulés des commits, on sera plutôt sur la forme "enable django 3.2 testing in tox file (#68025)" (pas de majuscule au début, impératif) / "fix Django 3.2 related test failures (#68025)".

Sur le code, ok; peut-être juste ajouter un commentaire derrière assert len(ctx.captured_queries) in (5, 6) pour dire que 5 est la valeur en django 3.2, pour plus facilement retrouver ce code quand on voudra nettoyer une fois basculés vers 3.2.

Pour ma culture perso, les output_field, ça vient de ce changement :

Value() expression now automatically resolves its output_field to the appropriate Field subclass based on the type of its provided value for bool, bytes, float, int, str, datetime.date, datetime.datetime, datetime.time, datetime.timedelta, decimal.Decimal, and uuid.UUID instances. As a consequence, resolving an output_field for database functions and combined expressions may now crash with mixed types when using Value(). You will need to explicitly set the output_field in such cases.
­— https://docs.djangoproject.com/en/3.2/releases/3.2/#models

#5

Mis à jour par A. Berriot il y a plus d'un an

  • Statut changé de Solution proposée à Résolu (à déployer)
commit 963871ce43e1d21f98a4e1960b5c834b2cfbc54f
Author: Agate Berriot <aberriot@entrouvert.com>
Date:   Tue Aug 9 12:17:34 2022 +0200

    fix Django 3.2 related test failures (#68025)

commit 7c4ea5104ad753a051cae0f7e8b64e1dd5133bf4
Author: Agate Berriot <aberriot@entrouvert.com>
Date:   Tue Aug 9 09:59:17 2022 +0200

    enable django 3.2 testing in tox file (#68025)
#6

Mis à jour par A. Berriot il y a plus d'un an

Frédéric Péters a écrit :

Sur les intitulés des commits, on sera plutôt sur la forme "enable django 3.2 testing in tox file (#68025)" (pas de majuscule au début, impératif) / "fix Django 3.2 related test failures (#68025)".

Sur le code, ok; peut-être juste ajouter un commentaire derrière assert len(ctx.captured_queries) in (5, 6) pour dire que 5 est la valeur en django 3.2, pour plus facilement retrouver ce code quand on voudra nettoyer une fois basculés vers 3.2.

Effectivement, j'ai amendé les commits pour intégrer ces changements (et mergé dans la foulée) :)

#7

Mis à jour par Valentin Deniaud il y a plus d'un an

Après la bataille, mais j'en profite quand même pour noter

Frédéric Péters a écrit :

Sur les intitulés des commits

Sur les commits en eux-mêmes, on préfère un commit par changement de Django, cf tous les tickets de #49998.

Et sur get_proper_html_str, je trouve qu'on gagnerait à importer django.utils.html.escape et avoir juste escape(chaine_lisible) in resp.text.

#8

Mis à jour par A. Berriot il y a plus d'un an

Valentin Deniaud a écrit :

Après la bataille, mais j'en profite quand même pour noter

Frédéric Péters a écrit :

Sur les intitulés des commits

Sur les commits en eux-mêmes, on préfère un commit par changement de Django, cf tous les tickets de #49998.

Noté

Et sur get_proper_html_str, je trouve qu'on gagnerait à importer django.utils.html.escape et avoir juste escape(chaine_lisible) in resp.text.

Je trouve aussi, mais il y a des tests dans tous les projets qui utilisent ce genre de constructions, ça serait plus intéressant de s'occuper de ça dans un ticket dédié AMHA

#9

Mis à jour par Transition automatique il y a plus d'un an

  • Statut changé de Résolu (à déployer) à Solution déployée
#10

Mis à jour par Transition automatique il y a plus d'un an

Automatic expiration

Formats disponibles : Atom PDF