[DBIx-Class-Devel] Pull Request: topic/docs-pod-inherit
Brendan Byrd
Perl at ResonatorSoft.org
Thu Dec 6 20:12:11 GMT 2012
On Tue, Dec 4, 2012 at 6:45 AM, Peter Rabbitson <rabbit+dbic at rabbit.us> wrote:
>
> I was actually going further - the skips should happen automatically,
> based solely on lack of POD on the other side. Think of it as
> "no_dead_links => 1" sort of thing. As an example see
> ResultSource::pk_depends_on(). Instead of fishing these out one by one,
> something like a Pod::Tree walk can populate a %seen and prune them
> automatically.
The new code found a bunch of these. I also had to add detection
support for grandparent relationships. (In other words, the method
was overloaded, but the documentation was not "overloaded".) Still
need a new dead_links test for P:I, but this new version is mostly
ready.
One thing it did find was "discard_changes ($attrs?)", instead of
"discard_changes". So, I'll scan through the debugs to find other
problems.
Here's the rest of the debugs, if anybody is interested:
https://gist.github.com/047a828e46e2f433a5f8
> Precisely. Here is an example:
> https://github.com/dbsrgits/dbix-class/blob/master/t/sqlmaker/bind_transport.t#L47
> Note all of these args are "advisory", i.e. a [ {} => $value ] will also
> work, it just won't do anything fancy.
I will try to allocate some tuits to write this section, especially
since most of the docs are in that commit.
>> " ( pending in the next patch: [ $val ] === [ {}, $val ] ) "
>>
>> Was this already implemented?
>>
>
> Sadly no, I ran out of tuits and never came back to it :( I *think* it is
> a little amount of code, but honestly I have not looked since.
Same here. Sounds like a one-liner, but I'm not completely sure.
> Actually I misspoke here - PI should not create dead links period. It
> could list the inherited methods still perhaps under an optional
> include_undocumented_inherits => 1, but it should not generate links for
> them.
I think I have something that'll make everybody happy:
A string with the same format as C<method_format>. This is the
string used for methods that don't exist in the inherited module's
documentation. A blank string (C<''>) will remove any dead links.
The default is to not check for dead links.
This option typically only makes sense if C<method_format> is a
link, but it can be used to automatically remove undocumented
methods or present them in a different manner.
This feature requires L<Pod::Tree> to be installed.
> Speaking of PI fixes - I noticed that it recreates the entire directory
> structure in maint/.generated_pod, even if there was actually no POD to
> generate. Perhaps an over-eager mkpath() ?
Yes. I moved the mkpath further down, after it's figured out if the
POD is needed or not.
--
Brendan Byrd <Perl at ResonatorSoft.org>
Brendan Byrd <BBYRD at CPAN.org>
More information about the DBIx-Class-Devel
mailing list