language: python sudo: false cache: pip python: - 3.5 - 3.6 - 3.7 - 3.8 - pypy3.5 env: - PYTHONHASHSEED=random TEST_REQUIRE="gevent greenlet geventhttpclient fastimport" PURE=false matrix: include: - python: pypy env: TEST_REQUIRE=fastimport - python: 3.7 env: TEST_REQUIRE=fastimport dist: xenial sudo: true - python: 3.8 env: TEST_REQUIRE=fastimport dist: xenial sudo: true - python: 3.8 env: TEST_REQUIRE=fastimport dist: xenial sudo: true - python: 3.6 env: PURE=true install: - travis_retry pip install -U pip coverage codecov flake8 $TEST_REQUIRE script: - if [ $PURE = false ]; then python setup.py build_ext -i; fi - python -m coverage run -p -m unittest dulwich.tests.test_suite # Style - make style - make typing - if [ $PURE = true ]; then SETUP_ARGS=--pure; fi - python setup.py $SETUP_ARGS bdist_wheel after_success: - python -m coverage combine - codecov deploy: provider: pypi user: dulwich-bot password: secure: Q8DDDojBugQWzXvmmEQiU90UkVPk+OYoFZwv1H9LYpQ4u5CfwQNWpf8qXYhlGMdr/gzWaSWsqLvgWLpzfkvqS4Vyk2bO9mr+dSskfD8uwc82LiiL9CNd/NY03CjH9RaFgVMD/+exMjY/yCtlyH1jL4kjgOyNnC+x4B37CliZHcE= skip_cleanup: true skip_existing: true file_glob: true file: - dist/dulwich*.whl - dist/dulwich*.tar.gz on: tags: true repo: dulwich/dulwich