Re: Split package caused by DisableStrictChecks

"Thiago H. de Paula Figueiredo" <[email protected]>
Newsgroups gmane.comp.jakarta.tapestry.devel
Message-ID <CAE_88GYSAYUQKWVA5oWk5K-_CR-LJnhAnu8S9g8Z00QOpT0sHw@mail.gmail.com>
On Thu, May 19, 2022 at 4:33 AM Ben Weidig <[email protected]> wrote:

> Hi,

Hi!

> > It won't be backward compatible, but on the other hand it's just one
> annotation,
> > it's very new and I suppose there aren't many people using it,
> > if any (except my day job, which uses it in a handful of places).
>
> I'm using it, too!
> It really helps replacing some older stuff that needs to be extended
> without breaking everything else.

Oh, nice!

> But how do you deal with @InjectComponent in base classes?
> Maybe a boolean "allowMissing() default false" could be added to
> @InjectComponent,

I really like this idea.

> or @DisableStrictChecks could also target fields.

Hmm, I'm not sure I like this one. I really prefer adding something to
@InjectComponent like you suggested.

> I digress, that's another discussion.
>
> Moving just @DisableStrictChecks annotation to
> org.apache.tapestry5.*core*.annotations would still split the annotations

Well, it would in the sense of not having all annotations in a single
package, but we already don't have that, so I think this wouldn't be a
problem. Also, it's not a split in the Java module split package
sense, since it wouldn't be a package that appears in more than one
JAR.

> because all other core annotations are in org.apache.tapestry5.annotations.

Oh, I should have thought of this before: since @DisableStrictChecks
is in org.apache.tapestry5.annotations, but in tapestry-core, we can
just move it to the same package in tapestry5-annotations. No
backward-incompatible changes. Win-win! Other tapestry-core
annotations like @InjectComponents are already there, so there's no
need to create a org.apache.tapestry5.*core*.annotations package.

Cheers!

-- 
Thiago
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.