-
Notifications
You must be signed in to change notification settings - Fork 5.1k
Add analysis tool for tracking CHANGELOG version changes before release #53798
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
|
@copilot Clarifications:
|
Co-authored-by: maririos <[email protected]>
I've implemented the analysis tool and tested it on 10 CHANGELOG.md files. The script is working and outputs to CSV as requested. Key Finding: In the last 3 months, the analyzed files show 0 version changes before release. The Azure SDK workflow pattern is:
The CSV output includes all requested fields: changelog_path, version, changes_before_release, release_date, and avg_changes_per_file. See commit b58460d for the implementation. The tool can be scaled to all 431 files once you confirm the algorithm matches your expectations for this workflow pattern. Should I adjust the analysis logic, or would you like to see results from a broader time range or different set of files? |
Co-authored-by: maririos <[email protected]>
|
@copilot logic looks good. Now analyze all releases that happened in the last 3 months |
Co-authored-by: maririos <[email protected]>
Analysis completed for all 430 CHANGELOG.md files. Results show: Summary (Last 3 months: Aug 12 - Nov 10, 2025):
Finding: All 10 releases in the last 3 months followed the pattern where version numbers remain constant while unreleased and only change after release. No instances of version number changes (e.g., beta.1→beta.2) while still marked as "(Unreleased)" were detected. See commit 61b4185 for the updated analysis and full CSV results in |
|
@copilot I see that for |
Co-authored-by: maririos <[email protected]>
Co-authored-by: maririos <[email protected]>
Fixed the issue. The tool now correctly identifies all releases per CHANGELOG file. Azure.Core results:
What changed: Complete analysis:
Test suite added:
|
|
@copilot perfect! now do it for the last 6 months for all files and all releases in that time period |
Co-authored-by: maririos <[email protected]>
Co-authored-by: maririos <[email protected]>
Analysis completed for the last 6 months. Summary (May 14 - Nov 10, 2025):
Top files by release count:
Finding: No version number changes while unreleased were detected across all 359 releases. The Azure SDK workflow consistently increments version numbers after release. See commits 01027d0 and ab8e391. Full results in |
|
@copilot I don't see sdk/postgresql/Azure.ResourceManager.PostgreSql/CHANGELOG.md 1.3.1 version released. verify that specific case again. |
Verified - the PostgreSQL 1.3.1 release IS included in the analysis. CSV entry: PostgreSQL releases in last 6 months:
Both releases fall within the analysis period (May 14 - Nov 10, 2025) and are present in |
|
@copilot looking at the data again, from the total releases, are there any cases where a commit adding a stable version (x.x.x . there are no |
Yes, found 4 stable versions (x.x.x format) currently marked as "(Unreleased)":
Context:
This represents a very small fraction (1%) of unreleased versions, with the remaining 99% being pre-release versions (beta, preview, etc.). |
Description
Implements a Python script to analyze CHANGELOG.md files across all SDK packages and count how many times unreleased package versions changed before being released. The tool tracks version number modifications for entries marked as "(Unreleased)" until they receive a release date.
Key capabilities:
Implementation details:
1.0.0-beta.1→1.0.0-beta.2→ release1.0.0(2 changes),1.1.0-beta.1→1.1.0(1 change) = average 1.5 changes per fileComplete analysis results (Last 6 months: May 14 - Nov 10, 2025):
Examples of files with multiple releases:
Files added:
analyze_changelog_versions.py- Main analysis scripttest_changelog_analysis.py- Test suite verifying multiple releases per fileCHANGELOG_ANALYSIS_README.md- Complete documentation and usage guidechangelog_version_analysis.csv- Complete analysis results with all 359 releasesKey finding:
The Azure SDK workflow consistently follows a pattern where version numbers remain constant while unreleased (with multiple commits on the same version) and only increment after release. No instances of version number changes while marked as "(Unreleased)" were detected across 359 releases in the last 6 months.
This checklist is used to make sure that common guidelines for a pull request are followed.
General Guidelines
Testing Guidelines
SDK Generation Guidelines
*.csprojandAssemblyInfo.csfiles have been updated with the new version of the SDK.Original prompt
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.