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