Re: Testing Database Schema
[EMAIL PROTECTED] (Tony Bowden) writes: [...] The two best ideas we've had so far are to either run the SQL in the code against a temporary database, and then compare both SHOW CREATE TABLE outputs, or to use something like SQL::Translator to convert both lots of SQL to a common format. Both seem much too cumbersome, however. Anyone have any brighter ideas? One variation that might work (and if it does, it'd also work on other databases) would be to use DB::Introspector. http://search.cpan.org/dist/DB-Introspector/ - ask -- ask bjoern hansen, http://www.askbjoernhansen.com/ !try; do();
Re: [OT] Re: Single Sign-on Re: Perl Passport?
[EMAIL PROTECTED] (Darren Chamberlain) writes: As I figured it out neither... Reason: auth.perl.org is part of the SSO (Single Sign-on) that was created especially for the perl.org domain and its sub-domains. As far as I know it isn't a service that is publicly available. And I also don't think that Ask or Robert will give away the source, as it is build specifically for perl.org and it's setup. Is that not http://svn.develooper.com/combust/auth/trunk/ ? You need a perl.org account to access it. (you can also use guest/guest). The version in that directory is the new version I've been working on. Hopefully we'll switch auth.perl.org over to use it not long after OSCON. Some of the fun things with the new system is that it supports sites on other domains properly, doesn't use a universal id and I plan to make it support multiple authentication services. The client library (perl only for now) is at: http://search.cpan.org/dist/Sau-Client/ There are some interesting links at the bottom of http://logintest.perl.org/doc/design_notes.html - ask -- ask bjoern hansen, http://www.askbjoernhansen.com/ !try; do();
CPANTS (was Re: Script to find Module Dependency Test Results...)
Hi! On Mon, Jul 19, 2004 at 12:12:39AM -0400, Robert Rothenberg wrote: I have a prototype Perl script that will determine the dependencies of a given CPAN distribution, and then check CPAN Testers for any failure reports of that distro or dependent distros for a given platform. Sounds a little bit like CPANTS, the CPAN Testing Service. I'll do a talk on it at YAPC::Europe, so if you're there we could talk about joining forces. If you're not there, we can use email :-) One downside of CPANTS is that it cannot actually run code (for various reasons), so we might not be able to actually work together. But I don't know how your script is working, so... BTW, I've currently found some time to do some work on CPANTS. It's not ready for release, but interested parties can take a look at http://svn.zsi.at:1000/repos/Module-CPANTS-Generator/trunk/ But beware: docs are missing and/or false, so it might be better to wait a little bit... Just now I'm generating stats, which will probably take some time to complete. I'll post links to results as soon as they are available. As I've got some time right now, I'll post a short overview of how CPANTS is working: *) fetch all dist from CPAN using CPANPLUS (examples/fetch_cpan.pl) *) analyse all dists using the generator in Module::CPANTS::Generator::* by running the Canalyse method in the generators. this step generates a yaml-file for each dist in dir metrics. (examples/anaylse_dists.pl) *) calculate kwalitee by looking at the yaml-metrics, adding the kwalitee infos to the yaml file (examples/calc_basic_kwalitee.pl) *) generate a SQLite DB from the yaml-metrics (examples/yaml2sqlite.pl) *) calculate more kwalitee. This time we can use the sqlite-DB do to cross-referencing. (eg in Generators::Prereq I check if a dist is required by three or more other dists. If it is, it get's more kwalitee (although I'm not sure if this is a good metric..)) (examples/calc_complex_kwalitee.pl) When all is finished there is a yaml file for each dist and a SQLite-DB containting all the infos in an easy-to-query format. I've attached the metrics yaml file for Acme::Bleach I generated during testing... Feedback/Patches welcome... -- #!/usr/bin/perl http://domm.zsi.at for(ref bless{},just'another'perl'hacker){s-:+-$-gprint$_.$/} --- #YAML:1.0 dist: Acme-Bleach-1.12 distribution: dist_without_version: Acme-Bleach extension: tar.gz extractable: 1 extracts_nicely: 1 package: Acme-Bleach-1.12.tar.gz version: 1.12 version_major: 1 version_minor: 12 files: build_pl: 0 count_bad_permissions: 0 count_dirs: 4 count_files: 19 count_symlinks: 0 list_bad_permissions: '' list_dirs: demo,lib,lib/Acme,t list_files: ! - Changes,MANIFEST,Makefile.PL,README,demo/demo_DWIM.pl,demo/demo_bleach.pl,demo/demo_bleach_c.pl,demo/demo_bleach_eng.pl,demo/demo_bleach_lisp.pl,demo/demo_bleach_sh.pl,demo/demo_empty.pl,demo/demo_morse.pl,demo/empty,lib/Acme/Bleach.pm,lib/Acme/DWIM.pm,lib/Acme/Morse.pm,t/DWIM.t,t/bleach.t,t/morse.t list_symlinks: '' makefile_pl: 1 manifest: 1 meta_yml: 0 ninja: 0 readme: 1 signature: 0 kwalitee: extracts_nicely: 1 has_buildtool: 1 has_manifest: 1 has_meta_yml: 0 has_readme: 1 has_version: 1 is_prereq: 0 kwalitee: 7 no_pod_errors: 0 no_symlinks: 1 permissions_ok: 1 pod: errors: 3 release: date: Tue May 22 02:17:11 2001 epoch: 990490631 size: packed: 4299 unpacked: 11479
CPANTS preview
Hi! I ran CPANTS today, you can view results here: http://cpants.dev.zsi.at/ ( or http://test1.dev.zsi.at if DNS isn't updated..) in /metrics there is a yaml-file for each dist cpants.db (or cpants.db.gz) is a SQLite DB file Oh, there might be a bug, because 100 dists didn't get any kwalitee when at least some of them should... Max Kwalitee is 10, which is reached by 99 dists. dist can get kwalitee for: extracts_nicely (i.e. in a proper subdir, not in current dir) has_version no_symlinks permissions_ok (i.e. all files are read/writable by extracting user) has_readme has_manifest has_meta_yml has_buildtool (either Makefile.PL or Build.PL) no_pod_errors is_prereq (is listed as PREREQ by at least 3 other dists) sqlite select kwalitee,count(kwalitee) as cnt from kwalitee group by kwalitee order by kwalitee; kwaliteecnt -- -- 0 100 1 1 2 6 3 28 4 80 5 123 6 482 7 1986 8 3433 9 1365 10 99 -- #!/usr/bin/perl http://domm.zsi.at for(ref bless{},just'another'perl'hacker){s-:+-$-gprint$_.$/}
Re: Testing Database Schema
On Mon, Jul 19, 2004 at 05:00:05AM -0700, Ask Bjoern Hansen wrote: [EMAIL PROTECTED] (Tony Bowden) writes: [...] The two best ideas we've had so far are to either run the SQL in the code against a temporary database, and then compare both SHOW CREATE TABLE outputs, or to use something like SQL::Translator to convert both lots of SQL to a common format. Both seem much too cumbersome, however. Anyone have any brighter ideas? One variation that might work (and if it does, it'd also work on other databases) would be to use DB::Introspector. http://search.cpan.org/dist/DB-Introspector/ There's also http://search.cpan.org/dist/SQL-Translator/ and http://search.cpan.org/dist/DBIx-DBSchema/ Tim.
Re: CPANTS preview
On Thu, Jul 22, 2004 at 04:28:08PM +0200, Thomas Klausner wrote: Hi! I ran CPANTS today, you can view results here: http://cpants.dev.zsi.at/ ( or http://test1.dev.zsi.at if DNS isn't updated..) in /metrics there is a yaml-file for each dist cpants.db (or cpants.db.gz) is a SQLite DB file Oh, there might be a bug, because 100 dists didn't get any kwalitee when at least some of them should... Max Kwalitee is 10, which is reached by 99 dists. The DBI gets 9. The one failure is permissions_ok: permissions_ok (i.e. all files are read/writable by extracting user) Why is that a kwalitee issue? I don't think it warrants impacting the kwalitee. Tim. p.s. It'll cause problems for anyone using a source code control system that keeps files read-only - like RCS and CVS do. That's the reason the DBI has many read-only files. (I use svn now, but used to use RCS.)
Re: CPANTS preview
On Thu, Jul 22, 2004 at 05:25:38PM +0100, Nicholas Clark wrote: On Thu, Jul 22, 2004 at 04:28:08PM +0200, Thomas Klausner wrote: Hi! I ran CPANTS today, you can view results here: Oooh. Nice Agreed. I think it is a great start. Thanks very much for your work. Max Kwalitee is 10, which is reached by 99 dists. Will it go up to eleven soon? :-) At the moment the focus seems very much on packaging. That's fine, but it does mean that correctly packaged junk looks pretty good. In time, some more metrics would be good. Some suggestions: - How do the CPAN testers reports look? - What does cpanratings think? - Some analysis of the RT action. - Number of releases, perhaps in relation to the size of the code. More releases expected for larger code. - Static analysis. - Test coverage. Some of those will be a lot harder than others, and the metrics will obviously need to be weighted, but I just wanted to throw out a few thoughts from the safety of the peanut gallery. -- Paul Johnson - [EMAIL PROTECTED] http://www.pjcj.net