[development] How to port modules? was: Drupal 7 "When it's Ready"
Matt Chapman
Matt at NinjitsuWeb.com
Sat Mar 7 05:39:11 UTC 2009
Paolo Mainardi wrote:
>
> I think could be possible to write a sort of more abstract general API
> on top of existent for expose a bunch of general "services" with
> Drupal versions compatilibity in mind. Could be a plugin.
Earl Miles wrote:
>
> I frankly find it distressing that people who say how easy it would be
> to have a backward compatibility API are people who clearly don't
> actually understand the codebase.
Ah, the idealism of youth, and the bitter wisdom of experience. :-)
I remember making the same arguments as Paolo with people who are much
smarter than me. Then I actually started writing and upgrading modules.
I now know it's much easier the just upgrade the modules I actually use
in the real world than to dream about a theoretical compatability layer
for the benefit of the 3,950 modules I'll never need. (But it's easier
still to complain and avoid real work altogether, believe me, I know.)
Could Core Developer do more to make module upgrades easier for the rest
of us? In theory, yes, but I'd rather they spent their time using their
superior brain power to make Drupal more awesome. The rest of us can
easily enough follow their excellent instructions for upgrading our
modules, which are practically paint-by-numbers easy. We also get a
leaner code base. It's a win-win.
Drupal is moving in a direction or more and more abstraction (DB:TNG),
so I predict that it will get easier and easier to upgrade modules over
time. It's not like Earl and Karoly and the gang want it to be hard.
Even now, I've 'upgraded' a couple modules from 5 to 6 with only one or
two lines of code changed. How much more can you ask for?
That said, Paolo, if you see a particular function change which could
done in an equally effective way, while preserving compatibility, I'm
sure a patch would be considered. The issue queue is open to everyone.
Best,
Matt
More information about the development
mailing list