data-services/geocoder/CONTRIBUTING.md

52 lines
2.7 KiB
Markdown
Raw Normal View History

2015-06-24 23:31:42 +08:00
How to contribute
============
2015-10-19 21:41:22 +08:00
# Contributions
2015-06-25 00:55:10 +08:00
2015-06-26 22:10:44 +08:00
If you're interested in contributing to any of the different sections of the data-services geocoder, please submit a Pull Request with the following information:
* If you're adding new data, your PR must include:
* The source of the data
* The file itself or the URL from which it can be retrieved
* The license of the dataset
* The SQL file that includes the changes to be performed in the different scripts for generating the geocoding table with your new data
* An updated README.md with the new data sources or any new step that might be necessary
* If you're editing any of the geocoding functions, your PR must include:
* The updated SQL file which contains the function
* An updated README.md with the new function information or any new step that might be necessary
2015-10-19 21:41:22 +08:00
## Documentation for changes
There may be different kind of changes in the dataset:
* Refreshing current data in order to update it to the last source version or adding new sources
* Fixing or editing any of the current functions
All of them require:
* An issue in the data-services repo to be opened to keep the record of the task
* Any change must be tested in advance, by checking the results that we expect manually but also by running the automatic test suite that will take care of the most delicate data
* Any change must be reviewed by at least one person involved in the whole geocoder process (as @iriberri). Please, ping somebody in your Pull Requests
**Changes regarding data:**
Remember to make a backup of the current data running in your production environment before you do any changes.
Any edition of the data must be performed via SQL queries in order to be run in the build scripts for each section. In order to build the production table, please, edit the build SQL functions as needed, and create a new table in production by running them.
This method will allow us to make sure that the data that we have in a production environment is totally reproducible just by running the setup scripts.
**Changes regarding functions:**
If you have a way to improve how a function works, please reproduce the environment (the involved tables) and test the query in your end.
We need to make sure that by changing the function we are maintaining some basic priority rules which are currently being taken into account in the geocoding functions (i.e. geocoding "New York" should return "New York" in the NY state, USA, as it's the New York with more population in the World).
# Issues
2015-06-26 22:10:44 +08:00
If you have found any issue that you want to report, please [open a new issue in the repository](https://github.com/CartoDB/data-services/issues/new).
Thank you!