prepare-release

作成者: microsoft

Feature Management .NET SDKのリリースを準備します。ユーザーがリリース準備、バージョン更新、マージPRの作成、プレビューリリース、または安定版について言及した場合に使用します。

npx skills add https://github.com/microsoft/featuremanagement-dotnet --skill prepare-release

Prepare Release

This skill automates the release preparation workflow for the Feature Management .NET SDK project.

When to Use This Skill

Use this skill when you need to:

  • Bump the package version for a new stable or preview release
  • Create merge PRs to sync branches (main → release, preview → release)
  • Prepare all the PRs needed before publishing a new release

Background

Repository Information

  • GitHub Repo: https://github.com/microsoft/FeatureManagement-Dotnet
  • Packages (all 3 are released together with the same version):
    1. Microsoft.FeatureManagement — Base package
    2. Microsoft.FeatureManagement.AspNetCore — ASP.NET Core package
    3. Microsoft.FeatureManagement.Telemetry.ApplicationInsights — Application Insights telemetry package

Branch Structure

  • main – primary development branch for stable releases
  • preview – development branch for preview releases
  • release/v{major} – release branch (e.g., release/v4)

Version Files

The version is defined by <MajorVersion>, <MinorVersion>, <PatchVersion>, and optionally <PreviewVersion> properties in all three .csproj files simultaneously:

  1. src/Microsoft.FeatureManagement/Microsoft.FeatureManagement.csproj
  2. src/Microsoft.FeatureManagement.AspNetCore/Microsoft.FeatureManagement.AspNetCore.csproj
  3. src/Microsoft.FeatureManagement.Telemetry.ApplicationInsights/Microsoft.FeatureManagement.Telemetry.ApplicationInsights.csproj

Each file contains a version block like:

<!-- Official Version -->
<PropertyGroup>
  <MajorVersion>4</MajorVersion>
  <MinorVersion>1</MinorVersion>
  <PatchVersion>0</PatchVersion>
</PropertyGroup>

For preview versions, a <PreviewVersion> line is also present:

<!-- Official Version -->
<PropertyGroup>
  <MajorVersion>4</MajorVersion>
  <MinorVersion>0</MinorVersion>
  <PatchVersion>0</PatchVersion>
  <PreviewVersion>-preview5</PreviewVersion>
</PropertyGroup>

Version Format

  • Stable: {major}.{minor}.{patch} (e.g., 4.1.0)
  • Preview: {major}.{minor}.{patch}-preview{N} (e.g., 4.0.0-preview5)

Quick Start

Ask the user whether this is a stable or preview release, and what the new version number should be. Then follow the appropriate workflow below.


Workflow A: Stable Release

Step 1: Version Bump PR

Create a version bump PR targeting main by running the version bump script:

.\scripts\version-bump.ps1 <new_version>

For example: .\scripts\version-bump.ps1 4.2.0

The script will automatically:

  1. Read the current version from the first .csproj file.
  2. Create a new branch from main named <username>/version-bump-<new_version> (e.g., linglingye/version-bump-4.2.0).
  3. Update <MajorVersion>, <MinorVersion>, <PatchVersion> in all three .csproj files, and remove <PreviewVersion> if present.
  4. Commit, push, and create a PR to main with title: Version bump <new_version>.

When the script prompts Proceed? [y/N], confirm by entering y.

Sample PR: https://github.com/microsoft/FeatureManagement-Dotnet/pull/540

Step 2: Merge Main to Release Branch

After the version bump PR is merged, create a PR to merge main into the release branch by running:

.\scripts\merge-to-release.ps1 <new_version>

For example: .\scripts\merge-to-release.ps1 4.2.0

When the script prompts Proceed? [y/N], confirm by entering y.

Important: Use "Create a merge commit" (not "Squash and merge") when merging this PR to preserve commit history.

Sample PR: https://github.com/microsoft/FeatureManagement-Dotnet/pull/541


Workflow B: Preview Release

Step 1: Version Bump PR

Create a version bump PR targeting preview by running the version bump script with the -Preview flag:

.\scripts\version-bump.ps1 <new_version> -Preview

For example: .\scripts\version-bump.ps1 4.0.0-preview4 -Preview

