FauxPas.app : Détectez les incohérences dans vos projets

AliGatorAliGator Membre, Modérateur
août 2014 modifié dans Actualités #1
Hello

J'ai découvert récemment l'utilitaire http://fauxpasapp.com que je trouve très sympa et utile.

Il analyse vos projets et vous indique les incohérences, comme :
  • une image référencée dans votre code ou dans un XIB mais non présente dans votre projet
  • une image Retina qui n'est pas le double de son équivalent non-Retina
  • une localisation manquante pour telle ou telle clé
  • des IBOutlets strong là  où ils devraient être weak
  • et plein de trucs du genre
ça m'a l'air assez efficace et c'est encore en bêta mais c'est très prometteur !


screen-1-9719a34b.jpg

«1

Réponses

  • muqaddarmuqaddar Administrateur
    août 2014 modifié #2

    Depuis le temps que j'attendais un truc du genre ! Ou des fonctions équivalente dans Xcode...


     


    EDIT: je n'arrive pas à  le lancer, il ne trouve pas mes command line tools que j'ai pourtant installés.


  • AliGatorAliGator Membre, Modérateur
    août 2014 modifié #3

    Depuis le temps que j'attendais un truc du genre ! Ou des fonctions équivalente dans Xcode...
     
    EDIT: je n'arrive pas à  le lancer, il ne trouve pas mes command line tools que j'ai pourtant installés.

    Bizarre. Tu as installé Xcode6 Beta ? Peut-être qu'en installant la Beta il t'a chamboulé les réglages de ce côté et ne trouve plus les bonnes Command Line Tools ?

    Que te dis "xcode-select -p" dans le terminal ? (Ou "xcrun -find xcodebuild" par exemple, ou encore les préférences "Locations" de Xcode) ? Il te trouve le bon chemin ?
  • AliGatorAliGator Membre, Modérateur
    août 2014 modifié #4
    NB : Vous pouvez lancer l'application en stand-alone ponctuellement pour vérifier un projet ou un autre, mais ils fournissent aussi tout ce qu'il faut pour intégrer les diagnostics de FauxPas directement dans Xcode aussi (via un "Custom Script Build Phase" qui exécute FauxPas en ligne de commande).

    Ce qui est aussi une possibilité intéressante, qui fait un peu comme si finalement c'était intégré à  Xcode.

    Voir les docs sur leur site, c'est assez bien expliqué.
  • Merci pour la découverte AliGator, cette application est très intéressante :)


  • muqaddarmuqaddar Administrateur


    Bizarre. Tu as installé Xcode6 Beta ? Peut-être qu'en installant la Beta il t'a chamboulé les réglages de ce côté et ne trouve plus les bonnes Command Line Tools ?


    Que te dis "xcode-select -p" dans le terminal ? (Ou "xcrun -find xcodebuild" par exemple, ou encore les préférences "Locations" de Xcode) ? Il te trouve le bon chemin ?




     


    ça va beaucoup mieux après avoir changer dans l'onglet location des prefs de Xcode, qui était vide.


     


    pc1:~ muqaddar$ xcrun -find xcodebuild


    xcrun: error: active developer path ("/Applications/Xcode6-Beta.app/Contents/Developer/") does not exist, use xcode-select to change


    pc1:~ muqaddar$ xcrun -find xcodebuild


    /Applications/Xcode6-Beta5.app/Contents/Developer/usr/bin/xcodebuild


     


    Merci !

  • Joanna CarterJoanna Carter Membre, Modérateur

    Très bonne idée mais je l'ai déjà  cassé  :*   :/   ::)


  • AliGatorAliGator Membre, Modérateur

    Très bonne idée mais je l'ai déjà  cassé  :*   :/   ::)

    Comment ça ? Il a explosé tellement il a trouvé d'erreurs, il a fait un overflow ? :D
  • Joanna CarterJoanna Carter Membre, Modérateur
    Il a refusé de faire un build mais, peut-être parce que j'ai un lib statique FreePascal dans le workspace
  • AliGatorAliGator Membre, Modérateur
    Ah oui si c'est un projet un peu hors-standard il a peut-être du mal.

    As-tu bien coché le réglage "This project must be build as part of a workspace" ?
    As-tu réessayé un Build ? Mon premier build n'a pas marché, mais quand j'ai réessayé les fois suivantes c'est passé.

    Sinon je pense qu'il ne faut pas hésiter à  leur remonter ce genre de bug/problème, ils sont encore en Beta et donc sont d'autant + à  l'écoute des retours (si en + tu arrives à  leur fournir un projet d'exemple éventuellement épuré qui reproduit le problème, ils seront ravis de pouvoir investiguer avec)
  • Merci beaucoup AliGator. Je vais tester ça de ce pas. ^^


  • Joanna CarterJoanna Carter Membre, Modérateur
    août 2014 modifié #12


    Ah oui si c'est un projet un peu hors-standard il a peut-être du mal.




     


    C'est un workspace ave 7 projets (iOS et OS X) dont 2 font référence à  un lib statique FreePascal et il y a les libs statiques qui sont référencés des projets iOS et OS X aux même temps.


     




    As-tu bien coché le réglage "This project must be build as part of a workspace" ?

    As-tu réessayé un Build ? Mon premier build n'a pas marché, mais quand j'ai réessayé les fois suivantes c'est passé.




     


    Oui et oui. Toujours pas de réussite.


     




    Sinon je pense qu'il ne faut pas hésiter à  leur remonter ce genre de bug/problème, ils sont encore en Beta et donc sont d'autant + à  l'écoute des retours (si en + tu arrives à  leur fournir un projet d'exemple éventuellement épuré qui reproduit le problème, ils seront ravis de pouvoir investiguer avec)




     


    Je suis en train de parler avec le développeur et il me faut essayer quelques trucs  B)


  • C'est un outil fabriqué par des français ?


    Ce qu'ils promettent avec en tout cas semble très intéressant, tellement que je commence à  me demander pourquoi Xcode n'emporte pas ça nativement.


  • Joanna CarterJoanna Carter Membre, Modérateur

    Je ne sais pas mais le domaine est enregistré en Panama par "Whoisguard Protected" ????


  • AliGatorAliGator Membre, Modérateur
    août 2014 modifié #15


    C'est un outil fabriqué par des français ?

    Qu'est ce qui te fait penser ça ?


    Le nom de l'appli ? Sache que "Faux pas" est un terme français connu à  l'étranger, un peu comme "Rendez-Vous" ou "Cul-de-sac", etc. Ce sont des expressions de la langue française qui sont passés dans le langage anglais.
  • Ouais mais alors "cul-de-sac" il vaut mieux le lire que l'entendre parce que la prononciation anglaise...
  • Joanna CarterJoanna Carter Membre, Modérateur

    Et le reste http://en.wikipedia.org/wiki/List_of_English_words_of_French_origin


     


    Peut-être je commence à  écrire les réponses en anglais  ::)


  • Oh, je viens juste de remarquer que Joanna a eu de la promotion ! 


    çà  s'arrose ! Bravo !  :D   :p   :p


  • A mon avis, faux pas utiliser cette application !
  • Oui c'était par rapport au nom. Autant pour moi je ne savais pas que Faux app était une expression utilisée à  l'étranger. Il semblerait qu'en fait ce soit un finlandais le créateur.


  • AliGatorAliGator Membre, Modérateur


    A mon avis, faux pas utiliser cette application !

    a mon avis faux pas que tu fasses des jeux de mots pourris :-P
  • Joanna CarterJoanna Carter Membre, Modérateur

    Oh, je viens juste de remarquer que Joanna a eu de la promotion ! 

    çà  s'arrose ! Bravo !  :D   :p   :p




    Merci ; c'était totalement inattendu

  • Merci ; c'était totalement inattendu




    Mais tout à  fait mérité !!!
  • Je viens d'essayer l'application sur le projet Hatari: 120 fichiers sources dont seulement 5 fichier Objective-C.


    Pas mal du tout, j'apprécie.  


    J'ai comparé ce que l'application trouvait comme erreur de translation.... (non, de traduction!) par rapport aux erreurs trouvées par mon application de localisation: Exactement les mêmes! (ouf!)


    Pour les autres erreurs trouvées, pas mal de faux positifs car le projet testé est Xcode 4.6 mais viens d'Xcode plus anciens. C'est notamment le cas des méthodes - (void)awakeFromNib. D'autre part, dans les diagnostiques en bleu,  les lignes sont nombreuses et c'est normal vu l'ancienneté des textes.


  • Je crois avoir trouvé un petit problème. Faux Pas me sort des tas de warning (jaunes + bleus > 250).


    Mais modifier les sources C ou C++ d'une application multiplateforme suivant les règles appliquées par Xcode 5 doit être dangereux pour les autres plateformes (Windows, Linux, RaspBerry PI, ....etc). 


     


    Me trompé-je ?


  • AliGatorAliGator Membre, Modérateur
    Bah ça dépend de quelles modifications tu parles
  • Essentiellement dans du C pure qui sera compilé avec d'autres compilateurs sur d'autres plateformes.


    Par exemple FP conseille de changer   flag ? flag : truc   par    flag ? : truc.


    Je ne connais pas suffisamment les compilateurs des autres plateformes pour être sur que ça marche toujours.


  • Faux pas courir de risques avec les problèmes de compatibilité multiplateformes !
  • AliGatorAliGator Membre, Modérateur
    @tablier
    En effet, selon les cas, les compilateurs et les flags utilisés pour la compilation, cela peut avoir des impacts. Même sans parler de compilateur et flag de compilation, il faut savoir ce qu'on fait quand on corrige le code pour éradiquer les mauvaises pratiques et mauvais code.
    Par exemple "a ?: b" est équivalent à  "a ? a : b" mais a tout de même une différence : dans le premier cas, a n'est évalué qu'une seule fois, dans le second cas il est évalué 2 fois. Il faut en avoir conscience avant de faire la modification.
    Pour le code qui dépend du compilateur, bah à  toi de voir au cas par cas. FauxPas est quand même pensé à  l'origine pour 99% des cas d'utilisation de Xcode, c'est à  dire faire du code Cocoa qui sera toujours compilé avec Xcode et pour iOS / OSX. Pour les cas hors norme, comme utiliser Xcode mais pour en fait faire de la programmation micro-controlleur ou du cross-plateforme, c'est un peu à  la marge.

    @Draken : sérieusement, arrête le perrier citron.
  • J'ai trouvé un petit bug. L'export en Property list  ne marche pas. J'ai fait un signalement et l'auteur dit que ce sera corrigé dans la prochaine version.


  • LarmeLarme Membre
    mai 2015 modifié #31

    Plop, je reviens sur ce sujet, car je viens de le voir mentionner sur SO à  l'instant (même si je ne suis pas d'accord avec le warning signalé), et j'ai regardé si on en avait parlé ici, j'ai dû zapper la discussion (vacances tout ça tout ça).


     


    Avec presque un an de recul, l'utilisez-vous toujours ? En êtes vous toujours satisfait ?


Connectez-vous ou Inscrivez-vous pour répondre.