Joel's Blog

Adventures in Perl 6, part IV

Pixelart Camelia

Splitting off code that used to be part of a big repository and at the same time didn’t feature a unique name can naturally lead to confusion if you do not closely follow such a process, so why not take a moment to create a short overview.

As of writing this, the official perl6 documentation lives in a single repository perl6/doc. This repository consists of multiple parts, which can be roughly categorized into the following:

The official identity and name for this whole perl6/doc repository is also p6doc:

{
  "name": "p6doc",
  "description": "Perl 6 documentation (tools and docs)",
  "version": "1.003",
  "perl": "6.*",
  "authors": [
    "perl6"
  ],
  "auth": "perl6",
  "depends": [
    "URI",
    "File::Temp",
    "JSON::Fast",
    "Pod::To::BigPage:ver<0.5.1+>",
    "Pod::To::HTML:ver<0.6.1+>",
    "OO::Monitors",
    "File::Find",
    "Test::META",
    "Perl6::TypeGraph"
  ],
  "build-depends": [
    "File::Find"
  ],
  "provides": {
    "Perl6::Documentable": "lib/Perl6/Documentable.pm6",
    "Perl6::Documentable::Registry": "lib/Perl6/Documentable/Registry.pm6",
    "Perl6::TypeGraph::Viz": "lib/Perl6/TypeGraph/Viz.pm6",
    "Pod::Cache": "lib/Pod/Cache.pm6",
    "Pod::Convenience": "lib/Pod/Convenience.pm6",
    "Pod::Htmlify": "lib/Pod/Htmlify.pm6",
    "Pod::To::SectionFilter": "lib/Pod/To/SectionFilter.pm6",
    "Test-Files": "lib/Test-Files.pm6"
  },

My project is about what’s currently the p6doc script. During my work I turned it into it’s own module and rewrote it to make use of Perl6::Documentable, which is receiving a similar treatment at the same time.