.NET API Portability
This repository contains the source code for .NET Portability Analyzer tools and dependencies.
Branch | Build Status |
---|---|
master | |
dev |
For a quick introduction, check out this video on Channel 9:
There is a Visual Studio extension available for VS 2017 and VS 2019: .NET Portability Analyzer
Using this Repository
See our contributing guide for instructions to build and run from the source code in this repo.
Sample usage to run the analysis from the command line:
./init.ps1
dotnet build src/ApiPort/ApiPort/ApiPort.csproj
dotnet bin/Debug/ApiPort/netcoreapp2.1/ApiPort.dll -- listTargets
dotnet bin/Debug/ApiPort/netcoreapp2.1/ApiPort.dll -- analyze -f Foo.dll -r HTML
If using bash for your shell, for convenience you may create an alias command adding the following to your ~/.bash_profile
. Replace {dotnet-apiport-folder}
with the path where you cloned the repo.
alias apiport="dotnet {dotnet-apiport-folder}/bin/Debug/ApiPort/netcoreapp2.1/ApiPort.dll"
This will allow you to use apiport globally from the command line: apiport analyze -f Foo.dll -r HTML
Documentation
- Introduction
- Platform Portability
- Breaking Changes
- .NET Portability Analyzer (Console application)
- .NET Portability Analyzer (Visual Studio extension)
Projects
Project | Description |
---|---|
ApiPort | Cross-platform console tool to access portability service |
ApiPort.Vsix | Visual Studio Extension |
Microsoft.Fx.Portability | Provides common types for API Port |
Microsoft.Fx.Portability.MetadataReader | Implements a dependency finder based off of System.Reflection.Metadata. The library will generate DocIds that conform to these specifications. |
Microsoft.Fx.Portability.Offline | Provides access to data in an offline setting so network calls are not needed |
Microsoft.Fx.Portability.Reporting.Excel | Provides support for an Excel spreadsheet report for ApiPort |
Microsoft.Fx.Portability.Reporting.Html | Provides support for an HTML report for ApiPort |
Microsoft.Fx.Portability.Reporting.Json | Provides support for a JSON reporter for ApiPort |
Downloads
Location | |
---|---|
ApiPort CLI | ApiPort Download |
Visual Studio Extension | Open VSIX Gallery |
How to Engage, Contribute and Provide Feedback
Here are some ways to contribute:
- Update/Add recommended changes
- Try things out!
- File issues
- Join in design conversations
Want to get more familiar with what's going on in the code?
Looking for something to work on? The list of up-for-grabs issues is a great place to start.
Related Projects
For an overview of all the .NET related projects, have a look at the .NET home repository.
License
This project is licensed under the MIT license.