14 | | See also: |
| 14 | == GRASS GIS programming best practice == |
| 15 | |
| 16 | There are many unwritten rules how GRASS modules should work, what they should do and what they shouldn't do. There is always some reason why some things are considered as "good" or "bad", still they are just noted in some long GRASS developer mailing list conversations. These pages here aim at collecting such ideas which are floating around in the [http://lists.osgeo.org/mailman/listinfo/grass-dev GRASS-dev] mailing list (and other places) to help new module developers/bugfixers to understand many little tricks how GRASS modules should work. |
| 17 | |
| 18 | ''New list item adding guide'' |
| 19 | |
| 20 | List items should be short and general. Add only things that are relevant to all modules or module groups. There should be reason why such rule/hint exists - add reference to ML archive thread or short description why such rule is important. Look into SUBMITING documentation above for already existing specific rules. Feel free to add code/pseudocode samples, if they apply. |
| 21 | |
| 22 | == GRASS best practice list (unsorted) == |
| 23 | * Read the SUBMITTING rules above |
| 24 | * All GRASS modules should accept map names in format "map@mapset". http://lists.osgeo.org/pipermail/grass-dev/2008-February/035629.html |
| 25 | * Module should '''not''' write/change maps in other mapsets than current mapset. http://lists.osgeo.org/pipermail/grass-dev/2008-February/035637.html |
| 26 | |
| 27 | |
| 28 | == See also == |