<commit_before># .NET API Portability

This repository contains the source code for .NET Portability Analyzer tools 
and dependencies. This is a work in progress, and does not currently contain 
all of the components that we plan on open sourcing. Make sure to watch this 
repository in order to be notified as we make changes to and expand it.

Today, the repository contains the following components:

* **src/ApiPort** Console tool to access portability webservice.  *Does not analyze assemblies yet.*
* **src/Microsoft.Fx.Portability** Provides common types for API Port.
* **src/Microsoft.Fx.Portability-net45** A project targeting .NET 4.5 of Microsoft.Fx.Portability to allow desktop apps to directly reference it.  *Currently a work-around for beta VS 2015 behavior.*
* **src/Microsoft.Fx.Portability.MetadataReader** Implements a dependency finder based off of [System.Reflection.Metadata](https://github.com/dotnet/corefx/tree/master/src/System.Reflection.Metadata)
* **tests/Microsoft.Fx.Portability** Provides tests for Microsoft.Fx.Portability.
* **tests/Microsoft.Fx.Portability.Metadat** Provides tests for Microsoft.Fx.Portability.MetadataReader.  *These are not included in the solution.  Roslyn and System.Reflection.Metadata both rely on System.Collections.ImmutableCollections, but are using different prerelease versions.  There are breaking API changes that don't allow both to be used at the same time.*

More libraries are coming soon. Stay tuned!

## Using this Repository

1. Install the following:
    1. [Visual Studio 2015](http://www.visualstudio.com/en-us/downloads/visual-studio-2015-downloads-vs.aspx)
    2. [K Version Manager (KVM)](https://github.com/aspnet/home#install-the-k-version-manager-kvm)
    3. [K Runtime (KRE)](https://github.com/aspnet/home#install-the-k-runtime-environment-kre)

### Building from Commandline
1. Go to `src\Microsoft.Fx.Portability`
2. Run command: `kpm restore`
3. Run command: `kpm pack`
    
### Building from Visual Studio
1. Open PortabilityTools.sln in Visual Studio 2015
2. Build the solution
3. The .nupkg should be under the bin/Debug or bin/Release folders

### Running the Tests
1. Go to `tests\Microsoft.Fx.Portability.Tests`<commit_msg>Fix typos in README.md<commit_after># .NET API Portability

This repository contains the source code for .NET Portability Analyzer tools 
and dependencies. This is a work in progress, and does not currently contain 
all of the components that we plan on open sourcing. Make sure to watch this 
repository in order to be notified as we make changes to and expand it.

Today, the repository contains the following components:

* **src/ApiPort** Console tool to access portability webservice.  *Does not analyze assemblies yet.*
* **src/Microsoft.Fx.Portability** Provides common types for API Port.
* **src/Microsoft.Fx.Portability-net45** A project targeting .NET 4.5 of Microsoft.Fx.Portability to allow desktop apps to directly reference it.  *Currently a work-around for beta VS 2015 behavior.*
* **src/Microsoft.Fx.Portability.MetadataReader** Implements a dependency finder based off of [System.Reflection.Metadata](https://github.com/dotnet/corefx/tree/master/src/System.Reflection.Metadata)
* **tests/Microsoft.Fx.Portability.Tests** Provides tests for Microsoft.Fx.Portability.
* **tests/Microsoft.Fx.Portability.MetadataReader.Tests** Provides tests for Microsoft.Fx.Portability.MetadataReader.  *These are not included in the solution.  Roslyn and System.Reflection.Metadata both rely on System.Collections.ImmutableCollections, but are using different prerelease versions.  There are breaking API changes that don't allow both to be used at the same time.*

More libraries are coming soon. Stay tuned!

## Using this Repository

1. Install the following:
    1. [Visual Studio 2015](http://www.visualstudio.com/en-us/downloads/visual-studio-2015-downloads-vs.aspx)
    2. [K Version Manager (KVM)](https://github.com/aspnet/home#install-the-k-version-manager-kvm)
    3. [K Runtime (KRE)](https://github.com/aspnet/home#install-the-k-runtime-environment-kre)

### Building from Commandline
1. Go to `src\Microsoft.Fx.Portability`
2. Run command: `kpm restore`
3. Run command: `kpm pack`
    
### Building from Visual Studio
1. Open PortabilityTools.sln in Visual Studio 2015
2. Build the solution
3. The .nupkg should be under the bin/Debug or bin/Release folders

### Running the Tests
1. Go to `tests\Microsoft.Fx.Portability.Tests`
{'fraction_non_alphanumeric': 0.0952914798206278, 'fraction_numerical': 0.01390134529147982, 'mean_word_length': 4.555417185554172, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 6, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5460869', 'n_tokens_mistral': 1315, 'n_tokens_neox': 1246, 'n_words': 480}