198 | | == Managing a plugin in OSM SVN == |
199 | | There is an SVN repository for JOSM plugins in the main OSM SVN repository, see [http://svn.openstreetmap.org/applications/editors/josm/plugins/ here]. Note that this repository is different from the [http://josm.openstreetmap.de/svn/ main JOSM SVN repository] which only manages the JOSM core. |
| 198 | == Publishing a plugin == |
| 199 | The plugin list a user sees ([http://josm.openstreetmap.de/plugin here]) is automatically generated at regular intervals (currently about 10 minutes) from plugin JAR files that are located in [http://svn.openstreetmap.org/applications/editors/josm/dist/ josm/dist] on the OSM.org SVN repository (referred to as "internal" plugins) and from links that are embedded in the [[wiki:Plugins]] page (referred to as "external" plugins). Each method has advantages and disadvantages. |
| 200 | |
| 201 | Advantages of hosting code externally: |
| 202 | * Use VCS other than SVN, such as Git or Mercurial |
| 203 | * Take advantage of robust features provided by services such as GitHub (forking, pull requests, tickets, change commenting, etc.) |
| 204 | |
| 205 | Disadvantages of hosting code externally: |
| 206 | * Strings are less likely to be [[Translations|translated]] due to reduced visibility |
| 207 | * Changes in the core aren't likely to be propagated to the plugin unless done so by the plugin author(s) |
| 208 | * Shortcuts won't be listed in [[DevelopersGuide/ShortcutsList|the overview]] and thus will very likely be used by others |
| 209 | |
| 210 | Disadvantages of hosting JAR externally: |
| 211 | * It is marked as "bad external" in JOSM plugin list |
| 212 | * There is no automatic history handling for older JOSM versions |
| 213 | |
| 214 | === Managing a plugin in OSM.org SVN === |
| 215 | There is an SVN repository for JOSM "internal" plugins in the main OSM.org SVN repository, see [http://svn.openstreetmap.org/applications/editors/josm/plugins/ here]. Note that this repository is different from the [http://josm.openstreetmap.de/svn/ main JOSM SVN repository] which only manages the JOSM core. |