-
Notifications
You must be signed in to change notification settings - Fork 137
Closed
Labels
area-release-infraRelease infrastructure owned by .NET Product ConstructionRelease infrastructure owned by .NET Product Construction
Description
When producing source artifact zip using the CreateSourceArtifacts task, the resulting zip does not match the one produced by GitHub because of compression differences between the two artifacts.
Investigation Summary
I normalized two zips for the 10.0.101 release by running a script that repacks zip files deterministically, preserving their original metadata (timestamps, file modes, comments, etc.) while using a fixed compression method (ZIP_DEFLATED) and an optional compression level. The zips included are:
dotnet-10.0.101.zip(from GitHub)dotnet-source-10.0.101-servicing.25569.105.zip(produced by theCreateSourceArtifactstask)
> sha256sum dotnet-10.0.101.zip
5b6d0957d2ac8a48e3125729b562b80bd78c6365f3e3e7c5bb8e1b1c1741f4f5 dotnet-10.0.101.zip
> sha256sum dotnet-source-10.0.101-servicing.25569.105.zip
5c058d90f5bb2db93a5975857ce3a0a3ac16bba73a6a7d33c076c172ff6081b0 dotnet-source-10.0.101-servicing.25569.105.zip
> python3 rezip_deterministic.py dotnet-10.0.101.zip dotnet-10.0.101.norm.zip
Wrote deterministic zip: dotnet-10.0.101.norm.zip
> python3 rezip_deterministic.py dotnet-source-10.0.101-servicing.25569.105.zip dotnet-source-10.0.101-servicing.25569.105.norm.zip
Wrote deterministic zip: dotnet-source-10.0.101-servicing.25569.105.norm.zip
> sha256sum dotnet-10.0.101.norm.zip
6f3d802cf7b4bfcffb6e407ab7464e359f41eccd288159198a93720078fd445f dotnet-10.0.101.norm.zip
> sha256sum dotnet-source-10.0.101-servicing.25569.105.norm.zip
6f3d802cf7b4bfcffb6e407ab7464e359f41eccd288159198a93720078fd445f dotnet-source-10.0.101-servicing.25569.105.norm.zip
After running the normalization, the hashes of the files were exactly the same.
omajid
Metadata
Metadata
Assignees
Labels
area-release-infraRelease infrastructure owned by .NET Product ConstructionRelease infrastructure owned by .NET Product Construction
Type
Projects
Status
Done