# from David Golden # on Wednesday 03 September 2008 14:09: > if ... CPAN Testers is ... > to help authors improve quality > rather than ... > to give users a guarantee about ... any given platform. > >... "high quality" author -- ... tester has a broken or misconfigured >toolchain The false positive ratio will approach 100%. > >__Repetition is desensitizing__ ... [more data will] improve confidence >in the aggregate result. ... However, ... only need to hear it once. > >... fail during PL or make ... valuable information to >know when distributions can't build ... [or] ... don't pass tests. ... >not just skip reporting. ... [but] false positives that provoke >complaint are toolchain issues during PL or make/Build. > >... no easy way to distinguish the phase ... subject of an email. > >I... partitions the FAIL space in a way that makes it easier for >authors to focus on which ever part of the PL/make/test cycle...
Yes. Important points. Excellent assessment. >__What we can fix now and what we can't__ >... >However, as long as the CPAN Testers system has individual testers >emailing authors, there is little we can do to address the problem of >repetition. This is true. For me, the mail is such a completely random data point (no PASS mail, not all of the FAIL mail, etc) that I just delete it. >Once that is more or less reliable, we could restart email >notifications from that central source if people felt that nagging is >critical to improve quality. Personally, I'm coming around to the >idea that it's not the right way to go culturally for the community. Send one mail to each new author telling them about the setup and how to get rss or configure it to mail them, etc. Telling people about something they don't know *once* is usually helpful. But with the per-tester direct mail, the recipient is powerless to stop it, and feeling powerless tends to make people angry. In the bigger scheme of things, I sort of think all new PAUSE authors should get a welcome e-basket with links, advice, etc, along with perhaps an optional (default?) monthly newsletter about new tools or something. But, the trend generally seems to be away from mail and towards web services. I'm in favor. >Some of these proposal would be easier in CPAN Testers 2.0, which will >provide reports as structured data instead of email text, but if "exit >0" is a straw that is breaking the Perl camel's back now, then we >can't ignore 1.0 to work on 2.0 as I'm not sure anyone will care >anymore by the time it's done. What are the issues in that time? Code or non-code? >What we can't do easily is get the testers community to upgrade to >newer versions of the tools. That is still going to be a matter of >announcements and proselytizing and so on. But I think we can make a >good case for it, and if we can get the top 10 or so testers to >upgrade across all their testing machines then I think we'll make a >huge dent in the false positives that are undermining support for CPAN >Testers as a tool for Perl software quality. Yes. Further, if you can detect new tools from old, you have enough information to filter the results. Hah! You know, you have their e-mail address, right? You can just send them nagging mail about how their tools are FAIL! ;-) So, seriously.... Testing is good. Knowing that weird platforms fail or pass is good. Knowing that old toolchains fail is even useful to some extent, but I think the significant variables are different for different users. So, what are these use cases? Let's pretend that I'm a real jerk of an author and I only care about whether my code installs on a perl 5.8.8+ (a *real* perl -- no funky vendor patches) with a fully updated and properly configured toolchain and the clock set to within 0.65s of NTP time. It would then be useful for me to be able to mark (for all the world to see) which of the machines reporting were using "supported" configurations. That would both show *me* a valid fail and let my users know whether their configuration was supported. The user could still see passes and fails (hey, they could even perhaps login and set a preference for what to show.) And remember that the user is also often an author who is considering whether a dependency is a good choice for them or not. If they need to support perl 4 and like having wonky vendor perls and purposefully set their clock 5min fast and configure CPAN.pm for prefer_installer => rand, seeing those results are helpful -- but seeing my implied "unsupported configuration" flag is also helpful. Now, I'm not really a jerk, so I don't need the thing about the clock. I can probably live with false results from some redhat perl for a while too. But I'm going to pretend that we do not have a "broken or impossible to upgrade" toolchain until it comes true. My users do not have to share that delusion, but they do have to humor me. So, what do you show the author and/or users by default? That is possibly still rather sticky, but making it adjustable (perhaps according to the maintainer by default) should allow reasonable people to be happy enough. >For those who read this to the end, thank you for your attention to >what is surely becoming a tedious subject. Thank you. Not at all tedious. --Eric -- [...proprietary software is better than gpl because...] "There is value in having somebody you can write checks to, and they fix bugs." --Mike McNamara (president of a commercial software company) --------------------------------------------------- http://scratchcomputing.com ---------------------------------------------------