J'ai un projet composé de plusieurs paquets dans une arborescence de répertoires. Si je change l'un des paquets alors la pile recompile automatiquement les paquets qui dépendent du paquet modifié (parfois l'automatisme échoue et je n'ai aucun indice quand - mais ce n'est pas l'objet de la question).comment éviter la compilation répétée de paquets en extra-deps
Lors de la recompilation, je vois souvent une recompilation de tous les paquets listés comme extra-deps. ceux-ci n'ont pas changé et la recompilation est inutile (mais prend du temps). Je comprends qu'il existe un mécanisme permettant de compiler de telles dépendances une seule fois (tant qu'elles ne changent pas) et d'être réutilisées. J'ai vu une fois un message de la pile indiquant qu'une compilation précédente d'un paquet a été réutilisée en pointant vers cette mise en cache.
on m'a demandé dans un commentaire à fournir le stack.yaml dans le répertoire du projet (j'ai essayé aussi avec des entrées comme
- location: /home/frank/Workspace8/repo8/litMain
extra-dep: true
mais n'a pas vu une différence):
flags: {}
extra-package-dbs: []
packages:
- litMain
- rdf4store
- rdfhextension
- uniform/uniform-strings
- uniform/uniform-error
- uniform/uniform-algebras
- uniform/uniform-convenience
- uniform/uniform-fileio
- uniform/uniform-time
extra-deps:
- chatter-0.8.0.1
- data-easy-0.7.0
- fullstop-0.1.4
- hgal-2.0.0.2
- non-negative-0.1.1
- numeric-prelude-0.4.2
- rdf4h-3.0.1
- test-invariant-0.4.5.0
- tokenize-0.3.0
resolver: lts-8.2
Comment obtenir la réutilisation des extra-deps précédemment compilés et non modifiés en général?
J'ai essayé de construire, compiler --dependencies-only et compiler --snapshot mais je n'ai pas réussi. Toutes les dépendances sont reconstruites ... je n'ai pas pu trouver plus d'informations dans la documentation.
Commentaires utiles m'a fait repenser et éditer la question. J'espère que le problème est maintenant mieux exposé. Merci pour l'aide!
Avez-vous plusieurs paquets dans un seul projet ou avez-vous plusieurs projets (et plusieurs 'pile.yaml's)? – sjakobi
Peut-être nous montrer le contour de votre 'stack.yaml' (s) ?! – sjakobi
La pile.yaml est éditée dans la question. J'ai également trouvé des informations qui sont peut-être pertinentes, mais je ne vois pas comment utiliser dans https://www.fpcomplete.com/blog/2015/09/stack-more-binary-package-sharing – user855443