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