Thanks for the clarification.

On Wed, May 3, 2023 at 1:16 PM Yangze Guo <karma...@gmail.com> wrote:

> Hi, Anuj,
>
> - Classes annotated with @Internal are not public API and thus might
> change across any two releases.
> - Classes annotated with @Experimental are for experimental use. They
> can be changed across any two releases as well.
> - Classes annotated with @PublicEvolving are intended for public use.
> They are stable across patch releases (1.17.0 and 1.17.1), but can be
> changed across minor releases (1.17.0 and 1.18.0).
>
> You can refer to [1] for more details.
>
> [1]
> https://cwiki.apache.org/confluence/display/FLINK/FLIP-196%3A+Source+API+stability+guarantees
>
> Best,
> Yangze Guo
>
> On Wed, May 3, 2023 at 12:08 PM Anuj Jain <anuj...@gmail.com> wrote:
> >
> > Hi Community,
> > I saw some flink classes annotated with
> > @Experimental
> > @PublicEvolving
> > @Internal
> >
> > What do these annotations mean? Can I use these classes in production?
> > How the class APIs would evolve in future. Can they break backward
> compatibility in terms of API declaration or implementation, in minor or
> major Flink releases.
> >
> > More specifically, I am trying to use AvroParquet reader/writers with
> File source and sink operators and i saw some classes with these
> annotations like
> > AvroParquetWriters (@Experimental)
> > ParquetWriterFactory (@PublicEvolving  implements BulkWriter.Factory<T>)
> > BulkWriter (@PublicEvolving)
> > AvroParquetReaders (@Experimental)
> > AvroParquetRecordFormat (implements StreamFormat (@PublicEvolving))
> > StreamFormatAdapter (@Internal)
> > StreamFormat (@PublicEvolving)
> >
> > Are they safe to use ?
> >
> > Appreciate your feedback.
> >
> > Regards
> > Anuj
>

Reply via email to