up
	
		
			
	
		
	
	
		
	
		
			Some checks failed
		
		
	
	
		
			
				
	
				Build Test Deploy / docs (push) Has been cancelled
				
			
		
			
				
	
				Build Test Deploy / deploy (push) Has been cancelled
				
			
		
			
				
	
				Build Test Deploy / build-test (push) Has been cancelled
				
			
		
			
				
	
				Build Test Deploy / authority-container (push) Has been cancelled
				
			
		
			
				
	
				Docs CI / lint-and-preview (push) Has been cancelled
				
			
		
		
	
	
				
					
				
			
		
			Some checks failed
		
		
	
	Build Test Deploy / docs (push) Has been cancelled
				
			Build Test Deploy / deploy (push) Has been cancelled
				
			Build Test Deploy / build-test (push) Has been cancelled
				
			Build Test Deploy / authority-container (push) Has been cancelled
				
			Docs CI / lint-and-preview (push) Has been cancelled
				
			This commit is contained in:
		| @@ -146,22 +146,24 @@ internal static class DebianMapper | ||||
|                 continue; | ||||
|             } | ||||
|  | ||||
|             var provenance = new[] { BuildPackageProvenance(package, recordedAt) }; | ||||
|             var ranges = BuildVersionRanges(package, recordedAt); | ||||
|  | ||||
|             packages.Add(new AffectedPackage( | ||||
|                 AffectedPackageTypes.Deb, | ||||
|                 identifier: package.Package.Trim(), | ||||
|                 platform: package.Release, | ||||
|                 versionRanges: ranges, | ||||
|                 statuses: Array.Empty<AffectedPackageStatus>(), | ||||
|                 provenance: provenance)); | ||||
|             var provenance = new[] { BuildPackageProvenance(package, recordedAt) }; | ||||
|             var ranges = BuildVersionRanges(package, recordedAt); | ||||
|             var normalizedVersions = BuildNormalizedVersions(package, ranges); | ||||
|  | ||||
|             packages.Add(new AffectedPackage( | ||||
|                 AffectedPackageTypes.Deb, | ||||
|                 identifier: package.Package.Trim(), | ||||
|                 platform: package.Release, | ||||
|                 versionRanges: ranges, | ||||
|                 statuses: Array.Empty<AffectedPackageStatus>(), | ||||
|                 provenance: provenance, | ||||
|                 normalizedVersions: normalizedVersions)); | ||||
|         } | ||||
|  | ||||
|         return packages; | ||||
|     } | ||||
|  | ||||
|     private static IReadOnlyList<AffectedVersionRange> BuildVersionRanges(DebianPackageStateDto package, DateTimeOffset recordedAt) | ||||
|     private static IReadOnlyList<AffectedVersionRange> BuildVersionRanges(DebianPackageStateDto package, DateTimeOffset recordedAt) | ||||
|     { | ||||
|         var provenance = new AdvisoryProvenance( | ||||
|             DebianConnectorPlugin.SourceName, | ||||
| @@ -253,14 +255,40 @@ internal static class DebianMapper | ||||
|             parts.Add($"last:{lastAffected.Trim()}"); | ||||
|         } | ||||
|  | ||||
|         return parts.Count == 0 ? null : string.Join(" ", parts); | ||||
|     } | ||||
|  | ||||
|     private static void AddExtension(IDictionary<string, string> extensions, string key, string? value) | ||||
|     { | ||||
|         if (!string.IsNullOrWhiteSpace(value)) | ||||
|         { | ||||
|             extensions[key] = value.Trim(); | ||||
|         return parts.Count == 0 ? null : string.Join(" ", parts); | ||||
|     } | ||||
|  | ||||
|     private static IReadOnlyList<NormalizedVersionRule> BuildNormalizedVersions( | ||||
|         DebianPackageStateDto package, | ||||
|         IReadOnlyList<AffectedVersionRange> ranges) | ||||
|     { | ||||
|         if (ranges.Count == 0) | ||||
|         { | ||||
|             return Array.Empty<NormalizedVersionRule>(); | ||||
|         } | ||||
|  | ||||
|         var note = string.IsNullOrWhiteSpace(package.Release) | ||||
|             ? null | ||||
|             : $"debian:{package.Release.Trim()}"; | ||||
|  | ||||
|         var rules = new List<NormalizedVersionRule>(ranges.Count); | ||||
|         foreach (var range in ranges) | ||||
|         { | ||||
|             var rule = range.ToNormalizedVersionRule(note); | ||||
|             if (rule is not null) | ||||
|             { | ||||
|                 rules.Add(rule); | ||||
|             } | ||||
|         } | ||||
|  | ||||
|         return rules.Count == 0 ? Array.Empty<NormalizedVersionRule>() : rules; | ||||
|     } | ||||
|  | ||||
|     private static void AddExtension(IDictionary<string, string> extensions, string key, string? value) | ||||
|     { | ||||
|         if (!string.IsNullOrWhiteSpace(value)) | ||||
|         { | ||||
|             extensions[key] = value.Trim(); | ||||
|         } | ||||
|     } | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user