Re: Publishing 51Degrees PHP Extension in PECL
| From: | Johannes Schlüter | Date: | Fri, 19 Jan 2018 14:11:14 +0000 |
| Subject: | Re: Publishing 51Degrees PHP Extension in PECL | ||
| References: | 1 | Groups: | php.pecl.dev |
| Request: | Send a blank email to pecl-dev+get-15069@lists.php.net to get a copy of this message | ||
Hi,
a few notes:
- We don't really have MPL licensed extensions (not a stopper,
I think)
- Generated code like swift typically has issues as it
is not really created with PHP's model in mind and the
generator does "weird" stuff from PHP p-o-v
(i.e. it uses zend_get_parameters instead of end_parse_parameters
giving worse error messages to users, the ARGINFO doesn't contain
parameter names or such making reflection almost useless, ...)
- I noticed that this
"provider = new Provider(filePath, propertyList);"
must always succeed as there is no form of error/exception
handling, a filePath might not be readable, though
- The INI entries are marked as PHP_INI_ALL, indicating it could be
overwritten anywhere while it's only access on startup
- Also the API entry seems to be a global variable "$provider"
being registered. This should be some form of factory function
instead
- The build system does stuff like
AC_CONFIG_COMMANDS_PRE(cp ../../src/trie/* src/trie)
which most likely will fail for out-of-source builds, which the
PECL installer will do (the directory structure will also be
hard to manage for the installer, I assume)
- I haven't checked further
johannes
On Fr, 2018-01-19 at 12:44 +0000, Joseph Dix wrote:
> Hi,
>
> My name is Joseph Dix, I'm currently an employee of 51Degrees.mobi
> Limited. We're a company that specialises in device detection with
> the aim to benefit advertising, user experience and analytics.
>
> I would like to add our API to the PECL repository so as to smooth
> installation for our users. On a high-level, the software's input is
> a User-Agent. With the aid of a data file (free & subscription
> based), the API will return information about that device. This
> information can assist in making decisions on what content to serve,
> e.g. If you browsed to the web page with your phone, the server will
> know this and can return mobile optimised content..
>
> Here is a link to the source code. The PHP extension is a wrapper for
> the C Device-Detection API, there are two extensions php/pattern and
> php/trie. The extension is built using SWIG to wrap the Device-
> Detection C API.
>
> Device-Detection repo:
> https://github.com/51Degrees/Device-Detection
> PHP solution:
> https://github.com/51Degrees/Device-Detection/tree/mast
> er/php
>
> I look forward to your response.
>
> Kind regards,
>
> Joseph Dix
> Product Engineer
> [51Degrees]<https://51degrees.com/>
> O: +44 1183 287152<callto:441183287152>
> E:
> joseph@51degrees.com<mailto:joseph@51degrees.com?subject=Your%20Em
> ail>
> [https://51degrees.com/portals/0/images/twitterbird.png]
> @51Degrees<http://twitter.com/51Degrees>
> [https://51degrees.com/portals/0/images/linkedinicon.png]
> 51Degrees<http://www.linkedin.com/company/2171864>
>
> [Find out More]<https://51degrees.com/emailsig.aspx>
>
>
>
> This email and any attachments are confidential and may also be
> privileged. If you are not the named recipient, please notify the
> sender immediately and do not disclose, use, store or copy the
> information contained herein. This is an email from 51Degrees.mobi
> Limited, 5 Charlotte Close, Reading. RG47BY. T: +44 118 328 7152; E:
> info@51degrees.com; 51Degrees.mobi Limited t/as 51Degrees.