appveyor.yml - Appveyor CI configuration

This was based on https://github.com/pyinstaller/pyinstaller/blob/develop/appveyor.yml

environment:
  matrix:
    - PYTHON: "C:\\Python35"
      PYTHON_VERSION: 3.5
      PYTHON_ARCH: 32

    - PYTHON: "C:\\Python34"
      PYTHON_VERSION: 3.4
      PYTHON_ARCH: 32

    - PYTHON: "C:\\Python33"
      PYTHON_VERSION: 3.3
      PYTHON_ARCH: 32
init:
  - ECHO %PYTHON% %PYTHON_VERSION% %PYTHON_ARCH%

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%
 

Check that we have the expected version and architecture for Python

  - python --version
  - "python -c \"import struct; print(struct.calcsize('P') * 8)\""
 

Appveyor pip install: Make sure we’re using the latest version of pip. Avoid using just pip install -U pip, which produces:

1
2
3
4
5
Exception:
Traceback (most recent call last):
  File "c:\python35\lib\shutil.py", line 381, in _rmtree_unsafe
    os.unlink(fullname)
PermissionError: [WinError 5] Access is denied: 'C:\\Users\\appveyor\\AppData\\Local\\Temp\\1\\pip-dghcgnoj-uninstall\\python35\\scripts\\pip.exe'
  - python -m pip install -U pip
 

Upgrade setuptools to a current version to avoid:

1
2
3
4
5
6
7
8
9
Obtaining file:///C:/projects/codechat
    Complete output from command python setup.py egg_info:

    The required version of setuptools (>=20.3.1) is not available,
    and can't be installed while this script is running. Please
    install a more recent version first, using
    'easy_install -U setuptools'.

    (Currently using setuptools 18.2 (c:\python35\lib\site-packages))

Appveyor easy_install install: As above, run this from Python, to avoid error: [WinError 5] Access is denied: 'c:\\python35\\Scripts\\easy_install.exe'.

  - python -m easy_install -U setuptools
 

Appveyor pip install command: In order to test, use pip to:

  • -e: Put CodeChat in the Python path.
  • .[test]: Install CodeChat’s test dependencies.

I can’t find a way to do this using python setup.py develop, so I’m using pip.

  - pip install -e .[test]

build: none

test_script:
  - py.test