develooper Front page | perl.perl5.porters | Postings from August 2001

Re: The case for SDKs

From:
John Peacock
Date:
August 3, 2001 07:40
Subject:
Re: The case for SDKs
Message ID:
3B6AB4DD.D3470435@rowman.com
Adam Turoff wrote:
> 
> From what I remember, here were the serious issues:
> 
>         The Bundle approach doesn't capture versions of the included
>         modules, just the module names.  An SDK version must be in a Known
>         Good State (tm) and should be versioned itself.

That sounds like the SDK needs to be what CVS refers to as a tag.  A
specific version of each file included, all tagged as a specific 
release.

> 
snippage
> 
>         There's an unresolved issue with DLL Hell; if two modules include
>         a common module (e.g. Date::Broken), SDK 1 may function with version
>         3.14, and SDK 2 may function with version 2.78, but both SDKs can't
>         be installed concurrently because of conflicting requirements with
>         that common module.

This points to the longstanding issue of needing to keep multiple 
revisions of modules installed.  Either we go to a 

	[siteperl]/Module/Name/V1.1

directory structure and enhance use() et al to understand loading 
different versions, 

	use Module::Name  (>1.0 );  # get the latest release after 1.0
	use Module::Name  ( 1.0 );  # compatibility mode, as above
	use Module::Other (=0.67);  # accept no subsitutes!

or we go to some other way of storing modules.  I have been thinking
about whether it would be worth investigating turning the [siteperl] 
directory into a big CVS repository.  Using the checkoutlist file,
it would be possible to always have to most recent version stored as
plaintext, but also be able to retrieve any arbitrary earlier version.

Now, I don't want to start a fight; I am not sure that CVS is available
on enought platforms, or is good enough to add to Perl.  I have just
been wondering if a version-controled module directory might be a
good way to go.

Just think, - CPAN could be used as a remote CVS repository for easy
module updates...

Just a thought (or three ;).

John

--
John Peacock
Director of Information Research and Technology
Rowman & Littlefield Publishing Group
4720 Boston Way
Lanham, MD 20706
301-459-3366 x.5010
fax 301-429-5747



nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About