Comment 6 for bug 1287726

Revision history for this message
Mads Martin Jørgensen (mmj-mmj) wrote :

Problem is that the old php-json package conforms to the json standard, and the new one does not. If someone went through the effort (we do not have the resources, unfortunately) to make json-c conform to the json standard with said flag, then yes - you could simply compile the package with that flag enabled, and all would be good.

The impact of the bug? Json is used all over the place for many years, since it's a very good lightweight format for exchanging data. All of the services provided on a Ubuntu system will potentially break, since it does not conform to the json standard that everyone else does. We had to switch our servers that was running Ubuntu since 2010 to NetBSD to get a modern PHP with proper json handling. Our unit tests broke immediately when we switched to Ubuntu 13.10.

There's a good thread with proper comments about the thing here, which shows several aspects of the thing:

http://www.reddit.com/r/PHP/comments/1ksnzw/php_json_removed_in_php_55/

Do not forget the fact, that the reason it was removed was that it had this line together with its license: "The Software shall be used for Good, not Evil." which makes it 'non-free' software. Have a look at the entire license here, and see for yourself.

http://www.json.org/license.html

It's still a possibility to simply ship the php-json included in php, instead of potentially breaking thousands of server setups that rely on a php-json conforming to the json standard.