Author: Shivam Mathur (shivammathur)
Date: 2026-07-26T14:57:34+05:30

Commit: 
https://github.com/php/web-downloads/commit/6ff38e79ebde84ff5dd17501eafd0fcefb8f3504
Raw diff: 
https://github.com/php/web-downloads/commit/6ff38e79ebde84ff5dd17501eafd0fcefb8f3504.diff

Make published SBOM metadata readable

Changed paths:
  M  src/Console/Command/SeriesUpdateCommand.php
  M  tests/Console/Command/SeriesUpdateCommandTest.php


Diff:

diff --git a/src/Console/Command/SeriesUpdateCommand.php 
b/src/Console/Command/SeriesUpdateCommand.php
index 715fd0e..bd809a1 100644
--- a/src/Console/Command/SeriesUpdateCommand.php
+++ b/src/Console/Command/SeriesUpdateCommand.php
@@ -137,6 +137,7 @@ private function publishSbomMetadata(array $data): void
                     $temporary,
                     json_encode($metadata, JSON_THROW_ON_ERROR | 
JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES) . "\n"
                 ) === false
+                || !chmod($temporary, 0644)
                 || !rename($temporary, $destination)) {
             throw new Exception("Could not publish '$destination'");
         }
diff --git a/tests/Console/Command/SeriesUpdateCommandTest.php 
b/tests/Console/Command/SeriesUpdateCommandTest.php
index 4ec4738..863a136 100644
--- a/tests/Console/Command/SeriesUpdateCommandTest.php
+++ b/tests/Console/Command/SeriesUpdateCommandTest.php
@@ -327,6 +327,7 @@ public function testPublishesSbomMetadata(): void
         $this->assertSame(0, $command->handle());
         $destination = $this->baseDirectory . '/php-sdk/sbom/php-8.2.json';
         $this->assertFileExists($destination);
+        $this->assertSame(0644, fileperms($destination) & 0777);
         $metadata = json_decode(file_get_contents($destination), true, 512, 
JSON_THROW_ON_ERROR);
         $this->assertSame('PHP-3.01', $metadata['license']);
         $this->assertSame('pcre2lib', $metadata['components'][0]['name']);

Reply via email to