This is an automated email from the ASF dual-hosted git repository. kwin pushed a commit to branch bugfix/make-generate-metatype-more-resilient in repository https://gitbox.apache.org/repos/asf/sling-whiteboard.git
commit 0ffd3b814bf314a1e3631b8c1730de499dd95483 Author: Konrad Windszus <[email protected]> AuthorDate: Sat May 9 18:29:02 2026 +0200 Look for @Component annotation anywhere prior to class declaration Not just in the 20 lines before class declaration, as it can be further up in the file. Print warning and skip metatype generation if @Component annotation or class declaration cannot be found. --- skills/osgi-scr-migrator/scripts/migrate_annotations.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/skills/osgi-scr-migrator/scripts/migrate_annotations.py b/skills/osgi-scr-migrator/scripts/migrate_annotations.py index 70385722..148f2549 100755 --- a/skills/osgi-scr-migrator/scripts/migrate_annotations.py +++ b/skills/osgi-scr-migrator/scripts/migrate_annotations.py @@ -905,16 +905,19 @@ class AnnotationMigrator: break if class_idx is None: + print(f"Warning: Could not find class declaration for {self.component_name}, skipping metatype generation") return # Find the @Component annotation component_idx = None - for i in range(class_idx - 1, max(0, class_idx - 20), -1): + # must be somewhere between start of file and class declaration, look backwards from class declaration + for i in range(class_idx - 1, 0, -1): if '@Component' in self.lines[i]: component_idx = i break if component_idx is None: + print(f"Warning: Could not find @Component annotation for {self.component_name}, skipping metatype generation") return # Add @Designate annotation before @Component
