os: linux dist: focal # This is needed by setuptools_scm to generate a correct version string git: depth: false language: python python: - "3.5" - "3.6" - "3.7" - "3.8" - "3.9" - "3.10-dev" virtualenv: system_site_packages: false cache: pip env: - FLAKE8=false MANPAGES=false jobs: allow_failures: - python: "3.5" - python: "3.10-dev" include: - python: 3.9 env: FLAKE8=true MANPAGES=false - python: 3.9 env: FLAKE8=false MANPAGES=true install: # Dependencies - sudo apt-get -qq update - sudo apt-get -qq install cd-paranoia cdrdao flac git libcdio-dev libdiscid-dev libgirepository1.0-dev libiso9660-dev libsndfile1-dev sox swig # Lock pycdio version to the right one for Ubuntu focal - pip install pycdio==2.1.0 # flake8 and twisted are testing dependencies - pip install flake8 twisted -r requirements.txt # Docutils is needed to build the man pages - sudo apt-get -qq install python3-docutils # Installing - python setup.py install script: - if [ ! "$FLAKE8" = true ] && [ ! "$MANPAGES" = true ]; then python -m unittest discover; fi - if [ "$FLAKE8" = true ]; then flake8 --benchmark --statistics; fi - if [ "$MANPAGES" = true ]; then cd man && make; fi