(Here's the revised version.)

Our new smoke server now has some extra links named SYN in the right
margin of the page, where one SYN link corresponds to one smoke
report:

http://m19s28.vlinux.de/cgi-bin/pugs-smokeserv.pl

Click on one of these links will lead you to a list of Synopses.
Entering one synopsis, say, ``02 Syntax'', you will find out our
magic.

As what you might have seen, these synopses contain test
passing/failing marks in the code snippets. (This feature was
originally suggested by Christopher++ and Gaal++.) For example:
\xAD\xF5        is($foo, "blah", "lone block actually executes it's content");
        
        my $foo2;
        {$foo2 = "blah"};
\xAD\xF5        is($foo2, "blah", "lone block w/out a semicolon actually 
executes
it's content");
        
        my $foo3;
        ({$foo3 = "blah"});
×       ok(!defined($foo3), "block enclosed by parentheses should not
auto-execute (1)", :todo<bug>);

Note that TODO tests are marked as passing only if they're actually
passing (i.e., unexpected passing from the perspective of
implementers) and they're marked as failing only if they're actually
failing (i.e. expected failing). I don't introduce special marks for
these tests because added complexity will lead to unnecessary
confusion.

Skipped tests have no marks at all. The meaning is straightforward
here. Just don't mistake blank tests for smartlinks.pl's bugs or
something like that. ;)

There's also brief stats info in the link name so that you can see how
many sub-tests are failing and how many are not without actually
expanding the code snippet. (Thanks Juerd++ for suggesting this one.)
For instance:
  - Show the snippet from t/var/var.t (line 13 ~ line 132  ―  30 \xAD\xF5, 0 ×) 
-

On top of the web page, there's a header like this:

 This page was generated at 2006-09-17 05:58:59 GMT.
 (syn r12136, pugs r13398)

where the revision number for pugs was extracted from the
corresponding tester's smoke report. Christopher has ensured the
version of the Pugs test suite used by the smoke server exactly
matches the smoker's local Pugs. The timestamp was proposed by Juerd++
while the revision numbers for both syn and pugs were proposed by
[particle]++.

All the Synopses on the smoke server are updated periodically by cron,
even for old smoke reports that had been processed. We're trying to
offer you the latest Perl 6 Spec everywhere. :)

For more details on the original motivation and Christopher's design
decisions, please read the p6c thread below:

synopses on smoke server

Thanks to Gaal and Larry's tests.yml while I was implementing smoke
result rendering feature in smartlinks.pl many weeks ago. At last but
not least, I really appreciate Christopher's work on the smoke
server/client mechanism to make this feature truly useful. (We don't
need auto-smoking on feather any more, whee!) And I also thank
iblech++ (yes, iblech's alive!) for helping him through the whole
process.

The Synopses on feather will still go without smoke results, since
smoke results are always specific to a certain Perl 6 implementation
or a Pugs backend. We hope you will still like it. :)

Enjoy!

Agent

P.S. This mail has also been posted to the Pugs blog site:

  http://pugs.blogs.com/pugs/2006/09/check_smoke_res.html

which contains some useful links.

Reply via email to