add dockerfile for easy testing
ADD
Dockerfile
+FROM debian:latest
+
+RUN apt-get update && apt-get install -y --allow-downgrades --allow-remove-essential --allow-change-held-packages \
+ python3 python3-pip python2.7 python-pip python3.5 python 3.6 git
+
+RUN pip install virtualenv
+
+COPY . /source
+WORKDIR /source
+RUN sed -i -e 's/\r//' /source/run-tests.sh
+
+RUN virtualenv -p python2.7 testenv \
+ && . testenv/bin/activate \
+ && pip install -r /source/developer_requirements.txt \
+ && /bin/bash /source/run-tests.sh
+
+RUN virtualenv -p python3.5 testenv3 \
+ && . testenv3/bin/activate \
+ && pip install -r /source/developer_requirements.txt \
+ && /bin/bash /source/run-tests.sh

MODIFY
MANIFEST.in
MANIFEST.in
@@ -4,6 +4,7 @@ include *.txt
include tox.ini
include pytest.ini
include .flake8.cython
+include Dockerfile
recursive-include conda.recipe *
recursive-include fastavro *.c

MODIFY
README.md
README.md
@@ -45,12 +45,12 @@ and on [conda-forge](https://conda-forge.github.io) `conda` channel.
* Get approval from discussing on the github issue before opening the pull request
* Tests must be passing for pull request to be considered
-# Hacking
-
-As recommended by Cython, the C files output is distributed. This has the
-advantage that the end user does not need to have Cython installed. However it
-means that every time you change `fastavro` you need to run
-`make`.
+Developer requirements can be installed with `pip install -r developer_requirements.txt`.
+If those are installed, you can run the tests with `./run-tests.sh`. If you have trouble
+installing those dependencies, you can run `docker build .` to run the tests inside
+a docker container. This won't test on all versions of python or on pypy, so it's possible
+to still get CI failures after making a pull request, but we can work through those errors
+if/when they happen.
### Releasing

add dockerfile for easy testing