Skip to content
efd82cc
Compare
Choose a tag to compare

2.8.10-alpha

Pre-release
Pre-release

New features:

Exceptions analyzer and report

You may have run into some .NET APIs throw PlatformNotSupportedException or NotImplementedException on some platforms. How to detect that your program uses any of these APIs before migrating your software to the target .NET version so that you won’t run into them at execution time as a surprise? This exception analyzer feature analyzes your binaries and report .NET APIs throw PNSE and NIE exceptions. You can opt-in the feature by specifying “-x” or “--showExceptionApis” command line option. This feature is supported in excel and json report formats. #897

Porting order recommendation

When your application has large number of dependencies, figuring out the porting order maybe challenging due to complex inter-dependencies amount the referenced components. This porting order recommendation feature analyzes the dependency components of a given entrypoint application, uses bottom-up approach to recommend porting order from the leaf components to the root application. You can opt-in the feature by specifying “--entrypoint ” command line option #906

Skip Microsoft .NET assemblies

When you run APIPort against a folder, you may noticed that all the assemblies under the folder are analyzed including the Microsoft .NET assemblies, like system..dll, Microsoft.dll. It is not helpful to analyze these MS assemblies since it’s not actionable for you. In this release, APIPort skips analyzing Microsoft .NET assemblies and report them as “skipped assemblies” in the “unsolved assembly” worksheet of the excel report.

Released ApiPort as DotNet global tool on NuGet.org

You can install ApiPort by command "dotnet tool install --global ApiPort"

Engineering improvement:

Updated ApiPort and portability libraries to .NET Core 3.1

Moved to YAML file based Azure DevOps build pipeline.

efc60d1
Compare
Choose a tag to compare
Pre-release

DotNet Portability Service is the back-end Azure service for ApiPort client tool. We made a new back-end Azure service release in last week. The release includes quite some engineering improvements, including ported Portability Service from .NET Platform code to .NET Core. It is running as self-contained .NET Core App; aligned the service using the same version of portability libraries as APIPort tool does with over 1 year of accumulated changes in the libraries, etc. Even though most of the back-end service updates are not directly visible to customers, this service release enabled some valuable features via APIPort tool, below are a couple of customer visible highlights:

  1. DGML format report
    DGML format report is now available through both APIPort offline and online mode via CLI command now. DGML format report shows the assemblies dependency relationship in graph with the portability percentage summary and capability to drill down to the list of missing .NET APIs per assembly. When your app has complicated dependencies and wants to port it and its dependencies to later .NET Version, making decision of which component to start the porting can be challenging, DGML format report is especially helpful in this situation to show you overall picture visually.
    Sample command to generate DGML format report: apiport analyze -f c:\temp\foo -r DGML -t ".NET Core, Version=3.1"

  2. Fixed some accessibility bugs, with this release, Both APIPort report UI and VS extension meets accessibility level C standard.

If you already have APIPort v2.7.0 client tool, these features should light up automatically. Otherwise, please download it from http://aka.ms/apiportdownload or download Apiport.2.7.0.zip from this release note.

d5e366f
Compare
Choose a tag to compare

2.7.0-alpha

Pre-release
Pre-release

Download

http://aka.ms/apiportdownload

Updates

Functional improvements

  • Made ApiPort tool to be .NET Core Global tool (#790)
  • Added DGML report format support. This feature will be visible when backend service is updated in the near future (#695, #796, #815)
  • Improved accessibility (#783, #792)
  • Moved HTML report generator to a razor library (#742)
  • Added DiagnosticListener to report ServiceProvider (#745)
  • Updated TargetNameParser to understand versions (#757)
  • Reported .Html works on .NET Framework (#751)
  • Updated the HyperLinks to About and Privacy docs on Portability Analyzer Setting are not navigable (#765)
  • Updated the document link in excel report (#807)
  • Fixed Assembly name header name in Excel report (#779)

Fundamental improvements

  • Upgraded .NET Portability libraries from .NET Standard 1.3 to .NET Standard 2.0 (#790)
  • Upgraded ApiPort Console apps to target .NET Core 2.1 and .NET Framework 4.6.1 and upgraded ApiPort VS extension to target .NET Framework 4.6.1 to consume .NET standard 2.0 libraries (#790)
  • Changed IReportWriter.WriteStream to be async (#743)
  • Removed requiring AssemblyReferenceInformation for IDependencyFilter to reduce memory allocation (#784)
  • Added JsonPublicKeyTokenconverter to Serialize PublicKeyToken (#800)
  • Set up some caching in json conversion (#785)
  • Updated Authenticode signing certificate to SHA2 (#826)

Engineering improvements

  • Updated StyleCop.Analyzers and compiler version used (#747)
  • Gathered all our built binaries and symbols at one place (#748)
  • Added support for running tests cross-platform (#746)
  • Fixed LicenseUrl is deprecated warning (#750)
  • Updated to use Full PDB format for net4* projects (#754)
289db1d
Compare
Choose a tag to compare

Updates

Console

  • Update to target .NET Core 2.1

Visual Studio Extension

  • Add support for VS 2019
  • Fixes output path issue when building C++/CLI projects
92e45ec
Compare
Choose a tag to compare

Updates

Console

  • Add support for assemblies that target .NET Standard

Visual Studio Extension

  • Add support for network proxies
  • A number of accessibility features
3995a05
Compare
Choose a tag to compare

Updates

Console

  • Add a dump command to print out the collected APIs
Compare
Choose a tag to compare

Updates

Console and Visual Studio Extension v1.4.0.00199

  • Limit platform target analysis for Excel output format to 15 (due to limit of 26 columns in Excel)
  • Default report output format is no longer static.
Compare
Choose a tag to compare

v1.4.0.alpha.00175

Pre-release
Pre-release

Updates

Console

  • Update breaking change parser
  • Various bug fixes
  • .NET Core support

Visual Studio Extension v1.4.0.00175

  • Changelog
  • Support for Visual Studio 2015 and 2017
  • Support for solution analysis when there are non .NET projects in solution.
Compare
Choose a tag to compare

v1.4.0.alpha.00119

Pre-release
Pre-release

Updates

Console

  • Various bug fixes
  • Update portability service endpoint

Visual Studio Extension v1.3.0.119

Compare
Choose a tag to compare

v1.2.1.alpha.00031

Pre-release
Pre-release

Updates

  • Heuristic to limit customer API collection by only sending APIs that are most likely Microsoft APIs to the web service
  • Target mapper and breaking changes suppression will now pick up configuration from ApiPort directory
  • Fixes to the help message
  • Various bug fixes