Skip to content

Dev container images info issue fix regarding history documentation and cgmanifest updates#1891

Open
Kaniska244 wants to merge 3 commits into
devcontainers:mainfrom
Kaniska244:history-issues-fix
Open

Dev container images info issue fix regarding history documentation and cgmanifest updates#1891
Kaniska244 wants to merge 3 commits into
devcontainers:mainfrom
Kaniska244:history-issues-fix

Conversation

@Kaniska244

@Kaniska244 Kaniska244 commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

Summary

This PR fixes issues in dev container image metadata generation that affected history documentation and cgmanifest.json output.

The changes improve version extraction and prevent duplicate or invalid package/component entries from being generated.

Changes

  • Updated Yarn version detection to suppress stderr and extract only semantic version values.
  • Deduplicated generated image tags while preserving their original order.
  • Skipped pip packages when their installed version cannot be determined, preventing blank documentation rows and invalid or duplicate cgmanifest.json entries.
  • Fixed .NET host version extraction to support multi-digit major/minor/patch versions.
  • Simplified Java 8 version detection to avoid duplicate Java version output.
  • Removed wheel from the Universal image Python package list.
  • Bumped image manifest versions for:
    • dotnet: 2.1.12.1.2
    • java-8: 3.0.93.1.0
    • universal: 6.0.46.0.5

Validation

These changes are intended to ensure generated image info, history documentation, and component manifest data are accurate, deduplicated, and do not include entries with missing versions.

@Kaniska244 Kaniska244 changed the title Dev container images info issue fix regarding history documentation and cgmanifest Dev container images info issue fix regarding history documentation and cgmanifest updates Jun 15, 2026
@Kaniska244 Kaniska244 marked this pull request as ready for review June 15, 2026 14:34
@Kaniska244 Kaniska244 requested a review from a team as a code owner June 15, 2026 14:34
Copilot AI review requested due to automatic review settings June 15, 2026 14:34

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request updates the image metadata extraction and tag generation logic used by the dev container image build pipeline, with the goal of producing cleaner history documentation and more consistent component (cgmanifest.json) output.

Changes:

  • Adjusts version-detection commands for several components (Yarn, Java 8, .NET host version).
  • Deduplicates generated image tags while preserving order.
  • Changes pip package info extraction to omit packages whose installed version cannot be determined, and updates image manifests (including removing wheel from Universal).
Show a summary per file
File Description
src/universal/manifest.json Removes wheel from the Universal image’s pip package list (and reflects the manifest version bump).
src/java-8/manifest.json Bumps version and simplifies Java 8 version detection to avoid duplicate output.
src/dotnet/manifest.json Bumps version and fixes host version parsing to support multi-digit segments.
build/src/utils/image-content-extractor.js Updates pip package collection logic to skip entries without versions (needs a normalization fallback to avoid skipping valid packages).
build/src/utils/config.js Deduplicates generated tags in tag construction helpers while preserving order.
build/config.json Updates Yarn version command to suppress stderr and extract version values.

Copilot's findings

  • Files reviewed: 6/6 changed files
  • Comments generated: 1

Comment on lines +274 to +288
return packageList.reduce((list, package) => {
const version = versionLookup[package];
// Skip packages that aren't actually installed in the inspected environment.
// Emitting an entry without a version produces blank markdown rows and
// conflicting/duplicate cgmanifest.json (SBOM) registrations.
if (version) {
list.push({
name: package,
version: version
});
} else {
console.log(`(!) Warning: Could not determine version for pip package "${package}" - skipping.`);
}
return list;
}, []);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants