mirror of
https://github.com/coursera-dl/coursera-dl.git
synced 2026-01-23 02:35:37 +00:00
According to <https://en.wikipedia.org/wiki/History_of_Python#Table_of_versions>, the (current) earliest supported version is 3.6 (with only 3.8 and 3.9 being supported with binaries, 3.6 and 3.7 supported only with source code). Some things to keep in mind here, according to the current download page of Python for Windows (which, I suppose, is where the majority of our users are): * Python 3.6, 3.7 and 3.8 support [only Windows Vista and newer][python38]. * Python 3.9 doesn't suport Windows 7; [only 8.1 or newer][python39]. [python38]: https://docs.python.org/3.8/using/windows.html#using-python-on-windows [python39]: https://docs.python.org/3.9/using/windows.html#using-python-on-windows I'm still keeping Python 2.7 in the support tests (despite it being dead), but am considering dropping it in the near term (and removing the workarounds to support multiple versions).
113 lines
3.4 KiB
YAML
113 lines
3.4 KiB
YAML
#
|
|
# Most of these settings are taken from here:
|
|
# https://github.com/ogrisel/python-appveyor-demo/blob/master/appveyor.yml
|
|
#
|
|
|
|
version: 1.0.{build}
|
|
|
|
shallow_clone: true
|
|
|
|
build:
|
|
verbosity: detailed
|
|
|
|
environment:
|
|
global:
|
|
# SDK v7.0 MSVC Express 2008's SetEnv.cmd script will fail if the
|
|
# /E:ON and /V:ON options are not enabled in the batch script intepreter
|
|
# See: http://stackoverflow.com/a/13751649/163740
|
|
CMD_IN_ENV: "cmd /E:ON /V:ON /C .\\appveyor\\run_with_env.cmd"
|
|
#PANDOC_URL: "https://github.com/jgm/pandoc/releases/download/1.17.1/pandoc-1.17.1-1-windows.msi"
|
|
#PANDOC_MSI: "C:\\pandoc.msi"
|
|
|
|
matrix:
|
|
# Pre-installed Python versions, which Appveyor may upgrade to
|
|
# a later point release.
|
|
# See: http://www.appveyor.com/docs/installed-software#python
|
|
|
|
- PYTHON: "C:\\Python27"
|
|
PYTHON_VERSION: "2.7.x" # currently 2.7.11
|
|
PYTHON_ARCH: "32"
|
|
|
|
- PYTHON: "C:\\Python27-x64"
|
|
PYTHON_VERSION: "2.7.x" # currently 2.7.11
|
|
PYTHON_ARCH: "64"
|
|
|
|
- PYTHON: "C:\\Python36"
|
|
PYTHON_VERSION: "3.6.x" # currently 3.6.?
|
|
PYTHON_ARCH: "32"
|
|
|
|
- PYTHON: "C:\\Python36-x64"
|
|
PYTHON_VERSION: "3.6.x" # currently 3.6.?
|
|
PYTHON_ARCH: "64"
|
|
|
|
- PYTHON: "C:\\Python37"
|
|
PYTHON_VERSION: "3.7.x" # currently 3.7.?
|
|
PYTHON_ARCH: "32"
|
|
|
|
- PYTHON: "C:\\Python37-x64"
|
|
PYTHON_VERSION: "3.7.x" # currently 3.7.?
|
|
PYTHON_ARCH: "64"
|
|
|
|
- PYTHON: "C:\\Python38"
|
|
PYTHON_VERSION: "3.8.x" # currently 3.8.?
|
|
PYTHON_ARCH: "32"
|
|
|
|
- PYTHON: "C:\\Python38-x64"
|
|
PYTHON_VERSION: "3.8.x" # currently 3.8.?
|
|
PYTHON_ARCH: "64"
|
|
|
|
- PYTHON: "C:\\Python39"
|
|
PYTHON_VERSION: "3.8.x" # currently 3.9.?
|
|
PYTHON_ARCH: "32"
|
|
|
|
- PYTHON: "C:\\Python38-x64"
|
|
PYTHON_VERSION: "3.8.x" # currently 3.9.?
|
|
PYTHON_ARCH: "64"
|
|
|
|
init:
|
|
- "ECHO %PYTHON%"
|
|
- ps: "ls C:/Python*"
|
|
|
|
install:
|
|
# Prepend newly installed Python to the PATH of this build (this cannot be
|
|
# done from inside the powershell script as it would require to restart
|
|
# the parent CMD process).
|
|
- "SET PATH=%PYTHON%;%PYTHON%\\Scripts;%PATH%"
|
|
|
|
- ECHO "Filesystem root:"
|
|
- ps: "ls \"C:/\""
|
|
|
|
# Check that we have the expected version and architecture for Python
|
|
- "python --version"
|
|
- "python -c \"import struct; print(struct.calcsize('P') * 8)\""
|
|
|
|
# Upgrade to the latest version of pip to avoid it displaying warnings
|
|
# about it being out of date.
|
|
- "python -m pip install --disable-pip-version-check --user --upgrade pip"
|
|
|
|
# Install requirements
|
|
- "%CMD_IN_ENV% pip install -r requirements.txt"
|
|
- "%CMD_IN_ENV% pip install -r requirements-dev.txt"
|
|
|
|
# Install pandoc
|
|
#- ps: Start-FileDownload 'https://github.com/jgm/pandoc/releases/download/1.17.1/pandoc-1.17.1-1-windows.msi' -FileName 'C:\pandoc.msi'
|
|
#- msiexec /i C:\pandoc.msi /qn /log C:\install.log
|
|
#INSTALLLOCATION=C:\MongoDB
|
|
|
|
# FIXME: updating pip fails with PermissionError
|
|
# - "%PYTHON%/Scripts/pip.exe install -U pip setuptools"
|
|
# - "%PYTHON%/Scripts/pip.exe install -e ."
|
|
|
|
build_script:
|
|
# Build the compiled extension (not present for our project)
|
|
- "%CMD_IN_ENV% python setup.py build"
|
|
|
|
test_script:
|
|
# Run the project tests
|
|
- "%CMD_IN_ENV% py.test -vv"
|
|
|
|
after_test:
|
|
# If tests are successful, create binary packages for the project.
|
|
- "%CMD_IN_ENV% python setup.py sdist"
|
|
# - "%CMD_IN_ENV% python setup.py bdist_wheel"
|
|
- ps: "ls dist"
|