Project

General

Profile

Bug #36819

build passerelle cassé

Added by Paul Marillonnet 13 days ago. Updated 8 days ago.

Status:
Solution déployée
Priority:
Normal
Assignee:
-
Target version:
-
Start date:
09 Oct 2019
Due date:
% Done:

0%

Patch proposed:
Yes
Planning:
No

0001-prevent-unassigned-params-variable-reference-36819.patch View (866 Bytes) Paul Marillonnet, 09 Oct 2019 08:02 PM

Associated revisions

Revision 21e45534 (diff)
Added by Frédéric Péters 12 days ago

misc: limit to jsonschema < 3.1 (#36819)

History

#1 Updated by Paul Marillonnet 13 days ago

#2 Updated by Frédéric Péters 13 days ago

Si params est vide là c'est qu'il y a un TypeError levé par self.get_params, ce qui ne devrait pas arriver et cache autre chose.

#3 Updated by Frédéric Péters 13 days ago

Et comme sans changements les builds précédents étaient ok, le jeu est de regarder aux dépendances.

#4 Updated by Frédéric Péters 13 days ago

Et donc, jsonschema,

  File "/home/fred/src/eo/venv1.11/local/lib/python2.7/site-packages/jsonschema/_validators.py", line 200, in pattern
    not js_regex.compile(patrn).search(instance)
  File "/home/fred/src/eo/venv1.11/local/lib/python2.7/site-packages/js_regex/_impl.py", line 39, in compile
    raise TypeError("pattern={!r} must be a unicode string".format(pattern))
TypeError: pattern='^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}$' must be a unicode string

#5 Updated by Frédéric Péters 13 days ago

Et donc,

--- a/setup.py
+++ b/setup.py
@@ -103,7 +103,7 @@ setup(name='passerelle',
             'lxml',
             'python-dateutil',
             'Pillow',
-            'jsonschema',
+            'jsonschema<3.1',
             'zeep < 3.0',
             'pycrypto',
             'unidecode',

+ un ticket pour qu'il faudrait fonctionner avec la dernière version de jsonschema aussi.

+ peut-être un ticket sur jsonschema pour qu'il lève aussi ValidationError sur cette erreur ? ou l'attraper indépendamment, genre ?

--- a/passerelle/views.py
+++ b/passerelle/views.py
@@ -340,6 +340,8 @@ class GenericEndpointView(GenericConnectorMixin, SingleObjectMixin, View):
                     validate(data, json_schema)
                 except ValidationError as e:
                     raise APIError(e.message, http_status=400)
+                except TypeError as e:
+                    raise APIError(e.message, http_status=500)
                 d['post_data'] = data

         return d

#6 Updated by Frédéric Péters 12 days ago

J'ai poussé un < 3.1 dans le dépôt histoire de rétablir les builds.

#8 Updated by Frédéric Péters 12 days ago

Et il y a depuis eu jsonschema 3.1.1 pour inclure ce revert.

#9 Updated by Paul Marillonnet 12 days ago

Ok, sans doute pas de changement nécessaire de notre côté dans ce cas.

#10 Updated by Paul Marillonnet 12 days ago

  • Status changed from Solution proposée to Rejeté

#11 Updated by Thomas Noël 12 days ago

  • Status changed from Rejeté to Résolu (à déployer)
commit 21e455341dfc81224999b65ca311d550f09468c8
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Thu Oct 10 09:08:24 2019 +0200

    misc: limit to jsonschema < 3.1 (#36819)

#12 Updated by Frédéric Péters 8 days ago

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

Also available in: Atom PDF