AMC (git:b8e377a2) problème d'impression sous macOS 10.15.1 (Bug #679)


Added by Joël Brogniart 4 months ago. Updated 3 months ago.


Status:Resolved Start date:11/08/2019
Priority:Normal Due date:
Assignee:- % Done:

100%

Category:-
Target version:-

Description

J'ai installé la dernière version d'AMC (git:b8e377a2) sous macOS 10.15 et j'ai un problème d'impression. Je n'ai pas les outils sous la main pour tester une version plus ancienne ou une autre version de macOS donc je ne sais pas si le problème provient de ma configuration ou de la version d'AMC.

Lorsque je lance l'impression d'un sujet, l'impression a l'air de bien fonctionner mais rien ne sort sur l'imprimante. Lorsque je regarde le journal du mode debug (joint), je vois les commandes utilisées pour générer le pdf et pour imprimer. Dans le journal, il semble que les chemins d'accès des fichiers ne sont pas quotés et comme il y a des espaces ou des caractères accentués il y a de fortes chances qu'une des commande échoue (je pense principalement aux arguments de la commande qpdf).

Si je lance la commande telle quelle dans mon terminal; elle échoue mais si je quote les chemins de fichiers dans les arguments, le fichier est bien créé et j'arrive bien à imprimer ce fichier en utilisant la commande lp qui suit.


AMC-DEBUG-nQVUlvPQ.log (16.2 kB) Joël Brogniart, 11/08/2019 05:26 pm

AMC-DEBUG-N1bJi5mO.log (14.5 kB) Joël Brogniart, 11/15/2019 10:59 am


History

Updated by Joël Brogniart 3 months ago

Bon, j'ai eu le temps de fouiller un peu et de faire quelques tests. J'ai regardé le code et apparemment ce n'est pas l'histoire des guillemets parce que ce côté là n'a pas changé depuis la version 1.4.0. Donc je pense que le problème est dans la partie du code auto-multiple-choice/AMC-perl/AMC/Print. J'ai donc essayé d'imprimer un sujet à partir de plusieurs version d'AMC en suivant les commits, toujours avec les versions macOS 10.15.1 (MacPorts 2.6.2, Xcode 11.2.1).

git:c6041a16 (1.4.0), l'impression fonctionne.

git:43a83e09, l'impression fonctionne.

git:2005b218, l'impression fonctionne.

git:4227f0e4, l'impression ne fonctionne plus.

Lorsque l'impression fonctionne, le détail de la sortie des commandes contient deux lignes :

Student 0005 : 1 slices to file /var/folders/x2/06wgm6dw8xl9rb008k8d_w480000gp/T/0Ka2lap9aK.pdf...
Request id is The_choosen_printer (1 file(s))

Lorsque l'impression ne fonctionne pas, la deuxième ligne n'est pas affichée.

Je mets le journal pour l'impression à partir de la version git:4227f0e4 et je vais voir si je comprends quelque chose dans les changements apportés pour ce commit.

Updated by Joël Brogniart 3 months ago

Dans le doute, j'ai aussi testé l'impression avec git:391018ba et là ça fonctionne. Donc le problème est bien lié aux changements dans git:4227f0e4.

Updated by Joël Brogniart 3 months ago

Le problème est lié au changement dans le fichier AMC-perl/AMC/Print/cupslp.pm ou

system(@command);

est remplacé par

system_stderr( cmd => [@command] );

La fonction system_stderr n'est pas trouvée (c'est bien ce qui est indiqué dans le journal). Si je remplace system_stderr par system les impressions fonctionnent à nouveau.

Updated by Joël Brogniart 3 months ago

Et au même endroit, si je remplace

system_stderr( cmd => [@command] );

par

system_debug( cmd => [@command] );

(system_debug est la fonction qui est utilisée dans les autres fichiers à la place de system) l'impression fonctionne aussi.

Updated by Alexis Bienvenüe 3 months ago

Merci pour cette analyse et le correctif ! Intégré avec git:c794ec55

  • Status changed from New to Resolved
  • % Done changed from 0 to 100

Also available in: Atom PDF