Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

php5.3 #104

Open
mbrevda opened this issue Sep 21, 2015 · 11 comments
Open

php5.3 #104

mbrevda opened this issue Sep 21, 2015 · 11 comments

Comments

@mbrevda
Copy link
Contributor

mbrevda commented Sep 21, 2015

Any reason for still supporting php53? Seems even 5.4 is EOL, targeting 5.5 or 5.6 might make more sense.

@danielmewes
Copy link
Owner

Ubuntu 12.04 still ships with PHP 5.3, which is supported until 2017.
That's the main reason for why we're still supporting it.

@mbrevda
Copy link
Contributor Author

mbrevda commented Sep 23, 2015

I take that there will be no support for php 7 before then, either?!

@danielmewes
Copy link
Owner

I haven't looked too much at PHP 7 yet. I'm hoping we can support both with the same codebase.

Are there currently any issues with using PHP-RQL on PHP 7 that you're aware of?

@mbrevda
Copy link
Contributor Author

mbrevda commented Sep 24, 2015

While Ubuntu 12.04 might be a LTS, that doesn't mean they will be adding security patches to php (which even php won't be doing!).

PHP 7 shouldn't have any issues, but enhancements. It would be a shame to hold back all the new features and enhancement for that much time.

Perhaps semve'dr releases would be a good idea here? Branch off the current code as an LTS version, but allow the rest of the project to move forward?

@mbrevda
Copy link
Contributor Author

mbrevda commented Sep 27, 2015

Would it be ok to reopen this issue to continue the discussion? I'm really not sure that anchoring to a given Ubuntu release accurately reflects the broader user base of RethinkDB users. Considering the performance gains and usage features introduced in php7, it would perhaps be worthwhile to leverage those before August 2017.

@danielmewes
Copy link
Owner

I don't quite understand where the contradiction is yet.

You mention PHP7 enhancements that we could use in the driver. Which are those? Are they important for the driver API or just to make the driver's internal structure cleaner?

If there is a strong enough motivation to use PHP7-only features, it would probably be best if someone created a fork.

I personally am still using multiple servers with Ubuntu 12.04, and I know that there are a lot of RethinkDB users on those versions (or on similarly old versions of CentOS / CentOS-based distributions).
It is not realistic that everyone will be running PHP 7 any time soon. Even if we can drop support for PHP 5.3, there will still be loads of installations of PHP 5.4 out there.

@danielmewes danielmewes reopened this Sep 27, 2015
@danielmewes
Copy link
Owner

Actually one feature that would be extremely useful are generators with yield (supported since PHP 5.5 I think?). We could use these to support an asynchronous driver API.
In any case that would be an optional feature though, so it wouldn't require dropping support for 5.3.

@mbrevda
Copy link
Contributor Author

mbrevda commented Sep 28, 2015

Yup, generators landed in php55.

Are they important for the driver API or just to make the driver's internal structure cleaner?

My concern isn't not being to take advantage of the new API as much as it is deciding that the option to include them won't exists for another few years. Inasmuch as Ubuntu/CentOS isn't pushing a new version of php/rdb I don't see why users of those platforms would require a new version of the driver either.

Hence my suggestion: lock down a version as being php53 compatible (aka LTS), and then continue development whilst taking advantage of newer php features. This will allow new features (like generators) to be included as they become available.

@mbrevda
Copy link
Contributor Author

mbrevda commented Sep 28, 2015

One nice feature in php7 is a more intelligent parser that allows for otherwise reserved words in places that make sense. This will all for and/or methods/classes without having to prefix them.

@mbrevda
Copy link
Contributor Author

mbrevda commented Dec 6, 2015

With #107 merged and 2.2 out, may I recommend making 2.2 a LTS release without any new features? This would allow the driver to move forward with php7, without having to worry about older clients.

@javkhlan-g
Copy link

We are using php7. Rethinkdb php driver does support for php7 ?
if doesn't support it So when does will support it ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants