Difference between revisions of "Theory Plug-in Developer Documentation"

From Event-B
Jump to navigationJump to search
(New page with info about Eclipse setup and release process)
 
(Fix some links)
Line 17: Line 17:
 
** Open the <code>compSite.xml</code> file, add a <code>&lt;repository&gt;</code> line for the new version and follow the instructions in the file's comments to build the composite repository
 
** Open the <code>compSite.xml</code> file, add a <code>&lt;repository&gt;</code> line for the new version and follow the instructions in the file's comments to build the composite repository
 
** Connect with an SFTP client to <code>web.sourceforge.net</code> (see [https://sourceforge.net/p/forge/documentation/SFTP#for-managing-project-web-space Sourceforge's documentation]) and upload the files built previously (<code>p2.index</code>, <code>compositeArtifacts.jar</code>, <code>compositeContent.jar</code>) in <code>/home/project-web/rodin-b-sharp/htdocs/updates</code>
 
** Connect with an SFTP client to <code>web.sourceforge.net</code> (see [https://sourceforge.net/p/forge/documentation/SFTP#for-managing-project-web-space Sourceforge's documentation]) and upload the files built previously (<code>p2.index</code>, <code>compositeArtifacts.jar</code>, <code>compositeContent.jar</code>) in <code>/home/project-web/rodin-b-sharp/htdocs/updates</code>
* Publish the release notes in the [[Theory Plug-in]] 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)
+
* 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
 
* Announce the release on the Rodin mailing lists rodin-b-sharp-user@lists.sourceforge.net and rodin-b-sharp-announce@lists.sourceforge.net
  
 
[[Category:Developer documentation]]
 
[[Category:Developer documentation]]
 +
[[Category:Theory Plug-in]]

Revision as of 14:52, 14 June 2021

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.target and 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 .target file accordingly

Release checklist

To release a new version of the plug-in:

  • Tag the last commit with the version number (remember to pass the --tags flag to git push to 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 RodinUpdateSite folder from the Subversion repository and import it in Eclipse
    • Open the compSite.xml file, add a <repository> line for the new version and follow the instructions in the file's comments to build the composite repository
    • 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/updates
  • 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