Issue reports are a great way to contribute to this project.
To the extent possible, make sure that your issue is detailed and not a duplicate.
Fork the project on Github and check out your copy.
$ git clone https://github.com/[YOUR_GITHUB_NAME]/tap-redshift.git
$ cd tap-redshift
$ git remote add upstream https://github.com/datadotworld/tap-redshift.gitRun the command below to install packages required:
$ pip install -e .Run tests:
$ python setup.py testTo test and see how the tap-redshift works, you'll need to provide a set of database config to connect to.
From the project root, create a config.json file. Content should look like;
{
"host": "REDSHIFT_HOSTT",
"port": "REDSHIFT_PORT",
"dbname": "REDSHIFT_DBNAME",
"user": "REDSHIFT_USER",
"password": "REDSHIFT_PASSWORD",
"table_schema": "REDSHIFT_TABLE_SCHEMA"
}The table_schema key is optional as public is used as default.
Try to write a test that reproduces the problem you're trying to fix or describes a feature that you want to build. Add tests to spec.
We definitely appreciate pull requests that highlight or reproduce a problem, even without a fix.
Implement your feature or bug fix. Make sure that all tests pass without errors.
Also, to make sure that your code follows our coding style guide and best practices, run the command:
$ flake8Make sure git knows your name and email address:
git config --global user.name "Your Name"
git config --global user.email "contributor@example.com"Writing good commit logs is important. A commit log should describe what changed and why.
git add ...
git commitgit push origin my-feature-branchGo to https://github.com/[YOUR_GITHUB_NAME]/tap-redshift.git and select your feature branch. Click the 'Pull Request' button and fill out the form. Pull requests are usually reviewed within a few days.
Checklist:
- Build passes
toxverification (all tests across versions, test coverage, and code style) - Version number is correct in
tap_redshift/__init__.py - All docs are updated (primarily
README.rst)
Release process:
- Create a GitHub release (and respective tag)
- Push respective tag to
releasebranch (i.e.git push origin [tag]^{}:release)
NOTE: tap-redshift is released to PyPI and DockerHub at the same time.
Thank you in advance, for contributing to this project!