Idea summary

What is the problem to solve?

Aggregator does not have an entry in MAINTAINERS.txt and has not had one since 2016.

There is a widely used contributed module, feeds, which provides additional functionality: https://www.drupal.org/project/feeds

Based on 2017 data #2867597: Top Drupal 7 and Drupal 8 core sub-modules, aggregator is installed on 2% of Drupal 8 sites, making it one of the least-used core modules.

Latest 2020 data, 3.87%: #3158669: By default deprecate non-experimental modules that are used by less 5% of sites before the next major version

Aggregator depends on Laminas/Feed. Laminas' release process has just prevented Drupal 9.1 releasing with full PHP 8 compatibility. Additionally, they are refusing to support PHP 8 as a major release, meaning a PR and release is required for each PHP minor - potentially causing us to lag behind PHP 8 releases every time they come out.

Who is this for?

Removing the module will mostly make maintaining core easier.

However, the use-cases for a website to digest RSS feeds have become much more narrow since Aggregator was added to core - some of the use-cases like content sharing are better handled by REST and JSON:API.

Laminas/Feed does not affect core's ability to produce RSS feeds, because Views has never been updated to use it #2003108: Switch Views RSS to use Serializer/Zend, and this isn't provided by Aggregator anyway.

Result: what will be the outcome?

A slight reduction in the core code base.

Removal of a third party dependency that is providing extremely challenging when trying to remain compatible with newer PHP releases.

How can we know the desired result is achieved?

--- Original report ---

at first I want to ask about why this modules do not turn into Fields. but after some thought, I'm wonder to know how many sites using it ? actually we have many similar module better than it :) we can move to contribute module.

CommentFileSizeAuthor
#3 remove-aggregator-1136482-3.patch156.93 KBnaxoc
Support from Acquia helps fund testing for Drupal Acquia logo

Comments

RobLoach’s picture

We could improve aggregator.module and make it behave more like Feeds.

Bojhan’s picture

Category: task » feature
Priority: Major » Normal
naxoc’s picture

Status: Active » Needs work
FileSize
156.93 KB

After having seen the aggregator module on the kill list over at #1255674: [meta] Make core maintainable i took a fist step at removing aggregator - an itch I have felt in a long time. The patch removes all the obvious files and fixes the test that broke. I have not touched system.api.php because I don't know how to make an example that good with another module. That still needs work.

With the patch applied, the only mentions of aggregator are in CHANGELOG.txt and in talking about aggregators in general.

What should happen to the module? I think that if someone wants to take over aggregator, improve it, and maintain it in contrib that would be great. If not then people will use the Feeds module.

RobLoach’s picture

We might want to put in an upgrade path from Aggregator to Feeds, or something similar in contrib, before removing this. There's a little site called the Drupal Planet that needs this.

RobLoach’s picture

Issue tags: +Framework Initiative

Framework Initiative!

naxoc’s picture

Yeah, I didn't really think of the Planet.. I guess it would be easiest to put aggregator in contrib and upgrade to that. But the nice solution would be to make an upgrade path to feeds. I'll take a quick look at how an upgrade to Feeds can be done.

sun’s picture

naxoc’s picture

Having any idea right now how an upgrade path to Feeds in D8 will look is maybe a bit unsure. If we want to get rid of aggregator in D8, I say move it to contrib - a little bit like what happened to blogAPI.

twistor’s picture

While a move from core to contrib wouldn't be bad, I find serious fault in thinking that Feeds is an upgrade path. For one Feeds isn't even stable, it's still in alpha for 7.x. The other problem is there's no development going on outside of a few bug fixes here and there. There's definitely no plan for an 8.x release yet. Nevermind the giant leap in complexity going from aggregator to Feeds.

David_Rothstein’s picture

This doesn't seem like a good idea to me. Being able to aggregate things from other websites is a very basic site building tool. I really don't want Drupal 8 to be released and 12 months later there's still no working aggregator solution for it...

As for Feeds, it's very good of course, but for now at least it seems like it would be extreme overkill for many sites that just need basic aggregation features.

kika’s picture

OK, but what about pushing aggregator in contrib so user can choose simple vs advanced use case?

cweagans’s picture

Being able to aggregate things from other websites is a very basic site building tool. I really don't want Drupal 8 to be released and 12 months later there's still no working aggregator solution for it...

IMO, those two statements are contradictory. If feed aggregation is a basic site building tool, then it won't take 12 months for said tool to be ready. Plus, what sites really use Aggregator, other than Planet? It seems like most sites are leaning toward Feeds, so we should remove aggregator from core and perhaps repurpose it as an easy frontend to Feeds in contrib (similar to simpleviews)

webchick’s picture

Can I please request that we stop these "Remove X from core" discussions and focus on getting D8 done?

cweagans’s picture

Why is removing a module any less productive than spending a bunch of time on it for CMI updates, bug fixes, compatibility fixes, etc?

ParisLiakos’s picture

Status: Needs work » Closed (duplicate)

I am gonna mark this as duplicate of #1827164: Integrate Feeds into core

mitchell’s picture

Priority: Normal » Major
Status: Closed (duplicate) » Active

