Bug #9968
Erreur lors de la suppression d'une demande depuis une action globale de suppression
Début:
12 février 2016
Echéance:
% réalisé:
0%
Temps estimé:
Patch proposed:
Oui
Planning:
Description
https://victor.au-quotidien.com/backoffice/management/test-victor-actions-globales/
Exception: type = '<type 'exceptions.NameError'>', value = 'global name 'redirect' is not defined' Stack trace (most recent call first): File "/usr/lib/python2.7/dist-packages/wcs/workflows.py", line 1015, in handle_form 1013 url = perform_items(action.items, filled) 1014 if url: > 1015 return redirect(url) 1016 return 1017 locals: form = <wcs.qommon.form.Form object at 0x519da50> url = '..' self = <wcs.workflows.WorkflowStatus object at 0x7fc0249d2c10> user = <User 'Claudet Victor' id:29> action = <wcs.workflows.WorkflowGlobalAction object at 0x4b53810> filled = <Test-Victor-Actions-Globales id:3> File "/usr/lib/python2.7/dist-packages/wcs/formdata.py", line 346, in handle_workflow_form 344 if not wf_status: 345 return None > 346 return wf_status.handle_form(form, self, user) 347 348 def jump_status(self, status_id): locals: self = <Test-Victor-Actions-Globales id:3> wf_status = <wcs.workflows.WorkflowStatus object at 0x7fc0249d2c10> form = <wcs.qommon.form.Form object at 0x519da50> user = <User 'Claudet Victor' id:29> File "/usr/lib/python2.7/dist-packages/wcs/forms/common.py", line 548, in submit 546 current_status = self.filled.status 547 user = get_request().user > 548 next_url = self.filled.handle_workflow_form(user, form) 549 if next_url: 550 return next_url locals: form = <wcs.qommon.form.Form object at 0x519da50> self = <wcs.backoffice.management.FormBackOfficeStatusPage object at 0x57ab550> comment_only = False user = <User 'Claudet Victor' id:29> current_status = 'wf-1' File "/usr/lib/python2.7/dist-packages/wcs/forms/common.py", line 481, in status 479 480 if form and form.is_submitted() and not form.has_errors(): > 481 url = self.submit(form) 482 if url is None: 483 url = get_request().get_frontoffice_url() locals: self = <wcs.backoffice.management.FormBackOfficeStatusPage object at 0x57ab550> user = <User 'Claudet Victor' id:29> form = <wcs.qommon.form.Form object at 0x519da50> File "/usr/lib/python2.7/dist-packages/wcs/backoffice/management.py", line 1585, in _q_index 1583 1584 get_response().filter['sidebar'] = self.get_sidebar() > 1585 return self.status() 1586 1587 def receipt(self, *args, **kwargs): locals: self = <wcs.backoffice.management.FormBackOfficeStatusPage object at 0x57ab550> File "/usr/lib/pymodules/python2.7/quixote/directory.py", line 67, in _q_traverse 65 raise TraversalError 66 elif hasattr(obj, '__call__'): > 67 return obj() 68 else: 69 return obj locals: component = '' self = <wcs.backoffice.management.FormBackOfficeStatusPage object at 0x57ab550> obj = <bound method FormBackOfficeStatusPage._q_index of <wcs.backoffice.management.FormBackOfficeStatusPage object at 0x57ab550>> name = '_q_index' path = [] File "/usr/lib/python2.7/dist-packages/wcs/forms/common.py", line 641, in _q_traverse 639 get_response().breadcrumb.append( 640 (str(self.filled.id) + '/' , self.filled.get_display_id())) > 641 return super(FormStatusPage, self)._q_traverse(path) 642 643 def wfedit(self, action_id): locals: path = [''] self = <wcs.backoffice.management.FormBackOfficeStatusPage object at 0x57ab550> File "/usr/lib/pymodules/python2.7/quixote/directory.py", line 63, in _q_traverse 61 if path: 62 if hasattr(obj, '_q_traverse'): > 63 return obj._q_traverse(path) 64 else: 65 raise TraversalError locals: component = '3' self = <wcs.backoffice.management.FormPage object at 0x56b5890> obj = <wcs.backoffice.management.FormBackOfficeStatusPage object at 0x57ab550> name = None path = [''] File "/usr/lib/pymodules/python2.7/quixote/directory.py", line 63, in _q_traverse 61 if path: 62 if hasattr(obj, '_q_traverse'): > 63 return obj._q_traverse(path) 64 else: 65 raise TraversalError locals: component = 'test-victor-actions-globales' self = <wcs.backoffice.management.ManagementDirectory object at 0x2d37410> obj = <wcs.backoffice.management.FormPage object at 0x56b5890> name = None path = ['3', ''] File "/usr/lib/python2.7/dist-packages/wcs/backoffice/management.py", line 378, in _q_traverse 376 def _q_traverse(self, path): 377 get_response().breadcrumb.append(('management/', _('Management'))) > 378 return super(ManagementDirectory, self)._q_traverse(path) 379 380 def _q_index(self): locals: path = ['test-victor-actions-globales', '3', ''] self = <wcs.backoffice.management.ManagementDirectory object at 0x2d37410> File "/usr/lib/pymodules/python2.7/quixote/directory.py", line 63, in _q_traverse 61 if path: 62 if hasattr(obj, '_q_traverse'): > 63 return obj._q_traverse(path) 64 else: 65 raise TraversalError locals: component = 'management' self = <modules.backoffice.BackofficeRootDirectory object at 0x494cad0> obj = <wcs.backoffice.management.ManagementDirectory object at 0x2d37410> name = None path = ['test-victor-actions-globales', '3', ''] File "/usr/lib/pymodules/python2.7/quixote/directory.py", line 91, in _q_traverse 89 def _q_traverse(self, path): 90 self._q_access() > 91 return super(AccessControlled, self)._q_traverse(path) 92 93 locals: path = ['management', 'test-victor-actions-globales', '3', ''] self = <modules.backoffice.BackofficeRootDirectory object at 0x494cad0> File "/usr/lib/python2.7/dist-packages/wcs/backoffice/root.py", line 85, in _q_traverse 83 pass 84 get_response().add_javascript(['jquery.js', 'qommon.js', 'gadjo.sidepage.js']) > 85 return super(RootDirectory, self)._q_traverse(path) 86 87 @classmethod locals: path = ['management', 'test-victor-actions-globales', '3', ''] self = <modules.backoffice.BackofficeRootDirectory object at 0x494cad0> File "/usr/lib/pymodules/python2.7/quixote/directory.py", line 63, in _q_traverse 61 if path: 62 if hasattr(obj, '_q_traverse'): > 63 return obj._q_traverse(path) 64 else: 65 raise TraversalError locals: component = 'backoffice' self = <modules.root.AlternateRootDirectory object at 0x400dfd0> obj = <modules.backoffice.BackofficeRootDirectory object at 0x494cad0> name = 'backoffice' path = ['management', 'test-victor-actions-globales', '3', ''] File "/usr/lib/pymodules/python2.7/extra-wcs-au-quotidien/modules/root.py", line 850, in _q_traverse 848 return redirect('%s%s/%s' % (base_url, f.category.url_name, uri_rest)) 849 > 850 raise e 851 852 locals: path = ['backoffice', 'management', 'test-victor-actions-globales', '3', ''] self = <modules.root.AlternateRootDirectory object at 0x400dfd0> response = <qommon.http_response.HTTPResponse instance at 0x48558c0> File "/usr/lib/pymodules/python2.7/quixote/publish.py", line 253, in try_publish 251 permanent=True) 252 components = path[1:].split('/') > 253 output = self.root_directory._q_traverse(components) 254 # The callable ran OK, commit any changes to the session 255 self.finish_successful_request() locals: path = '/backoffice/management/test-victor-actions-globales/3/' self = <publisher.WcsPublisher instance at 0x4015b90> request = <qommon.http_request.HTTPRequest instance at 0x7fc024a04b90> components = ['backoffice', 'management', 'test-victor-actions-globales', '3', ''] File "/usr/lib/python2.7/dist-packages/wcs/qommon/publisher.py", line 620, in try_publish 618 for extra_source in self.extra_sources: 619 self.substitutions.feed(extra_source(self, request)) > 620 return Publisher.try_publish(self, request) 621 622 def get_site_language(self): locals: extra_source = <class 'modules.abelium_domino_vars.DominoVariables'> pystatsd = <module 'qommon.vendor.pystatsd' from '/usr/lib/python2.7/dist-packages/wcs/qommon/vendor/pystatsd.py'> request = <qommon.http_request.HTTPRequest instance at 0x7fc024a04b90> script_name = '' prefix = 'm' override_template_keys = {'m': 'mobile'} canonical_hostname = 'victor.au-quotidien.com' self = <publisher.WcsPublisher instance at 0x4015b90> File "/usr/lib/python2.7/dist-packages/wcs/publisher.py", line 215, in try_publish 213 if request.get_header('X_WCS_IFRAME_MODE', '') in ('true', 'yes'): 214 request.response.iframe_mode = True > 215 return QommonPublisher.try_publish(self, request) 216 217 def initialize_sql(self): locals: self = <publisher.WcsPublisher instance at 0x4015b90> request = <qommon.http_request.HTTPRequest instance at 0x7fc024a04b90> File "/usr/lib/pymodules/python2.7/quixote/publish.py", line 281, in process_request 279 except: 280 # Some other exception, generate error messages to the logs, etc. > 281 output = self.finish_failed_request() 282 output = self.filter_output(request, output) 283 self.logger.log_request(request, start_time) locals: start_time = 1455291898.748534 request = <qommon.http_request.HTTPRequest instance at 0x7fc024a04b90> self = <publisher.WcsPublisher instance at 0x4015b90> File "/usr/lib/python2.7/dist-packages/wcs/qommon/publisher.py", line 926, in process 924 def process(self, stdin, env): 925 request = HTTPRequest(stdin, env) > 926 self.response = self.process_request(request) 927 return self.response 928 locals: self = <publisher.WcsPublisher instance at 0x4015b90> stdin = <open file '<socket>', mode 'r' at 0x4831e40> request = <qommon.http_request.HTTPRequest instance at 0x7fc024a04b90> env = {'HTTP_REFERER': 'https://victor.au-quotidien.com/backoffice/management/test-victor-actions-globales/3/', 'SCRIPT_NAME': '', 'REQUEST_METHOD': 'POST', 'PATH_INFO': '/backoffice/management/test-victor-actions-globales/3/', 'HTTP_ORIGIN': 'https://victor.au-quotidien.com', 'SERVER_PROTOCOL': 'HTTP/1.1', 'QUERY_STRING': '', 'CONTENT_LENGTH': '251', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.82 Safari/537.36', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 'wcs-0b61bc="69b1581f556d1b30"; wcs-bbc634="1414ae188b87c957"; wcs-90b7e5="862a1e03dbfe83ba"', 'SERVER_NAME': '*.au-quotidien.com', 'REMOTE_ADDR': '88.182.84.168', 'SERVER_PORT': '443', 'DOCUMENT_ROOT': '/etc/nginx/html', 'CONTENT_TYPE': 'multipart/form-data; boundary=----WebKitFormBoundaryonEqDVf2GPwVxIbL', 'DOCUMENT_URI': '/backoffice/management/test-victor-actions-globales/3/', 'REMOTE_USER': '29', 'HTTP_HOST': 'victor.au-quotidien.com', 'HTTPS': 'yes', 'HT TP_UPGRADE_INSECURE_REQUESTS': '1', 'HTTP_CACHE_CONTROL': 'max-age=0', 'HTTP_CONTENT_TYPE': 'multipart/form-data; boundary=----WebKitFormBoundaryonEqDVf2GPwVxIbL', 'HTTP_CONTENT_LENGTH': '251', 'REQUEST_URI': '/backoffice/management/test-victor-actions-globales/3/', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', 'REMOTE_PORT': '59297', 'HTTP_ACCEPT_LANGUAGE': 'fr-FR,fr;q=0.8,en-US;q=0.6,en;q=0.4,zh-CN;q=0.2,zh;q=0.2,ru;q=0.2,ar;q=0.2,zh-TW;q=0.2,ko;q=0.2', 'SCGI': '1', 'HTTP_ACCEPT_ENCODING': 'gzip, deflate'} File "/usr/lib/pymodules/python2.7/quixote/server/scgi_server.py", line 27, in handle_connection 25 env['PATH_INFO'] = path[len(prefix):] + env.get('PATH_INFO', '') 26 > 27 response = self.publisher.process(input, env) 28 try: 29 response.write(output) locals: output = <open file '<socket>', mode 'w' at 0x4831030> self = <qommon.scgi_server.QommonHandler instance at 0x3f56518> conn = <socket object, fd=36, family=2, type=1, protocol=0> env = {'HTTP_REFERER': 'https://victor.au-quotidien.com/backoffice/management/test-victor-actions-globales/3/', 'SCRIPT_NAME': '', 'REQUEST_METHOD': 'POST', 'PATH_INFO': '/backoffice/management/test-victor-actions-globales/3/', 'HTTP_ORIGIN': 'https://victor.au-quotidien.com', 'SERVER_PROTOCOL': 'HTTP/1.1', 'QUERY_STRING': '', 'CONTENT_LENGTH': '251', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.82 Safari/537.36', 'HTTP_CONNECTION': 'keep-alive', 'HTTP_COOKIE': 'wcs-0b61bc="69b1581f556d1b30"; wcs-bbc634="1414ae188b87c957"; wcs-90b7e5="862a1e03dbfe83ba"', 'SERVER_NAME': '*.au-quotidien.com', 'REMOTE_ADDR': '88.182.84.168', 'SERVER_PORT': '443', 'DOCUMENT_ROOT': '/etc/nginx/html', 'CONTENT_TYPE': 'multipart/form-data; boundary=----WebKitFormBoundaryonEqDVf2GPwVxIbL', 'DOCUMENT_URI': '/backoffice/management/test-victor-actions-globales/3/', 'REMOTE_USER': '29', 'HTTP_HOST': 'victor.au-quotidien.com', 'HTTPS': 'yes', 'HT TP_UPGRADE_INSECURE_REQUESTS': '1', 'HTTP_CACHE_CONTROL': 'max-age=0', 'HTTP_CONTENT_TYPE': 'multipart/form-data; boundary=----WebKitFormBoundaryonEqDVf2GPwVxIbL', 'HTTP_CONTENT_LENGTH': '251', 'REQUEST_URI': '/backoffice/management/test-victor-actions-globales/3/', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', 'REMOTE_PORT': '59297', 'HTTP_ACCEPT_LANGUAGE': 'fr-FR,fr;q=0.8,en-US;q=0.6,en;q=0.4,zh-CN;q=0.2,zh;q=0.2,ru;q=0.2,ar;q=0.2,zh-TW;q=0.2,ko;q=0.2', 'SCGI': '1', 'HTTP_ACCEPT_ENCODING': 'gzip, deflate'} input = <open file '<socket>', mode 'r' at 0x4831e40> File "/usr/lib/python2.7/dist-packages/wcs/qommon/scgi_server.py", line 35, in handle_connection 33 def handle_connection(self, conn): 34 self.number_of_connection_handled = self.number_of_connection_handled + 1 > 35 quixote.server.scgi_server.QuixoteHandler.handle_connection(self, conn) 36 # input, output and conn are closed, long running jobs could be done 37 # here. locals: self = <qommon.scgi_server.QommonHandler instance at 0x3f56518> conn = <socket object, fd=36, family=2, type=1, protocol=0> File "/usr/lib/pymodules/python2.7/scgi/scgi_server.py", line 71, in serve 69 conn.setblocking(1) 70 os.close(fd) > 71 self.handle_connection(conn) 72 73 locals: self = <qommon.scgi_server.QommonHandler instance at 0x3f56518> fd = 35 conn = <socket object, fd=36, family=2, type=1, protocol=0> File "/usr/lib/pymodules/python2.7/scgi/scgi_server.py", line 194, in spawn_child 192 # the connection in the child 193 os.close(child_fd) > 194 self.handler_class(parent_fd).serve() 195 sys.exit(0) 196 else: locals: self = <qommon.scgi_server.SCGIServer instance at 0x3f56200> pid = 0 flags = 2 child_fd = 31 parent_fd = 30 conn = <socket._socketobject object at 0x49597c0> File "/usr/lib/pymodules/python2.7/scgi/scgi_server.py", line 308, in delegate_request 306 # start more children if we haven't met max_children limit 307 if len(self.children) < self.max_children: > 308 self.spawn_child(conn) 309 310 # Start blocking inside select. We might have reached locals: e = [] w = [] self = <qommon.scgi_server.SCGIServer instance at 0x3f56200> r = [31, 32, 33, 34] timeout = 0 child_fd = 31 ready_byte = '' conn = <socket._socketobject object at 0x49597c0> File "/usr/lib/pymodules/python2.7/scgi/scgi_server.py", line 327, in serve_on_socket 325 try: 326 conn, addr = self.socket.accept() > 327 self.delegate_request(conn) 328 conn.close() 329 except socket.error, e: locals: s = <socket._socketobject object at 0x4959a60> addr = ('127.0.0.1', 54424) conn = <socket._socketobject object at 0x49597c0> self = <qommon.scgi_server.SCGIServer instance at 0x3f56200> File "/usr/lib/pymodules/python2.7/scgi/scgi_server.py", line 336, in serve 334 335 def serve(self): > 336 self.serve_on_socket(self.get_listening_socket()) 337 338 locals: self = <qommon.scgi_server.SCGIServer instance at 0x3f56200> File "/usr/lib/python2.7/dist-packages/wcs/qommon/scgi_server.py", line 74, in run 72 s = SCGIServer(create_handler, host=host, port=port, 73 max_children=max_children) > 74 s.serve() 75 76 locals: create_handler = <function create_handler at 0x3713a28> handler_connection_limit = -1 max_children = 5 create_publisher = <bound method classobj.create_publisher of <class publisher.WcsPublisher at 0x37cde88>> host = 'localhost' script_name = None s = <qommon.scgi_server.SCGIServer instance at 0x3f56200> spawn_cron = True port = 3001 File "/usr/lib/python2.7/dist-packages/wcs/ctl/start.py", line 138, in execute 136 137 try: > 138 run_function(publisher.WcsPublisher.create_publisher, **run_kwargs) 139 except socket.error, e: 140 self.del_pid() locals: publisher = <module 'publisher' from '/usr/lib/python2.7/dist-packages/wcs/publisher.py'> base_app_dir = '/var/lib/wcs-au-quotidien' args = [] tenant_path = '/var/lib/wcs-au-quotidien/demarches.alfortville.fr' self = <wcs.ctl.start.CmdStart object at 0x2dab450> hostname = 'demarches.alfortville.fr' pub = <publisher.WcsPublisher instance at 0x49522d8> sub_options = <Values at 0x2deb5f0: {'http': False, 'silent': False, 'app_dir': None, 'extra': ['/usr/lib/pymodules/python2.7/extra-wcs-au-quotidien/'], 'max_children': None, 'handler_connection_limit': None, 'script_name': None, 'daemonize': False, 'data_dir': None, 'port': 3001, 'pidfile': None}> run_function = <function run at 0x2deaed8> base_options = <Values at 0x2d989e0: {'configfile': '/etc/wcs/wcs-au-quotidien.cfg'}> run_kwargs = {'port': 3001, 'spawn_cron': True} File "/usr/lib/python2.7/dist-packages/wcs/qommon/ctl.py", line 69, in run 67 for i, extra in enumerate(sub_options.extra): 68 self.config.set("extra", "cmd_line_extra_%d" % i, extra) > 69 return self.execute(base_options, sub_options, args) 70 71 def parse_args(self, args): locals: extra = '/usr/lib/pymodules/python2.7/extra-wcs-au-quotidien/' i = 0 self = <wcs.ctl.start.CmdStart object at 0x2dab450> args = [] sub_options = <Values at 0x2deb5f0: {'http': False, 'silent': False, 'app_dir': None, 'extra': ['/usr/lib/pymodules/python2.7/extra-wcs-au-quotidien/'], 'max_children': None, 'handler_connection_limit': None, 'script_name': None, 'daemonize': False, 'data_dir': None, 'port': 3001, 'pidfile': None}> base_options = <Values at 0x2d989e0: {'configfile': '/etc/wcs/wcs-au-quotidien.cfg'}> File "/usr/lib/python2.7/dist-packages/wcs/qommon/ctl.py", line 159, in run 157 command_class = self.get_commands()[command] 158 cmd = command_class() > 159 return cmd.run(args, options) 160 locals: cmd = <wcs.ctl.start.CmdStart object at 0x2dab450> args = ['--extra', '/usr/lib/pymodules/python2.7/extra-wcs-au-quotidien/'] self = <wcs.qommon.ctl.Ctl object at 0x2e5e490> command_class = <class 'wcs.ctl.start.CmdStart'> command = 'start' cmd_prefix = 'wcs.ctl' options = <Values at 0x2d989e0: {'configfile': '/etc/wcs/wcs-au-quotidien.cfg'}> File "/usr/sbin/wcsctl", line 8, in <module> 6 7 ctl = wcs.qommon.ctl.Ctl(cmd_prefixes=['wcs.ctl']) > 8 ctl.run(sys.argv[1:]) 9 locals: wcs = <module 'wcs' from '/usr/lib/python2.7/dist-packages/wcs/__init__.py'> __builtins__ = <module '__builtin__' (built-in)> __file__ = '/usr/sbin/wcsctl' __package__ = None sys = <module 'sys' (built-in)> ctl = <wcs.qommon.ctl.Ctl object at 0x2e5e490> __name__ = '__main__' __doc__ = None Form: button-action-2 'suppression' comment '' Cookies: wcs-0b61bc '69b1581f556d1b30' wcs-90b7e5 '862a1e03dbfe83ba' wcs-bbc634 '1414ae188b87c957' Environment: CONTENT_LENGTH '251' CONTENT_TYPE 'multipart/form-data; boundary=----WebKitFormBoundaryonEqDVf2GPwVxIbL' DOCUMENT_ROOT '/etc/nginx/html' DOCUMENT_URI '/backoffice/management/test-victor-actions-globales/3/' HTTPS 'yes' HTTP_ACCEPT 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' HTTP_ACCEPT_ENCODING 'gzip, deflate' HTTP_ACCEPT_LANGUAGE 'fr-FR,fr;q=0.8,en-US;q=0.6,en;q=0.4,zh-CN;q=0.2,zh;q=0.2,ru;q=0.2,ar;q=0.2,zh-TW;q=0.2,ko;q=0.2' HTTP_CACHE_CONTROL 'max-age=0' HTTP_CONNECTION 'keep-alive' HTTP_CONTENT_LENGTH '251' HTTP_CONTENT_TYPE 'multipart/form-data; boundary=----WebKitFormBoundaryonEqDVf2GPwVxIbL' HTTP_COOKIE 'wcs-0b61bc="69b1581f556d1b30"; wcs-bbc634="1414ae188b87c957"; wcs-90b7e5="862a1e03dbfe83ba"' HTTP_HOST 'victor.au-quotidien.com' HTTP_ORIGIN 'https://victor.au-quotidien.com' HTTP_REFERER 'https://victor.au-quotidien.com/backoffice/management/test-victor-actions-globales/3/' HTTP_UPGRADE_INSECURE_REQUESTS '1' HTTP_USER_AGENT 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.82 Safari/537.36' PATH_INFO '/backoffice/management/test-victor-actions-globales/3/' QUERY_STRING '' REMOTE_ADDR '88.182.84.168' REMOTE_PORT '59297' REMOTE_USER '29' REQUEST_METHOD 'POST' REQUEST_URI '/backoffice/management/test-victor-actions-globales/3/' SCGI '1' SCRIPT_NAME '' SERVER_NAME '*.au-quotidien.com' SERVER_PORT '443' SERVER_PROTOCOL 'HTTP/1.1'
Fichiers
Révisions associées
Historique
Mis à jour par Frédéric Péters il y a environ 8 ans
- Fichier 0001-workflows-add-missing-import-9968.patch 0001-workflows-add-missing-import-9968.patch ajouté
- Statut changé de Nouveau à En cours
- Patch proposed changé de Non à Oui
Mis à jour par Frédéric Péters il y a environ 8 ans
- Statut changé de En cours à Résolu (à déployer)
commit 4c74750444e5e4bfe1410fa88999f0d8a4caa599 Author: Frédéric Péters <fpeters@entrouvert.com> Date: Fri Feb 12 16:49:08 2016 +0100 workflows: add missing import (#9968)
Mis à jour par Thomas Noël il y a environ 8 ans
- Statut changé de Résolu (à déployer) à Solution déployée
workflows: add missing import (#9968)