Theory Plug-in Developer Documentation
From Event-B
This page provides some documentation for developers of the Theory plug-in. Documentation for users of the plug-in is available in this page.
Eclipse setup
- Clone the git repository from Sourceforge
- Import the subdirectories of the git repository in Eclipse (each subdirectory corresponds to an Eclipse project providing an Eclipse feature or plug-in)
- Open
org.eventb.theory.feature/org.eventb.theory.feature.targetand click on Set as Active Target Platform, at the top right of the window; this assumes that the Rodin target platform has been downloaded and put in/var/tmp: if this location is not available, or if another version of Rodin is should be targeted, edit the.targetfile accordingly
Release checklist
To release a new version of the plug-in:
- Tag the last commit with the version number (remember to pass the
--tagsflag togit pushto publish it) - On Sourceforge, create a new folder with the version number in the plug-in's directory and upload the files of the update site there (they are built in
org.eventb.theory.repository/target/repository) - Update the composite Eclipse repository that provides the Rodin plug-ins:
- Clone the
RodinUpdateSitefolder from the Subversion repository and import it in Eclipse - Open the
composite/compSite.xmlfile, copy the<repository location="https://rodin-b-sharp.sourceforge.net/updates/Plugin_Theory/X.Y.Z" />line, then update the version number in that line - Open the
composite-archive/compSite.xmlfile and paste the old<repository>line copied previously - Follow the instructions in the files' comments to build the repositories
- Connect with an SFTP client to
web.sourceforge.net(see Sourceforge's documentation) and upload the files built previously (p2.index,compositeArtifacts.jar,compositeContent.jar):- in
/home/project-web/rodin-b-sharp/htdocs/updatesfor the files built fromcomposite/compSite.xml - in
/home/project-web/rodin-b-sharp/htdocs/updates-archivefor the files built fromcomposite-archive/compSite.xml - to speed up the composite site, create a directory with the version number in
/home/project-web/rodin-b-sharp/htdocs/updates/Plugin_Theoryand put in that directory a copy of the filesp2.index,content.xml.xzandartifacts.xml.xzthat were uploaded to Sourceforge in step 2
- in
- Clone the
- Publish the release notes in the Theory Release History page, update the table in the Rodin Platform Releases page and list the release in Template:Dev News (it is included in the front page)
- Announce the release on the Rodin mailing lists rodin-b-sharp-user@lists.sourceforge.net and rodin-b-sharp-announce@lists.sourceforge.net