.NET API Portability

此存储库包含. net 可移植性分析器 ( VSIX 和控制台) 库和工具。【This repo contains .NET Portability Analyzer (VSIX and Console) libraries and tools. 】

Github stars Tracking Chart

.NET API 的可移植性

此存储库包含.NET Portability Analyzer工具和依赖项的源代码。此存储库包含 .NET 可移植性分析器工具和依赖项的源代码。

使用这个版本库

Windows

VS2017和VS2015有一个Visual Studio扩展: .NET可移植性分析器

下载并自行构建:

  1. 使用.NET Core Workload安装 Visual Studio 2017
  2. 构建:
    • Visual Studio: PortabilityTools.sln
    • Powershell:.\build.ps1 -Configuration Debug -Platform AnyCPU

Linux/Mac

  1. 安装 .NET Core SDK
  2. 执行: build.sh
  3. 转至: bin/Debug/ApiPort/netcoreapp1.0
  4. 通过执行以下代码运行ApiPort: dotnet ApiPort.dll
    • 示例: dotnet ApiPort.dll listTargets
    • 示例: dotnet ApiPort.dll分析-f Foo.dll -r HTML

文档

项目

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

构建

Location
Libraries MyGet
Visual Studio Extension Open VSIX Gallery

如何参与,贡献和提供反馈

以下是一些贡献方式:

想要更熟悉代码中发生了什么?

寻找一些工作? 争夺问题 是一个很好的开始。

相关项目

有关所有.NET相关项目的概述,请查看 .NET家庭存储库

许可证

此项目根据 MIT许可证获得许可。

Overview

Name With Ownermicrosoft/dotnet-apiport
Primary LanguageC#
Program languageC# (Language Count: 4)
PlatformLinux, Mac, Windows
License:MIT License
Release Count14
Last Release Namev2.8.10-alpha (Posted on 2020-11-02 09:57:13)
First Release Namev1.1.0.alpha.5 (Posted on )
Created At2014-12-12 18:04:11
Pushed At2022-11-15 23:45:03
Last Commit At
Stargazers Count1k
Watchers Count195
Fork Count180
Commits Count1.3k
Has Issues Enabled
Issues Count333
Issue Open Count0
Pull Requests Count619
Pull Requests Open Count0
Pull Requests Close Count69
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private

.NET API Portability

Note: We're in the process of deprecating API Port in favor of integrating binary analysis directly into .NET Upgrade Assistant. In the upcoming months, we're going to shutdown the backend service of API Port which will require to use the tool in offline mode. The instructions to use API Port in offline mode can be found here.

This repository contains the source code for .NET Portability Analyzer tools and
dependencies.

Branch Build Status
main Build Status
dev Build Status

For a quick introduction, check out this video on Shows:

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

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

Privacy:

We only send .NET APIs and its caller user assembly names to the service to analyze for portability and generate report. For more information, check out our privacy policy.

How to Engage, Contribute and Provide Feedback

Here are some ways to contribute:

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.

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.

To the top