Closed (fixed)
Project:
Drupal.org security advisory coverage applications
Component:
module
Priority:
Normal
Category:
Task
Assigned:
Unassigned
Reporter:
Created:
6 Jan 2026 at 02:27 UTC
Updated:
5 May 2026 at 16:05 UTC
Jump to comment: Most recent
Comments
Comment #2
vishal.kadamComment #3
man-1982 commentedComment #4
rushikesh raval commentedThank you for applying!
Please read Review process for security advisory coverage: What to expect for more details and Security advisory coverage application checklist to understand what reviewers look for. Tips for ensuring a smooth review gives some hints for a smoother review.
The important notes are the following.
To the reviewers
Please read How to review security advisory coverage applications, Application workflow, What to cover in an application review, and Tools to use for reviews.
The important notes are the following.
For new reviewers, I would also suggest to first read In which way the issue queue for coverage applications is different from other project queues.
Comment #5
vishal.kadam1. FILE: lightgallery_formatter.libraries.yml and modules/lightgallery_formatter_preview/lightgallery_formatter_preview.libraries.yml
version: VERSIONVERSION is only used by Drupal core modules. Contributed modules should use a literal string that does not change with the Drupal core version a site is using.
2. FILE: src/LightgalleryPluginBase.php
FILE: src/Form/LightgalleryProfileForm.php
FILE: modules/lightgallery_formatter_preview/src/PreviewBuilder.php
New modules, which are compatible with Drupal 10 and higher versions are expected to include type declarations in property definitions, and use constructor property promotion.
Comment #6
man-1982 commentedThank you for your review, @vishal.kadam!
All issues have been addressed:
version: VERSIONtoversion: '1.x'LightgalleryPluginBase.phpLightgalleryProfileForm.php(with exception for inherited$entityTypeManagerand$moduleHandlerfromEntityForm)PreviewBuilder.phpReady for review.
Comment #7
vishal.kadamRest seems fine to me.
Please wait for other reviewers and Project Moderator to take a look and if everything goes fine, you will get the role.
Comment #8
bbu23hi @man-1982,
Overall the code looks solid, but I have 2 comments that require attention:
1. I wouldn't recommend having
type: ignorein thelightgallery_formatter.schema.ymlfor the plugin settings, it's too permissive. Instead I'd define a schema for the plugin settings.2. While the approach of
Html::escape()+|rawis safe, I'd rather not use the twigrawfilter, and instead take a more maintainable approach like a render array or similar:This way, twig doesn't need the raw filter anymore, and the autoescape is handled by the render array.
Comment #9
man-1982 commentedHi @bbu23
much appreciated for you review.
Based on your proposals ,
1. replaced
type: ignorewith a full mapping:plugin_settings.Each plugin (general, thumbnail, zoom, etc.) now has its own schema.
All keys use
requiredKey: falseso partial existing configs still validate.2. decided simplify approach using
check_markupand place sometodofor future implementation.I believe it should be separate UI interface with a settings for the sub html.
also updated
lightgallery_formatter.profile.default.ymlaccording new schema implementations.thank you for your review.
look forward for next session.
Comment #10
man-1982 commentedComment #11
bbu23Hi @man-1982,
You don't need to define a full mapping for the
plugin_settingsin thelightgallery_formatter.profile.*, you can point dynamically to the plugin schema by using a wildcard, especially since each plugin can have its own definition which could defer from others. Here's an example in core (web/core/config/schema/core.entity.schema.yml):Comment #12
man-1982 commentedHi @bbu23,
i got your idea and have made these changes,
but i still should implement schema per plugin.
However your suggestions allow other developers easily implement and extend schema for future plugins.
updated:
readme.mdandlightgallery_formatter.schema.ymlthank you for your ideas.
Comment #13
man-1982 commentedHi,
Might be it's too yearly , juts would like to follow up on this — it's been ~12 days since my last message.
would like to remind about me and if anything is needed from me?
Thanks.
Comment #14
bbu23@man-1982 there are many issues open, at this point it's just waiting & patience.
+1 RTBC
Comment #15
man-1982 commentedHi @bbu23
appreciate for your support and review
Comment #16
batigolixA few suggestions to further improve the README, based on the drupal.org README template. These are merely suggestions for the benefit of users of the module.
CONTRIBUTING.mdordocs/DEVELOPMENT.mdwould keep the README focused on what end users need: what the module does, how to install it, and how to configure it.What's already good: All four required sections (Introduction, Requirements, Installation, Configuration) are present and well-written. The Configuration section with numbered steps is particularly clear. The AI disclosure is commendable and follows Drupal's guidelines.
Comment #17
man-1982 commentedThank @batigolix you for the yout feedback and suggestions.
I 've implemented the suggested changes, as an example using Drupal Canvas module documentation and ci/cd pipeline.
Also made some improvements the module's CI/CD pipeline (borrowing idea from Canvas module approach).
Automated build assets (css and js) and committed dynamically by GitLab CI.
Thanks again for your review.
Comment #18
man-1982 commentedComment #19
lotar commentedGreat application and a very promising module! As a Drupal developer, I’d like to highlight a few strong architectural decisions in the LightGallery Formatter:
Smart use of the Plugin API: Splitting the functionality (Thumbnail, Zoom, Fullscreen, Share, etc.) into 11 independent plugins is the true "Drupal way". This approach makes the codebase clean, modular, and easily extensible for other developers.
Configuration Profiles: Moving the gallery settings into reusable Configuration Entities instead of overloading the Field Formatter settings is a brilliant idea. It prevents configuration duplication across different View Modes and integrates perfectly with the Configuration Management Initiative (CMI).
Modern stack: The use of React for rendering, combined with progressive enhancement and mobile gesture support, is exactly what’s often missing in many contrib media solutions.
The feedback from reviewers in the issue queue (regarding the hardcoded version: VERSION in libraries.yml and utilizing Constructor Property Promotion for PHP 8.1+) are absolutely standard and easy-to-fix minor details when aligning with Drupal 10/11 standards. The architectural foundation of the module itself looks incredibly solid.
Comment #20
man-1982 commentedHi @lotar thanks for your review and response, even it was generated through AI.
Please, next time don't hesitate to leave your original thoughts without AI, even on poor English as i do. In modern AI word your own ideas and thoughts going to be more valuable than AI generated.
@lotar i appreciate your support and hope you don't get me wrong.
Comment #21
vishal.kadamI am changing priority as per Issue priorities.
Comment #22
man-1982 commentedthanks @vishal.kadam for keeping eye on this ticket.
I really appreciate.
Comment #23
greg boggsAdjusting the issue status to reflect that it has been reviewed 3 times and appears to now be passing those reviews.
Comment #24
avpadernoThank you for your contribution and for your patience with the review process!
I am going to update your account so you can opt into security advisory coverage any project you create, including the projects you already created.
These are some recommended readings to help you with maintainership:
You can find more contributors chatting on Slack or IRC in #drupal-contribute. So, come hang out and stay involved!
Anyone is welcome to participate in the review process. Please consider reviewing other projects that are pending review. I encourage you to learn more about that process and join the group of reviewers.
I thank also all the reviewers for helping with these applications.
Comment #25
avpadernoComment #27
man-1982 commentedI would like to express my gratitude:
@bbu23, @vishal.kadam, @avpaderno, @rushikesh raval, @batigolix, @lotar , @greg boggs for your support and assistance with module review.
This community support and review is so valuable for me.
thanks again