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 support for Drupal Modules #980

Open
andrew opened this issue Dec 12, 2024 · 7 comments
Open

Add support for Drupal Modules #980

andrew opened this issue Dec 12, 2024 · 7 comments
Labels
enhancement New feature or request help wanted Extra attention is needed

Comments

@andrew
Copy link
Member

andrew commented Dec 12, 2024

Total modules: 52,635

Registry: https://www.drupal.org/project/project_module

module list api: https://www.drupal.org/api-d7/node.json?type=project_module

individual module endpoint: https://www.drupal.org/api-d7/node/3219.json

more docs: https://www.drupal.org/docs/core-modules-and-themes/core-modules/jsonapi-module

purl type: drupal

@andrew andrew added enhancement New feature or request help wanted Extra attention is needed labels Dec 12, 2024
@hestenet
Copy link

hestenet commented Dec 12, 2024

Hi @andrew ! Thank you for opening this.

I'm the CTO of the Drupal Association and can hopefully provide useful information, depending on what data is needed in the API end-points you are looking for.

The ones you've found are accurate and functional today, but are being gradually superseded

I would actually probably recommend using our Packagist API for information?
The Drupal 7 REST API is gradually being superceded by that.

Drupal Core has a primary package available on Packagist, from our GitHub subtree splits:
https://packagist.org/packages/drupal/core-recommended
https://github.com/drupal/

But the majority of our packages are on our self-hosted gitlab instance, and so we publish our own Packagist endpoint, which ships with drupal/core-recommended

This is designed to be fully compatible with the Composer/Packagist spec, so if you have existing tools to parse from a packagist endpoint this might be an easier way to go:

Let me know if that's helpful or I can provide more information.

@andrew
Copy link
Member Author

andrew commented Dec 12, 2024

Thanks @hestenet yes I can definitely use the packagist format, that should make this even quicker to implement as I can just subclass the existing https://github.com/ecosyste-ms/packages/blob/main/app/models/ecosystem/packagist.rb class

@hestenet
Copy link

Excellent, that's great to hear! Glad I was able to chime in before you went down a garden path.

@gusaus
Copy link

gusaus commented Feb 25, 2025

With https://opencollective.com/ecosystem-funds/projects/oc-drupal-fund now live (and coming up in searches) it would good to work though this issue asap so we can launch https://funds.ecosyste.ms/funds/drupal.

That said, I'm not exactly sure if there are specific tasks or areas @andrew might need help with.

@gusaus
Copy link

gusaus commented Feb 25, 2025

We need to determine if this model could work in an ecosystem like Drupal where where the core project (and dependencies) account for a tiny fraction of the projects. How can we leverage to fund the following:

  • Contributed projects -
  • Community initiatives/teams/working groups
    • Considering Drupal already measures contributions (including non-code) through their contribution credit system, I'm assuming there's a way to incorporate into an associated projects criticality?
    • Problem again is that leads of Drupal Association working groups, strategic initiatives, and popular community initiatives are more likely to be sponsored already by some other means.

@gusaus
Copy link

gusaus commented Feb 25, 2025

Going back through the logs it looks like Andrew suggested a couple ways to address the challenges in #980 (comment); I'll defer to @hestenet, but it seems like we'd need to implement some of related solutions on drupal.org (referenced in the outline below):

  • Projects meeting the criteria to receive funding will have the following options:
    • add a funding.yml
    • submit an expense to open collective
    • reject funding from the platform - they get sent and email with an accept and reject buttons in it
    • drupal.org - Funding module will allow maintainers to opt-in by adding a funding.yml
  • Factor in the number of funders a project already has, so projects with little to no funding get a boost in ranking

@gusaus
Copy link

gusaus commented Feb 28, 2025

Regarding the usage-based model for community initiatives and working groups, I see a potential challenge since their usage metrics would be low, and many contributions would be non-code. Even if Drupal’s contribution crediting system were leveraged, they might not rank highly.

However, this might not be a big issue, given that there’s already a top-level Drupal collective with 'projects' set up for core, community initiatives, and working groups. Since this collective will likely house the most widely used projects in the ecosystem, there should be a pool of funds that collective admins can manually allocate to these initiatives as needed.

Would love to hear thoughts on this approach and if others see similar challenges or opportunities.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

3 participants