Re: Use AutoService library to generate Java SPI files in Ignite 3

2022-12-12 Thread Aleksandr Polovtsev
Since no one is against the proposal and some time has passed, the PR is
going to be merged, thanks everyone.

On Wed, Dec 7, 2022 at 3:43 PM Mirza Aliev  wrote:

> Hello,
>
> Very useful change, huge +1
>
> ср, 7 дек. 2022 г. в 13:01, Ivan Bessonov :
>
> > Hello,
> >
> > I'm all in for this change, thank you for the PR!
> >
> > +1
> >
> > ср, 7 дек. 2022 г. в 12:15, Вячеслав Коптилин  >:
> >
> > > Hi Aleksandr,
> > >
> > > This suggestion seems useful to me.
> > > As Aleksandr pointed out, this is a compile-time dependency, so it
> > doesn't
> > > look risky.
> > >
> > > +1
> > >
> > > Thanks,
> > > Slava.
> > >
> > >
> > > ср, 7 дек. 2022 г. в 10:20, Aleksandr Polovtsev <
> alexpolovt...@gmail.com
> > >:
> > >
> > > > Dear Igniters! In Ignite 3, we have a bunch of classes that utilize
> the
> > > > Java SPI (ConfigurationModule and MetricsExporter to name a few). For
> > > every
> > > > interface implementation we need to manually create a file in the
> > > META-INF
> > > > folder. This step can be automated by the AutoService library [1].
> > > >
> > > > I can see the following pros and cons of using this approach:
> > > > 1. Pros:
> > > >   * Less manual boilerplate,
> > > >   * This is a compile-time only dependency (an annotation and an
> > > annotation
> > > > processor),
> > > >   * Less files to maintain and update/move when corresponding
> > interfaces
> > > > change.
> > > > 2. Cons:
> > > >   * A new dependency will be introduced and it looks like the
> community
> > > > doesn't like that.
> > > >
> > > > I've created a PR [2] with a demonstration how this library can be
> used
> > > in
> > > > the existing code base.
> > > >
> > > > [1] https://github.com/google/auto/tree/main/service
> > > > [2] https://github.com/apache/ignite-3/pull/1415
> > > >
> > > > --
> > > > With regards,
> > > > Aleksandr Polovtsev
> > > >
> > >
> >
> >
> > --
> > Sincerely yours,
> > Ivan Bessonov
> >
>


-- 
With regards,
Aleksandr Polovtsev


Re: Use AutoService library to generate Java SPI files in Ignite 3

2022-12-07 Thread Mirza Aliev
Hello,

Very useful change, huge +1

ср, 7 дек. 2022 г. в 13:01, Ivan Bessonov :

> Hello,
>
> I'm all in for this change, thank you for the PR!
>
> +1
>
> ср, 7 дек. 2022 г. в 12:15, Вячеслав Коптилин :
>
> > Hi Aleksandr,
> >
> > This suggestion seems useful to me.
> > As Aleksandr pointed out, this is a compile-time dependency, so it
> doesn't
> > look risky.
> >
> > +1
> >
> > Thanks,
> > Slava.
> >
> >
> > ср, 7 дек. 2022 г. в 10:20, Aleksandr Polovtsev  >:
> >
> > > Dear Igniters! In Ignite 3, we have a bunch of classes that utilize the
> > > Java SPI (ConfigurationModule and MetricsExporter to name a few). For
> > every
> > > interface implementation we need to manually create a file in the
> > META-INF
> > > folder. This step can be automated by the AutoService library [1].
> > >
> > > I can see the following pros and cons of using this approach:
> > > 1. Pros:
> > >   * Less manual boilerplate,
> > >   * This is a compile-time only dependency (an annotation and an
> > annotation
> > > processor),
> > >   * Less files to maintain and update/move when corresponding
> interfaces
> > > change.
> > > 2. Cons:
> > >   * A new dependency will be introduced and it looks like the community
> > > doesn't like that.
> > >
> > > I've created a PR [2] with a demonstration how this library can be used
> > in
> > > the existing code base.
> > >
> > > [1] https://github.com/google/auto/tree/main/service
> > > [2] https://github.com/apache/ignite-3/pull/1415
> > >
> > > --
> > > With regards,
> > > Aleksandr Polovtsev
> > >
> >
>
>
> --
> Sincerely yours,
> Ivan Bessonov
>


