The Quick Update module provides a quick way to batch install new projects and install missing dependency projects.

Enhances Drupal core update features

Drupal core offers a way to install module or theme one by one, but you can install multiple projects via the Quick Update module. There is an admin UI to search the most installed projects easier.

Additional, Quick Update finds missing dependency projects for you. And you can just select all missing dependency projects from the admin UI, then you can install all of them in a batch process.

The Quick Update module depends on the Update module and uses the same workflow as the Update module. Thus, you can run the updates via the admin update page at /admin/reports/updates/update.

There is a custom Drush command to install all missing dependency projects that include modules and themes.

drush qup-missing-dependencies
or
dursh qup-md

My project page:
https://drupal.org/sandbox/jay.chen/2074281

My project git repository:
http://git.drupal.org/sandbox/jay.chen/2074281.git

Screenshot:
https://drupal.org/files/project-images/drupal-quick-update-module.png

Manual reviews of other projects:
https://drupal.org/node/2077293#comment-7835455
https://drupal.org/node/2072377#comment-7835565
https://drupal.org/node/2084559#comment-7890621
https://drupal.org/node/2072377#comment-7850975
https://drupal.org/node/2077293#comment-7887457

Comments

PA robot’s picture

Multiple Applications
It appears that there have been multiple project applications opened under your username:

Project 1: https://drupal.org/node/2076185

Project 2: https://drupal.org/node/2052349

As successful completion of the project application process results in the applicant being granted the 'Create Full Projects' permission, there is no need to take multiple applications through the process. Once the first application has been successfully approved, then the applicant can promote other projects without review. Because of this, posting multiple applications is not necessary, and results in additional workload for reviewers ... which in turn results in longer wait times for everyone in the queue. With this in mind, your secondary applications have been marked as 'closed(duplicate)', with only one application left open (chosen at random).

If you prefer that we proceed through this review process with a different application than the one which was left open, then feel free to close the 'open' application as a duplicate, and re-open one of the project applications which had been closed.

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

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.

jay.chen’s picture

Issue tags: +PAreview: review bonus

Adds "PAReview: review bonus" tag.

tibezh’s picture

Issue tags: -PAreview: review bonus

Problems:

  1. quickupdate.module, function quickupdate_autocomplete_search_projects - please, use a placeholders for t() function.
  2. quickupdate.module, function quickupdate_get_project - contains dublicate code.
  3. quickupdate.module (line 16) - this is unnecessary code.
  4. Screen - where is "Download these updates" button? (not founded in code).

Recommendations:

  1. Will be great if module contains hooks for add to list of themes and modules other items.

Removing review bonus tag, you can add it again if you have done another 3 reviews of other projects.

tibezh’s picture

Status: Needs review » Needs work
tibezh’s picture

Issue summary: View changes

Adds reviews of other projects.

jay.chen’s picture

Status: Needs work » Needs review

Hi, @tibezh, all the problems were fixed.

1. Used placeholders to wrap the text.
2. Removed the duplicate codes.
3. Removed the unnecessary line.
4. Fixed this bug so you will see the button.

Additional,
1. I added two hooks to allow other modules to add or alter project from the searching list.
They are "hook_quickupdate_search_projects" and "hook_quickupdate_search_projects_alter".
2. I added a Drush command to install all missing dependency projects that include modules and themes.

drush qup-missing-dependencies
or
dursh qup-md

kscheirer’s picture

Status: Needs review » Reviewed & tested by the community
  • Doesn't drush already let you easily install or update multiple projects from the command line? It grabs dependencies as well, how does this differ?
  • If you're going to clobber update's validate and submit functions, you can do it in one line with $form['#validate'] = array('quickupdate_manager_update_form_validate');

Looks like a useful module, nice work!

----
Top Shelf Modules - Crafted, Curated, Contributed.

jay.chen’s picture

Thank you for your review, @kscheirer.
1. drush dl command can download multiple projects at a time, but it won't download the dependencies projects.
drush en command --resolve-dependencies command will download its dependencies also, but it only happened when you try to enable modules.
My custom drush command dursh qup-md can download all levels missing dependencies projects. For example, module A depends on B, B depends on C, and C depends on D, then running dursh qup-md will download all the A, B, C, and D modules.

2. You're right. I combined that to one line.
$form['#validate'] = array('quickupdate_manager_update_form_validate');
$form['#submit'] = array('quickupdate_manager_update_form_submit');

Thank you!

jay.chen’s picture

Issue summary: View changes

Add custom Drush command.

jay.chen’s picture

Issue tags: +PAreview: review bonus

Adds 3 more reviews of projects.

Adds "PAReview: review bonus" tag.

jay.chen’s picture

Issue summary: View changes

3 more reviews of projects

klausi’s picture

Status: Reviewed & tested by the community » Fixed

I removed one automated review comment from the issue summary.

manual review:

  1. quickupdate_install(): do not juggle with module weights, because that is not reliable. Use hook_module_implements_alter() instead fi you must run before/after a specific other hook implementation.
  2. quickupdate_form_alter(): if you are only targeting one specific form you should use hook_form_FORM_ID_alter() instead.
  3. "simplexml_load_file(UPDATE_DEFAULT_URL ...": This fail on many drupal installations because remote file inclusion is disabled for security reasons. Use drupal_http_request() instead.
  4. quickupdate_get_project(): why the json_encode/decode()? Please add a comment, this seems totally useless? You just want an array, why can't you cast the result object to an array?
  5. I think we can assume that project titles do not contain malicious text most of the time, but I would still sanitize them before printing to not open up any obscure XSS attack vectors. Yes, I think those titles are user provided text. See https://drupal.org/node/28984

But that are not critical application blockers, so ...

Thanks for your contribution, Jay.Chen!

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.

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

Anonymous’s picture

Issue summary: View changes

removed automated review.