[development] Announcing cvs_deploy.module

Derek Wright drupal at dwwright.net
Wed Jun 13 17:32:29 UTC 2007

On Jun 13, 2007, at 7:01 AM, Sean Robertson wrote:

> I did, but it's not entirely clear exactly what functionality is in  
> the module.  The project page really needs to be updated with a  
> feature list.

Fair enough.  Actually, the project page *does* say what the module  
does, there's just not much yet, so it might be easy to miss:

"At this point, the CVS deploy module is primarily useful if you use  
the Update status[1] module, in particular, the 5.x-2.* series  
(currently still in development, see the 5.x-2.x-dev[2] release).  
However, CVS deploy also alters the modules page at admin/build/ 
modules to put human-readable version strings in place, instead of  
the ugly $Name: DRUPAL-5--1-2 $ versions that are currently displayed  
when you deploy a Drupal site from CVS."


cvs_deploy is also smart enough to figure out what tag/branch a given  
module was checked out with, even if the dreaded version = "$Name$"  
isn't in the .info file (it looks for a CVS/Tag file and figures it  
out from there).

This means that we no longer should put this "version" line in  
the .info files in CVS at all.  We only ever did that as a  
convenience for the power-users who deploy from CVS, and now we've  
got cvs_deploy to handle that problem for them, instead.  (/me kicks  
self for not just writing cvs_deploy.module months ago).

See http://drupal.org/node/151535 for confusion in the wild caused by  
this practice...

Therefore be it resolved:

Everyone should just remove the "version" definition in the .info  
files as committed to CVS.  the packaging script will continue to add  
the right version string to the packaged tarballs.  People who deploy  
directly from CVS should use cvs_deploy.module to get reasonable  
version strings on admin/build/modules, even if there's nothing in  
the .info files.

Hope that clarifies what cvs_deploy.module is doing and why you want it.


p.s. the other code in there is basically doing the same sorts of  
tricks for the purpose of update_status.module knowing exactly what  
you currently have installed, even if it's from CVS, so it knows to  
tell you if you're out of date or not.

[1] http://drupal.org/project/update_status
[2] http://drupal.org/node/143593

More information about the development mailing list