The VotingAPI Queue module provides a queue implementation for updating voted entites. The votingapi default cron solution might break if it needs to handle too many new results at once. The configuration hooks into the default votingapi settings page. Choose manual on "tally results" settings. Additional settings for batch size and cron execution are available.

Project page

https://www.drupal.org/sandbox/baumeierit/2855856

Git clone command

git clone --branch 8.x-1.x https://git.drupal.org/sandbox/baumeier.it/2855856.git votingapi_queue
cd votingapi_queue

Pareview.sh

https://pareview.sh/node/1224

Review Bonus

(For what it's worth, I am working with Drupal for more than 5 years now, provided patches, documentation, general support and maintain various modules on drupal.org already.)

Comments

Andre-B created an issue. See original summary.

Andre-B’s picture

Issue summary: View changes
Andre-B’s picture

Issue summary: View changes
Andre-B’s picture

Issue summary: View changes
Andre-B’s picture

PA robot’s picture

We are currently quite busy with all the project applications and we prefer projects with a review bonus. Please help reviewing and put yourself on the high priority list, then we will take a look at your project right away :-)

Also, you should get your friends, colleagues or other community members involved to review this application. Let them go through the review checklist and post a comment that sets this issue to "needs work" (they found some problems with the project) or "reviewed & tested by the community" (they found no major flaws).

I'm a robot and this is an automated message from Project Applications Scraper.

Andre-B’s picture

Issue summary: View changes
Issue tags: +PAreview: review bonus
Andre-B’s picture

Issue summary: View changes
Andre-B’s picture

Issue summary: View changes
wengerk’s picture

Automated Review

Passed by pareview.sh (https://pareview.sh/node/1247). Well done !

Manual Review

Individual user account
[Yes: Follows] the guidelines for individual user accounts.
No duplication
[Yes: Does not cause] module duplication and/or fragmentation.
Master Branch
[Yes: Follows] the guidelines for master branch.
Licensing
[Yes: Follows] the licensing requirements.
3rd party assets/code
[Yes: Follows] the guidelines for 3rd party assets/code.
README.txt/README.md
[Yes: Follows] the guidelines for in-project documentation and/or the README Template.

The README.md is very impressive, nice work.

Code long/complex enough for review
[Yes: Follows] the guidelines for project length and complexity.
Secure code
[Yes: Meets the security requirements.]
Coding style & Drupal API usage
  1. (+) You parameters when translate dynamic string. Otherwise it will generate a custom translation for each dynamic variables.
    Spotted line 115 of votingapi_queue.drush.inc
    dt("Adding $limit items for processing.");
  2. Just a recommendation, all but the most trivial modules should implement hook_help(). Check the guidelines for in-project documentation.
  3. Just a recommendation, if you don't want to add help, you then should removed empty file votingapi_queue_cron_worker.module.
  4. Just a recommendation, it seems you forget use dt() lines 75, 169 & 170 of votingapi_queue/votingapi_queue.drush.inc.
  5. Just a recommendation, you could split your votingapi_queue.module by .inc files for better readability. Specially the settings part.

The starred items (*) are fairly big issues and warrant going back to Needs Work. Items marked with a plus sign (+) are important and should be addressed before a stable project release. The rest of the comments in the code walkthrough are recommendations.

Nice work dude ! Your code is quite elegant, good job !

This review uses the Project Application Review Template.

Andre-B’s picture

Thank you for the review wengerk.

I addressed issues 1), 2 and 4) right away.

regarding 3) I had some issues with modules not having .module files though they should not be needed any more. Since votingapi_queue_cron_worker.module is a submodule which has explanation in it's parent should the submodule contain a dedicated readme and help? does it need to implement hook_help and print the same help page? or since it's just a recommendation forget about it at this point?

5) If more stuff needs to be added to .module I'll split it into separate files, I think 200 lines is still fine.

Andre

klausi’s picture

Status: Needs review » Fixed

Your plugin should use dependency injection instead of calling global Drupal and Cache classes. See https://www.drupal.org/docs/8/api/services-and-dependency-injection/depe...

Otherwise looks good to me, and since you have lots of other contributions already ....

Thanks for your contribution, Andre!

I updated your account so you can promote this to a full project and also create new projects as either a sandbox or a "full" project.

Here are some recommended readings to help with excellent maintainership:

You can find lots more contributors chatting on IRC in #drupal-contribute. So, come hang out and stay involved!

Thanks, also, for your patience with the review process. 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.

Thanks to the dedicated reviewer(s) as well.

klausi’s picture

Assigning credits.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.