DSSS, Dsource, and cpan

Gregor Richards Richards at codu.org
Wed Apr 11 00:39:57 PDT 2007


Walter Bright wrote:
> Andrei suggested that a huge resource for Perl users is 
> http://www.cpan.org. Not only is it full of reusable Perl code, it is 
> very easy to access via 
> http://search.cpan.org/~jhi/perl-5.8.0/lib/CPAN.pm, and is a big factor 
> in the ongoing success of Perl.
> 
> It seems to me that we are close to this with DSSS coupled with Dsource. 
> So can we get closer?
> 
> I.e., can we change dsource so that there are two kinds of projects:
> 
> 1) Projects that are not certified, and
> 2) Projects that are certified
> 
> Certified projects must meet certain minimum requirements:
> 
> 1) They can be installed using DSSS
> 2) They compile and run their unit tests
> 3) They have ddoc documentation for their APIs
> 
> In other words, a project that is certified is one that is easy for 
> users to install, has documentation, and at least appears to work.
> 
> Boost, another successful library repository, also adds on peer review. 
> Perhaps in the future, as our user base grows, we can add another layer 
> of certification for projects that pass peer review.
> 
> Any thoughts?

For what it's worth, other than creating DSSS itself I've taken some 
steps along these lines.

I have a testing framework which checks whether dsss-net-installable 
tools succeed across all the systems I can x-compile to, with results 
posted at http://dsss.codu.org/results.html (I'm still working out some 
kinks, so there are false-negatives there ;) )

Unit tests would be an excellent next-step for that page: a 'yellow' 
indicator would mean "compiles, but unittests failed."

If this data was all stored in a standard way, DSSS could access it to 
provide more information on installable tools than what is provided now. 
That would be quite nice. Options could be added such as:

$ dsss net info bintod
...
Description: bintod is a utility for translating binary data into D 
char[] arrays, so that it can easily be compiled into a program.
Tests: Passes on 9/10 platforms
        FAILS on 8086-sysv

  - Gregor Richards

PS: In case nobody knew, all of DSSS' functionality can be used in any 
program by importing sss.build, sss.net, sss.install, etc.



More information about the Digitalmars-d mailing list