Changes between Version 23 and Version 24 of Documentation/DevelopmentCenter/CreateNewPluginUsingVS


Ignore:
Timestamp:
07/25/14 13:46:56 (8 years ago)
Author:
abeham
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Documentation/DevelopmentCenter/CreateNewPluginUsingVS

    v23 v24  
    102102  * `..\..\bin` for projects inside the trunk
    103103  * `..\..\..\..\trunk\sources\bin\` for projects inside the branches directory
    104  * We typically use pre-build events for automatic versioning. This expects a `Plugin.cs.frame` and `Properties\AssemblyInfo.cs.frame` file to be present in your project (see below). It will replace the version placeholder with the SVN version and overwrite the respective .cs file. Note that you must at least add your code in the working copy for this to work. Typically, these are the pre-build commands:
     104 * We typically use pre-build events for automatic versioning. This expects a `Plugin.cs.frame` and `Properties\AssemblyInfo.cs.frame` file to be present in your project (see below "Create frame files"). Typically, this is the pre-build command:
    105105{{{
    106106set Path=%Path%;$(ProjectDir);$(SolutionDir)
     
    121121=== Create frame files ===
    122122Each HeuristicLab plugin has two frame template files, AssemblyInfo.cs.frame and Plugin.cs.frame. We use these .frame files and `SubWCRev` to automatically convert those into .cs files and add the repository version number to the revision-version.
    123  * AssemblyInfo.cs.frame
    124    * AssemblyVersion --> if this one changes all dependent plugins must be rebuilt as well, should be set to e.g. 3.3.0.0 and touched only again when major or minor version changes
    125    * AssemblyFileVersion --> not relevant for build process, should be set to e.g. 3.3.10.$WCREV$
     123 * AssemblyInfo.cs.frame --> create by duplicating AssemblyInfo.cs
     124   * Make sure AssemblyTitle, AssemblyDescription, etc. are all set
     125   * AssemblyVersion --> should be set to e.g. 3.3.0.0 and touched only when major or minor version changes
     126   * AssemblyFileVersion --> should be set to e.g. 3.3.10.$WCREV$
    126127 * Plugin.cs.frame
    127128   * Used to replace your plugin version number with the build number on SVN commit, e.g. 3.3.10.$WCREV$
     
    129130
    130131=== Configuring the plugin file ===
    131  * Plugin attribute [Plugin("HeuristicLab.Problems.Mine", "3.3.0.$WCREV$")]
    132  * PluginDependencies --> Please make sure that you list all referenced plugins. There is a unit test that checks if you have included all or if you have specified too many
    133    * Version numbers: Major and minor must be set for all plugins, e.g. 3.3 or 3.4
     132 * Plugin attribute, e.g. [Plugin("HeuristicLab.Problems.Mine", "Description of my problem", "3.3.10.$WCREV$")]
     133 * PluginDependencies --> Please make sure that you list all referenced plugins. There is a unit test that checks if you have included all or if you have specified too many (your plugin must be referenced by the unit test project)
     134   * Version numbers: Major and minor must be used for HeuristicLab plugins, e.g. 3.3 or 3.4, additional version information may be required for some external libraries, e.g. [PluginDependency("HeuristicLab.ALGLIB", "3.7.0")]
    134135
    135136=== Trunk integration ===