Re: On Not Merging new and old behavior ( was Re: Test-Stream + MongoDB scalar refcount issue )

[email protected] (Sawyer X)
Newsgroups perl.cpan.workers
Message-ID <CAMvkq_TnbYkbVOeOd9yVFj2r1AEfnaLLRKPZdwYwNuq0suwdrA@mail.gmail.com>
On Sat, May 2, 2015 at 7:31 PM, David Golden <[email protected]> wrote:

> On Sat, May 2, 2015 at 11:11 AM, Kent Fredric <[email protected]>
> wrote:
>
>>
>> That is, conceptually, its possible that a misguided author of a
>> distribution at the same level as say, Test::Differences, thinks it wise to
>> simply rewrite their existing code in the new framework.
>>
>
> We've seen that horror show in Dancer/Dancer2 around plugins.
>
> I think that if we ship a Test::More2, then such a release should
> encourage people to leave Test::Foo alone and fork it to Test::Foo2
> instead.  Then a new ecosystem can build up around it without sacrificing
> the existing one.
>

That has its down-sides too, though, as we've seen in the Dancer/Dancer2
issue.

Effectively what happened/happens is that, while plugins are now able to
provide two different implementations without worrying about backwards
compatibility (we originally wanted ןא to be seamless but turned out to be
very hard), most plugins had a shared core. This was odd to maintain. You
either fork it or you put it in a common "::Core" module, or you ship both
in the same distribution.

We're now rewriting the plugins architecture, but a situation of two
classes provides both clear separation benefit and a headache of its own.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.