ga4gh / ga4gh-schemas

Models and APIs for Genomic data. RETIRED 2018-01-24
http://ga4gh.org
Apache License 2.0
214 stars 114 forks source link

Improve installation process via pip #746

Closed david4096 closed 7 years ago

david4096 commented 7 years ago

In addition to moving to a stable version of protocol buffers, this PR attempts to improve the build process to close #745

Allows the compiled schemas to be installed using the pip interface. For example, pip install git+git://github.com/david4096/schemas.git@protobuf31 will install this branch of the schemas to your local environment.

The goal is to easily develop against development branches of multiple packages using requirements "constraints". These will direct the installer to resolve dependencies using developer provided git branches. @dcolligan @ejacox

ejacox commented 7 years ago

+1 It worked for me and I found it useful. I did 'pip install -r dev-requirements -c constraints.txt' in the server, which installed the schemas directly from github.

dcolligan commented 7 years ago

I don't like putting things in python/requirements.txt that are not dependencies of the ga4gh_schemas package. Your change will install, for instance, nose when someone tries to install ga4gh_schemas, and that doesn't seem right.

That and a couple nits I left in comments aside, this looks good.

david4096 commented 7 years ago

Thanks @dcolligan and @andrewjesaitis. I've fixed the indentation and safely deleted the package_python directory. I also moved the tests and documentation generation related items to the dev_requirements so the base install is smaller. My hope is that this will make it much easier to develop against the schemas from python!

dcolligan commented 7 years ago

+1

kozbo commented 7 years ago

Looks good to me too +1