#15: The other issue depends on this one, and it isn't for 8.x.

Raising priority since #1930274: Convert aggregator processors and parsers to plugins needs an answer here.

ParisLiakos’s picture

Version: 8.x-dev » 9.x-dev

#1930274: Convert aggregator processors and parsers to plugins Does not need any answer, job is already done, someone is needed to RTBC
#15266: Replace aggregator category system with taxonomy Job is almost done as well, waiting for taxonomy term replacement from entity reference patch
So if you think aggregator is useless and should be removed, stop by those issues and give a hand:)

If you think its not duplicate fine..but this is still filled as feature request, which automatically makes it subject to 9.x since we are in feature freeze

ParisLiakos’s picture

Priority: Major » Normal
podarok’s picture

Status: Active » Closed (duplicate)
cweagans’s picture

Status: Closed (duplicate) » Active

Marking the Feeds in Core issue as a duplicate makes sense, but this issue is for completely removing Aggregator. I don't think that's a duplicate..

izmeez’s picture

Issue summary: View changes

Just stumbled on this, and while I couldn't agree more with webchick, to not allow discussions on the future impede getting d8 done; i also agree with the comment in #10

This doesn't seem like a good idea to me. Being able to aggregate things from other websites is a very basic site building tool. ... As for Feeds, it's very good of course, but for now at least it seems like it would be extreme overkill for many sites that just need basic aggregation features.

After d8 has found its feet and the contributors that make it happen have recovered their breath.

I would certainly speak to the merits of aggregator even though there are a few features I find lacking, it does fill a special niche although I am not sure how the initiative to bring feeds into core will shape up.

catch’s picture

Project: Drupal core » Drupal core ideas
Version: 9.x-dev »
Component: aggregator.module » Idea
Category: Feature request » Plan

Moving to the ideas queue.

yoroy’s picture

Category: Plan » Feature request
Issue summary: View changes
Status: Active » Needs work

Based on the usage data we have: #2867597: Top Drupal 7 and Drupal 8 core sub-modules the case for removal could certainly be made.

Adding the "idea template" to the issue summary. Short answers to the 4 questions will help us compare and weigh ideas for their relative impact. Thank you!

catch’s picture

Issue summary: View changes

I've updated the issue summary, including details of how Aggregator relies on one of the dependencies that has prevented full PHP 8 support in Drupal 9.1.

catch’s picture

catch’s picture

Status: Needs work » Needs review
catch’s picture

yoroy’s picture

Thanks @catch, that reads as Aggregator obstructing the whole of core in keeping with the times, as far as PHP is concerned.

Time to get hands-on and actually do this? (are there issues/docs that document how this process works?)

Gábor Hojtsy’s picture

Agree with @yoroy. I think criteria for core module removal should include (a) maintainership (b) whether the given module has an ecosystem, where moving it to contrib may make it difficult to foster that ecosystem due to competing solutions showing up versus whether the module is a standalone feature (c) usage of the module as much as we can measure.

As far as I see, aggregator scores bad in all three aspects. So IMHO Drupal 10 would be a good time to remove. Much better solutions exist in contrib, so no wonder people are not using the core module too widely. It could still be maintained in contrib by people who care for it, so the functionality would not go away if there is interest in it.

larowlan’s picture

I'd put my hand up to maintain this if it moved to contrib

andypost’s picture

@larowlan +1 as co-mantainer! I'm often using the module as example for scheduler

I think it needs to check with feeds roadmap (there's beweekly meetings)

xjm’s picture

Title: Remove aggregator.module from core » Deprecate aggregator.module in D9 core and remove it in D10
xjm’s picture

Title: Deprecate aggregator.module in D9 core and remove it in D10 » [policy] Deprecate aggregator.module in D9 core and remove it in D10
Status: Needs review » Reviewed & tested by the community

Given that this ideas issue now has favorable feedback from two Product Managers, (@Gábor Hojtsy and @yoroy), plus willing contrib maintainers, we can probably go ahead with this.

Removing a module from core is supposed to have all of Product, Framework, and Release Management signoff. I think the fact that @larowlan offered to maintain it in contrib probably also implies his signoff as a Framework Manager? And from the Release Management side, I'm definitely in favor of doing this given the low module usage and the opportunity to remove a core dependency for D10. Pretty sure @catch is in favor as well given that he resurrected the issue in the first place.

So, I'm marking this policy decision RTBC. I'll do a quick committer poll just to confirm I haven't misrepresented anyone. After that, I think we can open a new core issue to follow through and deprecate the module.

IMO the next step after that will be to solve #3135100: [policy and meta] Provide a proper mechanism for deprecating modules and themes so that we can do the deprecation efficiently (rather than the sorta-frantic and inconsistent way we did module deprecations in the lead-up to 9.0.0). We can postpone our core issue for Aggregator on that soft-blocker.

xjm’s picture

Status: Reviewed & tested by the community » Fixed

Aright, only positive responses for the past week. I've filed #3188549: [Meta] Tasks to deprecate both Aggregator and our dependency on Laminas Feed for the next step and we can call this fixed. Thanks everyone!

Status: Fixed » Closed (fixed)

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