Re: Use AutoService library to generate Java SPI files in Ignite 3
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
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
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
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
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