X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/c82fdf8e0fd4e5a8f2d831592d5e1fe13e1fe558..d6da1499fc7c86a5bb175a1bf0bf974c36003523:/CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c5a636569..474c80b4f 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -10,6 +10,7 @@ development to check that your code matches our guidelines: ``` bundle exec rubocop +bundle exec rake eslint bundle exec erblint . ``` @@ -32,7 +33,7 @@ functionality. You can run the existing test suite with: ``` -bundle exec rake test +bundle exec rails test:all ``` You can view test coverage statistics by browsing the `coverage` directory. @@ -40,6 +41,14 @@ You can view test coverage statistics by browsing the `coverage` directory. The tests are automatically run on Pull Requests and other commits with the results shown on [Travis CI](https://travis-ci.org/openstreetmap/openstreetmap-website). +## Static Analysis + +We also perform static analysis of our code. You can run the analysis yourself with: + +``` +bundle exec brakeman -q +``` + ## Comments Sometimes it's not apparent from the code itself what it does, or, @@ -54,6 +63,22 @@ might be difficult to understand what the code does, why it does it and why it should be the way it is. * Check existing comments to ensure that they are not misleading. +## i18n + +If you make a change that involve the locale files (in `config/locales`) then please +only submit changes to the `en.yml` file. The other files are updated via +[Translatewiki](https://translatewiki.net/wiki/Translating:OpenStreetMap) and should +not be included in your pull request. + +### Nominatim prefixes + +I18n keys under the `geocoder.search_osm_nominatim` keyspace are managed by the +Nominatim maintainers. From time to time they run stats over the Nominatim +database, and update the list of available keys manually. + +Adding or removing keys to this list is therefore discouraged, but contributions +to the descriptive texts are welcome. + ## Code Documentation To generate the HTML documentation of the API/rails code, run the command