doc/GeneratorMigration/Library_Inventory_Guide.md
This document outlines how to generate and maintain the inventory of libraries in the Azure SDK for .NET repository.
The library inventory helps us:
To generate the library inventory:
Library_Inventory.ps1 script from the repository root:pwsh doc/GeneratorMigration/Library_Inventory.ps1
The script will:
sdk/ directorydoc/GeneratorMigration/Library_Inventory.md)If you need JSON output for programmatic use, use the -Json flag:
pwsh doc/GeneratorMigration/Library_Inventory.ps1 -Json
Library_Inventory.json file with the raw inventory dataThe script uses the following logic to categorize libraries:
The script looks for evidence of TypeSpec usage in the following order:
Direct TypeSpec indicators:
tsp-location.yaml file with an emitterPackageJsonPath valuesrc/tspconfig.yaml filesrc/tsp directory.tsp files in the src directorySwagger indicators:
src/autorest.md filesrc/Generated directory exists<auto-generated/> comment headersIf none of these TypeSpec indicators are found but there is evidence of code generation
(like a src/Generated directory or files with <auto-generated/> markers), the script assumes Swagger.
The inventory markdown file provides:
The migration tables use ✅ emoji to indicate the generator type:
Important:
tsp-location.yaml file. Libraries without this file are not included in the migration tracking tables.Libraries still on Swagger/Autorest are listed in separate "Still on Swagger" tables and are not included in the migration tables.
The migration status shows the number of libraries migrated to the new emitter out of the total, along with the percentage.
The inventory should be updated whenever:
Simply run the script again to regenerate the inventory files.