Given the current state of trunk, I think 5.4 release process should
not begin tomorrow (alpha or whatever other status). There are
numerous identified issues that we need to fix before even think to
begin with a release. For example:
-
type hinting (or strict hinting)
-
no consensus
-
the RFCs are unclear
-
BC break introduced
. classes named as any of the type hint scalar types
do not work anymore
aka class int {} -
Traits may not be ready yet for pre-release
-
APC support
-
There are many changes not BC with 5.x, as we allowed them for the
development tree, before 5.4 was even a topic -
APC is not yet bundled. Having the opcode bundle can raise issues by
one or another, we should have it in from the very 1st release -
pecl/http was planned to be bundled. What's the status?
We also have no plan about what will or will not be 5.4. This looks
familiar, this is exactly how we begun 5.3 and it tooks literally
years to be released. There is also actually no agreement to begin
with 5.4 now.
5.4 should be hold off until we solved the listed issues and the
release management RFC gets discussed and hopefully approved.
Thanks.
--
Regards,
Felipe Pena
Hi!
Given the current state of trunk, I think 5.4 release process should
not begin tomorrow (alpha or whatever other status). There are
numerous identified issues that we need to fix before even think to
begin with a release. For example:
I agree that it's better to discuss RC process RFC before starting the
actual RC process.
- There are many changes not BC with 5.x, as we allowed them for the
development tree, before 5.4 was even a topic
Do you have a list of such changes?
- APC is not yet bundled. Having the opcode bundle can raise issues by
one or another, we should have it in from the very 1st release
This can be done post-alpha, I think - it's not very important for the
rest of the alpha, if there's a problem we can postpone it but I don't
believe we should hold releases just for that (I do believe we should
for other things though :)
Stanislav Malyshev, Software Architect
SugarCRM: http://www.sugarcrm.com/
(408)454-6900 ext. 227
2010/11/23 Felipe Pena felipensp@gmail.com:
Given the current state of trunk, I think 5.4 release process should
not begin tomorrow (alpha or whatever other status). There are
numerous identified issues that we need to fix before even think to
begin with a release. For example:
type hinting (or strict hinting)
no consensus
the RFCs are unclear
BC break introduced
. classes named as any of the type hint scalar types
do not work anymore
aka class int {}Traits may not be ready yet for pre-release
APC support
There are many changes not BC with 5.x, as we allowed them for the
development tree, before 5.4 was even a topicAPC is not yet bundled. Having the opcode bundle can raise issues by
one or another, we should have it in from the very 1st releasepecl/http was planned to be bundled. What's the status?
We also have no plan about what will or will not be 5.4. This looks
familiar, this is exactly how we begun 5.3 and it tooks literally
years to be released. There is also actually no agreement to begin
with 5.4 now.5.4 should be hold off until we solved the listed issues and the
release management RFC gets discussed and hopefully approved.Thanks.
--
Regards,
Felipe Pena
Nor do we have a clear roadmap concerning the removal of magic quotes!
Most would like to get rid of them, but some have concerns about doing
it in 5.4.
(Please, use the "Magic quotes in trunk" thread to comment on this
one: http://news.php.net/php.internals/50301)
--
Patrick Allaert
http://code.google.com/p/peclapm/ - Alternative PHP Monitor
On Tue, Nov 23, 2010 at 10:35 AM, Patrick ALLAERT patrickallaert@php.netwrote:
2010/11/23 Felipe Pena felipensp@gmail.com:
Given the current state of trunk, I think 5.4 release process should
not begin tomorrow (alpha or whatever other status). There are
numerous identified issues that we need to fix before even think to
begin with a release. For example:
type hinting (or strict hinting)
no consensus
the RFCs are unclear
BC break introduced
. classes named as any of the type hint scalar types
do not work anymore
aka class int {}Traits may not be ready yet for pre-release
APC support
There are many changes not BC with 5.x, as we allowed them for the
development tree, before 5.4 was even a topicAPC is not yet bundled. Having the opcode bundle can raise issues by
one or another, we should have it in from the very 1st releasepecl/http was planned to be bundled. What's the status?
We also have no plan about what will or will not be 5.4. This looks
familiar, this is exactly how we begun 5.3 and it tooks literally
years to be released. There is also actually no agreement to begin
with 5.4 now.5.4 should be hold off until we solved the listed issues and the
release management RFC gets discussed and hopefully approved.Thanks.
--
Regards,
Felipe PenaNor do we have a clear roadmap concerning the removal of magic quotes!
Most would like to get rid of them, but some have concerns about doing
it in 5.4.
(Please, use the "Magic quotes in trunk" thread to comment on this
one: http://news.php.net/php.internals/50301)
And not just the magic quotes:
http://www.pubbs.net/201011/php/28851-re-php-dev-magic-quotes-in-trunk.html
with the current trunk, we dropped many deprecated legacy feature, which is
nice, but breaks bc with a minor version.
So I would favor a more sophisticated development and release
policy/standard.
and the current release is a "good" example why this is needed:
first Rasmus and others said, that we shouldn't plan beforehand the next
release, just start coding, and when we have enough staff, we can discuss
and vote on the version number, release managers, what will be included in
the release.
then after some time, "magically" the RM's were selected (I didn't see the
voting, maybe it happened via irc), and the 5.4 was selected for the next
version without vote (maybe irc...), and there were selected a few change
from the trunk for discussion, the most of them was included to the release
without formal approval.
:/
Tyrael
and the 5.4 was selected for the next version without vote (maybe irc...)
As we are not marketing-driven version numbers follow technical
reasoning. There's no larger BC break (like a radical change in the
object model like from 4 to 5) and no radical change to the string type
(like from PHP 5 to PHP-Unicode) there's nothing to discuss about. :-)
johannes
Hi:
- Traits may not be ready yet for pre-release
- see http://svn.php.net/viewvc?view=revision&revision=298348
The listed todos where:
-
Reflection API
That was implemented by Johannes as far as I remember. -
support for traits for internal classes
- currently destroy_zend_class does not handle that case
For support of internal classes was no clear interest yet, so it never got done.
Is that a show stopper?
- currently destroy_zend_class does not handle that case
Thanks
Stefan
--
Stefan Marr
Software Languages Lab
Vrije Universiteit Brussel
Pleinlaan 2 / B-1050 Brussels / Belgium
http://soft.vub.ac.be/~smarr
Phone: +32 2 629 2974
Fax: +32 2 629 3525
- Traits may not be ready yet for pre-release
- see http://svn.php.net/viewvc?view=revision&revision=298348
The listed todos where:
- Reflection API
That was implemented by Johannes as far as I remember.
That is not 100% complete. I had an issue with Aliases and finding the
original declaration or such. Will be done before we reach beta.
- support for traits for internal classes
- currently destroy_zend_class does not handle that case
For support of internal classes was no clear interest yet, so it never
got done.
Is that a show stopper?
Can Traits be declared internally and the issue is only about using
them? I think we can live without using traits for internal classes
easily (as we can already do that by aliasing the methods
internally ;-) )
Being able to provide traits might be interesting, but I don't see it as
high priority task.
johannes
Am 23.11.2010 02:30, schrieb Felipe Pena:
classes named as any of the type hint scalar types do not work anymore
Was it not a promise of the re2c/lemon migration to allow reserved words
as class/function names?
--
Sebastian Bergmann Co-Founder and Principal Consultant
http://sebastian-bergmann.de/ http://thePHP.cc/
Given the current state of trunk, I think 5.4 release process should
not begin tomorrow (alpha or whatever other status). There are
numerous identified issues that we need to fix before even think to
begin with a release. For example:
- type hinting (or strict hinting)
- no consensus
- the RFCs are unclear
- BC break introduced
. classes named as any of the type hint scalar types
do not work anymore
aka class int {}
Yeah, there is a slight hint of a BC break in case you have a class
named "int" or "float" etc. But there is:
http://uk.php.net/manual/en/userlandnaming.tips.php
Perhaps we can reduce the current list of classes:
int, integer, real, double, string, binary, scalar, array, object,
bool, boolean
to what the manual uses though (for prototypes):
int, float, string, binary, scalar, array, object, bool
(Point #18 at http://doc.php.net/php/dochowto/chapter-conventions.php)
- Traits may not be ready yet for pre-release
- see http://svn.php.net/viewvc?view=revision&revision=298348
- APC support
I don't see why this can't be done after post-branching/post-alpha1
- There are many changes not BC with 5.x, as we allowed them for the
development tree, before 5.4 was even a topic
What's the list?
- APC is not yet bundled. Having the opcode bundle can raise issues by
one or another, we should have it in from the very 1st release
Bundling it is a question of copying it over. It compiles, although I am
not 100% whether it works. If it doesn't fit in the end in the timeline,
we can always remove it again as it's a standalone extension.
- pecl/http was planned to be bundled. What's the status?
I'm all for it; but again, it's just copying it over to trunk before we
branch.
We also have no plan about what will or will not be 5.4. This looks
familiar, this is exactly how we begun 5.3 and it tooks literally
years to be released. There is also actually no agreement to begin
with 5.4 now.
Yes, but instead of defining "what is PHP 5.4", why not just go with
what we have? Everything that's not in thre is for PHP-next-next again.
5.4 should be hold off until we solved the listed issues and the
release management RFC gets discussed and hopefully approved.
Why do you need a release management RFC? We've made releases for more
than a decade just fine.
Stalling every time doesn't get us anywhere. IMO we should just go with
it. Which means as a rough guide:
- copy over APC/pecl_http
- branch on thursday
- alpha next week
- build a list of things that needs doing in 5.4 to get it ready (with
possible options to get rid of apc/pecl_http if they are not up to
date enough)
I am absolutely against stalling again!
cheers,
Derick
--
http://derickrethans.nl | http://xdebug.org
Like Xdebug? Consider a donation: http://xdebug.org/donate.php
twitter: @derickr and @xdebug
Am 23.11.2010 10:57, schrieb Derick Rethans:
I am absolutely against stalling again!
+1
If there is anything that needs particular TLC (testing/loving/care),
let me know. FYI, at the moment I am playing a lot with traits to get
a(n updated) feel for them.
--
Sebastian Bergmann Co-Founder and Principal Consultant
http://sebastian-bergmann.de/ http://thePHP.cc/
We also have no plan about what will or will not be 5.4. This looks
familiar, this is exactly how we begun 5.3 and it tooks literally
years to be released. There is also actually no agreement to begin
with 5.4 now.Yes, but instead of defining "what is PHP 5.4", why not just go with
what we have? Everything that's not in thre is for PHP-next-next again.
backward compatibility™
we had a few nice things in the PHP6 branch, which got merged into the
trunk, before choosing the version number for the trunk.
it's okay, but we agreed on that if that gets into the trunk, that it
doesn't mean, that it will be shipped automatically with the next release.
you can read again the fuss about the scalar type hinting:
after a release, we start to think trunk as a development branch, where
everything can get in:
At 18:04 22/05/2010, Pierre Joye wrote:
hi Zeev,
It seems that there was a bit of discussions on IRC about committing
Ilia's implementation. However it is trunk, and trunk is a development
tree. That means its purpose is to develop new PHP features. But it
does not meant that these features will make it in the next releases
or if they will remain as they are now.
but when we start to roll out a release, laziness/eagerness kicks in, and we
start rambling about status quo (if it's in the trunk, then its ready to
go).
Maybe I view trunk in a different way than others, but I think committing
it turns it into some sort of 'status quo', and now we'd need a good
reason
to change it.
And after all those discussion about the past and current scalar type hints,
here they are: they are planned to be released, without consensus, and the
current implementation doesn't even the same, that we talked our ass off
about. :/
5.4 should be hold off until we solved the listed issues and the
release management RFC gets discussed and hopefully approved.Why do you need a release management RFC? We've made releases for more
than a decade just fine.
yeah, but the current situation is a little bit different(we have code in
the trunk which was intended for 6.0, where bc isn't a problem at all), than
the previous ones.
and I think we can't say that there are room for improvements about the
current "lackoff" release policies.
hell, we don't even agree on things like what is the status of the code in
trunk(can we commit without consensus, or do we decide about it before the
release), or what are the rules for the versioning schema(which version is
allowed to break what). :/
Stalling every time doesn't get us anywhere. IMO we should just go with
it.
I am absolutely against stalling again!
I am too, but I think that we should carefully cherrypick, what to release
with 5.4 from the current trunk.
Tyrael
We also have no plan about what will or will not be 5.4. This looks
familiar, this is exactly how we begun 5.3 and it tooks literally
years to be released. There is also actually no agreement to begin
with 5.4 now.Yes, but instead of defining "what is PHP 5.4", why not just go with
what we have? Everything that's not in thre is for PHP-next-next again.backward compatibility™
we had a few nice things in the PHP6 branch, which got merged into the
trunk, before choosing the version number for the trunk.
Do you have a list?
Stalling every time doesn't get us anywhere. IMO we should just go with
it.I am absolutely against stalling again!
I am too, but I think that we should carefully cherrypick, what to release
with 5.4 from the current trunk.
Cherry pick? Do you have any idea how complicated that is?
Derick
-----Original Message-----
From: Derick Rethans [mailto:derick@php.net]
Sent: Tuesday, November 23, 2010 11:58 AM
To: Felipe Pena
Cc: internals
Subject: Re: [PHP-DEV] Hold off 5.4Given the current state of trunk, I think 5.4 release process should
not begin tomorrow (alpha or whatever other status). There are
numerous identified issues that we need to fix before even think to
begin with a release. For example:
- type hinting (or strict hinting)
- no consensus
- the RFCs are unclear
- BC break introduced
. classes named as any of the type hint scalar types do not work
anymore aka class int {}Yeah, there is a slight hint of a BC break in case you have a class named "int"
or "float" etc. But there is:
http://uk.php.net/manual/en/userlandnaming.tips.php
For the record, I'm still very uncomfortable with this new language syntax - even if it's a no-op right now.
How do we document it? As what?
Are we effectively going to create the original type checking implementation, but in a separate component people would have to install - thereby creating two very different flavors of PHP?
Regarding the alpha release, I think there are two key issues here:
-
Does this alpha mean anything at all. Some, myself included, don't feel comfortable about the state of certain things in the current codebase (example given above). Are we all in sync that even if a certain feature makes it into the alpha, it doesn't mean that it won't be removed or be severely modified in an upcoming beta/GA? Is it clear it has no implications on when the final release would be? That is, at least, the way I perceive alpha releases. In which case it's not exactly clear to me what the benefits of releasing an Alpha in this day and age for PHP - where we have snapshots every few hours. We need to have a very clear understanding of what this does or doesn't mean, and make sure we communicate it properly to the users.
-
Not strictly related to this particular 5.4 effort, but I think that recent months have shown that we desperately need a decision making process. Somewhat more formalized and logical than anybody who happens to be subscribed to internals@ being able to put things to a vote and vote on them. This is one tough cookie - but I think we have to tackle it. My personal belief is that people on internals@ are biased towards the very top end of the userbase pyramid, and we have to find a way to represent the views of the PHP userbase at large.
Zeev
-----Original Message-----
From: Derick Rethans [mailto:derick@php.net]
Sent: Tuesday, November 23, 2010 11:58 AM
To: Felipe Pena
Cc: internals
Subject: Re: [PHP-DEV] Hold off 5.4Given the current state of trunk, I think 5.4 release process should
not begin tomorrow (alpha or whatever other status). There are
numerous identified issues that we need to fix before even think to
begin with a release. For example:
- type hinting (or strict hinting)
- no consensus
- the RFCs are unclear
- BC break introduced
. classes named as any of the type hint scalar types do not work
anymore aka class int {}Yeah, there is a slight hint of a BC break in case you have a class named
"int"
or "float" etc. But there is:
http://uk.php.net/manual/en/userlandnaming.tips.phpFor the record, I'm still very uncomfortable with this new language syntax
- even if it's a no-op right now.
How do we document it? As what?
Johannes wrote a blogpost about that:
http://schlueters.de/blog/archives/148-More-on-scalar-type-hints-in-PHP-trunk.html
and we didn't even discussed the current implementations, because the
discussion was halted until the new revised patch is complete.
which seems will be rolled out without further discussion.
Are we effectively going to create the original type checking
implementation, but in a separate component people would have to install -
thereby creating two very different flavors of PHP?Regarding the alpha release, I think there are two key issues here:
- Does this alpha mean anything at all. Some, myself included, don't
feel comfortable about the state of certain things in the current codebase
(example given above). Are we all in sync that even if a certain feature
makes it into the alpha, it doesn't mean that it won't be removed or be
severely modified in an upcoming beta/GA? Is it clear it has no
implications on when the final release would be? That is, at least, the way
I perceive alpha releases. In which case it's not exactly clear to me what
the benefits of releasing an Alpha in this day and age for PHP - where we
have snapshots every few hours. We need to have a very clear understanding
of what this does or doesn't mean, and make sure we communicate it properly
to the users.
we shouldn't release something, that at least the core devs are agree on.
imo.
- Not strictly related to this particular 5.4 effort, but I think that
recent months have shown that we desperately need a decision making process.
Somewhat more formalized and logical than anybody who happens to be
subscribed to internals@ being able to put things to a vote and vote on
them. This is one tough cookie - but I think we have to tackle it. My
personal belief is that people on internals@ are biased towards the very
top end of the userbase pyramid, and we have to find a way to represent the
views of the PHP userbase at large.
Agree.
But I think that there are more than one kind of voting that we need.
- what does the avarage php user thinks about something. (adding/removing a
feature, who would use that, php.net redesign, etc.). - what does the cms/framework dev people think about something (there are
many feature, which didn't useful directly to the end-users, but they can
get good use of it through a framework: late static binding, namespaces,
annotations, etc.) - what does our vendors think about something (debian, redhat, etc. they can
provide useful feedback about configuration/maintenance, release policy kind
of polls) - what does a php contributor(documentation, qa, website, etc. so involved
in the php project) thinks about something (for example polls about our
infrastructures, or standards, etc.) - what does a pecl contributor thinks about something (adding a new hook
into the core, etc., changing internal API, etc.) - what does a php-src contributor thinks about something (hardcore stuff,
adding new features by design/performance/maintainability wise, etc. )
and maybe it would be a good idea to restrict the poll/vote for the active
members.
so if somebody was once involved in the project, but lost time or interest,
and didn't followed or contributed to that part of the project, that those
people to bias the vote without a good understanding about the actual
problem/situation.
but of course that's only my 2 cents.
Tyrael
and we didn't even discussed the current implementations, because the
discussion was halted until the new revised patch is complete.
which seems will be rolled out without further discussion.
Really? You had all the opportunity to comment on either my
announcement:
http://thread.gmane.org/gmane.comp.php.devel/62298/focus=62510
to which Dmitry and Stas commented; as well as my mail:
http://thread.gmane.org/gmane.comp.php.devel/62298/focus=62858
that annouced the third compromise implementation.
cheers,
Derick
--
http://derickrethans.nl | http://xdebug.org
Like Xdebug? Consider a donation: http://xdebug.org/donate.php
twitter: @derickr and @xdebug
Given the current state of trunk, I think 5.4 release process should
not begin tomorrow (alpha or whatever other status). There are
numerous identified issues that we need to fix before even think to
begin with a release. For example:
- type hinting (or strict hinting)
- no consensus
- the RFCs are unclear
- BC break introduced
. classes named as any of the type hint scalar types do not work
anymore aka class int {}Yeah, there is a slight hint of a BC break in case you have a class named "int"
or "float" etc. But there is:
http://uk.php.net/manual/en/userlandnaming.tips.phpFor the record, I'm still very uncomfortable with this new language
syntax - even if it's a no-op right now.
I know you are; but from what I understood, there were no more comments
to the latest mail (with patch and RFC) that I've made towards this.
I'm not comfortable about not having the proper strict checks that we
had. It seems we're both having to live with something uncomfortable.
Are we effectively going to create the original type checking
implementation, but in a separate component people would have to
install - thereby creating two very different flavors of PHP?
It's clearly a debugging aid for me. So this should be in a debugging
extension. I doubt any sort of shared hoster would install it, but it
does give people the power to do this for their own controlled set-up.
Also, if the extension is suddenly not there, the app will still work so
I am not buying your "two flavours" argument.
Regarding the alpha release, I think there are two key issues here:
- Does this alpha mean anything at all. Some, myself included,
don't feel comfortable about the state of certain things in the
current codebase (example given above). Are we all in sync that even
if a certain feature makes it into the alpha, it doesn't mean that it
won't be removed or be severely modified in an upcoming beta/GA?
Is it clear it has no implications on when the final release would be?
That is, at least, the way I perceive alpha releases. In which case
it's not exactly clear to me what the benefits of releasing an Alpha
in this day and age for PHP - where we have snapshots every few hours.
We need to have a very clear understanding of what this does or
doesn't mean, and make sure we communicate it properly to the users.
To me this alpha would be a "this is what we're mostly likely going to
have thing". I wouldn't like to see new major features, engine rework
being done; but I also think we shouldn't try to remove stuff from it
unless really necessary.
regards,
Derick
--
http://derickrethans.nl | http://xdebug.org
Like Xdebug? Consider a donation: http://xdebug.org/donate.php
twitter: @derickr and @xdebug
Are we effectively going to create the original type checking
implementation, but in a separate component people would have to
install - thereby creating two very different flavors of PHP?It's clearly a debugging aid for me. So this should be in a debugging
extension. I doubt any sort of shared hoster would install it, but it
does give people the power to do this for their own controlled set-up.
Also, if the extension is suddenly not there, the app will still work so
I am not buying your "two flavours" argument.
While the code may still work, it won't work as expected. If the
PHP interpreter can execute the application, then it should provide the
same output given the same input -- and this would not be the case.
That's the two flavours argument.
--
Matthew Weier O'Phinney
Project Lead | matthew@zend.com
Zend Framework | http://framework.zend.com/
PGP key: http://framework.zend.com/zf-matthew-pgp-key.asc
Are we effectively going to create the original type checking
implementation, but in a separate component people would have to
install - thereby creating two very different flavors of PHP?It's clearly a debugging aid for me. So this should be in a
debugging extension. I doubt any sort of shared hoster would install
it, but it does give people the power to do this for their own
controlled set-up. Also, if the extension is suddenly not there, the
app will still work so I am not buying your "two flavours" argument.While the code may still work, it won't work as expected. If the
PHP interpreter can execute the application, then it should provide the
same output given the same input -- and this would not be the case.
That's the two flavours argument.
If it doesn't check for the hints, then your application will still
work. I will say this once more: this is a debugging aid.
cheers,
Derick
--
http://derickrethans.nl | http://xdebug.org
Like Xdebug? Consider a donation: http://xdebug.org/donate.php
twitter: @derickr and @xdebug
If it doesn't check for the hints, then your application will still work. I will say
this once more: this is a debugging aid.
If your app relies on it, then it means it will probably not use other means to ensure that the data is of the correct type, which may result in all sorts of issues.
Zeev
For the record, I'm still very uncomfortable with this new language
syntax - even if it's a no-op right now.I know you are; but from what I understood, there were no more comments
to the latest mail (with patch and RFC) that I've made towards this.
I know, I took some time off after reaching agreement we're not going to add strict checks - but I said from the get go that it's questionable whether we should add this syntax.
I'm not comfortable about not having the proper strict checks that we had.
Except we never had them. It's like me committing support for inline assembly syntax or whatever other weird idea I might come up with, and then saying I don't feel comfortable about removing it. With such fundamental changes there should be a very broad support, with the status-quo being the default in case no such broad support is reached. The status quo is not the latest state of trunk, but rather, the state of previous versions.
It seems we're both having to live with something uncomfortable.
We should attribute as much importance to adding features as removing features; Can I jump ahead and remove this support in trunk, and get back to you with 'one of us will have to feel uncomfortable' feedback? I don't think it works that way. The status quo, and the way PHP existed since forever, is no strict type checking or syntax for supporting it. IMHO before there's a clear informed decision to change that, it should stay that way.
With the kind of phpdoc updates we're likely to add, you should be able to implement your extension-level support on top of this meta data. The chances of that becoming mainstream and creating two flavors of PHP are much slimmer which make it a much better fit than a big chunk of language level syntax that's a no-op by default.
Are we effectively going to create the original type checking
implementation, but in a separate component people would have to
install - thereby creating two very different flavors of PHP?It's clearly a debugging aid for me. So this should be in a debugging
extension. I doubt any sort of shared hoster would install it, but it
does give people the power to do this for their own controlled set-up.
Also, if the extension is suddenly not there, the app will still work so I am not
buying your "two flavours" argument.
It may or may not work depending on how you write your code. If you rely on that feature your app may very well stop working properly (e.g. it may expose it to security issues).
It's very much creating two flavors.
Regarding the alpha release, I think there are two key issues here:
- Does this alpha mean anything at all. Some, myself included,
don't feel comfortable about the state of certain things in the
current codebase (example given above). Are we all in sync that even
if a certain feature makes it into the alpha, it doesn't mean that it
won't be removed or be severely modified in an upcoming beta/GA?
Is it clear it has no implications on when the final release would be?
That is, at least, the way I perceive alpha releases. In which case
it's not exactly clear to me what the benefits of releasing an Alpha
in this day and age for PHP - where we have snapshots every few hours.
We need to have a very clear understanding of what this does or
doesn't mean, and make sure we communicate it properly to the users.To me this alpha would be a "this is what we're mostly likely going to have
thing". I wouldn't like to see new major features, engine rework being done;
but I also think we shouldn't try to remove stuff from it unless really
necessary.
If that's the case, count me in those who oppose the release of the current codebase as an alpha.
Zeev
To me this alpha would be a "this is what we're mostly likely going
to have thing". I wouldn't like to see new major features, engine
rework being done; but I also think we shouldn't try to remove stuff
from it unless really necessary.If that's the case, count me in those who oppose the release of the current codebase as an alpha.
I find it interesting that apparently so many people don't want a new
PHP version out, but forget to say what they think needs fixing. Instead
of opposing, can we not do just some work?
Derick
--
http://derickrethans.nl | http://xdebug.org
Like Xdebug? Consider a donation: http://xdebug.org/donate.php
twitter: @derickr and @xdebug
I find it interesting that apparently so many people don't want a new PHP
version out, but forget to say what they think needs fixing. Instead of
opposing, can we not do just some work?
Specifically the issue I'm most concerned about is the type hinting syntax.
Zeev
hi,
hi,
To me this alpha would be a "this is what we're mostly likely going
to have thing". I wouldn't like to see new major features, engine
rework being done; but I also think we shouldn't try to remove stuff
from it unless really necessary.If that's the case, count me in those who oppose the release of the current codebase as an alpha.
I find it interesting that apparently so many people don't want a new
PHP version out, but forget to say what they think needs fixing. Instead
of opposing, can we not do just some work?
I do want a new PHP release. I do want a clear, transparent, honest
process to decide which features get in, to select the release
managers and to get the release out.
It also happens that I do some work as well.
Cheers,
Pierre
@pierrejoye | http://blog.thepimp.net | http://www.libgd.org
- pecl/http was planned to be bundled. What's the status?
I'm all for it; but again, it's just copying it over to trunk before we
branch.
...
- copy over APC/pecl_http
- branch on thursday
- alpha next week
- build a list of things that needs doing in 5.4 to get it ready (with
possible options to get rid of apc/pecl_http if they are not up to
date enough)
Huh? I'm quite surprised to read that pecl/http is planned to be bundled
with trunk, while--sure--my grand master plan included this option, there's
only pecl/http/branches/DEV_2 which is compatible with trunk and I doubt
you all are talking about that version?
It still needs some serious amount of work, development has stalled again
due to my job's demands.
Cheers, Mike
- pecl/http was planned to be bundled. What's the status?
I'm all for it; but again, it's just copying it over to trunk before we
branch.
...
- copy over APC/pecl_http
- branch on thursday
- alpha next week
- build a list of things that needs doing in 5.4 to get it ready (with
possible options to get rid of apc/pecl_http if they are not up to
date enough)Huh? I'm quite surprised to read that pecl/http is planned to be bundled
with trunk, while--sure--my grand master plan included this option, there's
only pecl/http/branches/DEV_2 which is compatible with trunk and I doubt
you all are talking about that version?
Nope; I wasn't. But fine then, we don't bundle it :-)
Derick
--
http://derickrethans.nl | http://xdebug.org
Like Xdebug? Consider a donation: http://xdebug.org/donate.php
twitter: @derickr and @xdebug
I too must second Mike's comments about pecl_http not being quite
ready for bundling. The extension provides some useful functionality,
no doubt (I use it ;-)). But I don't think there is a good case for
bundling it.
- pecl/http was planned to be bundled. What's the status?
I'm all for it; but again, it's just copying it over to trunk before we
branch....
- copy over APC/pecl_http
- branch on thursday
- alpha next week
- build a list of things that needs doing in 5.4 to get it ready (with
possible options to get rid of apc/pecl_http if they are not up to
date enough)Huh? I'm quite surprised to read that pecl/http is planned to be bundled
with trunk, while--sure--my grand master plan included this option, there's
only pecl/http/branches/DEV_2 which is compatible with trunk and I doubt
you all are talking about that version?It still needs some serious amount of work, development has stalled again
due to my job's demands.Cheers, Mike
. classes named as any of the type hint scalar types
do not work anymore
aka class int {}Yeah, there is a slight hint of a BC break in case you have a class
named "int" or "float" etc. But there is:
http://uk.php.net/manual/en/userlandnaming.tips.phpPerhaps we can reduce the current list of classes:
int, integer, real, double, string, binary, scalar, array, object,
bool, boolean
to what the manual uses though (for prototypes):
int, float, string, binary, scalar, array, object, bool
(Point #18 at http://doc.php.net/php/dochowto/chapter-conventions.php)
Sorry, but this is actually a pretty grave BC break.
Currently, you can do the following:
namespace Foo\Validator;
class Int {}
Because of the changes proposed, this would no longer work, breaking
code that currently works with 5.3. I'd only expect a break like this
when jumping to a major version -- and even then, I'd think that adding
new keywords for such common names would need a lot of justification.
As Sebastian noted, it seems this should be addressed with the new
lexer; I'd argue that if the current type hinting must introduce new
keywords, it should wait until the new lexer is in place in order to
insulate end-users from such changes.
We also have no plan about what will or will not be 5.4. This looks
familiar, this is exactly how we begun 5.3 and it tooks literally
years to be released. There is also actually no agreement to begin
with 5.4 now.Yes, but instead of defining "what is PHP 5.4", why not just go with
what we have? Everything that's not in thre is for PHP-next-next again.5.4 should be hold off until we solved the listed issues and the
release management RFC gets discussed and hopefully approved.Why do you need a release management RFC? We've made releases for more
than a decade just fine.Stalling every time doesn't get us anywhere. IMO we should just go with
it. Which means as a rough guide:
- copy over APC/pecl_http
- branch on thursday
- alpha next week
- build a list of things that needs doing in 5.4 to get it ready (with
possible options to get rid of apc/pecl_http if they are not up to
date enough)I am absolutely against stalling again!
I call shenanigans. This is exactly why a release process is desired
and necessary -- because right now, there are BC breaks in trunk, only a
vague idea about what may or may not be ready, and competing ideas about
what constitutes grounds for branching. "Just go with it" may work for a
few people, but that sort of attitude leaves those whose features were
skipped over or who were away from the list and/or IRC for a few days
wondering what happened later. With a defined release process,
everyone knows what must be done, by when, making the process more
transparent and gasp democratic.
--
Matthew Weier O'Phinney
Project Lead | matthew@zend.com
Zend Framework | http://framework.zend.com/
PGP key: http://framework.zend.com/zf-matthew-pgp-key.asc
. classes named as any of the type hint scalar types
do not work anymore
aka class int {}Yeah, there is a slight hint of a BC break in case you have a class
named "int" or "float" etc. But there is:
http://uk.php.net/manual/en/userlandnaming.tips.phpPerhaps we can reduce the current list of classes:
int, integer, real, double, string, binary, scalar, array, object,
bool, boolean
to what the manual uses though (for prototypes):
int, float, string, binary, scalar, array, object, bool
(Point #18 at http://doc.php.net/php/dochowto/chapter-conventions.php)Sorry, but this is actually a pretty grave BC break.
Currently, you can do the following:
namespace Foo\Validator; class Int {}
During our namespace discussion, this is exactly what I warned about. In
order to make use of namespaces, you need to have atleast two "elements"
in your class names otherwise we can still never introduce a new class.
But that was not listened too.
As Sebastian noted, it seems this should be addressed with the new
lexer; I'd argue that if the current type hinting must introduce new
keywords, it should wait until the new lexer is in place in order to
insulate end-users from such changes.
The new lexer however, is a slower; so not a viable solution right now.
With a defined release process, everyone knows what must be done, by
when, making the process more transparent and gasp democratic.
Well, I don't think we've ever been democratic. I probably think
that that wouldn't even work. Also, I think an alpha has pretty much
been announce nicely on time for people to know what's happening.
Derick
--
http://derickrethans.nl | http://xdebug.org
Like Xdebug? Consider a donation: http://xdebug.org/donate.php
twitter: @derickr and @xdebug
Hi!
During our namespace discussion, this is exactly what I warned about. In
order to make use of namespaces, you need to have atleast two "elements"
in your class names otherwise we can still never introduce a new class.
But that was not listened too.
I'm not sure I understand this point, could you explain?
Stanislav Malyshev, Software Architect
SugarCRM: http://www.sugarcrm.com/
(408)454-6900 ext. 227
. classes named as any of the type hint scalar types
do not work anymore
aka class int {}Yeah, there is a slight hint of a BC break in case you have a class
named "int" or "float" etc. But there is:
http://uk.php.net/manual/en/userlandnaming.tips.phpPerhaps we can reduce the current list of classes:
int, integer, real, double, string, binary, scalar, array, object,
bool, boolean
to what the manual uses though (for prototypes):
int, float, string, binary, scalar, array, object, bool
(Point #18 at http://doc.php.net/php/dochowto/chapter-conventions.php)Sorry, but this is actually a pretty grave BC break.
Currently, you can do the following:
namespace Foo\Validator;
class Int {}
During our namespace discussion, this is exactly what I warned about. In
order to make use of namespaces, you need to have atleast two "elements"
in your class names otherwise we can still never introduce a new class.
But that was not listened too.As Sebastian noted, it seems this should be addressed with the new
lexer; I'd argue that if the current type hinting must introduce new
keywords, it should wait until the new lexer is in place in order to
insulate end-users from such changes.The new lexer however, is a slower; so not a viable solution right now.
With a defined release process, everyone knows what must be done, by
when, making the process more transparent and gasp democratic.Well, I don't think we've ever been democratic. I probably think
that that wouldn't even work. Also, I think an alpha has pretty much
been announce nicely on time for people to know what's happening.
I think what Matthew suggest here is something in the line of democratically
defining a release process up front: features you would like to get in (a
roadmap that clearly states that the content can change up until a feature
freeze), a deadline for the feature freeze so that the process is
predictable and appoint a release manager to be in charge of the branch.
Something like:
-
Branching next version from day one so you have one called next and one
called trunk for edge stuff, and appoint a release manager to approve
features as they are merged from development branch(es)
Alternatively (among several possible branch strategies) in DVCS you could
use topic branches for the edge implementations, this is cleaner (maybe),
but the point is to have a release branch that can be stabilized at anytime.
For a more in-depth branching possibility see:
http://nvie.com/posts/a-successful-git-branching-model/ -
Define a feature freeze date, anything not ready feature or stability wise
is moved to Next Next roadmap (they are not in the Next release branch
anyway as it only has feature complete features at any point)
And branch off Next Next and appoint a release manager for that branch so
there is always an active release branch.
This will give a more predictable release schedule for everyone involved,
especially for php users as it will give them a real hint on when the
testing process of the next version will begin and some clue on when it
might get finalized. All without having to introduce full fledge scrum and /
or a strict release process.
- ar
. classes named as any of the type hint scalar types
do not work anymore
aka class int {}Yeah, there is a slight hint of a BC break in case you have a class
named "int" or "float" etc. But there is:
http://uk.php.net/manual/en/userlandnaming.tips.phpPerhaps we can reduce the current list of classes:
int, integer, real, double, string, binary, scalar, array, object,
bool, boolean
to what the manual uses though (for prototypes):
int, float, string, binary, scalar, array, object, bool
(Point #18 at http://doc.php.net/php/dochowto/chapter-conventions.php
)Sorry, but this is actually a pretty grave BC break.
Currently, you can do the following:
namespace Foo\Validator;
class Int {}
During our namespace discussion, this is exactly what I warned about. In
order to make use of namespaces, you need to have atleast two "elements"
in your class names otherwise we can still never introduce a new class.
But that was not listened too.As Sebastian noted, it seems this should be addressed with the new
lexer; I'd argue that if the current type hinting must introduce new
keywords, it should wait until the new lexer is in place in order to
insulate end-users from such changes.The new lexer however, is a slower; so not a viable solution right now.
With a defined release process, everyone knows what must be done, by
when, making the process more transparent and gasp democratic.Well, I don't think we've ever been democratic. I probably think
that that wouldn't even work. Also, I think an alpha has pretty much
been announce nicely on time for people to know what's happening.I think what Matthew suggest here is something in the line of
democratically defining a release process up front: features you would like
to get in (a roadmap that clearly states that the content can change up
until a feature freeze), a deadline for the feature freeze so that the
process is predictable and appoint a release manager to be in charge of the
branch.Something like:
Branching next version from day one so you have one called next and one
called trunk for edge stuff, and appoint a release manager to approve
features as they are merged from development branch(es)
Alternatively (among several possible branch strategies) in DVCS you could
use topic branches for the edge implementations, this is cleaner (maybe),
but the point is to have a release branch that can be stabilized at anytime.
For a more in-depth branching possibility see:
http://nvie.com/posts/a-successful-git-branching-model/Define a feature freeze date, anything not ready feature or stability
wise is moved to Next Next roadmap (they are not in the Next release branch
anyway as it only has feature complete features at any point)
And branch off Next Next and appoint a release manager for that branch so
there is always an active release branch.
When feature freeze date for Next is reached.
This will give a more predictable release schedule for everyone involved,
especially for php users as it will give them a real hint on when the
testing process of the next version will begin and some clue on when it
might get finalized. All without having to introduce full fledge scrum and /
or a strict release process.
- ar
hi,
Well, I don't think we've ever been democratic.
Neither have we been dictatorial. Announcing a new major (x.y+1.z)
release in the middle of some of the largest conferences (knowing that
many core devs won't follow the list) and for a couple of weeks later
was not the best thing to do. To commit something that did not get any
consensus and then force us to go out with a release is bad.
--
Pierre
@pierrejoye | http://blog.thepimp.net | http://www.libgd.org
hi Derick,
I am absolutely against stalling again!
I am absolutely against going into a release process with the current
state of the affairs.
I think it would be much better for everyone if we first agree on the
release process RFC, including the selection of the release managers,
the features inclusions and the BC breaks policy.
Last but not least, I don't think the type hinting (or strict typing)
got any agreement or go any approved RFC. That alone is a no-go for a
release.
Cheers,
Pierre
@pierrejoye | http://blog.thepimp.net | http://www.libgd.org
Given the current state of trunk, I think 5.4 release process should
not begin tomorrow (alpha or whatever other status). There are
numerous identified issues that we need to fix before even think to
begin with a release. For example:
...
We also have no plan about what will or will not be 5.4. This looks
familiar, this is exactly how we begun 5.3 and it tooks literally
years to be released. There is also actually no agreement to begin
with 5.4 now.5.4 should be hold off until we solved the listed issues and the
release management RFC gets discussed and hopefully approved.
+1
5.4 should be hold off until we solved the listed issues and the
release management RFC gets discussed and hopefully approved.+1
+1 here too.
--
Pierre
@pierrejoye | http://blog.thepimp.net | http://www.libgd.org
5.4 should be hold off until we solved the listed issues and the
release management RFC gets discussed and hopefully approved.
The reality is that trunk is not going to be 5.4; it cannot be in its current state.
The reason behind ditching the unicode php6 was to enable innovation in trunk. This meant
we could have traits, type hinting, apc in core etc, as well as internal enhancements, the new lemon
parser etc. Regardless of the arguments and unresolved issues, this IS happening, and IS a good thing.
The goal then was to essentially take the 5.3 branch, create a 5.4 branch, cherry pick commits to trunk
and apply them to the 5.4 branch and end up with a stable build. Unfortunately, subversion merging sucks.
This is an unreliable, laborious, crappy method for creating stable branches, and managing the
repo. Worse yet, SVN's merge-tracking/branch reintegration also sucks, so creating feature branches and
re-integrating is also a pretty crappy solution.
So, with the BC breaks committed to trunk (register globals) or that we want to commit to trunk (magic quotes), as
well as the code without consensus, creating a stable 5.4 branch is going to be a lot of work.
Now, I'm no advocate of git (I've yet to jump on the bandwagon for my main repo, but have several small projects on
github), but it seems that it's capabilities would make these things much more trivial. Obviously: not a solution for now.
We need to get our repo in order first, then we can start talking about 5.4. The RMs need to make a definitive
stand about how the repo will be managed, and explain to us how that's going to trickle down to our personal habits.
This doesn't seem the ideal time to introduce a new toolchain, so sticking with SVN, we should maintain 4 branches, 5.2 (security only), 5.3 (bug fixes + security), 5.4 (agreed upon enhancements, no BC breaks), 6.0 (BC breaks).
Non-agreed upon enhancements, potential BC breaks, all should be done in feature branches. This gives people buildable
(hopefully) branches to use for testing, revision control for those developing the features, and unmuddied commit histories
to more easily pull those changes into the appropriate branches.
- Davey
2010/11/25 Davey Shafik davey@php.net:
5.4 should be hold off until we solved the listed issues and the
release management RFC gets discussed and hopefully approved.The reality is that trunk is not going to be 5.4; it cannot be in its current state.
The reason behind ditching the unicode php6 was to enable innovation in trunk. This meant
we could have traits, type hinting, apc in core etc, as well as internal enhancements, the new lemon
parser etc. Regardless of the arguments and unresolved issues, this IS happening, and IS a good thing.The goal then was to essentially take the 5.3 branch, create a 5.4 branch, cherry pick commits to trunk
and apply them to the 5.4 branch and end up with a stable build. Unfortunately, subversion merging sucks.This is an unreliable, laborious, crappy method for creating stable branches, and managing the
repo. Worse yet, SVN's merge-tracking/branch reintegration also sucks, so creating feature branches and
re-integrating is also a pretty crappy solution.So, with the BC breaks committed to trunk (register globals) or that we want to commit to trunk (magic quotes), as
well as the code without consensus, creating a stable 5.4 branch is going to be a lot of work.Now, I'm no advocate of git (I've yet to jump on the bandwagon for my main repo, but have several small projects on
github), but it seems that it's capabilities would make these things much more trivial. Obviously: not a solution for now.We need to get our repo in order first, then we can start talking about 5.4. The RMs need to make a definitive
stand about how the repo will be managed, and explain to us how that's going to trickle down to our personal habits.This doesn't seem the ideal time to introduce a new toolchain, so sticking with SVN, we should maintain 4 branches, 5.2 (security only), 5.3 (bug fixes + security), 5.4 (agreed upon enhancements, no BC breaks), 6.0 (BC breaks).
Non-agreed upon enhancements, potential BC breaks, all should be done in feature branches. This gives people buildable
(hopefully) branches to use for testing, revision control for those developing the features, and unmuddied commit histories
to more easily pull those changes into the appropriate branches.
- Davey
--
I think Davey has a clear view and a good explanation about the
current situation.
Trunk has been used for both short and long term development hence the
difficulties to agree that trunk is about 5.4 or +.
In a first place, we should decide on what to have for 5.4 and what to
leave for the future.
A technical way to do it would be to use git-svn locally, starting
from the PHP_5_3 branch and merging it with trunk. git rebase -i can
then be used easily to remove all the commits we don't want to appear
in 5.4.
--
Patrick
Who says it has to be 5.4? People seem to be a bit fixated on the version there.
Major BC breaks just means the version released from trunk is 6.0. And it's just a number. Big number, but still just a number.
Merging (by and or by magic :) features into branch created from 5.3 just sounds like plane crash waiting to happen..
---Jani
5.4 should be hold off until we solved the listed issues and the
release management RFC gets discussed and hopefully approved.The reality is that trunk is not going to be 5.4; it cannot be in its current state.
The reason behind ditching the unicode php6 was to enable innovation in trunk. This meant
we could have traits, type hinting, apc in core etc, as well as internal enhancements, the new lemon
parser etc. Regardless of the arguments and unresolved issues, this IS happening, and IS a good thing.The goal then was to essentially take the 5.3 branch, create a 5.4 branch, cherry pick commits to trunk
and apply them to the 5.4 branch and end up with a stable build. Unfortunately, subversion merging sucks.This is an unreliable, laborious, crappy method for creating stable branches, and managing the
repo. Worse yet, SVN's merge-tracking/branch reintegration also sucks, so creating feature branches and
re-integrating is also a pretty crappy solution.So, with the BC breaks committed to trunk (register globals) or that we want to commit to trunk (magic quotes), as
well as the code without consensus, creating a stable 5.4 branch is going to be a lot of work.Now, I'm no advocate of git (I've yet to jump on the bandwagon for my main repo, but have several small projects on
github), but it seems that it's capabilities would make these things much more trivial. Obviously: not a solution for now.We need to get our repo in order first, then we can start talking about 5.4. The RMs need to make a definitive
stand about how the repo will be managed, and explain to us how that's going to trickle down to our personal habits.This doesn't seem the ideal time to introduce a new toolchain, so sticking with SVN, we should maintain 4 branches, 5.2 (security only), 5.3 (bug fixes + security), 5.4 (agreed upon enhancements, no BC breaks), 6.0 (BC breaks).
Non-agreed upon enhancements, potential BC breaks, all should be done in feature branches. This gives people buildable
(hopefully) branches to use for testing, revision control for those developing the features, and unmuddied commit histories
to more easily pull those changes into the appropriate branches.
- Davey
2010/11/25 Jani Taskinen jani.taskinen@iki.fi:
Who says it has to be 5.4? People seem to be a bit fixated on the version there.
I'd like to know too...
Major BC breaks just means the version released from trunk is 6.0. And it's just a number. Big number, but still just a number.
Well, such a change tends to create a big buzz, without mentioning
stuff like certifications, trainings,...
We should avoid creating a virtual PHP 6.0 which will contain all the
BC stuff while all features appears in 5.x.
By doing so we will keep some shit in 5.x forever and won't have
anything appealing enough to migrate to 6.0!
Merging (by and or by magic :) features into branch created from 5.3 just sounds like plane crash waiting to happen..
---Jani
2010/11/25 Jani Taskinen jani.taskinen@iki.fi:
Who says it has to be 5.4? People seem to be a bit fixated on the version there.
I'd like to know too...
Major BC breaks just means the version released from trunk is 6.0. And it's just a number. Big number, but still just a number.
Well, such a change tends to create a big buzz, without mentioning
stuff like certifications, trainings,...
This is a joke, right?
We should avoid creating a virtual PHP 6.0 which will contain all the
BC stuff while all features appears in 5.x.
By doing so we will keep some shit in 5.x forever and won't have
anything appealing enough to migrate to 6.0
..or have something really new and interesting in PHP 7.0.0. The big version number change is reserved for BC changing stuff, not just for "fancy new stuff".
--Jani
-----Original Message-----
From: Jani Taskinen [mailto:jani.taskinen@iki.fi]
Sent: Thursday, November 25, 2010 12:25 AM
To: davey@php.net
Cc: PHP Internals
Subject: Re: [PHP-DEV] Re: Hold off 5.4Who says it has to be 5.4? People seem to be a bit fixated on the version there.
Major BC breaks just means the version released from trunk is 6.0. And it's just
a number. Big number, but still just a number.Merging (by and or by magic :) features into branch created from 5.3 just
sounds like plane crash waiting to happen..
I agree and I don't think we're in as bad shape although there's some cleaning up that needs to be done.
For what it's worth the changes we've made in the Zend Engine around performance and memory use could warrant a major version. Every major version of PHP in the past has been driven foremost by major engine overhauls. I believe there's quite a bit more that we can do during the pre-beta phase in these areas to strengthen that and those changes with a combination of traits, some cleanup of deprecated e.g. safe_mode could warrant a major new version.
If we do go down that route I would advocate calling it PHP 7 and not PHP 6, not because I like jumping ahead so far (I don't like I am sure most people here don't) but we don't want people to search for PHP 6 and find past information which is not relevant to this version we release. Then again I can live with it either way but we should be aware of the negative implications there could be.
Andi
For what it's worth the changes we've made in the Zend Engine around
performance and memory use could warrant a major version. Every major
version of PHP in the past has been driven foremost by major engine
overhauls.
Yes, larger changes to the engine changed the major number. But all of
them had a big effect. This is "only" performance. No functionality. 90%
of the users won't notice it. Whereas everbody oticed the change from3
to 4 or the new object model in 5. Changing the major number has two big
effects: a) marketing b) more fear for doing the upgrade.
I value b) as the more relevant factor to monitor.
johannes
For what it's worth the changes we've made in the Zend Engine around
performance and memory use could warrant a major version. Every major
version of PHP in the past has been driven foremost by major engine
overhauls.Yes, larger changes to the engine changed the major number. But all of
them had a big effect. This is "only" performance. No functionality. 90%
of the users won't notice it. Whereas everbody oticed the change from3
to 4 or the new object model in 5. Changing the major number has two big
effects: a) marketing b) more fear for doing the upgrade.I value b) as the more relevant factor to monitor.
Looking through trunk I think we are in pretty good shape. I don't
think cherry-picking and branch merging is an issue at this point. A
5.4 with the performance improvements, Traits, minus the type hinting
breakage is something we can get out pretty quickly without causing any
sort of PHP 6 confusion or breaking existing apps.
-Rasmus
hi Rasmus,
2010/11/25 Rasmus Lerdorf rasmus@lerdorf.com:
For what it's worth the changes we've made in the Zend Engine around
performance and memory use could warrant a major version. Every major
version of PHP in the past has been driven foremost by major engine
overhauls.Yes, larger changes to the engine changed the major number. But all of
them had a big effect. This is "only" performance. No functionality. 90%
of the users won't notice it. Whereas everbody oticed the change from3
to 4 or the new object model in 5. Changing the major number has two big
effects: a) marketing b) more fear for doing the upgrade.I value b) as the more relevant factor to monitor.
Looking through trunk I think we are in pretty good shape. I don't
think cherry-picking and branch merging is an issue at this point. A
5.4 with the performance improvements, Traits, minus the type hinting
breakage is something we can get out pretty quickly without causing any
sort of PHP 6 confusion or breaking existing apps.
Agreed, a php6 now just does not make sense, no matter from which point of view.
I would not define 5.4 as being in a good shape but in a very
promising shape to prepare a release. Removing the breakage, do some
clear review of what we have (from a BC pov for one) and we could
begin with a 5.4 release. However let get the RFC sorted out first
before (it seems that we clearly have a consensus on most parts, time
lines need to be adapted to avoid 5 releases at the same time :).
Indeed, the type hint patch should be reverted as well, the sooner the better.
Cheers,
Pierre
@pierrejoye | http://blog.thepimp.net | http://www.libgd.org
-----Original Message-----
From: Rasmus Lerdorf [mailto:rasmus@lerdorf.com]
Sent: Thursday, November 25, 2010 9:27 AM
To: Johannes Schlüter
Cc: Andi Gutmans; Jani Taskinen; davey@php.net; PHP Internals
Subject: Re: [PHP-DEV] Re: Hold off 5.4Looking through trunk I think we are in pretty good shape. I don't think cherry-
picking and branch merging is an issue at this point. A
5.4 with the performance improvements, Traits, minus the type hinting
breakage is something we can get out pretty quickly without causing any sort of
PHP 6 confusion or breaking existing apps.
Btw, just to be clear I am also OK with this approach. I just wanted to make sure we consider the pros/cons of doing minor vs. major so we're all aligned re: the implications :) I would pass on any type hinting patch because there's no consensus and if we rip it out we are pretty much set to go (and I do not see a major negative implication of taking it out). Less is more IMO and it will enable us to get good functionality out sooner. We will probably make some more engine enhancements during pre-beta but can freeze at any point in time.
Andi
2010/11/25 Andi Gutmans andi@zend.com:
-----Original Message-----
From: Rasmus Lerdorf [mailto:rasmus@lerdorf.com]
Sent: Thursday, November 25, 2010 9:27 AM
To: Johannes Schlüter
Cc: Andi Gutmans; Jani Taskinen; davey@php.net; PHP Internals
Subject: Re: [PHP-DEV] Re: Hold off 5.4Looking through trunk I think we are in pretty good shape. I don't think cherry-
picking and branch merging is an issue at this point. A
5.4 with the performance improvements, Traits, minus the type hinting
breakage is something we can get out pretty quickly without causing any sort of
PHP 6 confusion or breaking existing apps.Btw, just to be clear I am also OK with this approach. I just wanted to make sure we consider the pros/cons of doing minor vs. major so we're all aligned re: the implications :) I would pass on any type hinting patch because there's no consensus and if we rip it out we are pretty much set to go (and I do not see a major negative implication of taking it out). Less is more IMO and it will enable us to get good functionality out sooner. We will probably make some more engine enhancements during pre-beta but can freeze at any point in time.
Agreed here as well. I think we can begin with the release in January
(I mean actually begin with the 1st test release). That lets us a
couple of weeks (don't forget December has some family mandatory
activities for most of us :) to actually get the RFC sorted out and
review what we have.
By review I mean to actually focus on evaluating trunk from a
BC/QA/design point of view. I'm not saying it is badly designed or
whatever else negative, but that most of us were busy with the current
active branches and other bugs.
I'm sure these 2-3 weeks more will benefit the php-next release and
will make us feel much more confident about it, from day 1.
Cheers,
Pierre
@pierrejoye | http://blog.thepimp.net | http://www.libgd.org
Looking through trunk I think we are in pretty good shape. I don't
think cherry-picking and branch merging is an issue at this point. A
5.4 with the performance improvements, Traits, minus the type hinting
breakage is something we can get out pretty quickly without causing any
sort of PHP 6 confusion or breaking existing apps.-Rasmus
I Second that. The 5.4 will be backwards compatible release to the 5.3
code as far as PHP applications are concerned. The only items that
would be "broken" are deprecated features we may choose to remove like
register_globals,magic_quotes_gpc,etc...
Having this release out, to let people realize the performance
benefits from core + apc bundling it offers would be supremely helpful
to all users of PHP.
Looking through trunk I think we are in pretty good shape. I don't
think cherry-picking and branch merging is an issue at this point. A
5.4 with the performance improvements, Traits, minus the type hinting
breakage is something we can get out pretty quickly without causing any
sort of PHP 6 confusion or breaking existing apps.-Rasmus
I Second that. The 5.4 will be backwards compatible release to the 5.3
code as far as PHP applications are concerned. The only items that
would be "broken" are deprecated features we may choose to remove like
register_globals,magic_quotes_gpc,etc...Having this release out, to let people realize the performance
benefits from core + apc bundling it offers would be supremely helpful
to all users of PHP.
We also need that non-null zend_parse_parameters type implemented to
clean up the null-byte poisoning fixes in 5.3. I can't see this slowing
us down much as it is pretty trivial. Just takes someone to sit down
for a couple of hours and implementing it and finding all the places
where parameters end up in paths. There are probably other places we
don't want nulls either that currently have local checks that can be
removed.
-Rasmus
-----Original Message-----
From: Rasmus Lerdorf [mailto:rasmus@lerdorf.com]
Sent: Thursday, November 25, 2010 10:26 AM
To: Ilia Alshanetsky
Cc: Johannes Schlüter; Andi Gutmans; Jani Taskinen; davey@php.net; PHP
Internals
Subject: Re: [PHP-DEV] Re: Hold off 5.4We also need that non-null zend_parse_parameters type implemented to clean
up the null-byte poisoning fixes in 5.3. I can't see this slowing us down much as
it is pretty trivial. Just takes someone to sit down for a couple of hours and
implementing it and finding all the places where parameters end up in paths.
There are probably other places we don't want nulls either that currently have
local checks that can be removed.
Yes I agree. We may be able to skip this check for interned strings which would be nice and potentially eliminate performance impact somewhat but it's something that would need to be looked into. It's non-trivial but doable (need to add a flag for interned strings whether they have a zero byte or not).
Andi
-----Original Message-----
From: Rasmus Lerdorf [mailto:rasmus@lerdorf.com]
Sent: Thursday, November 25, 2010 10:26 AM
To: Ilia Alshanetsky
Cc: Johannes Schlüter; Andi Gutmans; Jani Taskinen; davey@php.net; PHP
Internals
Subject: Re: [PHP-DEV] Re: Hold off 5.4We also need that non-null zend_parse_parameters type implemented to clean
up the null-byte poisoning fixes in 5.3. I can't see this slowing us down much as
it is pretty trivial. Just takes someone to sit down for a couple of hours and
implementing it and finding all the places where parameters end up in paths.
There are probably other places we don't want nulls either that currently have
local checks that can be removed.Yes I agree. We may be able to skip this check for interned strings which would be nice and potentially eliminate performance impact somewhat but it's something that would need to be looked into. It's non-trivial but doable (need to add a flag for interned strings whether they have a zero byte or not).
What do you think about a path argument? Returning something like
zend_file_handle with some more meta info. Doing so will let us pass
all the way down to the actual file API system call without having to
duplicate opearions (stat, perms, etc.) as each ops will simply set
the member accordingly.
Cheers,
Pierre
@pierrejoye | http://blog.thepimp.net | http://www.libgd.org
We also need that non-null zend_parse_parameters type implemented to
clean up the null-byte poisoning fixes in 5.3.
Recently there was an off-list discussion about adding support for
accepting non-empty strings only via zend_parse_parameters (zpp). There
I raised the concern that we shouldn't add too many special validations
for two main reasons:
a) The more options zpp has the harder it is to use/read/maintain
b) Errors from zpp usually are typically caused by program errors which
in other languages for instance might be detected by a compiler not for
being bad values as such errors might require different handling by the
user.
The null-byte thing is not only good for file operations but also for
ereg and other places. But we should be sure about the error semantics
caused.
johannes
-----Original Message-----
From: Johannes Schlüter [mailto:johannes@schlueters.de]
Sent: Thursday, November 25, 2010 9:21 AM
To: Andi Gutmans
Cc: Jani Taskinen; davey@php.net; PHP Internals
Subject: RE: [PHP-DEV] Re: Hold off 5.4For what it's worth the changes we've made in the Zend Engine around
performance and memory use could warrant a major version. Every major
version of PHP in the past has been driven foremost by major engine
overhauls.Yes, larger changes to the engine changed the major number. But all of them
had a big effect. This is "only" performance. No functionality. 90% of the users
won't notice it. Whereas everbody oticed the change from3 to 4 or the new
object model in 5. Changing the major number has two big
effects: a) marketing b) more fear for doing the upgrade.I value b) as the more relevant factor to monitor.
I agree it is border line. I didn't say I feel strongly about it but I also wouldn't dismiss the changes we are making in PHP-next both from a core runtime point of view, backwards compatibility + new functionality as a minor version. As technologies mature new major versions are often a bit more balanced which makes sense given we have such a huge user base. This is no different in the Java world, C++ as it matured or some other technologies.
From a core runtime point of view I think the changes are actually quite far reaching. I also believe there's more that we can do and want to try and do.
From a BC point of view I do think it's an opportunity to clean up quite a bit. I am not an advocate of going crazy but I think we've already identified a few areas as a group that we feel comfortable with that strike a good balance between BC and helping move things forward. I think these are major version changes not minor version changes.
From a functionality point of view I actually think there's some good functionality here:
- Traits (I think this is major)
- Some additional language improvements around array dereferencing, configurable mbstring support at runtime (we still need to do some work there), closure enhancements, ...
- Some major and minor improvements in modules such as FastCGI, JSON, hashing, ...
I think this is definitely more than minor version. I agree it may feel somewhat light as a major version but there is no such thing as a manor version :)
In the spirit of release early and often I would actually gravitate towards the major version and start with clean slate although I also understand the other side of the world. In this scenario I would not use the excuse of a major version to go crazy though. Keep it sane and similar to what we're discussing now with maybe some additional engine improvements, additional cleanup and some extension work that can probably still be done. It has to be extremely finite (short list) and managed in a good release process. I do think if we continue to do "major minor" versions like we've done in the 5.x branch we will probably stay in the 5.x branch perpetually and it could be confusing to our users when they get major BC breaks and changes within the same major version.
Andi
This is no different in the Java world, C++ as it matured or some
other technologies.
Java is currently at 1.6. (and 6 in Marketing) :-)
C++ went from ISO/IEC 14882:1998 to ISO/IEC 14882:2003 and is waiting
for C++0x, whatever the actual name will be.
No good examples ;-)
johannes
I think that skipping to a major version is a good idea.
Two key reasons I think that:
-
It'll help us break the evil spell of the 6 version number. Honestly, I'm not so certain we'll have major engine rewrites the size of what we've seen in PHP 3/4/5 going forward. Sure, I have a track record for saying that in the past before PHP 5, but this time I really think we've reached an evolutionary stage :). Even if I'm wrong and we'd have a major rewrite happening, I don't think any of us is seeing it any time soon.
-
Maybe it's time to break the notion that a major number change means major breakage. Sometimes (like in Google Chrome), a major version can bring nothing but a few new features and significantly improve performance, without any additional pain. Not saying we should go to the extreme of releasing a major version every other week, but once a year or once every 18 months is a very reasonable frequency.
Can't say I feel strongly about it, but I have a feeling that unless we change our versioning scheme a slight bit, we'll be stuck in the 5.x realm for a very long time (and I do think it actually reflects badly on the way the language is perceived to some degree).
My 2c.
Zeev
-----Original Message-----
From: Johannes Schlüter [mailto:johannes@schlueters.de]
Sent: Thursday, November 25, 2010 7:55 PM
To: Andi Gutmans
Cc: Jani Taskinen; davey@php.net; PHP Internals
Subject: RE: [PHP-DEV] Re: Hold off 5.4This is no different in the Java world, C++ as it matured or some
other technologies.Java is currently at 1.6. (and 6 in Marketing) :-)
C++ went from ISO/IEC 14882:1998 to ISO/IEC 14882:2003 and is waiting
for C++0x, whatever the actual name will be.No good examples ;-)
johannes
--
To unsubscribe, visit:
http://www.php.net/unsub.php
Can't say I feel strongly about it, but I have a feeling that unless we change our versioning scheme a slight bit, we'll be stuck in the 5.x realm for a very long time (and I do think it actually reflects badly on the way the language is perceived to some degree).
Perl? Oh, PHP.
--
</Daniel P. Brown>
http://www.php.net/
Is it just unusually cold weather for this time of year or did the hell
just freeze over? :-o
Couldn't agree more on both points and I had the same thoughts about
getting stuck with 5.x releases forever. And not getting any release out
soon from trunk if this thread drags on too long.
Maybe even skip 6 like Andi proposed and declare that from now even
major versions are never released. Only prime numbers count. 7 is a
prime number and it's the lucky one too. ;)
--Jani
p.s. Somehow this reminds me of one particular discussion in around 2001
about the versioning scheme.. :D
25.11.2010 23:56, Zeev Suraski wrote:
I think that skipping to a major version is a good idea.
Two key reasons I think that:
It'll help us break the evil spell of the 6 version number.
Honestly, I'm not so certain we'll have major engine rewrites the
size of what we've seen in PHP 3/4/5 going forward. Sure, I have a
track record for saying that in the past before PHP 5, but this time
I really think we've reached an evolutionary stage :). Even if I'm
wrong and we'd have a major rewrite happening, I don't think any of
us is seeing it any time soon.Maybe it's time to break the notion that a major number change
means major breakage. Sometimes (like in Google Chrome), a major
version can bring nothing but a few new features and significantly
improve performance, without any additional pain. Not saying we
should go to the extreme of releasing a major version every other
week, but once a year or once every 18 months is a very reasonable
frequency.Can't say I feel strongly about it, but I have a feeling that unless
we change our versioning scheme a slight bit, we'll be stuck in the
5.x realm for a very long time (and I do think it actually reflects
badly on the way the language is perceived to some degree).My 2c.
Zeev
-----Original Message----- From: Johannes Schlüter
[mailto:johannes@schlueters.de] Sent: Thursday, November 25, 2010
7:55 PM To: Andi Gutmans Cc: Jani Taskinen; davey@php.net; PHP
Internals Subject: RE: [PHP-DEV] Re: Hold off 5.4This is no different in the Java world, C++ as it matured or
some other technologies.Java is currently at 1.6. (and 6 in Marketing) :-) C++ went from
ISO/IEC 14882:1998 to ISO/IEC 14882:2003 and is waiting for C++0x,
whatever the actual name will be.No good examples ;-)
johannes
-- To
unsubscribe, visit: http://www.php.net/unsub.php
I think that skipping to a major version is a good idea.
It is appealing but not a good idea. I think it is better to get 5.4
with the features we like in it and then consider a major version.
There are quite a few things that we could add or changethat would
justify a major version (without opening one of our pandora's boxes
right now :).
As of versioning scheme, yes, a clear and documented one is the way.
Anything we can add to the RFC to clarify this would be welcome. Maybe
start a new thread, it is getting hard to follow each topic.
Cheers,
Pierre
@pierrejoye | http://blog.thepimp.net | http://www.libgd.org
I don't think the version # makes that much of a difference, but
rather what is in it. That said, people have made a good point that
jumping to something like 7, would allow us to skip the baggage
associated with PHP6, which seems like a fairly compelling argument to
me.
I think that skipping to a major version is a good idea.
It is appealing but not a good idea. I think it is better to get 5.4
with the features we like in it and then consider a major version.
There are quite a few things that we could add or changethat would
justify a major version (without opening one of our pandora's boxes
right now :).As of versioning scheme, yes, a clear and documented one is the way.
Anything we can add to the RFC to clarify this would be welcome. Maybe
start a new thread, it is getting hard to follow each topic.Cheers,
Pierre
@pierrejoye | http://blog.thepimp.net | http://www.libgd.org
That can always be done later. Even if I don't think users care much
about 6 or 7 being the version for the next major release. However for
what I can read or hear, they care about traits and many of the points
described in the RFC.
Maybe we could focus on getting the RFC sorted out and figure out what
can or should remain in a 5.4 release. We are almost ready to go with
it, a matter of weeks. I fear that a major release is something we
are not able to deal with right now.
Then we can begin with the next major (call it php 11 if we like to,
does not really matter ;) version. There are still plenty of work for
it (we all have in mind at least one thing).
I don't think the version # makes that much of a difference, but
rather what is in it. That said, people have made a good point that
jumping to something like 7, would allow us to skip the baggage
associated with PHP6, which seems like a fairly compelling argument to
me.I think that skipping to a major version is a good idea.
It is appealing but not a good idea. I think it is better to get 5.4
with the features we like in it and then consider a major version.
There are quite a few things that we could add or changethat would
justify a major version (without opening one of our pandora's boxes
right now :).As of versioning scheme, yes, a clear and documented one is the way.
Anything we can add to the RFC to clarify this would be welcome. Maybe
start a new thread, it is getting hard to follow each topic.Cheers,
Pierre
@pierrejoye | http://blog.thepimp.net | http://www.libgd.org
--
--
Pierre
@pierrejoye | http://blog.thepimp.net | http://www.libgd.org
-----Original Message-----
From: Pierre Joye [mailto:pierre.php@gmail.com]
Sent: Friday, November 26, 2010 3:03 AM
To: Ilia Alshanetsky
Cc: Zeev Suraski; Johannes Schlüter; Andi Gutmans; Jani Taskinen;
davey@php.net; PHP Internals
Subject: Re: [PHP-DEV] Re: Hold off 5.4That can always be done later.
Why do it later if we could do it now? :)
Can you share some of the major things you think would constitute a stronger reason to switch to 7 (or 11) than what we have in 5.4, that we have in the pipeline?
Zeev
-----Original Message-----
From: Pierre Joye [mailto:pierre.php@gmail.com]
Sent: Friday, November 26, 2010 3:03 AM
To: Ilia Alshanetsky
Cc: Zeev Suraski; Johannes Schlüter; Andi Gutmans; Jani Taskinen;
davey@php.net; PHP Internals
Subject: Re: [PHP-DEV] Re: Hold off 5.4That can always be done later.
Why do it later if we could do it now? :)
Can you share some of the major things you think would constitute a stronger reason to switch to 7 (or 11) than what we have in 5.4, that we have in the pipeline?
Wait, why do you want a major version for something that does not
break BC, that only adds a couple of features (even long awaited like
traits)? I don't see one.
For a new major version I would rather first sort out the RFC, get the
next 5.x out and then begin the discussions, designs, etc. Or are you
looking to re do all the mistakes and pains we experiment with 5.3.0
and ex.6.0.0? I won't go down this way.
About the "let drop the number 6" thing, that's just plain marketing
and really, that's the least problem our users have, or that we have.
Cheers,
Pierre
@pierrejoye | http://blog.thepimp.net | http://www.libgd.org
-----Original Message-----
From: Pierre Joye [mailto:pierre.php@gmail.com]
Sent: Friday, November 26, 2010 3:03 AM
To: Ilia Alshanetsky
Cc: Zeev Suraski; Johannes Schlüter; Andi Gutmans; Jani Taskinen;
davey@php.net; PHP Internals
Subject: Re: [PHP-DEV] Re: Hold off 5.4That can always be done later.
Why do it later if we could do it now? :)
Can you share some of the major things you think would constitute a stronger reason to switch to 7 (or 11) than what we have in 5.4, that we have in the pipeline?
Wait, why do you want a major version for something that does not
break BC, that only adds a couple of features (even long awaited like
traits)? I don't see one.
To make it clear, I should have written: A release not breaking BC, as
we can have a 5.4 release without BC breaks and with clear decisions
about what we want to have in.
--
Pierre
@pierrejoye | http://blog.thepimp.net | http://www.libgd.org
-----Original Message-----
From: Pierre Joye [mailto:pierre.php@gmail.com]
Sent: Friday, November 26, 2010 7:21 PM
To: Zeev Suraski
Cc: Ilia Alshanetsky; Johannes Schlüter; Andi Gutmans; Jani Taskinen;
davey@php.net; PHP Internals
Subject: Re: [PHP-DEV] Re: Hold off 5.4-----Original Message-----
From: Pierre Joye [mailto:pierre.php@gmail.com]
Sent: Friday, November 26, 2010 3:03 AM
To: Ilia Alshanetsky
Cc: Zeev Suraski; Johannes Schlüter; Andi Gutmans; Jani Taskinen;
davey@php.net; PHP Internals
Subject: Re: [PHP-DEV] Re: Hold off 5.4That can always be done later.
Why do it later if we could do it now? :)
Can you share some of the major things you think would constitute a
stronger reason to switch to 7 (or 11) than what we have in 5.4, that we have
in the pipeline?Wait, why do you want a major version for something that does not break
BC, that only adds a couple of features (even long awaited like traits)? I don't
see one.For a new major version I would rather first sort out the RFC, get the next 5.x
out and then begin the discussions, designs, etc. Or are you looking to re do
all the mistakes and pains we experiment with 5.3.0 and ex.6.0.0? I won't go
down this way.About the "let drop the number 6" thing, that's just plain marketing and
really, that's the least problem our users have, or that we have.
I'll begin again by saying I don't feel strongly about renaming 5.4 as 7.0, but there are some important points worth bringing up:
- The motivation for changing major version numbers was never BC breakage. It was substantial language changes/additions and sometimes substantial underlying engine changes. BC breakage was typically a side effect of that.
- Marketing does not equate Evil. There's nothing bad about making good moves that improve the perception of PHP in its userbase or the world at large. Turning the current trunk version into a major version can be perceived as a 'marketing' move - but that doesn't mean it's not legit. Other than showing that the PHP project is moving along, there's also the warm-fuzzy-feeling aspect, and based on the last couple of days it's clear I'm not the only one that feels bad about being stuck in 5.x for over 6 years with no change in sight.
- The motivation to skip 6 doesn't stem from marketing at all. The main motivation is that there's a VERY concrete perception amongst many users about what PHP 6 is. It's unlikely that PHP 6 will actually be that. Skipping this version makes perfect sense from just about any POV I can think of. That's actually one thing I do feel more strongly about - we should probably not reuse the version number 6.0 for something that's completely different than what we've been talking about for several years, whether it's now or anytime in the future.
What we call that version, whether it's PHP 5.4, PHP 7.0 or even PHP 3000, shouldn't change the way we discuss contents for it. The fact I want to call the very same thing we intend to release with a different name has absolutely nothing to do with the pains we experimented with 5.3 or 6.0.
We can agree to disagree (and again - whatever - I'm fine with 5.4!), but no need to invent unrelated horror stories :)
Zeev
I'll begin again by saying I don't feel strongly about renaming 5.4 as 7.0, but there are some important points worth bringing up:
- The motivation for changing major version numbers was never BC breakage. It was substantial language changes/additions and sometimes substantial underlying engine changes. BC breakage was typically a side effect of that.
No, but it was the main reasons.
- Marketing does not equate Evil. There's nothing bad about making good moves that improve the perception of PHP in its userbase or the world at large. Turning the current trunk version into a major version can be perceived as a 'marketing' move - but that doesn't mean it's not legit. Other than showing that the PHP project is moving along, there's also the warm-fuzzy-feeling aspect, and based on the last couple of days it's clear I'm not the only one that feels bad about being stuck in 5.x for over 6 years with no change in sight.
Right, and it was not meant badly. Only that it has no technical or
features-wise reasons to do so but brings its lots of risks with it.
- The motivation to skip 6 doesn't stem from marketing at all. The main motivation is that there's a VERY concrete perception amongst many users about what PHP 6 is.
Leaving the very small conference crowd for a second: nobody never
ever heard of php6 before the total fiasco a couple of months ago.
What we call that version, whether it's PHP 5.4, PHP 7.0 or even PHP 3000, shouldn't change the way we discuss contents for it. The fact I want to call the very same thing we intend to release with a different name has absolutely nothing to do with the pains we experimented with 5.3 or 6.0.
Let say I know us too good and I don't think moving it to a major
version will be of any help.
We can agree to disagree (and again - whatever - I'm fine with 5.4!),
Right, but I really don't like that the feelings, wishes, requests and
will of most of the active developers seem to be totally ignored by a
couple of us. That's not what I like to see in a project like php.net.
There is clearly a need to change the way we work, communicate and
decide things (be releases, features, etc.). Like it or not, that's a
fact.
Other example, you do not want this type hinting, but what do you do
to change that? Why do you simply ignore it?
but no need to invent unrelated horror stories :)
Invent horror stories? Maybe you should take a bit more parts of the
day to day releases and development to see that they are not invented
stories :).
Cheers,
Pierre
@pierrejoye | http://blog.thepimp.net | http://www.libgd.org
Only that it has no technical or features-
wise reasons to do so
Substantial engine level improvements and a couple of new language level features (it's pushing it a bit, I agree, but not that much)
but brings its lots of risks with it.
I fail to see how changing a version number brings any risk at all.
Leaving the very small conference crowd for a second: nobody never ever
heard of php6 before the total fiasco a couple of months ago.
I disagree. Google for "PHP 6". I've received tons of questions about it from non-core-community attendees to conferences. I've received countless questions about it from Japanese and Chinese users. It's out there. If I had to bet based on my experience with users, there are a lot more people that know what PHP 6 was supposed to be than people who know its plans were scrapped.
I'll reply to some of your personal rant in person. It doesn't belong here...
Zeev
I disagree. Google for "PHP 6". I've received tons of questions about it from non-core-community attendees to conferences.
that's the crowd I referenced to. The users I discuss too, in locale
conference, UG, enterprises, etc. never heard or only vaguely about
php6. Or they heard about it while seeing a book called "PHP 6 and
mysql 6" or something stupid like that ;).
I've received countless questions about it from Japanese and Chinese users. It's out there. If I had to bet based on my experience with users, there are a lot more people that know what PHP 6 was supposed to be than people who know its plans were scrapped.
Same here, and that's one of the pandora box I want to open again.
Only not now, but not necessary in 2 years either. Hence the
importance of the RFC and clear, transparent process first.
I'll reply to some of your personal rant in person. It doesn't belong here...
Rants? I only replied to "invented story".
Cheers,
Pierre
@pierrejoye | http://blog.thepimp.net | http://www.libgd.org
that's the crowd I referenced to. The users I discuss too, in locale conference,
UG, enterprises, etc. never heard or only vaguely about php6. Or they heard
about it while seeing a book called "PHP 6 and mysql 6" or something stupid
like that ;).
I've yet to meet someone in the last few years who knew about the PHP 6 project, and wasn't aware it was about unicoding PHP...
People care about the roadmap of the products they're using. I'm not sure why you would think that the multi-year flagship version of PHP would remain a best-kept-secret. If you google for "PHP 6" it's clear beyond a reasonable doubt..
I've received countless questions about it from Japanese and Chinese
users. It's out there. If I had to bet based on my experience with users,
there are a lot more people that know what PHP 6 was supposed to be than
people who know its plans were scrapped.Same here, and that's one of the pandora box I want to open again.
Only not now, but not necessary in 2 years either. Hence the importance of
the RFC and clear, transparent process first.
Given what I know about why we failed, and what alternatives exist, I wouldn't hold my breath. I'm too old to say it'll never happen, but I think I can say with a very high degree of confidence the chances of it happening within the next two years are very slim.
Zeev
Zeev Suraski wrote:
that's the crowd I referenced to. The users I discuss too, in locale conference,
UG, enterprises, etc. never heard or only vaguely about php6. Or they heard
about it while seeing a book called "PHP 6 and mysql 6" or something stupid
like that;).
I've yet to meet someone in the last few years who knew about the PHP 6 project, and wasn't aware it was about unicoding PHP...
People care about the roadmap of the products they're using. I'm not sure why you would think that the multi-year flagship version of PHP would remain a best-kept-secret. If you google for "PHP 6" it's clear beyond a reasonable doubt..
At the time that PHP5 was released PHP6 was being documented and roadmaped as
the unicode path which would be in alpha 'in a couple of years time'. THAT is
the documentation that was used as the basis of several premature books on PHP6.
http://www.php.net/~derick/meeting-notes.html from the November 2005 meeting in
Paris is what we were all expecting to follow PHP5 since PHP5 did NOT address
the unicode problem that was well understood even back then!!!!
--
Lester Caine - G8HFL
Contact - http://lsces.co.uk/wiki/?page=contact
L.S.Caine Electronic Services - http://lsces.co.uk
EnquirySolve - http://enquirysolve.com/
Model Engineers Digital Workshop - http://medw.co.uk//
Firebird - http://www.firebirdsql.org/index.php
Only that it has no technical or features-
wise reasons to do soSubstantial engine level improvements and a couple of new language level features (it's pushing it a bit, I agree, but not that much)
I think the next major version should be used to drop a bunch of
deprecated features and to clean up some things. That's going to take a
bit of time to figure out and agree on which means traits and the
performance improvements are going to sit around unused for longer than
if we get an interim version out there quicker.
-Rasmus
- The motivation to skip 6 doesn't stem from marketing at all. The main
motivation is that there's a VERY concrete perception amongst many users
about what PHP 6 is.Leaving the very small conference crowd for a second: nobody never
ever heard of php6 before the total fiasco a couple of months ago.
Nobody ever heard of PHP 6? If you visit amazon.com and try search for "php
6", you'll see no less than 6 books (I stopped counting) all containing PHP
6 in the title. In the general PHP list, you'll see that developers
reference PHP 6 when speaking of how to handle unicode, and how you will
handle unicode in the future. If you search Google for "php 6", you'll be
greeted with hundreds of blog posts speaking of how to prepare for the
coming changes in PHP 6 or other aspects of its development.
The title "PHP 6" has much baggage. The perception in the general community
is strong and pervasive, and it certainly is not limited to a small
conference crowd. Developers have strongly conceived expectations about
what PHP 6 will entail, and as the releases creep towards an eventual 6.0,
the growing divergence between the expectations and the actual releases will
likely cause confusion and frustration.
Given the expectations, the strength of the enhancements coming in this next
release (significant engine rewrites, traits, APC, etc.), and the trend in
nomenclature for software versions, I believe the case for jumping to a 7.0
release makes sense.
I'm not an active contributor to the PHP core and I have no patches to my
name, so I'm not sure what my vote is worth. However, I do actively help
those on the general mailing list who are trying to learn basic PHP or are
trying to troubleshoot new code, and it's the general developers in userland
who will benefit from the most from the clear separation from the
expectations.
Adam
--
Nephtali: PHP web framework that functions beautifully
http://nephtaliproject.com
- The motivation to skip 6 doesn't stem from marketing at all. The
main motivation is that there's a VERY concrete perception amongst
many users about what PHP 6 is.Leaving the very small conference crowd for a second: nobody never
ever heard of php6 before the total fiasco a couple of months ago.
Not true. There have been "PHP 6" books published and on the market
for literally years.
--
Matthew Weier O'Phinney
Project Lead | matthew@zend.com
Zend Framework | http://framework.zend.com/
PGP key: http://framework.zend.com/zf-matthew-pgp-key.asc
On Sat, Nov 27, 2010 at 5:58 PM, Matthew Weier O'Phinney
weierophinney@php.net wrote:
- The motivation to skip 6 doesn't stem from marketing at all. The
main motivation is that there's a VERY concrete perception amongst
many users about what PHP 6 is.Leaving the very small conference crowd for a second: nobody never
ever heard of php6 before the total fiasco a couple of months ago.Not true. There have been "PHP 6" books published and on the market
for literally years.
That's what I mentioned later on "except the php6 books" or something
like that. I however keep the other comments, while many users have
heard about unicode and php6, or the total fiasco a couple of months
ago, they did not and still do not care about it. The php5 migration,
adoption of 5.3, dealing with chaotic releases are what they talk
about. But that's the feedback I got, maybe other hears something
else, depending on the audience.
Cheers,
Pierre
@pierrejoye | http://blog.thepimp.net | http://www.libgd.org
- The motivation to skip 6 doesn't stem from marketing at all. The
main motivation is that there's a VERY concrete perception amongst
many users about what PHP 6 is.Leaving the very small conference crowd for a second: nobody never
ever heard of php6 before the total fiasco a couple of months ago.Not true. There have been "PHP 6" books published and on the market
for literally years.
While none of them mention Unicode in any meaningful way ;-)
But well, the first thing is: "Do we want to go to a new major version
number or not?" Only if we do the question for 6, 7, 42, ... is
relevant. I interpret the discussion as more people favor 5.4. So the
other discussion can be held when it is decided to change the major
version.
johannes (who will propose a key syntax change in a moment)
- The motivation to skip 6 doesn't stem from marketing at all. The main motivation is that there's a VERY concrete perception amongst many users about what PHP 6 is. It's unlikely that PHP 6 will actually be that. Skipping this version makes perfect sense from just about any POV I can think of. That's actually one thing I do feel more strongly about - we should probably not reuse the version number 6.0 for something that's completely different than what we've been talking about for several years, whether it's now or anytime in the future.
Users aware of PHP 6's unicode intentions will assume PHP 7 is a superset of
PHP 6 and therefore has unicode. So skipping the number "6" won't resolve
any user confusion.
Chris
--
Email: christopher.jones@oracle.com
Tel: +1 650 506 8630
Blog: http://blogs.oracle.com/opal/
On Thu, Dec 2, 2010 at 11:01 AM, Christopher Jones
christopher.jones@oracle.com wrote:
- The motivation to skip 6 doesn't stem from marketing at all. The main
motivation is that there's a VERY concrete perception amongst many users
about what PHP 6 is. It's unlikely that PHP 6 will actually be that.
Skipping this version makes perfect sense from just about any POV I can
think of. That's actually one thing I do feel more strongly about - we
should probably not reuse the version number 6.0 for something that's
completely different than what we've been talking about for several years,
whether it's now or anytime in the future.Users aware of PHP 6's unicode intentions will assume PHP 7 is a superset of
PHP 6 and therefore has unicode. So skipping the number "6" won't resolve
any user confusion.
I think the unicode debacle will always give user's confusion,
especially since there's many many PHP 6 books on bookshelves that
speak of it. I think it's better to recognize what has happened with
PHP 6, be honest to the community about what happened and why, and
move on as best as we can.
John Mertic
jmertic@gmail.com | http://jmertic.wordpress.com
Hi
2010/11/25 Zeev Suraski zeev@zend.com:
I think that skipping to a major version is a good idea.
Two key reasons I think that:
- It'll help us break the evil spell of the 6 version number. Honestly, I'm not so certain we'll have major engine rewrites the size of what we've seen in PHP 3/4/5 going forward. Sure, I have a track record for saying that in the past before PHP 5, but this time I really think we've reached an evolutionary stage :). Even if I'm wrong and we'd have a major rewrite happening, I don't think any of us is seeing it any time soon.
I also think that its appealing to skip to version 6 to break that
spell once and for all. While still having 5.4, with backported
enhancements and features like Traits. Which also leaves us to the
breakage point, allowing us to get rid of magic_quotes in trunk while
its kept in 5.4.
- Maybe it's time to break the notion that a major number change means major breakage. Sometimes (like in Google Chrome), a major version can bring nothing but a few new features and significantly improve performance, without any additional pain. Not saying we should go to the extreme of releasing a major version every other week, but once a year or once every 18 months is a very reasonable frequency.
Can't say I feel strongly about it, but I have a feeling that unless we change our versioning scheme a slight bit, we'll be stuck in the 5.x realm for a very long time (and I do think it actually reflects badly on the way the language is perceived to some degree).
Although I don't feel strong about versioning either, but then I don't
think it makes much sense to skip version 6 as suggested. 5.x is a
major revision of PHP that we all like, but I won't want to be stuck
in it forever either.
Lets forget about the past PHP6 and make the present PHP6 happen instead.
--
regards,
Kalle Sommer Nielsen
kalle@php.net
2010/11/25 Zeev Suraski zeev@zend.com:
I think that skipping to a major version is a good idea.
Two key reasons I think that:
- It'll help us break the evil spell of the 6 version number.
Honestly, I'm not so certain we'll have major engine rewrites the
size of what we've seen in PHP 3/4/5 going forward. Sure, I have a
track record for saying that in the past before PHP 5, but this time
I really think we've reached an evolutionary stage :). Even if
I'm wrong and we'd have a major rewrite happening, I don't think any
of us is seeing it any time soon.I also think that its appealing to skip to version 6 to break that
spell once and for all.
I think it's a bad idea. We'd just be scaring users because "new major
version" = break. We're not breaking a thing (or atleast, try not to).
And think about distrbutions that'd want to wait til 6.1 or something.
We should reserve major versions for BC breaks. Just like we've always
done. I don't see the point of changing this, as it feels to me that you
just want to change it because you want to change it.
Now, if, we would introduce breaking changes, skipping 6 might be a
good plan (and go straight to 7), but I don't see any sort of compelling
reason why you'd want to go to 6/7 now.
Derick
--
http://derickrethans.nl | http://xdebug.org
Like Xdebug? Consider a donation: http://xdebug.org/donate.php
twitter: @derickr and @xdebug
-----Original Message-----
From: Derick Rethans [mailto:derick@php.net]
Sent: Friday, November 26, 2010 12:00 PM
To: Kalle Sommer Nielsen
Cc: Zeev Suraski; Johannes Schlüter; Andi Gutmans; Jani Taskinen;
davey@php.net; PHP Internals
Subject: Re: [PHP-DEV] Re: Hold off 5.42010/11/25 Zeev Suraski zeev@zend.com:
I think that skipping to a major version is a good idea.
Two key reasons I think that:
- It'll help us break the evil spell of the 6 version number.
Honestly, I'm not so certain we'll have major engine rewrites the
size of what we've seen in PHP 3/4/5 going forward. Sure, I have a
track record for saying that in the past before PHP 5, but this time
I really think we've reached an evolutionary stage :). Even if
I'm wrong and we'd have a major rewrite happening, I don't think any
of us is seeing it any time soon.I also think that its appealing to skip to version 6 to break that
spell once and for all.I think it's a bad idea. We'd just be scaring users because "new major
version" = break. We're not breaking a thing (or atleast, try not to).
And think about distrbutions that'd want to wait til 6.1 or something.
I think that a good message is always easy to convey. 'Moving from 5.3 to 7.0 is a no brainer and is effortless' is easy to convey. Of course, I could be wrong...
We should reserve major versions for BC breaks. Just like we've always done.
I don't see the point of changing this, as it feels to me that you just want to
change it because you want to change it.
Even if we don't move a major version (or two) now, I think we should reconsider that major-version == major-breakage linkage. I'm not sure it holds true any longer, and may push us to be stuck in the 5.x realm for a very long time (as a matter of fact, we already are - since mid 2004 - with no change in sight).
Now, if, we would introduce breaking changes, skipping 6 might be a good
plan (and go straight to 7), but I don't see any sort of compelling reason why
you'd want to go to 6/7 now.
No compelling reason. It's almost at the 'why not' level, and the only two reasons I have are the ones I stated in my previous email.
We could go with 5.4 and the world won't stop spinning, I just think that going with 7.0 will have some benefits.
Zeev
-----Original Message-----
From: Jani Taskinen [mailto:jani.taskinen@iki.fi]
Sent: Thursday, November 25, 2010 12:25 AM
To: davey@php.net
Cc: PHP Internals
Subject: Re: [PHP-DEV] Re: Hold off 5.4Who says it has to be 5.4? People seem to be a bit fixated on the version there.
Major BC breaks just means the version released from trunk is 6.0. And it's just
a number. Big number, but still just a number.Merging (by and or by magic :) features into branch created from 5.3 just
sounds like plane crash waiting to happen..I agree and I don't think we're in as bad shape although there's some cleaning up that needs to be done.
It is not bad, it is only painful. I did the merges for 5.3.0-3 and I
can tell you that SVN is simply broken for such things. I do it with
git for many other projects and I never had real issues.
Cheers,
Pierre
@pierrejoye | http://blog.thepimp.net | http://www.libgd.org
The goal then was to essentially take the 5.3 branch, create a 5.4
branch, cherry pick commits to trunk and apply them to the 5.4 branch
and end up with a stable build. Unfortunately, subversion merging
sucks.
This has nothing to do with any sort of version control sucking. Cherry
picking is hard! It only works if you get one feature in one commit,
instead of many several, with other changes in between, without many
dependices between patches. PHP isn't like that, especially with
Dmitry's engine changing patches.
This doesn't seem the ideal time to introduce a new toolchain, so
sticking with SVN, we should maintain 4 branches, 5.2 (security only),
5.3 (bug fixes + security), 5.4 (agreed upon enhancements, no BC
breaks), 6.0 (BC breaks).
Four branches? Are you going to help?
Non-agreed upon enhancements, potential BC breaks, all should be done
in feature branches.
That's a good theoretical point of view. And I maintain it doesn't work.
It makes it for example very difficult to try out multiple new features
at the same time; to say, to try to figure our whethr your app will
still works. It's also a lot more egocentric thing, instead of
collaboration. You want your stuff exposed to as many developers as
possible (that's also why I am not a fan of DVCS, because it reduces
that exposure drastically).
Derick
The goal then was to essentially take the 5.3 branch, create a 5.4
branch, cherry pick commits to trunk and apply them to the 5.4 branch
and end up with a stable build. Unfortunately, subversion merging
sucks.This has nothing to do with any sort of version control sucking. Cherry
picking is hard! It only works if you get one feature in one commit,
instead of many several, with other changes in between, without many
dependices between patches. PHP isn't like that, especially with
Dmitry's engine changing patches.
Yes, cherry picking is not as easy as people assume they are, because many
changes depend on each other and trunk has a fair quantity of these.
I think trunk should be the starting point for 5.4; as to type hinting,
I'm neutral as to the status quo.
However, this is all orthogonal to this thread, what's important is that
we agree on the formalities proposed so that we can proceed to these
material issues.
--
Gustavo Lopes
The goal then was to essentially take the 5.3 branch, create a 5.4
branch, cherry pick commits to trunk and apply them to the 5.4
branch and end up with a stable build. Unfortunately, subversion
merging sucks.This has nothing to do with any sort of version control sucking.
Cherry picking is hard! It only works if you get one feature in one
commit, instead of many several, with other changes in between,
without many dependices between patches. PHP isn't like that,
especially with Dmitry's engine changing patches.Yes, cherry picking is not as easy as people assume they are, because
many changes depend on each other and trunk has a fair quantity of
these.I think trunk should be the starting point for 5.4; as to type
hinting, I'm neutral as to the status quo.
Yes, I also think trunk should be 5.4. It's not the most ideal thing
though, but something we'll have to live with. It's going to be a lot
less of a hassle than cherry picking trunk's features and graft them
onto 5.3.
However, this is all orthogonal to this thread, what's important is
that we agree on the formalities proposed so that we can proceed to
these material issues.
I don't know. The release process discussion can run at the same time
and be ready for 5.5. That even allows us to refine it while we're
trying out the current proposal.
Derick
--
http://derickrethans.nl | http://xdebug.org
Like Xdebug? Consider a donation: http://xdebug.org/donate.php
twitter: @derickr and @xdebug
Yes, I also think trunk should be 5.4. It's not the most ideal thing
though, but something we'll have to live with. It's going to be a lot
less of a hassle than cherry picking trunk's features and graft them
onto 5.3.
Agreed. Cherry picking from trunk is no option. For being able to do
this one either needs feature branches or some strict rules for commit
message (for instance "always refer to the relevant RFCs") so one can
filter the commits properly.
Changing to such a model doesn't belong in a discussion with "5.4" in
the subject.
johannes
This doesn't seem the ideal time to introduce a new toolchain, so
sticking with SVN, we should maintain 4 branches, 5.2 (security only),
5.3 (bug fixes + security), 5.4 (agreed upon enhancements, no BC
breaks), 6.0 (BC breaks).Four branches? Are you going to help?
I'd to ask you to stop to say that in every 2nd person. What have you
done lately to help anyway? Besides the controversial patch for type
hinting? Right, there is no point to ask you that, so I remove this
question. Please, just respect everyone giving us precious feedback as
well as other developers.
Non-agreed upon enhancements, potential BC breaks, all should be done
in feature branches.That's a good theoretical point of view. And I maintain it doesn't work.
It makes it for example very difficult to try out multiple new features
at the same time; to say, to try to figure our whethr your app will
still works. It's also a lot more egocentric thing, instead of
collaboration. You want your stuff exposed to as many developers as
possible (that's also why I am not a fan of DVCS, because it reduces
that exposure drastically).
You mean more than putting an extension in some random personal
repository? Be serious please. github and bitbucket are the two best
examples why these tools are fantastic ways to ease contributions,
both for the developers and the contributors. The requests procedure
is simply amazing, there are also tools to review & manage external
patches, with comments and history. That's simply impossible to do
with svn.
Cheers,
Pierre
@pierrejoye | http://blog.thepimp.net | http://www.libgd.org
This doesn't seem the ideal time to introduce a new toolchain, so
sticking with SVN, we should maintain 4 branches, 5.2 (security only),
5.3 (bug fixes + security), 5.4 (agreed upon enhancements, no BC
breaks), 6.0 (BC breaks).Four branches? Are you going to help?
I'd to ask you to stop to say that in every 2nd person. What have you
done lately to help anyway?
I don't understand why you're being so agressive. It was a honest
question. More branches need more people to maintain it. And what is the
problem with asking people for help?
Derick
--
http://derickrethans.nl | http://xdebug.org
Like Xdebug? Consider a donation: http://xdebug.org/donate.php
twitter: @derickr and @xdebug
The goal then was to essentially take the 5.3 branch, create a 5.4
branch, cherry pick commits to trunk and apply them to the 5.4 branch
and end up with a stable build. Unfortunately, subversion merging
sucks.This has nothing to do with any sort of version control sucking. Cherry
picking is hard! It only works if you get one feature in one commit,
instead of many several, with other changes in between, without many
dependices between patches. PHP isn't like that, especially with
Dmitry's engine changing patches.
While it's true the tools are not to blame, they're not HELPING the situation
as much as some people seemed to think when the plan was thought out.
Everything you say simply backs up my point that SVN is not the right tool
for the model that seemed to be the goal.
This doesn't seem the ideal time to introduce a new toolchain, so
sticking with SVN, we should maintain 4 branches, 5.2 (security only),
5.3 (bug fixes + security), 5.4 (agreed upon enhancements, no BC
breaks), 6.0 (BC breaks).Four branches? Are you going to help?
I'm not sure why you seem to think this is so difficult. 5.2 would (ideally) have very
little work going on. 5.3 would have somewhat more work, but is also closed to 5.4
so committing to two branches would be somewhat easier. 5.4 wouldn't be released
till all features are complete, then it too moves to a bug fixes+security release and 5.2
gets sunsetted (this is why we need more reliable schedules). If we have releases every
6 months, or every 12 months (for example), it would mean each X.Y would last
12 or 24 months respectively.
Non-agreed upon enhancements, potential BC breaks, all should be done
in feature branches.That's a good theoretical point of view. And I maintain it doesn't work.
It makes it for example very difficult to try out multiple new features
at the same time; to say, to try to figure our whethr your app will
still works. It's also a lot more egocentric thing, instead of
collaboration. You want your stuff exposed to as many developers as
possible (that's also why I am not a fan of DVCS, because it reduces
that exposure drastically).
Actually, it makes things easier, now you can simply do:
svn co http://svn.php.net/r/php/php-src/branches/PHP_5_3 php-5.3
svn diff http://svn.php.net/r/php/php-src/branches/traits http://svn.php.net/r/php/php-src/branches/PHP_5_3 | patch ./php-5.3
svn diff http://svn.php.net/r/php/php-src/branches/derick-typehints http://svn.php.net/r/php/php-src/branches/PHP_5_3 | patch ./php-5.3
It means you get easy contiguous patches from any branch, over any number of commits (solving your issue above)
And, as already pointed out, the collaboration possible through github is far more than we currently enjoy via SVN and ML/IRC today - but again, I don't want to propose git as a solution.
As for talk of 6.0 as opposed to 5.4, nobody is going to risk putting their BC compatible features in a 6.0 release and then take 2 years to be adopted unless we force it (the committing to 6.0, not the adoption), when they can just create 5.5, 5.6, 5.14 and get it out before the stigma of the jump to 6.0 adoption. I don't have a solution for this that doesn't suck (forcing 6.0, or managing two branches, with all the same features, 5.x without the BC breaks, 6.0 with)
- Davey
--001636eef065b3eaf30495ae5198
Content-Type: text/plain; charset=UTF-8Given the current state of trunk, I think 5.4 release process should
not begin tomorrow (alpha or whatever other status). There are
numerous identified issues that we need to fix before even think to
begin with a release. For example:
- type hinting (or strict hinting)
- no consensus
- the RFCs are unclear
- BC break introduced
. classes named as any of the type hint scalar types
do not work anymore
aka class int {}
As Matthew pointed out, I consider this a pretty grave BC break.
Traits may not be ready yet for pre-release
APC support
There are many changes not BC with 5.x, as we allowed them for the
development tree, before 5.4 was even a topicAPC is not yet bundled. Having the opcode bundle can raise issues by
one or another, we should have it in from the very 1st releasepecl/http was planned to be bundled. What's the status?
We also have no plan about what will or will not be 5.4. This looks
familiar, this is exactly how we begun 5.3 and it tooks literally
years to be released. There is also actually no agreement to begin
with 5.4 now.5.4 should be hold off until we solved the listed issues and the
release management RFC gets discussed and hopefully approved.
+1, I agree. We should hold 5.4 off until we have at least a sane
release process and solve the type hinting question.