When the script prompts Proceed? [y/N], confirm by entering y.

Sample PR: https://github.com/microsoft/FeatureManagement-Dotnet/pull/476

Step 2: Merge Preview to Release Branch

After the version bump PR is merged, create a PR to merge preview into the release branch by running:

.\scripts\merge-to-release.ps1 <new_version> -Preview

For example: .\scripts\merge-to-release.ps1 4.0.0-preview4 -Preview

When the script prompts Proceed? [y/N], confirm by entering y.

Important: Use "Create a merge commit" (not "Squash and merge") when merging this PR to preserve commit history.

Sample PR: https://github.com/microsoft/FeatureManagement-Dotnet/pull/477


Review Checklist

Each PR should be reviewed with the following checks:

  • Version is updated consistently across all 3 .csproj files
  • No unintended file changes are included
  • Merge PRs use merge commit strategy (not squash)
  • Branch names follow the naming conventions
  • All CI checks pass

microsoftのその他のスキル

oss-growth
microsoft
OSS成長ハッカーのペルソナ
agent-framework-azure-ai-py
microsoft
Microsoft Agent Framework Python SDK(agent-framework-azure-ai)を使用してAzure AI Foundryエージェントを構築します。AzureAIAgentsProviderを使用した永続的なエージェントの作成、ホスト型ツール(コードインタープリター、ファイル検索、ウェブ検索)の使用、MCPサーバーの統合、会話スレッドの管理、ストリーミング応答の実装時に使用します。関数ツール、構造化出力、マルチツールエージェントをカバーします。
development
airunway-aks-setup
microsoft
AKS上でAI Runwayをセットアップ — ベアクラスターからモデル実行まで。クラスター検証、コントローラーインストール、GPU評価、プロバイダー設定、初回デプロイをカバー。対象: 「AI Runwayのセットアップ」「AKSクラスターのオンボード」「AI Runwayのインストール」「airunway setup」「AKSへのモデルデプロイ」「AKSでのGPU推論」「AKSでのKAITOセットアップ」「AKSでのLLM実行」「AKSでのvLLM」「AKSでのモデルサービング設定」「AI Runwayコントローラー」。
devops
appinsights-instrumentation
microsoft
Azure Application Insightsを使用したWebアプリのインストルメンテーションに関するガイダンス。テレメトリパターン、SDKセットアップ、構成リファレンスを提供します。対象: アプリのインストルメンテーション方法、App Insights SDK、テレメトリパターン、App Insightsとは何か、Application Insightsガイダンス、インストルメンテーション例、APMベストプラクティス。
devops
applicationinsights-web-ts
microsoft
Application Insights JavaScript SDK(@microsoft/applicationinsights-web)を使用してブラウザ/Webアプリを計測します。Real User Monitoring(RUM)— ページビュー、クリック、AJAX/fetch依存関係、例外、カスタムイベント、およびバックエンドのOpenTelemetryトレースに関連付けられたブラウザ側のGenAIエージェントトレースに使用します。SDKローダースクリプトとnpmセットアップ、フレームワーク拡張機能(React、React Native、Angular)、Click Analytics、テレメトリ初期化子、およびブラウザから生成されるエージェント/ツール/モデルスパンのOTel GenAIセマンティック規約をカバーします。
devops
azure-ai-anomalydetector-java
microsoft
Azure AI Anomaly Detector SDK for Javaを使用して異常検出アプリケーションを構築します。単変量/多変量異常検出、時系列分析、またはAIを活用したモニタリングを実装する際に使用します。
development
azure-ai-language-conversations-py
microsoft
azure-ai-language-conversations Python SDKを使用して会話言語理解(CLU)を実装します。ConversationAnalysisClientを使用して会話の意図とエンティティを分析する場合、NLP機能を構築する場合、またはアプリケーションに言語理解を統合する場合に使用します。
development
azure-ai-ml-py
microsoft
Azure Machine Learning SDK v2 for Python。MLワークスペース、ジョブ、モデル、データセット、コンピュート、パイプラインに使用します。 トリガー: 「azure-ai-ml」、「MLClient」、「ワークスペース」、「モデルレジストリ」、「トレーニングジョブ」、「データセット」。
development