[development] Choosing the N number for .install's hook_update_N

Derek Wright drupal at dwwright.net
Mon Aug 4 20:44:40 UTC 2008

On Aug 4, 2008, at 12:29 PM, Earnie Boyd wrote:

> Aside from the malformed function name s/mymod_update_7-2-1()/ 
> mymod_update_7_2_1(), the document states that the current function  
> requires exactly one character for the Drupal version, exactly one  
> character for the module version and exactly two characters for the  
> sequence number.  This doesn't allow the module or Drupal to go to  
> version 10.  Instead of exactly one, one and two we need to  
> delimiterize the versions and sequence so that we can expand beyond  
> it easily.

A) This is a convention that allows branch-aware updates to work  
without any changes to the core update.php logic, the schema for the  
{system} table, and other places.

B) Nothing about this prevents Drupal from going to version 10.  At  
that point, we go past 9000 and start numbering things 10000.  No  
problem, except a 1 sentence change to the docs.  We don't need a  
delimiter for this.

C) Any contrib with 10 versions of itself for the same version of  
core needs to seriously consider its own release planning.

I know OG is getting close, but arguably, Moshe is leaping major  
numbers too fast (especially since he never supports the older ones,  
and people are basically forced to keep jumping versions all the time  
if they still want bug fixes).  That's really a separate debate to  
have with Moshe in the OG issue queue, it's pretty irrelevant here.   
Point being: some contrib that's up to major version 10 within the  
same version of core is a pretty pathological edge case, and I don't  
think it's worth changing code in update.php, the schema for the  
{system} table, and other parts of core, to handle schema versions  
that aren't simple integers.

-Derek (dww)

More information about the development mailing list