Community‎ > ‎

New Contributors

All of KaVE is open source and you're quite welcome to contribute to it! This page provides you with some entry points and a getting-started guide. Welcome on board!

Getting Started

  1. Install Visual Studio 2013 and R#9
    (If you are one of our students, get in contact with us for classroom licenses)
  2. Install the License Header Manager from Visual Studio's extension gallery.
    1. Open Tools > Options... > License Header Manager > General.
    2. Ensure that "Automatically insert license headers in new files" is checked.
    3. Apply the settings.
    4. The license header should now automatically be added to new files. If not, hit Alt+L to insert it manually.
  3. Checkout the source code from the KaVE GitHub repository. You may want to create a fork for you to work on, unless you have commit rights to the original repository.
    (If you are one of our students, please send us you GitHub account)
  4. The solution is placed in the feedback-generator subfolder in the repository.
  5. Our project uses NuGet to manage dependencies.

Developing ReSharper Extensions

Debugging ReSharper Extensions

There are two ways of debugging a ReSharper plugins: A slow and a fast way. Unfortunately, going the slow way is necessary, if you change a dependency or an action. Both are statically registered to VS/R# and cannot be updated the fast way. Still, since the slow way is much slower, we recommend you to setup both ways and use whichever appropriate.

Caution: You cannot install our extension in your main Visual Studio instance or the debugger will fail to resolve the symbols.

The Fast Way

Add a .csproj.user file to each of the project KaVE.Commons, KaVE.RS.Commons, and KaVE.VS.FeedbackGenerator. All three files contain the following:

<Project xmlns="">

Adapt 'Exp' to the RootSuffix of your Experimental Instance. Vs12 identifies Visual Studio 2013, which we all currently use.

For details about this debugging process refer to Matt Ellis' "Copy Plugin on Build".

The Slow Way

Debugging R# extension has become more difficult with R#9. We provide a simple script file that helps you with the necessary steps. You find the template "package-and-deploy.bat.example" in the solution's root folder. To prepare debugging, follow these steps:
  1. Configure an Experimental Instance of Visual Studio:
    1. Create a shortcut to Visual Studio
    2. Edit the shortcuts properties and append " /ReSharper.Internal /RootSuffix Exp" to the target.
    3. You can now use this shortcut to start an Experimental Instance, where you install our extension, and debug it from you main Visual Studio instance.
  2. Configure R# Extension Feed:
    1. Create a new folder for your local R# Extension Feed somewhere on your local machine (outside your working copy).
    2. Start the Experimental Instance.
    3. Goto ReSharper > Option...
    4. Select Environment > Extension Manager.
    5. Add an entry pointing to the folder you just created.
    6. Save the change.
  3. Install NuGet to your machine:
    1. Download the NuGet Command-Line Utility.
    2. Place it somewhere on your machine.
    3. Optionally: Add the nuget.exe to you %PATH%.
  4. Prepare our helper script:
    1. Copy "package-and-deploy.bat.example" and rename it to "package-and-deploy.bat".
    2. Open the script for edit:
      1. Change the line "set TARGET=<select local folder>". Insert the path to you new feed folder.
      2. If you didn't add nuget.exe to your %PATH%, change the line starting "nuget.exe pack". Prepend the path to were you placed your nuget.exe.
To actually debug, follow these steps:
  1. Make sure you build our solution in Visual Studio.
  2. Run your "package-and-deploy.bat".
  3. Start the Experimental Instance of Visual Studio (EI).
  4. Select "ReSharper > Extension Manager..." in EI.
  5. Install/Update to the new version of the KaVE extension.
  6. As soon as the installer opens, you can close the EI.
  7. After the installer finished, reopen the EI.
  8. In your main Visual Studio select Debug > Attach... and chose the EI.
  9. Debug as usual.

Setup R# CLT

To run our SST analysis on the command line, you need the R# Command Line Tools (CLT) installed on you machine. Follow these steps (this is the process for R#9, which we use):
  1. Uninstall any old installations of the CLT (if you installed the R#8 CLT via chocolatey, uninstall it there).
  2. Download the current version.
  3. Unblock the ZIP! (Right-click -> Properties -> “This file came from another…”).
    If you do not unblock it, you will receive the strangest DLL loading exceptions later…
  4. Unzip the file to a folder of your choice.
  5. Include this folder in your %PATH% variable.
  6. Start a new command line and enter “inspectcode”.
  7. You should see the version number of the installed CLT and an error that you did not specify a solution. This means you were successful!

Using Our TeamCity

If you're working directly on our repository every pushed commit will trigger a build on our TeamCity (reachable only from within the University network). You can register to it yourself. Please use your real name. Notify us about your registration and we'll add you to the respective projects.