fix(provider): normalize baseUrl before assigning readonly property

Promoted readonly properties can't be reassigned in the constructor
body, so GitLabProvider and GiteaProvider threw on every instantiation.
Normalize the plain parameter first, then assign to a separately
declared readonly property.
This commit is contained in:
2026-07-11 16:46:04 +02:00
parent c929fdfda6
commit 78e7a72ee9
2 changed files with 8 additions and 4 deletions
+4 -2
View File
@@ -19,14 +19,16 @@ final class GitLabProvider implements ProviderInterface
{ {
use ProbeTrait; use ProbeTrait;
private readonly string $baseUrl;
public function __construct( public function __construct(
private readonly HttpClientInterface $client, private readonly HttpClientInterface $client,
private readonly string $username, private readonly string $username,
private readonly string $token, private readonly string $token,
private readonly LoggerInterface $logger, private readonly LoggerInterface $logger,
private readonly string $baseUrl = '', string $baseUrl = '',
) { ) {
$this->baseUrl = rtrim($this->baseUrl !== '' ? $this->baseUrl : 'https://gitlab.com', '/'); $this->baseUrl = rtrim($baseUrl !== '' ? $baseUrl : 'https://gitlab.com', '/');
} }
public function getName(): string public function getName(): string
+4 -2
View File
@@ -20,14 +20,16 @@ final class GiteaProvider implements ProviderInterface
{ {
use ProbeTrait; use ProbeTrait;
private readonly string $baseUrl;
public function __construct( public function __construct(
private readonly HttpClientInterface $client, private readonly HttpClientInterface $client,
private readonly string $username, private readonly string $username,
private readonly string $token, private readonly string $token,
private readonly string $baseUrl, string $baseUrl,
private readonly LoggerInterface $logger, private readonly LoggerInterface $logger,
) { ) {
$this->baseUrl = rtrim($this->baseUrl, '/'); $this->baseUrl = rtrim($baseUrl, '/');
} }
public function getName(): string public function getName(): string