SharpDevelop Community

Get your problems solved!
Welcome to SharpDevelop Community Sign in | Join | Help
in Search

Laputa

This is a mirror of http://laputa.sharpdevelop.net/, the core team's central news blog.

August 2008 - Posts

  • StyleCop Addin

    This addin integrates Microsoft StyleCop into SharpDevelop. StyleCop only supports C#, and this addin has been tested against StyleCop 4.3, earlier versions won't work.

    Features

    • Line highlighting of the warnings found
    • Change StyleCop settings on a per-project basis, copying from a master file you can also configure
    • Run as part of the normal build process or on-demand from the project menu

    So how do you run StyleCop? Simply from the context menu of the current C# project:

    This will result in an error (given that you haven't installed StyleCop yet):

    Therefore please download the latest version of StyleCop and install it. Note that you must install the MSBuild integration:

    Once installed, you have to tell SharpDevelop where to find it. This is done in the Tools / Options dialog:

    Click on "Find StyleCop path" and go to the MSBuild directory:

    Now SharpDevelop knows how to find StyleCop, all you have to do is re-run the StyleCop inspection of your project. In my sample project this results in quite a few warnings:

    As you might not go d'accord with the default style checks, you can manipulate the StyleCop settings right from your current C# project:

    Those rules are documented in StyleCop.

    Posted Aug 22 2008, 09:03 AM by Laputa
    Filed under:
  • Which Version of SharpDevelop Supports Which Version of Subversion?

    Because the question keeps coming up repeatedly in the forum, I want to repeat the most important pieces of advice from the last thread in this blog post. Firstly and most importantly:

    If you use SharpDevelop 2.x, you must use TortoiseSVN 1.4.x.
    If you use SharpDevelop 3.x, you must use TortoiseSVN 1.5.x.

    So why is this important? Well, Subversion 1.5 does change the working copy format, therefore older clients cannot read the working copy anymore. And why is this important to SharpDevelop? Daniel continues to explain:

    SharpDevelop uses its own copy of the Subversion library for marking files as added/removed/etc. This can upgrade the working copy to the 1.5 format.

    However, SharpDevelop does not have it's own commit dialog - we simply start TortoiseSVN.

    So there are two Subversion libraries used by SharpDevelop: the one we ship for local operations, and the one shipped with TortoiseSVN for commit etc. Because the Subversion 1.4 library cannot read working copies touched by the 1.5 library, you run into this kind of problem when either TortoiseSVN or SharpDevelop is too old.

    To sum up: SharpDevelop 2.x ships with libraries that are compatible with Subversion 1.4 and requires TortoiseSVN 1.4 for UI. Whereas version 3.0 of SharpDevelop ships with (different) libraries that are compatible with Subversion 1.5 and requires TortoiseSVN 1.5 for UI.

    So will there be an upgrade for SharpDevelop 2.x to support Subversion 1.5? This was a hotly debated issue, however, in the end it boiled down to the following question: do we want to ship two almost identical versions of SharpDevelop 2.2 that only differ in the version of the included Subversion library (because we would have to support both camps)? As that would create quite a bit of confusion, we decided to leave 2.2 as is and support Subversion 1.5 only in SharpDevelop 3.0.

    Posted Aug 20 2008, 09:01 PM by Laputa
    Filed under:
  • TortoiseSVN Not Found on x64 Computers

    If you receive the following error message

    but have TortoiseSVN installed, then you have run into the following snag: SharpDevelop 3.0 is explicity marked as 32 Bit application, thus it cannot use the x64 version of TortoiseSVN.

    Solution: install TortoiseSVN 32 Bit. It can be used in parallel with the x64 version.

    Posted Aug 19 2008, 10:00 PM by Laputa
    Filed under:
  • SharpDevelop On a Memory Stick

    Running SharpDevelop on USB thumb drives has been possible for a long time. What is new in version 3.0 though is that the settings that usually go into the user's profile can live directly on the memory stick - allowing you to take your settings with you at all times. Here is the procedure:

    Download SharpDevelop 3.0 and perform a standard installation on Windows. By default the installation location (on an x64 machine) will be the following:

    Simply copy the 3.0 directory to your memory stick, and then open the \bin directory there:

    There, you have to open SharpDevelop.exe.config - and search for the appSettings section which by default looks like this:

     <appSettings>
      <!-- Use this configuration setting to store settings in a directory relative to the location
           of SharpDevelop.exe instead of the user's profile directory. -->
      <!-- <add key="settingsPath" value="..\Settings" /> -->
      
      <!-- Use this setting to specify a different path for the code completion cache.
            The cache contains information about referenced assemblies to speed up loading
            the information on future SharpDevelop starts. -->
      <!-- <add key="domPersistencePath" value="..\DomCache" /> -->
      
      <!-- Use this setting to disable the code completion cache. Code completion will still be
           available, but take longer to load and use more RAM. -->
      <!-- <add key="domPersistencePath" value="none" /> -->
     </appSettings>

    The comments tell you what to do, basically uncomment settingsPath and domPersistencePath:

    <add key="settingsPath" value="..\Settings" />
    <add key="domPersistencePath" value="..\DomCache" />

    Save the file and you, SharpDevelop and your settings are ready to go. Note that once started the two directories show up in the directory tree:

    Posted Aug 16 2008, 05:18 PM by Laputa
    Filed under:
Powered by Community Server (Commercial Edition), by Telligent Systems
Don't contact us via this (fleischfalle@alphasierrapapa.com) email address.