Hi! I would say we should choose according to the following criteria:
1. Is anybody likely to use it, and if so, will dropping it impede adoption significantly? 2. Would using it get you into some trouble you can't see easily? 3. How easy it's to detect that something is broken due to BC change? According to this, I think it would be really good to do this: - move mysql and ereg out to PECL (disros can bundle them anyway, and pecl is available for all self builders so adoption won't be hurt much). - drop incompatible $this context calls (probably seriously messed up code) - drop magic quotes stuff (if the code relies on magic quotes, something is seriously wrong). However, I'd consider keeping the get function (always false) to keep code that checks for it running. It wouldn't really hurt anybody I think. - drop dl on FPM - this can lead to some bad crashes - drop preg_replace() eval - it's a security problem waiting to happen - I think it can be problematic for: - # style comments in ini files, it's harder to detect and fix and as far as I can see, # doesn't hurt anybody For the rest, don't really have a strong opinion but agree with Zeev on each function being removed gets upgrade barrier a little higher and adds more people to the list of "can not upgrade, need code working". With ini settings, it's a bit easier since one ini edit fixes everything on the server, no need to check millions of lines of code. However, if we just drop them it would be hard to detect that these no longer work, maybe we should produce an error if those are used? Same for removing options from stream context - in general, if the option stopped working, I think it's better to let the user know. -- Stanislav Malyshev, Software Architect SugarCRM: http://www.sugarcrm.com/ -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php