Skip to content

Commit

Permalink
Added md files
Browse files Browse the repository at this point in the history
  • Loading branch information
RicoSuter committed Nov 20, 2015
1 parent dcfea8f commit 4ebf3c8
Show file tree
Hide file tree
Showing 3 changed files with 67 additions and 2 deletions.
11 changes: 9 additions & 2 deletions Readme.txt → Installation.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
How to use the source code:

- Before opening the solution, run the RestorePackages.bat file

Explanation:
Expand All @@ -8,13 +9,16 @@ How to use the source code:

How to debug the extension:
IMPORTANT: Uninstall the "Exceptional" extension first

1. Open the "Properties" of the "Exceptional" project in the solution
2. Go to the "Debug" section, select "Debug" as configuration and change the following settings:
- Start external program: Select your Visual Studio application "devenv.exe"
- Command line arguments:
/ReSharper.Plugin "PATH/TO/SOURCES/Exceptional/bin/Debug/ReSharper.Exceptional.dll"

/ReSharper.Plugin "PATH/TO/SOURCES/Exceptional/bin/Debug/ReSharper.Exceptional.dll"

How to release a new version:

1. Update extension version in Exceptional.nuspec and AssemblyInfo.cs if necessary
2. Rebuild the whole solution in "Release" configuration
3. Run NuGet/Build.bat
Expand All @@ -23,9 +27,12 @@ How to release a new version:
6. Push changes (also new NuGet package) to Git

What to look for in pull requests:

- Check with community if feature makes sense
- Check that the changes do not decrease performance (this is very important!)

Log files to find problem why exception crashed:

- The ReSharper log files can be found here:
C:\Users\USERNAME\AppData\Local\JetBrains\ReSharper\v8.2\ExceptionStorage

C:\Users\USERNAME\AppData\Local\JetBrains\ReSharper\v8.2\ExceptionStorage
34 changes: 34 additions & 0 deletions LICENSE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# Microsoft Public License (Ms-PL)

This license governs use of the accompanying software. If you use the software, you accept this license. If you do not accept the license, do not use the software.

1\. Definitions

The terms "reproduce," "reproduction," "derivative works," and "distribution" have the same meaning here as under U.S. copyright law.

A "contribution" is the original software, or any additions or changes to the software.

A "contributor" is any person that distributes its contribution under this license.

"Licensed patents" are a contributor's patent claims that read directly on its contribution.

2\. Grant of Rights

(A) Copyright Grant- Subject to the terms of this license, including the license conditions and limitations in section 3, each contributor grants you a non-exclusive, worldwide, royalty-free copyright license to reproduce its contribution, prepare derivative works of its contribution, and distribute its contribution or any derivative works that you create.

(B) Patent Grant- Subject to the terms of this license, including the license conditions and limitations in section 3, each contributor grants you a non-exclusive, worldwide, royalty-free license under its licensed patents to make, have made, use, sell, offer for sale, import, and/or otherwise dispose of its contribution in the software or derivative works of the contribution in the software.

3\. Conditions and Limitations

(A) No Trademark License- This license does not grant you rights to use any contributors' name, logo, or trademarks.

(B) If you bring a patent claim against any contributor over patents that you claim are infringed by the software, your patent license from such contributor to the software ends automatically.

(C) If you distribute any portion of the software, you must retain all copyright, patent, trademark, and attribution notices that are present in the software.

(D) If you distribute any portion of the software in source code form, you may do so only under this license by including a complete copy of this license with your distribution. If you distribute any portion of the software in compiled or object code form, you may only do so under a license that complies with this license.

(E) The software is licensed "as-is." You bear the risk of using it. The contributors give no express warranties, guarantees or conditions. You may have additional consumer rights under your local laws which this license cannot change. To the extent permitted under your local laws, the contributors exclude the implied warranties of merchantability, fitness for a particular purpose and non-infringement.



24 changes: 24 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Exceptional for ReSharper

Exceptional is an extension for ReSharper which analyzes thrown and documented C# exceptions and suggests improvements.

## Motivation

When working with a code base - whether it is a small one or a big one - developers constantly encounter issues caused by wrong exception handling. There may be an excellent exception handling policy, but it is the developer who must execute this policy on its own code. Even with no policy defined, there are good practices on how to properly handle exceptions. This extension allows you to seamlessly apply these good practices with a couple of key strokes.

Generally, the public API should be documented and thrown exceptions should be part of this documentation. But even if documenting thrown exceptions is pretty easy, the maintenance of the code that is using a particular method or property is not. This is where this extension comes into play: The extension analyzes call sites and provides hints on exceptions thrown from that invocations. If an exception is either not caught or not documented then you will be proposed to fix this problem. The extension also checks other good practices, for example that an inner exception is provided when rethrowing a new exception.

## Installation

Requires ReSharper v8.2 or v9

- Open the ReSharper menu in Visual Studio and select Extension Manager...
- Search for Exceptional and install the extension

Open the menu ReSharper / Options... / Exceptional to configure the extension.

Check out the extension in the ReSharper plugin gallery:

- Exceptional for ReSharper 8 in the plugin gallery
- Exceptional for ReSharper 9 in the plugin gallery
- Exceptional for ReSharper 10 in the plugin gallery

0 comments on commit 4ebf3c8

Please sign in to comment.