Re: Use AutoService library to generate Java SPI files in Ignite 3

2022-12-07 Thread Ivan Bessonov
Hello,

I'm all in for this change, thank you for the PR!

+1

ср, 7 дек. 2022 г. в 12:15, Вячеслав Коптилин :

> Hi Aleksandr,
>
> This suggestion seems useful to me.
> As Aleksandr pointed out, this is a compile-time dependency, so it doesn't
> look risky.
>
> +1
>
> Thanks,
> Slava.
>
>
> ср, 7 дек. 2022 г. в 10:20, Aleksandr Polovtsev :
>
> > Dear Igniters! In Ignite 3, we have a bunch of classes that utilize the
> > Java SPI (ConfigurationModule and MetricsExporter to name a few). For
> every
> > interface implementation we need to manually create a file in the
> META-INF
> > folder. This step can be automated by the AutoService library [1].
> >
> > I can see the following pros and cons of using this approach:
> > 1. Pros:
> >   * Less manual boilerplate,
> >   * This is a compile-time only dependency (an annotation and an
> annotation
> > processor),
> >   * Less files to maintain and update/move when corresponding interfaces
> > change.
> > 2. Cons:
> >   * A new dependency will be introduced and it looks like the community
> > doesn't like that.
> >
> > I've created a PR [2] with a demonstration how this library can be used
> in
> > the existing code base.
> >
> > [1] https://github.com/google/auto/tree/main/service
> > [2] https://github.com/apache/ignite-3/pull/1415
> >
> > --
> > With regards,
> > Aleksandr Polovtsev
> >
>


-- 
Sincerely yours,
Ivan Bessonov


Re: Use AutoService library to generate Java SPI files in Ignite 3

2022-12-07 Thread Вячеслав Коптилин
Hi Aleksandr,

This suggestion seems useful to me.
As Aleksandr pointed out, this is a compile-time dependency, so it doesn't
look risky.

+1

Thanks,
Slava.


ср, 7 дек. 2022 г. в 10:20, Aleksandr Polovtsev :

> Dear Igniters! In Ignite 3, we have a bunch of classes that utilize the
> Java SPI (ConfigurationModule and MetricsExporter to name a few). For every
> interface implementation we need to manually create a file in the META-INF
> folder. This step can be automated by the AutoService library [1].
>
> I can see the following pros and cons of using this approach:
> 1. Pros:
>   * Less manual boilerplate,
>   * This is a compile-time only dependency (an annotation and an annotation
> processor),
>   * Less files to maintain and update/move when corresponding interfaces
> change.
> 2. Cons:
>   * A new dependency will be introduced and it looks like the community
> doesn't like that.
>
> I've created a PR [2] with a demonstration how this library can be used in
> the existing code base.
>
> [1] https://github.com/google/auto/tree/main/service
> [2] https://github.com/apache/ignite-3/pull/1415
>
> --
> With regards,
> Aleksandr Polovtsev
>


Use AutoService library to generate Java SPI files in Ignite 3

2022-12-07 Thread Aleksandr Polovtsev
Dear Igniters! In Ignite 3, we have a bunch of classes that utilize the
Java SPI (ConfigurationModule and MetricsExporter to name a few). For every
interface implementation we need to manually create a file in the META-INF
folder. This step can be automated by the AutoService library [1].

I can see the following pros and cons of using this approach:
1. Pros:
  * Less manual boilerplate,
  * This is a compile-time only dependency (an annotation and an annotation
processor),
  * Less files to maintain and update/move when corresponding interfaces
change.
2. Cons:
  * A new dependency will be introduced and it looks like the community
doesn't like that.

I've created a PR [2] with a demonstration how this library can be used in
the existing code base.

[1] https://github.com/google/auto/tree/main/service
[2] https://github.com/apache/ignite-3/pull/1415

-- 
With regards,
Aleksandr Polovtsev