Hello,

Thanks for your answer.

After giving a little bit more time to think about this situation, we've
decided to rewrite the php implementation of the avro library (keeping it
open sourced).
We're doing the development on this repository:
https://gitlab.com/Jaumo/avro-php/merge_requests/1.

Let's see what we decide to do when we reach a correct level of
specification coverage (The rewrite relis on the 1.8.2 version).

The current plan is, besides taking care of the few issues pointed in my
first mail, to have the schema (de)serialization (from/to json), data
(de)serialization (from/to avro) and protocol implementation at the end of
January 2019.

Any contribution/review is very welcome!

I'm off now until January 7th, enjoy the rest of the year!

Best regards.

*Gildas Quéméner*


On Thu, Dec 20, 2018 at 6:37 PM Driesprong, Fokko <[email protected]>
wrote:

> Hi Gildas,
>
> This would be very welcome. Currently, I'm working on getting the CI to
> work with a newer base image <https://github.com/apache/avro/pull/390>.
> But
> the tests only pass against a specific version of PHP 5.6. Let me know if
> there is anything that I can do.
>
> You could use git blame
> <https://github.com/apache/avro/blame/master/lang/php/lib/avro.php> to
> check who worked on the PHP stuff, but most of it has been migrated from
> SVN so a lot of history is lost. If you feel confident in taking ownership
> of the PHP, please do! :-)
>
> Cheers, Fokko
>
> Op di 18 dec. 2018 om 17:26 schreef Gildas Quéméner <
> [email protected]>:
>
> > Hello Daniel,
> >
> > Thanks for your answer.
> >
> > I will prepare a pull request in the next days (basically more or less
> with
> > the content of https://gitlab.com/Jaumo/avro-php/).
> >
> > The most important things to do in order to make this package usable by
> any
> > php projects out there is:
> >
> > 1) To synchronize a separate read-only repository with the content of
> > https://github.com/apache/avro/tree/master/lang/php/lib (I'm looking at
> > various solution to do so) => required by 3).
> > 2) To setup a serious CI/CD pipeline which jobs will be to run the tests
> > (against several php environments), check the code consistency and
> > synchronize the read only repository.
> > 3) To register the php package on packagist.org
> >
> > I would gladly take responsibility for these actions as I have experience
> > in this area and will directly benefit from them.
> >
> > Problem is that this would require some administrative permission on the
> > org/repository and I would probably need a referent at the ASF to know
> how
> > things are done in your organization.
> > Is there already someone in charge of the PHP implementation I could
> > contact directly?
> > If you have some apply process to become an official maintainer as well,
> > please let me know.
> >
> > Cheers.
> >
> > *Gildas Quéméner*
> >
> >
> > On Tue, Dec 18, 2018 at 8:11 PM Daniel Kulp <[email protected]> wrote:
> >
> > > We would definitely welcome any php contributions.   If you have any
> > > specific fixes or updates or anything, PR’s would be more than welcome.
> > >  It would be great if someone with some PHP expertise could take some
> > > ownership in collecting various fixes/enhancements from various
> locations
> > > and getting pull requests submitted for review.   That would be
> awesome.
> > >
> > > At this point, we won’t be splitting out the various languages to
> > separate
> > > repositories.   We have discussed it in the past and we MAY do it in
> the
> > > future, but right now we’re trying to concentrate on getting 1.9 out
> (and
> > > then likely a patch or two follow up) and splitting the repo right now
> > > would be too disruptive to that process.
> > >
> > >
> > > Dan
> > >
> > >
> > > > On Dec 18, 2018, at 1:26 AM, Gildas Quéméner <
> > [email protected]>
> > > wrote:
> > > >
> > > > Hello,
> > > >
> > > > We've been working for a few months on using Avro encoded messages
> > > between
> > > > our services in my company.
> > > >
> > > > Our backend heavily relies on PHP, whereas some orbiting services are
> > > > written in Java/Kotlin/Python.
> > > > At first glance, the lake of official support for PHP looked like a
> big
> > > > no-go for us.
> > > >
> > > > I know that there is an official library, embedded in the avro
> library
> > at
> > > > https://github.com/apache/avro/tree/master/lang/php/lib.
> > > >
> > > > However this library suffers from blocking issues:
> > > > - It is not available through the de facto standard Composer
> dependency
> > > > manager
> > > > - It is not tested
> > > > - It does not rely on autoloading PSR
> > > > - It uses global namespace
> > > > - It uses unknown php functions
> > > > - It lacks some spec features (support for logicalType attribute for
> > > > instance)
> > > > - It is buggy
> > > >
> > > > Despite these issues, latest commit is 1 year old (about a typo), and
> > the
> > > > one before that is almost 3 years old. Thus, I think it is safe to
> say
> > > that
> > > > this library is not maintained anymore.
> > > >
> > > > Many organizations have realized such issue and have created their
> own
> > > fork
> > > > of the library, none of them being thoroughly maintained and having
> the
> > > > same level of bug fixing.
> > > >
> > > > Here are a few examples:
> > > > - https://github.com/wikimedia/avro-php
> > > > - https://github.com/flix-tech/avro-php
> > > > - https://github.com/researchgate/avro-php
> > > > - https://gitlab.com/Jaumo/avro-php (I am the maintainer of this
> one)
> > > >
> > > > I have tried to contribute to Wikimedia's fork, but they also seem to
> > > have
> > > > dropped support (see activity in
> > > > https://gerrit.wikimedia.org/r/q/status:open+project:avro-php). The
> > > awesome
> > > > thing is that they have brought a test suite (that we are reusing in
> > our
> > > > fork)!
> > > >
> > > > Flix-tech is doing an awesome job at providing a Schema Registry API
> > > client
> > > > as well as an Avro Serializer/Deserializer using their Schema
> Registry
> > > > client.
> > > >
> > > > There are great initiatives out there to modernize this library, but
> > none
> > > > of them trully gather the focus of the many maintainers, scattered
> > > through
> > > > private organizations.
> > > >
> > > > I think it is time to give avro-php some love and I would like to
> help
> > in
> > > > this matter.
> > > >
> > > > My feeling is that the first step should be to open a separate git
> > > > repository under the hood of the ASF organization.
> > > > This could either be done through an automatic subtree of
> > > > https://github.com/apache/avro/tree/master/lang/php/lib to a
> read-only
> > > > repository (as Symfony is doing), in order to register it on
> > > packagist.org
> > > > or through the opening of a separate read/write repository (and the
> > > removal
> > > > of the lib from the avro lib repository).
> > > >
> > > > Second step is to communicate, directly by contacting fork
> maintainers
> > > > annoucing the good news, and through ASF official communication
> vectors
> > > > (thinking about ML, Twitter, ...). The goal being to bring back all
> the
> > > PHP
> > > > avro user to an official implementation of the library.
> > > >
> > > > Thank you very much for your answer,
> > > > And I wish you all fantastic time within friends and family for the
> end
> > > of
> > > > the year.
> > > >
> > > > Best Regards.
> > > >
> > > > *Gildas Quéméner*
> > >
> > > --
> > > Daniel Kulp
> > > [email protected] <mailto:[email protected]> - http://dankulp.com/blog <
> > > http://dankulp.com/blog>
> > > Talend Community Coder - http://talend.com <http://coders.talend.com/>
> > >
> >
>

Reply via email to