Bienvenue sur IndexError.

Ici vous pouvez poser des questions sur Python et le Framework Django.

Mais aussi sur les technos front comme React, Angular, Typescript et Javascript en général.

Consultez la FAQ pour améliorer vos chances d'avoir des réponses à vos questions.

Travis : numpy et scipy en Python3.4

+1 vote

Je souhaite utiliser TravisCI sur un projet nécessitant Python3.4, numpy et scipy, mais je ne parviens pas à installer ces deux bibliothèques. Mon .travis.yml :

language: python
python:
    - "3.4"
before_install:
    - sudo apt-get update -qq
    - sudo apt-get install -qq python3-numpy python3-scipy
install: 
    - pip install -r requirements.txt
    - python setup.py install
script: 
    - python setup.py test
demandé 31-Jan-2015 par Vayel (1,050 points)
reclassée 1-Fev-2015 par max

2 Réponses

+1 vote
 
Meilleure réponse

Par défaut sur Travis les virtualenv sont isolés du reste du système, donc tu ne peux pas utiliser les numpy/scipy installés avec apt. Plusieurs solutions à ça:

  • Installer numpy/scipy dans ton virtualenv, ce qui correspond à ta réponse. Mais ça veut dire qu'à chaque fois Travis recompile numpy/scipy pour ton virtualenv donc c'est pas optimal.
  • Dire à Travis d'utiliser le site-packages du système avec cette option dans le fichier de config:

    virtualenv:
    systemsitepackages: true

  • Utiliser conda comme alternative/complément à pip, conda proposant des paquets binaires: https://github.com/astrofrog/example-travis-conda

répondu 1-Fev-2015 par saimn (142 points)
sélectionné 7-Fev-2015 par Vayel

J'avais essayé la seconde méthode mais il me semble que l'option n'est disponible qu'en Python 2.7 et 3.2 (ici).

De même, j'avais jeté un coup d'oeil à conda mais n'avais pas trouvé de ressource très explicite sur le sujet. Je vais regarder ton lien.

Tu devrais ajouter le .travis.yml de ton lien dans ton message (cf : commentaire de Sam sur ma réponse).

+1 vote

Cette configuration semble fonctionner :

.travis.yml :

language: python
python:
    - 2.7
    - 3.4
before_install:
    - sudo apt-get update
    - sudo apt-get install gfortran libopenblas-dev liblapack-dev
install: 
    - pip install -r requirements.txt
script: 
    - python main.py

requirements.txt :

numpy
scipy
matplotlib

main.py :

import numpy
import scipy
import matplotlib
répondu 1-Fev-2015 par Vayel (1,050 points)
edité 1-Fev-2015 par Vayel

Copie la configuration ici en plus de donner le lien. Ainsi, si le lien est down, la réponse est toujours valable. De puis, ça fait gagner du temps personnes qui auront le même problème dans le futur.

...