-
Notifications
You must be signed in to change notification settings - Fork 12
Contributor's cheatsheet
Your plugin is approved for inclusion in the ecosystems, great !
Here is a lightning-quick rundown of the technical steps between you and an inclusion in the ecosystems. Note this is a summary, don't hesitate to look up the rest of the documentation.
You need to build one artifact for every flavor of Eclipse × Scala × Scala-IDE you want to distribute your plugin for. For each flavor (and therefore each build), the script should point to [[the right base
update site|Ecosystem organisation]] of the Scala-IDE team's server.
A simple way to do that is:
- have a generic Maven build script with as lax a version dependency on the Scala-IDE toolchain (Eclipse × Scala × Scala-IDE) you can afford.
- instrument it with the version-hardening profile we provide.
- have a bash script that launches as many builds as desired flavors for that Maven script, overriding the update sites for each flavor using command-line options.
One example of such a script is the one for Scala-test.
Once you have artifacts built for every flavor, and once you have published them to an update site, write a feature configuration file for your plugin, according to the documented format. Submit it as a pull request against this repository.
Your new plugin should appear in the ecosystems as soon as your feature file is merged and a rebuild is triggered. You can use the Ecosystem status page for diagnostics.
To ensure 0-day availability of your plugin against new versions of the Scala-IDE, have a continuous build that sources [[the next/
hierarchy of upcoming Scala-IDE versions|Plugin-maintenance-and-update]]. The potential failure of that build will let you know if a forthcoming version of Scala-IDE could break your plugin before anybody else knows.
Upcoming versions of the Scala-IDE and more generally, new releases to the next/
subtree will be announced on the Scala-IDE Dev mailing list.
1. The Scala Developer's Perspective
2. The Plugin Contributor's Perspective
3. Technical Documentation