Hard-Core Bermuda

Ovid on 2008-04-01T11:19:28

I haven't talked about Bermuda in a while, so it's time to do that.

I have two weeks holiday with a friend from the US, so no Bermuda work. Last week's "1 in 10" day where I can do anything I want was spent with working through the Parrot compiler tutorial.

This week is Bermuda. Only Bermuda. I have 'ops' work where I handle random questions from users, but other than that, I've been asked to see if I can get Bermuda in a state where I can generate some of our internal XML from an island file. This is a lot of work, but I've finished basic RelaxNG schema generation (via grammars), but hitting "real" xml has shown some Bermuda limitations that I'm working through.

I'm not sure I'll get it done, though. Not only do I only have a four day work week (leaving Friday for the Oslo Perl QA hackathon), but Schwern's showing up at work today, thus taking more time out.

In other news, Johan Lindstrom is working on Devel::Coverx::Covered. It's horribly broken right now (and some of the docs are wrong), but it's a fantastic project. When done, you'll be able to tell which test programs cover a particular file. Here's a snippet from the docs:

  #Query the covered database per source file
  covered covering --source_file=lib/MyApp/DoStuff.pm
  t/myapp-do_stuff.t
  t/myapp-do_stuff/edge_case1.t
  t/myapp-do_stuff/edge_case2.t

-- not implemented --

  #Query the covered database per source file and row
  covered covering --source_file=lib/MyApp/DoStuff.pm --row=37
  t/myapp-do_stuff/edge_case1.t

  covered covering --source_file=lib/MyApp/DoStuff.pm --row=142
  t/myapp-do_stuff.t
  t/myapp-do_stuff/edge_case2.t

  #Query the covered database per source file and subroutine
  covered covering --source_file=lib/MyApp/DoStuff.pm --sub=as_xml
  t/myapp-do_stuff.t


  #Query the covered database per test file
  covered by --test_file=t/myapp-do_stuff.t
  lib/MyApp/DoStuff.pm
  lib/MyApp/DoStuff/DoOtherStuff.pm


  #Query the covered database for details of a source file
  covered lines --test_file=lib/MyApp/DoStuff.pm --metric=statement
  11, 1
  17, 0
  26, 0
  32, 1
  77, 3
  80, 1
  99, 2
  102, 2
  104, 1

Oh, yeah. I want this :)