The Google Model Viewer (GMV) is a web component designed for rendering interactive 3D models. The GMV field in Drupal allows users to upload and display their 3D files in .zip format. These files must conform to the glTF standard for compatibility. For more information on the glTF format, visit Sketchfab's glTF features.

A glTF file can be downloaded from Sketchfab, and the project file can be found at GMV.

Project link

https://www.drupal.org/project/gmv

Comments

ajay t created an issue. See original summary.

vishal.kadam’s picture

Thank 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.

  • If you have not done it yet, you should run phpcs --standard=Drupal,DrupalPractice on the project, which alone fixes most of what reviewers would report.
  • For the time this application is open, only your commits are allowed.
  • The purpose of this application is giving you a new drupal.org role that allows you to opt projects into security advisory coverage, either projects you already created, or projects you will create. The project status won't be changed by this application and no other user will be able to opt projects into security advisory policy.
  • We only accept an application per user. If you change your mind about the project to use for this application, or it is necessary to use a different project for the application, please update the issue summary with the link to the correct project and the issue title with the project name and the branch to review.

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.

  • It is preferable to wait for a Code Review Administrator before commenting on newly created applications. Code Review Administrators will do some preliminary checks that are necessary before any change on the project files is suggested.
  • Reviewers should show the output of a CLI tool only once per application.
  • It may be best to have the applicant fix things before further review.

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.

vishal.kadam’s picture

Assigned: ajay t » Unassigned
Issue summary: View changes
vishal.kadam’s picture

Status: Needs review » Needs work

1. Fix phpcs issues.

phpcs --standard=Drupal,DrupalPractice --extensions=php,module,inc,install,test,profile,theme,css,info,txt,md,yml gmv

FILE: gmv/src/Plugin/Field/FieldFormatter/ThreeDeeObjectFieldFormatter.php
--------------------------------------------------------------------------------
FOUND 1 ERROR AND 2 WARNINGS AFFECTING 3 LINES
--------------------------------------------------------------------------------
  11 | ERROR   | [x] Use statements should be sorted alphabetically. The first wrong one is Drupal\Core\Field\FieldDefinitionInterface.
 122 | WARNING | [ ] \Drupal calls should be avoided in classes, use dependency injection instead
 128 | WARNING | [ ] \Drupal calls should be avoided in classes, use dependency injection instead
--------------------------------------------------------------------------------
PHPCBF CAN FIX THE 1 MARKED SNIFF VIOLATIONS AUTOMATICALLY
--------------------------------------------------------------------------------

2. FILE: README.md

The README file is missing the required sections, including Requirements, and Configuration.

3. FILE: gmv.info.yml

core_version_requirement: ^8 || ^9 || ^10 || ^11

The Drupal Core versions before 8.7.7 do not recognize the core_version_requirement key.

4. FILE: gmv.libraries.yml

version: VERSION

VERSION 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.

5. FILE: gmv.module

/**
 * @file
 * Implement of theme hook.
 */

The usual description for a .module file is “Hook implementations for the [module name] module”, where [module name] is the module name given in the .info.yml file.

ajay t’s picture

Hi vishalkadam Fixed the above mentioned issues.

ajay t’s picture

Assigned: Unassigned » ajay t
Status: Needs work » Needs review

Review the project GMV

vishal.kadam’s picture

Assigned: ajay t » Unassigned

Rest looks fine to me.

Let’s wait for a Code Review Administrator to take a look and if everything goes fine, you will get the role.

alvarodemendoza’s picture

Status: Needs review » Needs work
  • The following points don't necessarily encompass all the changes that may be necessary
  • A specific point may just be an example and may apply in other places
  • A review is about code that does not follow the coding standards, contains possible security issues, or does not correctly use the Drupal API; the single points are not ordered, not even by importance

File gmv.libraries.yml

gmv_files library doesn't have the version key

Coding standards review

phpcs --standard=Drupal,DrupalPractice --extensions=php,module,inc,install,test,profile,theme,css,info,txt,md,yml gmv-1.0.x/*

FILE: gmv-1.0.x/src/Plugin/Field/FieldFormatter/ThreeDeeObjectFieldFormatter.php
-------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
-------------------------------------------------------------------------------------------------------------------------------------
 11 | ERROR | [x] Use statements should be sorted alphabetically. The first wrong one is Drupal\Core\Field\FieldDefinitionInterface.
-------------------------------------------------------------------------------------------------------------------------------------

Security Review

- The module uses dependency injection for services, which is a secure way to manage dependencies.
- Files are handled using Drupal's Entity API, which ensures a proper management (and security) of file entities.

The module looks secure enough. Remember to change the status to "Needs Review" after you implement the changes.

avpaderno’s picture

Priority: Normal » Minor

I am changing priority as per Issue priorities.

avpaderno’s picture

This thread has been idle, in the needs work state with no activity for some months.

May you confirm you are still pursuing this application? If this is the case, and you made commits basing on what previously reported, or you can answer the questions previously asked, please change the status to Needs review.

avpaderno’s picture

Status: Needs work » Closed (won't fix)

This thread has been idle, in the Needs work state with no activity for about six months or more; the application has been created about 11 months ago or more. Therefore, I marked it as Closed (won't fix).

If this is incorrect, and you are still pursuing this application, please feel free to re-open it and set the issue status to Needs work or Needs review, depending on the current status of your code.

Now that this issue is closed, review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, credit people who helped resolve this issue.