Use PEP 508 python_version specs for test_requires

This allows us to specify requirements that depend upon the Python
version, so that the requirements can be expressed purely as
configuration and not as code.
10 jobs for pep-508-test-requires in 3 minutes and 14 seconds (queued for 12 seconds)
latest
Status Job ID Name Coverage
  Build
failed build:debian:jessie #559429

00:03:06

passed build:debian:stretch #559430

00:01:23

failed build:el7 #559428

00:00:49

passed build:tarball #559427

00:00:36

 
  Test
skipped docs #559435
skipped syntax #559436
skipped test:python2.7 #559431
skipped test:python3.5 #559432
skipped test:python3.6 #559433
skipped test:python3.7 #559434
 
Name Stage Failure
failed
build:debian:jessie Build
/builds/leo-singer/gracedb-client /builds/leo-singer/gracedb-client
$ python setup.py sdist
/usr/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'long_description_content_type'
warnings.warn(msg)
error in ligo-gracedb setup command: 'tests_require' must be a string or list of strings containing valid project/version requirement specifiers
Running after script...
$ ls -l dist/
ls: cannot access dist/: No such file or directory
ERROR: Job failed: exit code 1
failed
build:el7 Build
Complete!
$ python setup.py sdist
/usr/lib64/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'long_description_content_type'
warnings.warn(msg)
error in ligo-gracedb setup command: 'tests_require' must be a string or list of strings containing valid project/version requirement specifiers
Running after script...
$ ls -l dist/
ls: cannot access dist/: No such file or directory
ERROR: Job failed: exit code 1