From c6e50a0ed7cdf33e23761cd40ab861f5a3f5a4bd Mon Sep 17 00:00:00 2001 From: "lenaick.moreira" Date: Thu, 23 Jul 2026 11:39:42 +0200 Subject: [PATCH] =?UTF-8?q?N=C2=B09830=20-=20Fix=20setup=20error=20when=20?= =?UTF-8?q?trying=20to=20remove=20class=20with=20a=20TagSet=20attribute?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- setup/feature_removal/AbstractSetupAudit.php | 5 +++++ .../unitary-tests/setup/feature_removal/SetupAuditTest.php | 1 + .../datamodel.finalclass_ext1_module1.xml | 6 ++++++ .../datamodel.finalclass_ext2_module1.xml | 6 ++++++ 4 files changed, 18 insertions(+) diff --git a/setup/feature_removal/AbstractSetupAudit.php b/setup/feature_removal/AbstractSetupAudit.php index b7696546e..e781d99d4 100644 --- a/setup/feature_removal/AbstractSetupAudit.php +++ b/setup/feature_removal/AbstractSetupAudit.php @@ -8,6 +8,7 @@ use DBObjectSet; use IssueLog; use MetaModel; use SetupLog; +use TagSetFieldData; require_once APPROOT.'setup/feature_removal/ModelReflectionSerializer.php'; @@ -68,6 +69,10 @@ abstract class AbstractSetupAudit continue; } + if (MetaModel::IsSameFamily($sClass, TagSetFieldData::class)) { + continue; + } + if (!MetaModel::IsStandaloneClass($sClass)) { $iCount = $this->Count($sClass); $this->aFinalClassesToCleanup[$sClass] = $iCount; diff --git a/tests/php-unit-tests/unitary-tests/setup/feature_removal/SetupAuditTest.php b/tests/php-unit-tests/unitary-tests/setup/feature_removal/SetupAuditTest.php index 383d9a398..eff5c4589 100644 --- a/tests/php-unit-tests/unitary-tests/setup/feature_removal/SetupAuditTest.php +++ b/tests/php-unit-tests/unitary-tests/setup/feature_removal/SetupAuditTest.php @@ -79,6 +79,7 @@ class SetupAuditTest extends ItopCustomDatamodelTestCase "Feature1Module1MyClass", "FinalClassFeature2Module1MyClass", "FinalClassFeature2Module1MyFinalClassFromLocation", + "TagSetFieldDataFor_FinalClassFeature2Module1MyFinalClassFromLocation__domains", ]; $this->assertEqualsCanonicalizing($expected, $oSetupAudit->GetRemovedClasses()); diff --git a/tests/php-unit-tests/unitary-tests/setup/feature_removal/additional_features/finalclass_ext1/finalclass_ext1_module1/datamodel.finalclass_ext1_module1.xml b/tests/php-unit-tests/unitary-tests/setup/feature_removal/additional_features/finalclass_ext1/finalclass_ext1_module1/datamodel.finalclass_ext1_module1.xml index 9b3461416..c08057a64 100644 --- a/tests/php-unit-tests/unitary-tests/setup/feature_removal/additional_features/finalclass_ext1/finalclass_ext1_module1/datamodel.finalclass_ext1_module1.xml +++ b/tests/php-unit-tests/unitary-tests/setup/feature_removal/additional_features/finalclass_ext1/finalclass_ext1_module1/datamodel.finalclass_ext1_module1.xml @@ -64,6 +64,12 @@ false + + domains + true + all + 12 + diff --git a/tests/php-unit-tests/unitary-tests/setup/feature_removal/additional_features/finalclass_ext2/finalclass_ext2_module1/datamodel.finalclass_ext2_module1.xml b/tests/php-unit-tests/unitary-tests/setup/feature_removal/additional_features/finalclass_ext2/finalclass_ext2_module1/datamodel.finalclass_ext2_module1.xml index 0fd50aac7..f36d88b2c 100644 --- a/tests/php-unit-tests/unitary-tests/setup/feature_removal/additional_features/finalclass_ext2/finalclass_ext2_module1/datamodel.finalclass_ext2_module1.xml +++ b/tests/php-unit-tests/unitary-tests/setup/feature_removal/additional_features/finalclass_ext2/finalclass_ext2_module1/datamodel.finalclass_ext2_module1.xml @@ -31,6 +31,12 @@ false + + domains + true + all + 12 +