From d1b4cad04872e9f22d2623fca293e7476400163e Mon Sep 17 00:00:00 2001 From: alexmerlin Date: Thu, 21 Aug 2025 13:19:07 +0300 Subject: [PATCH 1/6] Issue #10: Fixed invalid property initializations Signed-off-by: alexmerlin --- docs/book/v1/overview.md | 4 ++-- src/Component/Method.php | 3 ++- src/Component/Property.php | 15 +++++++++++---- 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/docs/book/v1/overview.md b/docs/book/v1/overview.md index 0b42904..d2f96df 100644 --- a/docs/book/v1/overview.md +++ b/docs/book/v1/overview.md @@ -5,12 +5,12 @@ Programmatically generate Dotkernel project files and directories. ## Badges ![OSS Lifecycle](https://img.shields.io/osslifecycle/dotkernel/dot-maker) -![PHP from Packagist (specify version)](https://img.shields.io/packagist/php-v/dotkernel/dot-maker/1.0) +![PHP from Packagist (specify version)](https://img.shields.io/packagist/php-v/dotkernel/dot-maker/1.0.0) [![GitHub issues](https://img.shields.io/github/issues/dotkernel/dot-maker)](https://github.com/dotkernel/dot-maker/issues) [![GitHub forks](https://img.shields.io/github/forks/dotkernel/dot-maker)](https://github.com/dotkernel/dot-maker/network) [![GitHub stars](https://img.shields.io/github/stars/dotkernel/dot-maker)](https://github.com/dotkernel/dot-maker/stargazers) -[![GitHub license](https://img.shields.io/github/license/dotkernel/dot-maker)](https://github.com/dotkernel/dot-maker/blob/1.0/LICENSE.md) +[![GitHub license](https://img.shields.io/github/license/dotkernel/dot-maker)](https://github.com/dotkernel/dot-maker/blob/1.0/LICENSE) [![Build Static](https://github.com/dotkernel/dot-maker/actions/workflows/continuous-integration.yml/badge.svg?branch=1.0)](https://github.com/dotkernel/dot-maker/actions/workflows/continuous-integration.yml) [![codecov](https://codecov.io/gh/dotkernel/dot-maker/graph/badge.svg?token=KT9UA402B4)](https://codecov.io/gh/dotkernel/dot-maker) diff --git a/src/Component/Method.php b/src/Component/Method.php index 3e76cdd..2e85dd0 100644 --- a/src/Component/Method.php +++ b/src/Component/Method.php @@ -17,7 +17,7 @@ class Method implements MethodInterface { - protected VisibilityEnum $visibility = VisibilityEnum::Public; + protected VisibilityEnum $visibility; /** @var ParameterInterface[] $parameters */ protected array $parameters = []; /** @var Inject[] $injects */ @@ -30,6 +30,7 @@ class Method implements MethodInterface public function __construct( public readonly string $name, ) { + $this->visibility = VisibilityEnum::Public; } public function __toString(): string diff --git a/src/Component/Property.php b/src/Component/Property.php index 55583fb..56128ba 100644 --- a/src/Component/Property.php +++ b/src/Component/Property.php @@ -12,10 +12,17 @@ class Property extends Parameter { - protected VisibilityEnum $visibility = VisibilityEnum::Protected; - protected bool $readonly = false; - protected bool $static = false; - protected string $comment = ''; + protected VisibilityEnum $visibility; + protected bool $readonly = false; + protected bool $static = false; + protected string $comment = ''; + + public function __construct(string $name, string $type, bool $nullable = false, ?string $default = null) + { + parent::__construct($name, $type, $nullable, $default); + + $this->visibility = VisibilityEnum::Protected; + } public function getVisibility(): VisibilityEnum { From c064f549a9c1d8d71a2d17ebe4b55d5877dbebf1 Mon Sep 17 00:00:00 2001 From: alexmerlin Date: Thu, 21 Aug 2025 13:50:59 +0300 Subject: [PATCH 2/6] Issue #10: Fixed invalid property initializations Signed-off-by: alexmerlin --- src/Component/Method.php | 2 +- src/Component/Property.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Component/Method.php b/src/Component/Method.php index 2e85dd0..d66a079 100644 --- a/src/Component/Method.php +++ b/src/Component/Method.php @@ -30,7 +30,7 @@ class Method implements MethodInterface public function __construct( public readonly string $name, ) { - $this->visibility = VisibilityEnum::Public; + $this->setVisibility(VisibilityEnum::Public); } public function __toString(): string diff --git a/src/Component/Property.php b/src/Component/Property.php index 56128ba..dcc6cf6 100644 --- a/src/Component/Property.php +++ b/src/Component/Property.php @@ -21,7 +21,7 @@ public function __construct(string $name, string $type, bool $nullable = false, { parent::__construct($name, $type, $nullable, $default); - $this->visibility = VisibilityEnum::Protected; + $this->setVisibility(VisibilityEnum::Protected); } public function getVisibility(): VisibilityEnum From 9b062d21e8bb3f97f20bf5ed6ca5c0e0a3ca3f1d Mon Sep 17 00:00:00 2001 From: alexmerlin Date: Thu, 21 Aug 2025 14:01:57 +0300 Subject: [PATCH 3/6] Issue #10: Fixed invalid property initializations Signed-off-by: alexmerlin --- .laminas-ci.json | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.laminas-ci.json b/.laminas-ci.json index 29216fa..151c219 100644 --- a/.laminas-ci.json +++ b/.laminas-ci.json @@ -1,3 +1,9 @@ { - "backwardCompatibilityCheck": true + "backwardCompatibilityCheck": true, + "exclude": { + "bc-check": [ + "src/Component/Method.php", + "src/Component/Property.php" + ] + } } From 4a28cdfe18ab3ab9cdc3169886ee58b3bfc4cea0 Mon Sep 17 00:00:00 2001 From: alexmerlin Date: Thu, 21 Aug 2025 14:34:13 +0300 Subject: [PATCH 4/6] Issue #10: Fixed invalid property initializations Signed-off-by: alexmerlin --- .laminas-ci.json | 4 ++++ src/Component/Method.php | 3 +-- src/Component/Property.php | 15 ++++----------- 3 files changed, 9 insertions(+), 13 deletions(-) diff --git a/.laminas-ci.json b/.laminas-ci.json index 151c219..16eb315 100644 --- a/.laminas-ci.json +++ b/.laminas-ci.json @@ -1,4 +1,8 @@ { + "tests": { + "php": ["8.1", "8.2", "8.3", "8.4"], + "cs": true + }, "backwardCompatibilityCheck": true, "exclude": { "bc-check": [ diff --git a/src/Component/Method.php b/src/Component/Method.php index d66a079..3e76cdd 100644 --- a/src/Component/Method.php +++ b/src/Component/Method.php @@ -17,7 +17,7 @@ class Method implements MethodInterface { - protected VisibilityEnum $visibility; + protected VisibilityEnum $visibility = VisibilityEnum::Public; /** @var ParameterInterface[] $parameters */ protected array $parameters = []; /** @var Inject[] $injects */ @@ -30,7 +30,6 @@ class Method implements MethodInterface public function __construct( public readonly string $name, ) { - $this->setVisibility(VisibilityEnum::Public); } public function __toString(): string diff --git a/src/Component/Property.php b/src/Component/Property.php index dcc6cf6..55583fb 100644 --- a/src/Component/Property.php +++ b/src/Component/Property.php @@ -12,17 +12,10 @@ class Property extends Parameter { - protected VisibilityEnum $visibility; - protected bool $readonly = false; - protected bool $static = false; - protected string $comment = ''; - - public function __construct(string $name, string $type, bool $nullable = false, ?string $default = null) - { - parent::__construct($name, $type, $nullable, $default); - - $this->setVisibility(VisibilityEnum::Protected); - } + protected VisibilityEnum $visibility = VisibilityEnum::Protected; + protected bool $readonly = false; + protected bool $static = false; + protected string $comment = ''; public function getVisibility(): VisibilityEnum { From 3c866bb354a4fe59995b336b8a5fcb9e85cabb8a Mon Sep 17 00:00:00 2001 From: alexmerlin Date: Thu, 21 Aug 2025 14:35:06 +0300 Subject: [PATCH 5/6] Issue #10: Fixed invalid property initializations Signed-off-by: alexmerlin --- .laminas-ci.json | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/.laminas-ci.json b/.laminas-ci.json index 16eb315..27617d6 100644 --- a/.laminas-ci.json +++ b/.laminas-ci.json @@ -1,13 +1,3 @@ { - "tests": { - "php": ["8.1", "8.2", "8.3", "8.4"], - "cs": true - }, - "backwardCompatibilityCheck": true, - "exclude": { - "bc-check": [ - "src/Component/Method.php", - "src/Component/Property.php" - ] - } + "backwardCompatibilityCheck": false } From 39f2205ef9cf1ebae4e38846552e69a1b813c128 Mon Sep 17 00:00:00 2001 From: alexmerlin Date: Fri, 22 Aug 2025 14:07:56 +0300 Subject: [PATCH 6/6] Issue #10: Fixed invalid property initializations Signed-off-by: alexmerlin --- .laminas-ci.json | 2 +- .roave-backward-compatibility-check.xml | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 .roave-backward-compatibility-check.xml diff --git a/.laminas-ci.json b/.laminas-ci.json index 27617d6..29216fa 100644 --- a/.laminas-ci.json +++ b/.laminas-ci.json @@ -1,3 +1,3 @@ { - "backwardCompatibilityCheck": false + "backwardCompatibilityCheck": true } diff --git a/.roave-backward-compatibility-check.xml b/.roave-backward-compatibility-check.xml new file mode 100644 index 0000000..40073f8 --- /dev/null +++ b/.roave-backward-compatibility-check.xml @@ -0,0 +1,9 @@ + + + + #\[BC\] SKIPPED: An enum expression Dot\Maker\\VisibilityEnum\:\:Public is not supported in class Dot\\Maker\\Component\\Method in file /src/Component/Method.php# + #\[BC\] SKIPPED: An enum expression Dot\Maker\\VisibilityEnum\:\:Protected is not supported in class Dot\\Maker\\Component\\Property in file /src/Component/Property.php# + +