Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add link to installer on module list for missing modules #5792

Open
docwilmot opened this issue Sep 21, 2022 · 8 comments
Open

Add link to installer on module list for missing modules #5792

docwilmot opened this issue Sep 21, 2022 · 8 comments

Comments

@docwilmot
Copy link
Contributor

Description of the need

There should be better integration between the module list and Installer module for missing modules. Currently if a module like Ubercart is missing a dependency (like Rules), there is a note, hidden in the "more..." details element. User would need to search and download that missing module, which seems unnecessarily complicated if we have an Installer.

Proposed solutions

  1. have the "Rules (missing)" span be a link, or create a new link that adds the missing Rules to the Installer queue in the background
  2. have a dropbutton in the operations column that says something like "Add missing module to install queue" which does that
  3. have a filter checkbox/button in the installer that filters the Installers list to only missing modules. Link to that either from the previously mentioned dropbutton or details span

Example

Example of suggestion 1 above, but this looks cumbersome.

module installer

@olafgrabienski
Copy link

I like the idea, but I'm not sure if people who are missing a module will really be interested to use the Installer: Because if you use the Installer for a module from the start, the Installer already installs the dependencies for you. (For Ubercart it will install Rules which in turn will install Entity Plus etc.)

@docwilmot
Copy link
Contributor Author

That's true too. Ok I'll leave this open in case anyone thinks it's still worth considering.

@argiepiano
Copy link

argiepiano commented Sep 21, 2022

Because if you use the Installer for a module from the start, the Installer already installs the dependencies for you.

That's true. Still, it's a convenience feature that could be handy sometimes.

@docwilmot, curious: I see that the snapshot you posted shows several Ubercart modules with a version of "entity-uc-dev". Are you working on expanding Ubercart to use custom entities instead of nodes for products??? That'd be so cool.... 😸

@docwilmot
Copy link
Contributor Author

Sharp eyes. 🙂 I was trying a while back but put it off, Can publish my repo if you think its worth it?

@argiepiano
Copy link

Can publish my repo if you think its worth it?

I think that'd be great. I was thinking about tackling that sometimes, so it's great to know you already got that started. It's a big change, made more complex by the need for backward compatibility.

On the other hand, I was thinking that commerce may also need a team effort, and may be more of a priority from the point of view of possible D7 upgrades...

@docwilmot
Copy link
Contributor Author

https://github.com/docwilmot/ubercart/tree/entity-uc here.

On the other hand, I was thinking that commerce may also need a team effort, and may be more of a priority from the point of view of possible D7 upgrades...

Could start by getting tests working, one by one.

@kiamlaluno
Copy link
Member

The only "issue" I could see is when a module's dependency is a sub-module. In this case, the code building the link would fail. (That's one of the reason why Drupal uses namespaced dependencies.)

@yorkshire-pudding
Copy link
Member

I've come across this today. The installer does not download dependencies of sub modules. I think to do this you would need to download the main module, then look for a modules folder in the folder; if there is one, loop through each subfolder of that and examine the .info files, then kick of the downloader again to get any that are missing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants