Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

No contributing / developer docs #175

Closed
tfmorris opened this issue Aug 25, 2016 · 8 comments
Closed

No contributing / developer docs #175

tfmorris opened this issue Aug 25, 2016 · 8 comments
Assignees

Comments

@tfmorris
Copy link

The README appears to be end user focused and the Wiki is empty, so there doesn't appear to be any documentation on how to contribute to the project or to hack on the code.

I can figure out some of the dependencies by looking at the Makefile (e.g. pep8, pylint,
mypy), but explicit documentation on what developers need to install, what tests should be run before submitting PRs, etc would be useful.

Also, background documentation for things which might not be readily apparent to your garden variety Pythonista such was why it's a good thing to pretend to do static typing in a dynamically typed language, how to install mypy (since they don't appear to believe in installation instructions), etc

@dionjwa
Copy link

dionjwa commented Dec 8, 2016

+1

I would like to contribute to this project. I have basic Python experience, but the setup to develop is opaque. Specifically, how do I set this project up to quickly modify, run, test? It seems to require a full install to run, so development is super slow.

@tetron
Copy link
Member

tetron commented Dec 9, 2016

I agree that documentation is severely lacking. It's hard to find time to work on it.

The quickest way to get started is to create a virtualenv and then run python setup.py develop. This will install the code in a way that is linked back to the git checkout, so changes to the files in your git checkout will be reflected immediately when you run the installed code.

@manu-chroma
Copy link
Member

I see there is a new contributing guide added here: https://github.com/common-workflow-language/user_guide/blob/gh-pages/CONTRIBUTING.md

I think it would be better if we have a common dev contrib guide in cwltool root and reference it in the user guide front end.

@mr-c
Copy link
Member

mr-c commented Jul 17, 2017

@manu-chroma Yes, that is an incompletely modified contributing guide inherited from https://github.com/swcarpentry/styles/ -- I agree that there should be a common contributing guide maintained in https://github.com/common-workflow-language/common-workflow-language and linked to from each project.

@manu-chroma
Copy link
Member

I will use it as a base and add one soon

@FarahZKhan
Copy link
Member

Hey @manu-chroma I think details below can help anyone who wants to set up a virtual environment for the development purposes without messing up the original installations done on their systems:

Notes from Code fest:

To work for development purposes, you can install cwltool in a virtual environment:

  • Install virtualenv via pip: pip install virtualenv
  • Clone the cwltool: git clone https://github.com/common-workflow-language/cwltool.git
  • Switch to cwltool directory: cd cwltool
  • Create a virtual environment: virtualenv cwltool
  • To begin using the virtual environment, it needs to be activated: source bin/activate
  • To check if you have the virtual environment set up: type type and type python
  • Install cwltool in the virtual environment: pip install .
  • Check the version which might be different from the version installed in general on any system: cwltool --version

@manu-chroma
Copy link
Member

Thanks @FarahZKhan

@mr-c Wouldn't it make more sense to put the above instruction steps in a CONTRIBUTING.md in cwltool repo rather than common-workflow-language repo?

@FarahZKhan
Copy link
Member

@manu-chroma You are welcome, and yes I think these are more tied to the python implementation cwltool so that might be a better place.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants