[development] lucid menu & aggregation

Khalid Baheyeldin kb at 2bits.com
Thu Mar 22 03:03:21 UTC 2007


On 3/20/07, Ashraf Amayreh <mistknight at gmail.com> wrote:
>
> >It is trivial to make an update to do this and retain the schema
> >versions. This is exactly what the update system was designed for.
>
> >If you want to do it properly, you should keep as much existing data
> >as is reasonable.
>
> I really hope it is very clear that I did not want to worry about
> anything pertaining to aggregator2. It's data included. Using its own
> update file and building on it would be doing that.
>
> I could however provide an option for migrating aggregator2 data to
> the Aggregation module, would be quite interesting really. Also, if I
> used the aggregation2's update file as a base, what would my next
> update hook do? It would drop the aggregator2 tables and create mine.
> Just think of what an aggregator2 user would do if he mistakingly
> downloaded my module and ran the upgrade script! (yes, users do ignore
> regulations, I've had a number of PHP 4 users install my module
> although the project page bluntly says not to). Some things are so
> messy they're better off left alone. If there's a remote risk that
> data will be lost because I'm using the aggregator2 name, why even
> risk it? Which reminds me...
>
> >umm... why not just delete aggregator2 from the repository?
>
> Is there some reason why we shouldn't just do that?
>


Ashraf

Here is the email chain from the CVS application, to jog your memory:

=== Boris:

What about taking over / replacing aggregator2? It's been abandoned in any
case....

I think we really, really don't want something called aggregator3. The
feedparser and related modules are going in yet another direction (sort of).

Either call it aggregator_api or take over/replace aggregator2 -- that's my
vote.

=== Ashraf:

Replacing aggregator2 is fine with me, but this will give people the
impression that this is an upgraded aggregator2 where it is a complete
overhaul. They may also seek help for aggregator2 which I really would
rather not get into. Any downside in naming it aggregator3? Sound to me it
means the successor of aggregator2, which essentially is what it is.

=== Boris:

The downside to naming it aggregator3 is that it reinforces the idea in
peoples' minds that they should just rewrite from scratch rather than
collaborating. It sounds like you've put a lot of work into your module and
really done architecting...many other are guilty of just not bothering to
try and figure out how to work together, or just slapping some code
together.

So...the downside is that the more serious of developers will not look
kindly on somethingsomething3. Yes, naming is important :P

And, as a "successor" to agg2...I'd rather, as I said, just make it a new
release. We've got the new release version in place to facilitate exactly
this. We can clear out the issue queue if this is agreed to by all.

=== Ashraf:

The reason I began this module was to put aggregator2 out of its misery :-)
aggregator2 is buggy (anyone who even got it to work on 4.7 knows what I
mean), it's huge (3000+ code), it's SLOW, and way too messy for a relatively
simple job.

There's no common code between this module and aggregator2, they have
radically different table schemas, this one supports images while the older
did not, this one can be extended to parse any feed while aggregator2 was
made for ATOM and RSS. This one was developed with an eye on performance. I
didn't put any effort to map old aggregator2 items to this new module. And I
don't want users to get the impression that this is an upgrade to their
aggregator2 modules, which would be the case if they found it under the same
name, not something they would be too happy about either.

If there's something I faild to catch then please let me know, but it's my
understanding that new releases need to cleanup, migrate, and make things
look relatively the same for end users. This was never taken into
consideration with this module. If the name is the only issue, then let's
just call it "generic_aggregator". Are we ok with that?

=== Khalid:

A while ago, there was discussion on this list on the various aggregator
alternatives and extensions.

It is archived here:
http://lists.drupal.org/pipermail/development/2006-October/020060.html

There is also this wiki page
https://svn.bryght.com/dev/wiki/DrupalFeedParsing

Basically, aggregator2 has been abandoned, and leech news is one of
the successors (same author IIRC).

I think that I agree with Boris for not naming something *3 for the reasons
he listed.

Since aggregator2 is abandoned, we can do this:

- make you the project owner/maintainer of aggregator2.
- get you CVS access.
- you rewrite it, with the project page saying that 4.7.x-2.0 is a total
rewrite.
- no need for backward compatibility, and you clearly say that this is not
offered.

aggregator2 performance sucks, and I spent a lot of time trying to pinpoint
the
performance bottleneck on the news site, with Shadi and Tamer. Aggregator2
was the culprit here.

By the way, my first contributed Drupal module (feedback) was a total
rewrite of
an existing abandoned module by the same name. Only the name was shared,
and it was abandoned when I rewrote it. Later, Wolfgang Zeigler rewrote my
version,
and I grant him CVS access to the project.

This is the beauty of refactoring open source software.

So, go ahead and try that route.

=== Ashraf:

Sure, this sounds ok to me

So, there was agreement on that being the route to take, but it was not.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.drupal.org/pipermail/development/attachments/20070321/4bb7497a/attachment.htm 


More information about the development mailing list