[PHP-DEV] Re: [PHP-CVS] cvs: php4 /tests/classes interface_class.phpt interface_doubled.phpt interface_implemented.phpt interface_instantiate.phpt interface_member.phpt interface_method.phpt interface_method_final.phpt interface_method_private.phpt interface_must_be_implemented.phpt
On Wed, 12 Mar 2003, Marcus Boerger wrote: helly Tue Mar 11 19:10:00 2003 EDT Added files: /php4/tests/classes interface_class.phpt interface_doubled.phpt interface_implemented.phpt interface_instantiate.phpt interface_member.phpt interface_method.phpt interface_method_final.phpt interface_method_private.phpt interface_must_be_implemented.phpt Log: Added some interface tests I have 2 questions: 1. Do the interface functions have to be explicitly specified as abstract? interface Foo { function bar(); } Because this runs fine for me with no errors. 1. What is the difference between the following: interface Foo { } class Boo extends Foo { } and class Zoo implements Foo { } -Andrei http://www.gravitonic.com/ In this age, which believes that there is a short cut to everything, the greatest lesson to be learned is that the most difficult way is, in the long run, the easiest. -Henry Miller, The Books in My Life -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] Re: [PHP-CVS] cvs: php4 /tests/classes interface_class.phpt interface_doubled.phpt interface_implemented.phpt interface_instantiate.phpt interface_member.phpt interface_method.phpt interface_method_final.phpt interface_method_private.phpt interface_must_be_implemented.phpt
On Wed, 12 Mar 2003, Marcus Börger wrote: a class can only extend ONE class/interface but it can implement multiple interfaces. If you ask me i would not allow extending interfaces at all. That's what I was thinking too. -Andrei http://www.gravitonic.com/ For every complex problem, there is a solution that is simple, neat, and wrong. -- H. L. Mencken -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] Re: [PHP-CVS] cvs: php4 /tests/classes interface_class.phpt interface_doubled.phpt interface_implemented.phpt interface_instantiate.phpt interface_member.phpt interface_method.phpt interface_method_final.phpt interface_method_private.phpt interface_must_be_implemented.phpt
On Wed, 12 Mar 2003, Sebastian Bergmann wrote: I have seen extended interfaces quite often in the Java world. IIRC, the following code currently runs without problems and it should stay that way, if it does not harm us in any way: ?php interface Foo {} interface Bar extends Foo {} class FooBar implements Bar {} ? I wasn't talking about interfaces extending interfaces - that is perfectly fine. I was saying that class blah extends interface and class blah implements interface is confusing. -Andrei http://www.gravitonic.com/ When we eliminate the impossible, whatever remains, however improbable, must be true. -- Sherlock Holmes -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] Moderate PHP-DEV
On Wed, 12 Mar 2003, Sterling Hughes wrote: It doesn't. They are free to send the mail to whomever they like, even put up a website with their ideas. They are not censured, they are restricted. In what country can you walk onto the floor of the congress (parliament) without sponsorship? Entirely open infrastructures are great when the community is small/growing, but when the community is this size, we need to be pragmatic and not lose the forest for the trees. Amen. +1. -Andrei http://www.gravitonic.com/ I still find each day too short for all the thoughts I want to think, all the walks I want to take, all the books I want to read, and all the friends I want to see. -John Burroughs -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] Re: [PHP-CVS] cvs: php4 /tests/classes interface_class.phpt interface_doubled.phpt interface_implemented.phpt interface_instantiate.phpt interface_member.phpt interface_method.phpt interface_method_final.phpt interface_method_private.phpt interface_must_be_implemented.phpt
On Wed, 12 Mar 2003, Marcus Börger wrote: interface JAZ {} interface FOO {} interface BAR extends FOO {} class foo implements FOO {} This works even though i do not like extends FOO. Why? Both C# and Java (AFAIR) allow interfaces to extend other interfaces. This doesn't - i hope - trying - ?php interface a {} interface b {} class c implements (a,b) {} /usr/src/php4-HEAD/-(4) : Parse error - parse error, unexpected '(', expecting T_STRING or T_PAAMAYIM_NEKUDOTAYIM or T_NAMESPACE_NAME You have to do class foobar extends foo implements BAR,JAZ {} I think we should disallow classes extending interfaces. Only 'implements' should be supported. -Andrei http://www.gravitonic.com/ We all have photographic memories, it's just that some of us don't have any film. -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] Scope and namespace
Seeing as how we now have only one-level deep namespaces and classes (which is another topic), does it make sense to have both 'scope' and 'ns' fields in zend_op_array structure? I would think they can be merged into one. I still want to hear from Zeev about lack of nested classes/namespaces.. maybe in Montreal. :) -Andrei http://www.gravitonic.com/ -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] Segfault
With the latest ZE2: ?php class Bar { function boo() { ::zoo(); } } Bar::boo(); ? -Andrei http://www.gravitonic.com/ The day Microsoft makes something that doesn't suck, is probably the day Microsoft starts making vacuum cleaners. - Ernst Jan Plugge -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] iterating objects with interfaces
Very cool. :) On Sun, 09 Mar 2003, Marcus Börger wrote: Hi, i've just done the first step for a new extension which shall make use of interfaces newly implemented in ZE2. currently the extension implements the namespace spl and the interfaces spl_foreach, spl_forward and spl_key. A class that implements these can be used in a foreach() call. This work without even modifying the engine, i simply hook on the necessary calls. References: The documentation of the interfaces and their usage: http://marcus-boerger.de/php/ext/spl/spl.phps The extension code: http://marcus-boerger.de/php/ext/spl/spl-20030309.tar.bz2 And a testfile to demonstrate it works (beside shutdown): http://marcus-boerger.de/php/ext/spl/tests/foreach.phpt Of corse i am curious about other meanings :-) Otherwise i wouldn`t have posted here, would i? regards marcus -- -- Marcus Börger - Looking for all sorts of freelance work - just ask... Did i help you? Consider a gift: http://www.amazon.de/exec/obidos/wishlist/ho722v0rg1u0 -- -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php -Andrei http://www.gravitonic.com/ * I don't mind going nowhere as long as it's an interesting path. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] Re: [PHP-CVS] cvs: php4 /ext/standard var.c
On Mon, 10 Mar 2003, Sebastian Bergmann wrote: Can I have my get_object_handle() function, too, pretty please? ;-) Besides, IIRC, Andi said back then that the object handle is not unique. But it's still useful. -Andrei http://www.gravitonic.com/ This isn't right. This isn't even wrong. -- Wolfgang Pauli -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] Re: New CLI switches (was [PHP-DEV] Using CLI as a shell)
I don't like this. IMO all those switches make it messy... and I really don't see the advantage of this over -r. PHP isn't supposed to be used like this. If it things get too complicated for -r, write a separate script instead of hacking up the command line. -1 on this. Yeah, I still dont see the real advantages here. Same here. -Andrei http://www.gravitonic.com/ Don't sweat it -- it's not real life. It's only ones and zeroes. -- Gene Spafford -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] Re: zend_API.c
2003-02-02 Harald Radi [EMAIL PROTECTED] * zend_API.c zend_API.h: extend the parameter parsing API by two functions for parsing method parameters with automatic detection if the function was called as such or as a class method (with a valid this ptr). if called as a function the first parameter has to be the object it is operating on, if called as a method this is used. Would have been nice of you to talk with me about this first, since I maintain that code. -Andrei http://www.gravitonic.com/ * Use the source, Luke. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] Re: zend_API.c
On Mon, 03 Feb 2003, Harald Radi wrote: it is not yet used anywhere, so we can still change it however we want. if you think it doesn't belong there we can even remove it, but i already needed that functionality in 3+ extensions and i guess you even will like it for your gtk stuff. i even have to review the thing as i don't think it that it works as expected right now, but i was in a hurry yesterday and made a skeleton for georgs mysqli extension which needed that functions. Continuing from IRC discussion: why do we need extensions that provide both function and object APIs for the same functionality? Are we trying to emulate Perl or something? To me, that is introducing more confusion for the sake of flexibility. I am strongly of the opinion that we should stick to having it one way or the other. -Andrei http://www.gravitonic.com/ Music expresses that which can not be said and on which it is impossible to be silent. -Victor Hugo -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] Re: zend_API.c
On Mon, 03 Feb 2003, Harald Radi wrote: because people prefer either the one or the other way to manipulate things. people not familiar with oo will most likely not not stick with the oo api nor will they be happy if they're forced to use it. on the other hand people writing their scripts entirely oo will propably hate it to mix function calls with method invokations all the time. furthermore functions are supposed to issue warnings and methods are supposed to throw exceptions, two entirely different concepts of error handling where neitherone is preferable. so the question is to give rope or not. Ugh, so following your line of reasoning we should rewrite all extensions to provide both function and OO apis? A better approach would be to have extensions provide only function API and then write a PEAR class to expose them as objects. -Andrei http://www.gravitonic.com/ * My wishlist: http://www.amazon.com/exec/obidos/wishlist/2Q2DIPY7BZLSH/ * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] Re: zend_API.c
On Mon, 03 Feb 2003, Harald Radi wrote: that would be a big step back again for several reasons: -) if done in c code you have one function serving as function and method, thus you have the same order/amount of arguments for the function _and_ the method. I don't see this as an issue - the OO API in PEAR would be a simple wrapper for the function. -) if something changes in the code, it automatically changes for the function and the method, if we had a pear class someone would have to maintain that. See above. -) we finally brought down the cost of handling object beeing virtually the same as for handling resources, so why should we try that hard to make the damn thing slow again ? You are proving my point - the cost of handling objects is minimal, so why not do it in userland? -) the errorhandling issue is not (easily) coverable if we simple wrap the funcitons as pear classes. What errorhandling issue? -Andrei http://www.gravitonic.com/ * Quantum Mechanics: The Dreams of Which Stuff is Made. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] Re: zend_API.c
On Mon, 03 Feb 2003, Harald Radi wrote: because then we have userland - ze2 oo - userland - php function instead of userland - php function. maybe that's negligable, i didn't benchmark it. Hmm, care to explain this? It should just be object call - PHP function call. exception vs. warning. The underlying function can still print warning. No exceptions needed. -Andrei http://www.gravitonic.com/ Music expresses that which can not be said and on which it is impossible to be silent. -Victor Hugo -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] Re: zend_API.c
On Mon, 03 Feb 2003, Harald Radi wrote: if $obj is an overloaded object $obj-method() would directly call the native implementation of method(), if it is a pear object, $obj-method() will result in a userspace method invokation that actually calls the native implementation adding a further level of indirection for each method call. for something like while($mysqli-fetch_row()) {} this could be an issue (though i don't know how much of an issue). It's a difference between doing a call_user_function_ex() and invoking the handler directly. you're missing the point. if i invoke a method i don't expect it to print a warning, i expect it to throw an exception (most likely) and imho this is the prevailing opinion in oo. No, I'm not missing the point. How is this going to be achieved with your approach? You have the same function handling both function and OO API? Is it going to throw exception based on how it's called? -Andrei http://www.gravitonic.com/ The 3 great virtues of a programmer: Laziness, Impatience, and Hubris. --Larry Wall -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] (fwd) Re: realpath(), stat() and dcache on FreeBSD
Rasmus, I've asked one of our FreeBSD gurus to shed some light on the issue you brought with the slow performance of realpath() and stat() calls on that OS. Hope this makes sense. ;) -Andrei -- Andrei Zmievski Mail: [EMAIL PROTECTED] Sr. Front End Software Engineer Web:http://www.fastsearch.com/ Fast Search Transfer Inc Phone: 781-304-2493 93 Worcester Street Fax:781-304-2410 Wellesley MA 02481-9181, USAMain: 781-304-2400 ---BeginMessage--- Hi Tor, I have been told that you are the FreeBSD guru at FAST, so I wanted to check on something with you. A thread came up recently on php-dev mailing list which discussed performance issues with using include() and require() calls in PHP on FreeBSD systems. It seems that FreeBSD does not implement a dcache like Linux does, so doing realpath() and stat() calls is very expensive. Obviously, we use PHP on FreeBSD to run AlltheWeb.com and it affects us as well. FreeBSD has a namei cache, the implementation for 4.7-RELEASE is in /usr/src/sys/kern/vfs_cache.c. namei() calls lookup() which calls VOP_LOOKUP(). For ufs vnodes, that means that vfs_cache_lookup is called. vfs_cache_lookup calls VOP_CACHEDLOOKUP() on cache misses. For ufs vnodes, that means that ufs_lookup() is called. From the namei comment in /usr/src/sys/kern/vfs_lookup.c: * Overall outline of namei: * * copy in name * get starting directory * while (!done !error) { * call lookup to search path. * if symbolic link, massage name in buffer and continue * } From the lookup() comment in /usr/src/sys/kern/vfs_lookup.c: * Overall outline of lookup: * * dirloop: * identify next component of name at ndp-ni_ptr * handle degenerate case where name is null string * if .. and crossing mount points and on mounted filesys, find parent * call VOP_LOOKUP routine for next component name * directory vnode returned in ni_dvp, unlocked unless LOCKPARENT set * component vnode returned in ni_vp (if it exists), locked. * if result vnode is mounted on and crossing mount points, * find mounted on vnode * if more components of name, do next level at dirloop * return the answer in ni_vp, locked if LOCKLEAF set * if LOCKPARENT set, return locked parent in ni_dvp * if WANTPARENT set, return unlocked parent in ni_dvp From the vfs_cache_lookup() comment in /usr/src/sys/kern/vfs_cache.c: * Perform canonical checks and cache lookup and pass on to filesystem * through the vop_cachedlookup only if needed. From the ufs_lookup() comment in /usr/src/sys/ufs/ufs/ufs_lookup.c: * This routine is actually used as VOP_CACHEDLOOKUP method, and the * filesystem employs the generic vfs_cache_lookup() as VOP_LOOKUP * method. * * vfs_cache_lookup() performs the following for us: * check that it is a directory * check accessibility of directory * check for modification attempts on read-only mounts * if name found in cache * if at end of path and deleting or creating * drop it * else * return name. * return VOP_CACHEDLOOKUP() * * Overall outline of ufs_lookup: * * search for name in directory, to found or notfound * notfound: * if creating, return locked directory, leaving info on available slots * else return error * found: * if at end of path and deleting, return information to allow delete * if at end of path and rewriting (RENAME and LOCKPARENT), lock target *inode and return info to allow rewrite * if not at end, add name to cache; if at end and neither creating *nor deleting, add name to cache The command sysctl vfs.cache outputs some statistics about the namei cache and can be used to measure cache hit ratio. The command systat -vmstat provides some semi-real-time statistics. - Tor Egge ---End Message--- -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] Re: [PHP-CVS] cvs: php4 /ext/standard filters.c
On Tue, 07 Jan 2003, Moriyoshi Koizumi wrote: moriyoshi Mon Jan 6 19:03:26 2003 EDT Modified files: /php4/ext/standardfilters.c Log: Implemented string.base64 stream filter @- Implemented string.base64 stream filter. (Moriyoshi) Couldn't you have used parts of ext/standard/base64.c here instead of duplicating code? -Andrei http://www.gravitonic.com/ The church is near but the road is icy; the bar is far away but I will walk carefully. -- Russian proverb -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] Re: [PHP-CVS] cvs: php4 /ext/iconv iconv.c
On Fri, 03 Jan 2003, Moriyoshi Koizumi wrote: moriyoshi Fri Jan 3 00:14:34 2003 EDT Modified files: /php4/ext/iconv iconv.c Log: MFB: fixed shift-out sequence unawareness issue Please, fix stuff in HEAD and *then* merge into the branch. -Andrei http://www.gravitonic.com/ Linux is like living in a teepee. No Windows, no Gates, Apache in house. - Usenet signature -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] ChangeLog
I'll check on this. On Wed, 01 Jan 2003, Wez Furlong wrote: Is there some magic that needs to be done to rotate the ChangeLog? By this I mean: gzip ChangeLog mv ChangeLog.gz ChangeLog2002.gz touch ChangeLog cvs add -kb ChangeLog2002.gz cvs ci -m rotate changelog ChangeLog ChangeLog2002.gz It seems the most recent entry in the log is from the 29th December, and I wonder if some script needs to be kicked to update the log. --Wez. -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php -Andrei http://www.gravitonic.com/ What's hard, in hacking as in fiction, is not the writing, it's deciding what to write. -- Neal Stephenson -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] Re: [PHP-CVS] cvs: php4(PHP_4_3) / acinclude.m4 configure.in /main streams.c
On Wed, 01 Jan 2003, Wez Furlong wrote: wez Wed Jan 1 04:55:38 2003 EDT Modified files: (Branch: PHP_4_3) /php4 acinclude.m4 configure.in /php4/mainstreams.c Log: Workaround a bug in glibc 2.2.9x and later that causes it not to seek to EOF for stdio streams opened with a mode of a+. Wez, How about implementing those persistent STDIO streams for 4.3.1? -Andrei http://www.gravitonic.com/ * Think digital, act analog. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] Happy New Year!
This has been a great year for our community. We have attracted wonderful new developers, such as Edin, Ilia, Wez, and others, significantly improved our little language, and knocked back a few beers at various conferences. In this coming year, I wish us all to realize some of our dreams, make new friends, learn and share our knowledge, seize the day, and have much fun altogether. Have a Happy New Year! I'm heading out tonight to celebrate. Until 2003! -Andrei http://www.gravitonic.com/ What's hard, in hacking as in fiction, is not the writing, it's deciding what to write. -- Neal Stephenson -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] option to start in PHP mode
On Sat, 28 Dec 2002, Andi Gutmans wrote: Why don't we have the ? problem? You can also use ? in eval()'s. Anyway, Rasmus mentioned that a switch already exists although I don't think it's such a great idea due to the previously mentioned reasons. I think all PHP code should be consistent. Well, -r switch requires the PHP code as an argument. It doesn't read a file. -Andrei http://www.gravitonic.com/ The human brain is a wonderful thing. It starts working the moment you are born, and never stops until you stand up to speak in public. -- Sir George Jessel -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] Re: [PHP-CVS] Merging into PHP_4_3
On Mon, 30 Dec 2002, Edin Kadribasic wrote: It would be nice that bug fixes that are being merged into PHP_4_3 branch are documented in its NEWS file. In that way we can realease a new version rather quickly. I concur. Please remember to update NEWS on the branch. -Andrei http://www.gravitonic.com/ Perl - the only language that looks the same before and after RSA encryption. -Keith Bostic -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] PHP 4.3.0 released
The PHP developers are pleased to announce the immediate availability of PHP 4.3.0, the latest and greatest version of this extremely popular and widely used scripting language. This release contains a multitude of changes, bug fixes and improvements over the previous one, PHP 4.2.3. It further elevates PHP's standing as a serious contender in the general purpose scripting language arena. The highlights of this release are listed below: Command line interface This version finalizes the separate command line interface (CLI) that can be used for developing shell and desktop applications (with PHP-GTK). The CLI is always built, but installed automatically only if CGI version is disabled via --disable-cgi switch during configuration. Alternatively, one can use make install-cli target. On Windows CLI can be found in cli folder. CLI has a number of differences compared to other server APIs. More information can be found here: * PHP Manual: Using PHP from the command line http://www.php.net/manual/en/features.commandline.php Streams A very important under the hood feature is the streams API. It introduces a unified approach to the handling of files, pipes, sockets, and other I/O resources in the PHP core and extensions. What this means for users is that any I/O function that works with streams (and that is almost all of them) can access built-in protocols, such as HTTP/HTTPS and FTP/FTPS, as well as custom protocols registered from PHP scripts. For more information please see: * List of Supported Protocols/Wrappers http://www.php.net/manual/en/wrappers.php * Streams API http://www.php.net/manual/en/streams.php New build system This iteration of the build system, among other things, replaces the slow recursive make with one global Makefile and eases the integration of proper dependencies. Automake is only needed for its aclocal tool. The build process is now more portable and less resource-consuming. PHP 4.3.0 has many improvements and enhancements: * GD library is now bundled with the distribution and it is recommended to always use the bundled version * vpopmail and cybermut extensions are moved to PECL * several deprecated extensions (aspell, ccvs, cybercash, icap) and SAPIs (fastcgi, fhttpd) are removed * speed improvements in a variety of string functions * Apache2 filter is improved, but is still considered experimental (use with PHP in prefork and not worker (thread) model since many extensions based on external libraries are not thread safe) * various security fixes (imap, mysql, mcrypt, file upload, gd, etc) * new SAPI for embedding PHP in other applications (experimental) * much better test suite * significant improvements in dba, gd, pcntl, sybase, and xslt extensions * debug_backtrace() should help with debugging * error messages now contain URLs linking to pages describing the error or function in question * Zend Engine has some fixes and minor performance enhancements * and TONS of other fixes, updates, new functions, etc For the full list of changes in PHP 4.3.0, see the NEWS file (http://www.php.net/ChangeLog-4.php). Thank you to all who coded, tested, and documented this release! -Andrei http://www.gravitonic.com/ It's an emergent property of connected human minds that they create things for one another's pleasure and to conquer their uneasy sense of being too alone. -- Eben Moglen -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] option to start in PHP mode
We've talked about this in the past, but let's bring it up again. It is a bit awkward to use CLI when it requires those ?php and ? tags. We should probably have a command-line option that tells the parser to start in PHP mode instead of HTML/text. Any thoughts on this? -Andrei http://www.gravitonic.com/ * What were the first 15 billion years of the universe like for you? * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] Re: [PHP-CVS] cvs: php4(PHP_4_3) /ext/standard array.c
Was this fix entirely necessary? It didn't seems like a showstopper bug. On Wed, 25 Dec 2002, Moriyoshi Koizumi wrote: moriyoshi Wed Dec 25 15:00:14 2002 EDT Modified files: (Branch: PHP_4_3) /php4/ext/standardarray.c Log: Fixed bug #21182 Index: php4/ext/standard/array.c diff -u php4/ext/standard/array.c:1.199.2.9 php4/ext/standard/array.c:1.199.2.10 --- php4/ext/standard/array.c:1.199.2.9 Fri Dec 6 12:36:25 2002 +++ php4/ext/standard/array.c Wed Dec 25 15:00:12 2002 @@ -21,7 +21,7 @@ +--+ */ -/* $Id: array.c,v 1.199.2.9 2002/12/06 17:36:25 iliaa Exp $ */ +/* $Id: array.c,v 1.199.2.10 2002/12/25 20:00:12 moriyoshi Exp $ */ #include php.h #include php_ini.h @@ -1429,18 +1429,17 @@ array_init(return_value); if (Z_TYPE_PP(zlow)==IS_STRING Z_TYPE_PP(zhigh)==IS_STRING) { - char *low, *high; - convert_to_string_ex(zlow); - convert_to_string_ex(zhigh); - low = Z_STRVAL_PP(zlow); - high = Z_STRVAL_PP(zhigh); - if (*low*high) { - for (; *low = *high; (*low)--) { - add_next_index_stringl(return_value, low, 1, 1); + unsigned char low, high; + low = *((unsigned char *)Z_STRVAL_PP(zlow)); + high = *((unsigned char *)Z_STRVAL_PP(zhigh)); + + if (lowhigh) { + for (; low = high; (low)--) { + add_next_index_stringl(return_value, (char *)low, 1, 1); } } else { - for (; *low = *high; (*low)++) { - add_next_index_stringl(return_value, low, 1, 1); + for (; low = high; (low)++) { + add_next_index_stringl(return_value, (char *)low, 1, 1); } } } else { -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php -Andrei http://www.gravitonic.com/ C combines all the power of assembly language with all the ease of use of assembly language -- trad -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] Re: [PHP-CVS] cvs: php4(PHP_4_3) /ext/standard array.c
On Fri, 27 Dec 2002, Moriyoshi Koizumi wrote: Andrei Zmievski wrote: Was this fix entirely necessary? It didn't seems like a showstopper bug. First, I apologize I didn't ask you for permission before committing my patch. Actually it might not be a showstopper, but I believe this should be fixed before the release, because it's a bug that causes segfault in usual usage. I thought segfault happened only on HEAD, not on the branch? -Andrei http://www.gravitonic.com/ * Power corrupts. Atomic power corrupts atomically. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] Re: [PHP-CVS] cvs: php4(PHP_4_3) /ext/standard array.c
That's fine. On Fri, 27 Dec 2002, Moriyoshi Koizumi wrote: Andrei Zmievski [EMAIL PROTECTED] wrote: On Fri, 27 Dec 2002, Moriyoshi Koizumi wrote: Andrei Zmievski wrote: Was this fix entirely necessary? It didn't seems like a showstopper bug. First, I apologize I didn't ask you for permission before committing my patch. Actually it might not be a showstopper, but I believe this should be fixed before the release, because it's a bug that causes segfault in usual usage. I thought segfault happened only on HEAD, not on the branch? Sorry, it was just my mistake of fact. So is the fix really desirable? Moriyoshi -Andrei http://www.gravitonic.com/ * Power corrupts. Atomic power corrupts atomically. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php -Andrei http://www.gravitonic.com/ Freedom comes when you learn to let go. Creation comes when you learn to say no. -madonna -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] Preparing 4.3.0
I plan to update the version in appropriate files and the date in NEWS and tag the tree tonight. After that, Edin and Phil should make their Windows magic work and create the Win32 .zip and installer files. I will set the release date for Dec 28. Please do not commit anything to the tree after it's been tagged! -Andrei http://www.gravitonic.com/ -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] Re: php4.3.rc4 - things that wont compile under IRIX
On Fri, 27 Dec 2002, Joerg Behrens wrote: We have some buggy Code left in the current rc. 1. We have some bogus warnings at the end of the configure /config.status[2063]: 6: bad file unit number ./config.status[2064]: 6: bad file unit number Not sure about this one. 2.Ext/exif cc-1133 cc: ERROR File = /usr2/MIPS/php-4.3.0RC4/ext/exif/exif.c, Line = 1623 Expression must be a modifiable lvalue. Sascha have already fix this... but looks like it is not merged to the rc4 It was merged after RC4. 2 Ext/mime_magic cc-1133 cc: ERROR File = /usr2/MIPS/php-4.3.0RC4/ext/mime_magic/mime_magic.c, Line = 361 Expression must be a modifiable lvalue. Stefan Esser lay hand on this but Andy didnt accepted his fix It's merged in already. 3. Ext/mysql cc-1133 cc: ERROR File = /usr2/MIPS/php-4.3.0RC4/ext/mysql/libmysql/my_tempnam.c, Line = 99 Expression must be a modifiable lvalue. ((char **)environ)=(char**)temp_env; /* May give warning */ ^ cc-1133 cc: ERROR File = /usr2/MIPS/php-4.3.0RC4/ext/mysql/libmysql/my_tempnam.c, Line = 105 Expression must be a modifiable lvalue. I'm not touching libmysql.. 4. Ext/standard cc-1020 cc: ERROR File = /usr2/MIPS/php-4.3.0RC4/ext/standard/flock_compat.c, Line = 59 and 61,63,70 Look like there is a header file missing. Derick fixed that in cvs Head but forget to merge ? I merged in the fix. -Andrei http://www.gravitonic.com/ The main reason Santa is so jolly is because he knows where all the bad girls live. -- George Carlin -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] [PATCH] CLI and CGI defaults
On Mon, 23 Dec 2002, Melvyn Sopacua wrote: Hi, the current behavior of cli/cgi defaults, is not really intuitive, allthough correctly mentioned in the NEWS entry. Attached is a very simple patch, that will resolve that issue. Specifically: if you specify --enable-cli and don't specify --enable-cgi, then CLI will be installed and built. The current behavior, is that CGI will be installed and built, which will (and already has) lead to confusion. Isn't the current behavior to always build CLI unless --disable-cli is specified but not install it unless install-cli target is used? -Andrei http://www.gravitonic.com/ * Programming is an art form that fights back. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] RC4: ground rules
On Fri, 20 Dec 2002, Frank Kromann wrote: Hi Andrei, Should I commit a small fix to the Windows projects to avoid having the CGI and CLI produce php.exe to the same directory ? What will the fix do exactly? -Andrei http://www.gravitonic.com/ What's a polar bear? A rectangular bear after a coordinate transform. -- Bill White ([EMAIL PROTECTED]) -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] RC4: ground rules
Moriyoshi, I appreciate your effort here, but it seems that while this approach is more flexible, it is also bound to have more complicated. I have decided to apply Philip's patch for 4.3.0. On Sat, 21 Dec 2002, Moriyoshi Koizumi wrote: Ohh, it seems we have been working on the same patch simultaneously :) Attached is my version of fix for bug #20441, which adopts a new ini entry php_auth_exposure so that administrators can selectively expose auth information to the clients regardless of safe_mode settings. Possible values are: - php_auth_exposure=user Only PHP_AUTH_USER is exposed. - php_auth_exposure=pw Only PHP_AUTH_PW is exposed - php_auth_exposure=user,pw Both PHP_AUTH_USER and PHP_AUTH_PW are exposeed Hope this helps. Moriyoshi Philip Olson [EMAIL PROTECTED] wrote: Attatched is a patch that essentially goes back to 4.2.3 behavior except the external auth will not be available with PHP in safe mode. REMOTE_USER exists regardless. It seems some people also wanted an ini option, I don't know how to do that! :) References for this patch: http://bugs.php.net/20441 http://cvs.php.net/diff.php/php4/sapi/apache/mod_php4.c?r1=1.132r2=1.133 On a related note, I'm curious why PHP_AUTH_TYPE does not exist, only the variable AUTH_TYPE does (for me). PHP_AUTH_TYPE has been documented forever, not sure if it used to exist but various parts of PHP4 source make it seem like it should. Regards, Philip Olson p.s. Thanks to Wez and Steph for teaching me not to fear the source. On Fri, 20 Dec 2002, Andrei Zmievski wrote: Everyone, I have just released 4.3.0RC4. Despite the quote in my signature, I am determined to keep this one the very last final RC of the interminable 4.3.0 development cycle. Towards that end, I will closely monitor the CVS commits and revert any that do not satisfactorily explain what critical or showstopper bug they are fixing. I am aware that PHP_AUTH_USER issue raises certain concerns, but no one apparently could make a patch. If, however, one appears very soon, I may consider it a special one and apply it for 4.3.0. -Andrei http://www.gravitonic.com/ The time from now until the completion of the project tends to become constant. -- Douglas Hartree -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php Index: main/main.c === RCS file: /repository/php4/main/main.c,v retrieving revision 1.520 diff -u -r1.520 main.c --- main/main.c 16 Dec 2002 15:43:52 - 1.520 +++ main/main.c 21 Dec 2002 06:17:30 - @@ -112,6 +112,9 @@ static void php_build_argv(char *s, zval *track_vars_array TSRMLS_DC); +static PHP_INI_MH(OnUpdate_php_auth_exposure); +#define PHP_EXPOSE_AUTH_USER 0x0001 +#define PHP_EXPOSE_AUTH_PW 0x0002 static char *short_track_vars_names[] = { _POST, @@ -275,6 +278,7 @@ STD_PHP_INI_ENTRY(output_handler, NULL, PHP_INI_PERDIR|PHP_INI_SYSTEM, OnUpdateString, output_handler, php_core_globals, core_globals) STD_PHP_INI_BOOLEAN(register_argc_argv, 1, PHP_INI_PERDIR|PHP_INI_SYSTEM, OnUpdateBool, register_argc_argv, php_core_globals, core_globals) STD_PHP_INI_BOOLEAN(register_globals, 0, PHP_INI_PERDIR|PHP_INI_SYSTEM, OnUpdateBool, register_globals, php_core_globals, core_globals) + STD_PHP_INI_ENTRY(php_auth_exposure, none, PHP_INI_SYSTEM, OnUpdate_php_auth_exposure, php_auth_exposure, php_core_globals, core_globals) #if PHP_SAFE_MODE STD_PHP_INI_BOOLEAN(safe_mode,1, PHP_INI_SYSTEM, OnUpdateBool, safe_mode, php_core_globals, core_globals) #else @@ -1191,6 +1195,7 @@ SG(request_info).argv=(char **)NULL; PG(connection_status) = PHP_CONNECTION_NORMAL; PG(during_request_startup) = 0; + PG(php_auth_exposure) = 0; CG(zend_lineno) = 0; @@ -1378,10 +1383,12 @@ } /* PHP Authentication support */ - if (SG(request_info).auth_user) { + if ((PG(php_auth_exposure) PHP_EXPOSE_AUTH_USER) + SG(request_info).auth_user) { php_register_variable(PHP_AUTH_USER, SG(request_info).auth_user, array_ptr TSRMLS_CC); } - if (SG(request_info).auth_password) { + if ((PG(php_auth_exposure) PHP_EXPOSE_AUTH_PW) + SG(request_info).auth_password) { php_register_variable(PHP_AUTH_PW, SG(request_info).auth_password, array_ptr TSRMLS_CC); } } @@ -1820,6 +1827,66 @@ } /* }}} */ #endif
Re: [PHP-DEV] RC4: ground rules
On Sat, 21 Dec 2002, Edin Kadribasic wrote: Andrei I think that we should include this small change in 4.3.0. It cannot possibly affect anything in the negative way and I will make sure that the files are correctly placed in the distribution. Ok, go ahead with this. -Andrei http://www.gravitonic.com/ * Who is Ray and why would we want to selectively trace him? * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] RC4: ground rules
On Sun, 22 Dec 2002, Moriyoshi Koizumi wrote: Andrei Zmievski [EMAIL PROTECTED] wrote: Moriyoshi, I appreciate your effort here, but it seems that while this approach is more flexible, it is also bound to have more complicated. I have decided ^^ Sorry about this grammar infelicity - it's a result of rewriting the message. -Andrei http://www.gravitonic.com/ The church is near but the road is icy; the bar is far away but I will walk carefully. -- Russian proverb -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] CGI and CLI (compromise proposal)
On Fri, 20 Dec 2002, Marcus Börger wrote: What about uniqid(): http://www.zend.com/zend/week/week116.php#Heading5 I would go for disabling when not available and sending an error when calling from cygwin without more entropy parameter set to true. The rest can be fixed for 4.3.1 as it seems to late for a fix in 4.3.0. Fine with me. -Andrei http://www.gravitonic.com/ The day Microsoft makes something that doesn't suck, is probably the day Microsoft starts making vacuum cleaners. - Ernst Jan Plugge -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] Changelog broken?
Ilia has rewritten the old php-rcs2log script in PHP itself and it's working wonderfully. The Changelog generation is back online. On Mon, 11 Nov 2002, Andrei Zmievski wrote: On Mon, 11 Nov 2002, Steve Alberty wrote: Hi, the Changelog file in the php4 cvs tree is unchanged since 7 days. Is the script (cvs2cl ?) broken? It's actually rcs2log script with some modifications. And yes, I think the number of CVS accounts has finally broken this poor script's back. awk dies with the message argument list too long. -Andrei http://www.gravitonic.com/ * I do not envy the guy at [EMAIL PROTECTED] -- me * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php -Andrei http://www.gravitonic.com/ * Think digital, act analog. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] RC4: ground rules
Everyone, I have just released 4.3.0RC4. Despite the quote in my signature, I am determined to keep this one the very last final RC of the interminable 4.3.0 development cycle. Towards that end, I will closely monitor the CVS commits and revert any that do not satisfactorily explain what critical or showstopper bug they are fixing. I am aware that PHP_AUTH_USER issue raises certain concerns, but no one apparently could make a patch. If, however, one appears very soon, I may consider it a special one and apply it for 4.3.0. -Andrei http://www.gravitonic.com/ The time from now until the completion of the project tends to become constant. -- Douglas Hartree -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] Re: [PHP-QA] PHP_AUTH_USER
On Thu, 19 Dec 2002, Phil Driscoll wrote: On Wednesday 18 December 2002 11:46 pm, Edin Kadribasic wrote: I had discussed the issue with Rasmus and Jani some time ago and the concensus reached was only to disable PHP_AUTH_USER when safe mode is active. Nobody got around to do anything about it though. Is this still an acceptable solution? That would satisfy my customer and anyone else in the same situation, but would not satisfy the person who posted the bug in the first place, who I suspect would like finer grained control than that, hence my suggestion of yet another (sorry!) php.ini option. I think Derick had the same suggestion as well. We should probably go ahead and do it and then remove the .ini option in PHP 5. -Andrei http://www.gravitonic.com/ Computer, if you don't open that exit hatch this moment I shall zap straight off to your major data banks and reprogram you with a very large axe. -- Douglas Adams / The Hitchhiker's Guide to the Galaxy -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] -+ [01]
+1 on this.. :) On Thu, 19 Dec 2002, Zeev Suraski wrote: Just to somewhat limit my agreement with that statement, I'd rephrase it so that it's clear that people's opinion does matter. Something along the lines of 'Too many people think that they're in a position to decide about PHP'. Zeev At 02:35 19/12/2002, Sascha Schumann wrote: On 18 Dec 2002, Xavier Spriet wrote: Well it's up to whoever has karma to make that decision. People can give their opinion obviously but shouldn't expect to actually make the decision. That's the problem with the current state of PHP development. Too many people think that their opinion actually matters. - Sascha -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php -Andrei http://www.gravitonic.com/ What's a polar bear? A rectangular bear after a coordinate transform. -- Bill White ([EMAIL PROTECTED]) -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] CGI and CLI (compromise proposal)
This gets my complete support. Let's go ahead with the changes. On Thu, 19 Dec 2002, Edin Kadribasic wrote: After having consulted with Andrei, Derick and others on irc here is a proposal for a compromise: On Unix: 1. Both cgi and cli are built as 'php' in their respective sapi directories (pretty much as it is today except that cgi gets renamed back from php-cgi to just php). 2. Make install will *not* install cli if cgi build was selected (only cgi gets installed). 3. A new install target 'install-cli' is introduced so that make install-cli will overwrite whatever is in $(PREFIX)/bin/php. On Windows: 1. php.exe in the root of distribution is php cgi sapi. 2. New cli directory is included with php.exe (cli) in it. If this is an acceptable compromise I volunteer to do the changes required. -Andrei http://www.gravitonic.com/ * The great thing about standards is that there are so many to choose from. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] CGI and CLI (compromise proposal)
On Thu, 19 Dec 2002, Edin Kadribasic wrote: Here is the patch against PHP_4_3 that implements the Unix side of changes. Go ahead and apply it. We obviously need RC4 now so commit your critical fixes to other areas ASAP, because I want to release the RC tonight or tomorrow. -Andrei http://www.gravitonic.com/ * Unix is user friendly, it is just chooses its users selectively. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] Branch commits (important)
All, I've looked at the list of CVS commits over the last few days and saw that people are committing apparently non-critical things to the branch. Please do not do that! After the final RC only fixes for crash and showstopper bugs should be merged in. Those of you doing it are only slowing down the 4.3.0 release. Some of the commits I'm talking about: http://news.php.net/article.php?group=php.cvsarticle=17258 Comment: Allow compilation of mssql extension on *nix http://news.php.net/article.php?group=php.cvsarticle=17246 Comment: A better, strtok() free implementaion of php_disable_functions(). http://news.php.net/article.php?group=php.cvsarticle=17239 Comment: Add constant that shows whether or not exif uses mbstring. I am sorry, but what the hell? At this point we might as well have RC4. Do you really want that? -Andrei http://www.gravitonic.com/ -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] CGI and CLI
What was the consensus on CGI vs. CLI naming or merging issue? Or was there a consensus at all? I full plan to go ahead with 4.3.0 release before the end of the year, so those interested in doing anything about this issue better get their butts in gear. -Andrei http://www.gravitonic.com/ This isn't right. This isn't even wrong. -- Wolfgang Pauli -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] CGI and CLI
On Wed, 18 Dec 2002, Xavier Spriet wrote: Experimental or not, people use it and have developed a need for it. Many apps out there are based on experimental technology, that's not a reason to break them all... So I strongly suggest that whoever has the necessary knowledge on how to merge CGI and CLI back together come forward and do this. Let's get 4.3.0 out the door and move on to the new great things. -Andrei http://www.gravitonic.com/ The 3 great virtues of a programmer: Laziness, Impatience, and Hubris. --Larry Wall -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] CGI and CLI
On Wed, 18 Dec 2002, Sebastian Nohn wrote: I think a lot more users will be pissed of when renaming php to php-cgi than regarding to the cli-version of php as php-cli or phpsh or anything else. The best solution would be indeed bundling both to one binary. If this delays a 4.3.0-release? I don't give a damn about it! The idea release fast, release often is completely ridiculous in my eyes. Release early, release often?? Have you bothered to check when 4.2.0 came out? Let me refresh your memory: 22 Apr 2002. That's 8 months ago. For a point release. That is what's ridiculous. -Andrei http://www.gravitonic.com/ * On the keyboard of life, always keep one finger on the escape key. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] CGI and CLI
On Wed, 18 Dec 2002, Sascha Schumann wrote: The next point release after 4.2.0 was 4.2.1. There are too many major changes in 4.3 vs. 4.2 to call it a 'point release'. Semantics. Especially, there are still significant backwards compatibility bugs, such as http://bugs.php.net/bug.php?id=20441 Does everyone agree that it's a BC bug? If so, who is going to fix it? -Andrei http://www.gravitonic.com/ * if you hold a unix shell to your ear, do you hear the c? * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] CGI and CLI
On Wed, 18 Dec 2002, Andi Gutmans wrote: I doubt this will happen fast enough. We should just release the way we released 4.2.x, which as far as I know was php for CGI and php-cli for CLI or am I a bit behind things? :) Derick and I hashed it out on IRC and we have a proposal: We should keep 4.2.x behavior with some modifications. CLI and CGI should always be built unless disabled, and the executables should go into sapi/cli/php and sapi/cgi/php, respectively. In addition, 'install' target should be modified to detect whether the user is trying to install either one of these SAPIs, output a warning message regarding the potential naming problem, and stop. Let the user install CLI and CGI manually, basically. I really hope we can come to an agreement on this. -Andrei http://www.gravitonic.com/ * Quantum Mechanics: The Dreams of Which Stuff is Made. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] CGI and CLI
On Wed, 18 Dec 2002, Philip Olson wrote: So every tutorial and documentation on this would have to say this right? Ask your sysadmin what the CGI and CLI versions of your PHP are called, they could be anything as there is no standard. For the purpose of this (tutorial|documentation), we'll call CLI php-cli and CGI php-cgi. Same goes for all cgi scripts, they'll work some places but not others... And various RPM's would have different naming schemes depending on the maintainers preference. The merging of CLI and CGI will still happen, but in 4.3.1. -Andrei http://www.gravitonic.com/ * Marriage is not a word. It's a sentence. Life-long sentence. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] cleaning/building just one extension
With the new build system, is there a way to clean/build just one extension, as opposed to having to do it to the whole tree? Something like make clean ext=wddx, perhaps? -Andrei http://www.gravitonic.com/ I must say I find television very educational. The minute somebody turns it on, I go to the library and read a good book. - Groucho Marx -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] Re: cleaning/building just one extension
On Thu, 12 Dec 2002, Sascha Schumann wrote: We could add a target clean-ext-EXTNAME.. - Sascha What about build-ext-EXTNAME? I ran into this yesterday when I checked out a fresh copy of the tree and wanted to build only wddx module as a shared library. -Andrei http://www.gravitonic.com/ -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] php-cgi vs php-cli naming issue
How about we simply add a configure option to control this? --enable-simple-cli-name would build CGI as php-cgi and CLI as php That way we preserve BC and let those who like CLI named 'php' have that too. -Andrei -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] note about 4.3.0RC3
Tagging RC3 now. -Andrei http://www.gravitonic.com/ The Heineken Uncertainty Principle: You can never be sure how many beers you had last night. -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] PHP 4.3.0RC3
PHP 4.3.0RC3 is out. Please download it from http://qa.php.net/ and test. This is the last release candidate before 4.3.0 final is unleashed. -Andrei http://www.gravitonic.com/ * The future is not what it used to be. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] Re: [PHP-CVS] cvs: php4 /ext/bcmath bcmath.c php_bcmath.h
On Tue, 10 Dec 2002, Andi Gutmans wrote: I think this is one of those exceptions where we should probably not go by our standard and call the function bcpowmod(). It looks a bit funny that all of the BC functions don't have underscores but only one does. It'll probably confuse people more than it helps. What do you guys think? I think it's fine to keep it as bcpowmod(), since we'll probably rename functions in the future anyway. -Andrei http://www.gravitonic.com/ * I don't have a solution but I admire the problem. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] 4.3 when?
On Mon, 09 Dec 2002, Wez Furlong wrote: I have a patch from Melvyn for streams under *BSD systems, and the critical bugs should also be fixed, particularly 20539, 19919 and 19292. [15209] Under Apache, register_shutdown_function() broke between 4.0.x to 4.1.x [19292] random error: open_basedir restriction in effect. File is in wrong directory [19919] segmentation violation in sapi_apache_header_handler, mod_php4.c line 208 [20109] iplanet 6 core dump w/NSAPI load [20190] Random mem corruption: zend_get_executed_filename() mismatch [20467] Buffer overflow returning binary (sybase) [20539] PHP CLI Segmentation Fault [20802] memory limit crash Plus our QA team is not quite what it used to be and Derick is gone for a couple of days. We were planning to roll RC3 with a short test cycle, but it would be good to do that with the abovementioned bugs fixed. If we don't fix them, then we need to bear responsibility for them showing up in 4.3.0. -Andrei http://www.gravitonic.com/ Later in this talk, I intend to define the universe and give three examples. -- Larry Wall -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] RC3 plans
While there are some opinions that RC3 should be put out in a week or so, I disagree. I'd like to release it on Wednesday at the latest, and before then have everyone trying to either fix the critical bugs that are in the system, or at least recategorize them if no one is going to bother to fix them. -Andrei http://www.gravitonic.com/ Then again, E=mc^2 may only be a local phenomenon. -- Einstein -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] php.exe - php-cgi.exe
On Mon, 09 Dec 2002, Andi Gutmans wrote: ducking Maybe phpsh would be a good idea for the name of the CLI? It wouldn't confuse ppl as much as php-cli /ducking I'm really not that sure it makes sense to rename the CGI from php to php-cgi after such a long time. It's not as if we're breaking BC for the sake of adding very much needed functionality. Anyway, I'm -0 for the change and +0 to find a more suitable name for the CLI :) I am actually in favor of CLI executable being 'php'. If it's a problem on Windows, then we could possibly compromise and have the CGI version being called php.exe, but I think that it's important we keep it 'php' on UNIX. -Andrei http://www.gravitonic.com/ * Change is the only constant. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] PHP 4.3.0RC2 released
The second release candidate of the inimitably fabulous PHP version 4.3.0 is out. It can be downloaded from http://qa.php.net. Give it a good testing! -Andrei -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] [PATCH] Redirect on Error
On Tue, 26 Nov 2002, Edin Kadribasic wrote: On Tue, 26 Nov 2002, Maxim Maletsky wrote: I rather propose. And, it seems to interest many on the list. Don't forget that there seem to be many who strongly opose your suggestion. Myself included. -Andrei http://www.gravitonic.com/ * The best source is the source code. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] RC2
I think RC1 is going quite well (with the exception of bcmath issues, I believe?), so I propose putting out RC2 next week. If that one does just swimmingly, we should be ready for the release. -Andrei http://www.gravitonic.com/ For every complex problem, there is a solution that is simple, neat, and wrong. -- H. L. Mencken -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] RFC: ZE2 and abstract
On Wed, 20 Nov 2002, Marcus Börger wrote: Added final now: http://marcus-boerger.de/php/ext/ze2 So we have: abstract [static] function '(' parameters ')' ';' [ final ] [ static ] function '(' parameters ')' '{' code '}' There is a check that you cannot overwrite a final function of cause and i also added a check that you cannot redeclare a function abstract. See test files on this. Please, please, please, please... please! Use the word 'method', not 'function', when referring to class methods. It will help avoid further confusion. Please. -Andrei http://www.gravitonic.com/ In My Egotistical Opinion, most people's C programs should be indented six feet downward and covered with dirt. -- Blair P. Houghton -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] is_callable Bug 20216
Since I wrote the function, I can provide some insight. On Mon, 18 Nov 2002, Leon Atkinson wrote: This function wraps zend_is_callable. The first argument is the name of a function or method. Class and object methods are specified by passing an array with two elements: class or object and method name. Right. The second argument seems to be for checking syntax only, but I can't figure out how to make is_callable return FALSE when the second argument is TRUE. Try this: var_dump(is_callable(array(1,2), true)); The third argument receives the callable name. In the example below it's a::b. Note, however, that despite the implication that a::b() is a callable static method, this is not the case. ? class a { var $c; function b() { return($this-c); } } $d = new a; if(is_callable(array($d, 'b'), FALSE, $name)) { print($name); } ? Well, $name is just supposed to indicate which class/method you were checking. It doesn't tell you whether the method is static or not, because in PHP 4 it doesn't make sense. -Andrei http://www.gravitonic.com/ Politics is for the moment, an equation is for eternity. -- Albert Einstein -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] is_callable Bug 20216
On Mon, 18 Nov 2002, Leon Atkinson wrote: Hmm...OK. Yes, that does make is_callable return false. Can you explain the logic behind this? I tried lots of other values and got TRUE. For example: var_dump(is_callable(array('$$$','%^'), true)); var_dump(is_callable('%^', true)); These aren't valid identifiers, but the function is (apparently) reporting that syntax is OK. The syntax check is only intended to reject arrays that don't have a valid structure to be used as callbacks. The valid ones are supposed to have only 2 entries, the first of which is an object or a string, and the second one is a string. The function doesn't do any checking of the contents of the array. Ah, yeah, I guess there isn't a way to tell if a method is callable statically or not unless you check that it contains no references to instance properties. So, would it be fair to say this function is intended for debugging the core? And, if you have the time, could you describe the situation where this function is useful? It is useful when you have a function that takes a callback as a parameter and it needs to check whether that callback is, in fact, callable. -Andrei http://www.gravitonic.com/ * We are not a clone. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] XP?
Who says Xtreme Programming can't work over long distances.. :) iliaa Sat Nov 16 19:07:33 2002 EDT Modified files: (Branch: PHP_4_3) /php4/main streams.c Log: MFH wez Sat Nov 16 19:08:42 2002 EDT Modified files: (Branch: PHP_4_3) /php4/main streams.c Log: Remove debugging printf iliaa Sat Nov 16 19:11:20 2002 EDT Modified files: (Branch: PHP_4_3) /php4/main streams.c Log: Fix compile warning. wez Sat Nov 16 20:06:32 2002 EDT Modified files: (Branch: PHP_4_3) /php4/main streams.c Log: Avoid a potential double fclose(). -Andrei http://www.gravitonic.com/ Any sufficiently advanced bug is indistinguishable from a feature. -- Rich Kulawiec -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] Re: Aggregation ZE2 fix
On Sat, 16 Nov 2002, Marcus Börger wrote: With the following patch aggregation works for me with ZE1 and ZE2, php 4.3.0 and php4.4-dev. If noone objects i will commit this. Aggregation will be implemented at the engine level in ZE2. Don't commit this patch. -Andrei http://www.gravitonic.com/ -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] mbstring and 4.3.0
On Fri, 15 Nov 2002, Andi Gutmans wrote: It's not that I think enabling it is such a bad idea but as we're going for PHP 5 right after PHP 4.3 anyway I don't think it's too bad to wait for that. I'm sure lots of people will test PHP 5 RC's so there'll be lots of testing (long sentence but I hope it can be understood :) I think we will still have 4.4.0 before PHP 5. The timeframe between 4.3.0 and 5 is just too large not to have another release. -Andrei http://www.gravitonic.com/ Everything should be made as simple as possible, but not simpler. -- Albert Einstein -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] 4.2.3 mbstring patch?
On Thu, 14 Nov 2002, lowbwtom wrote: Will there be a patch to fix the mbstring bug in 4.2.3? Any idea when? (specifically to fix the missing 4 characters in array posts) Some of us have been totally screwed by this bug - since our isp's have updated to 4.2.3 and left everyone's sites totally broken. They refuse to drop back to old version and are leaving everyone up the creek until php 4.3.0 is in final release or a 4.2.3 patch is released. For the love of PHP, give me relief! While it's not directly on topic of this post, this is *exactly* why mbstring will not be enabled by default in 4.3.0. -Andrei http://www.gravitonic.com/ * Quantum Mechanics: The Dreams of Which Stuff is Made. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] ext/overload API
On Thu, 14 Nov 2002, Timm Friebe wrote: Hello, Andrei, as I can see, you're the author of ext/overload. As suggested earlier, I've added a second parameter to sybase_fetch_object() which allows users to pass an object to be filled with the results from the fetched row (e.g. $article= sybase_fetch_object($q, new Article()); or $article= sybase_fetch_object($q, 'Article')). Well, if Article is an overloaded class, they'd probably expect that their __set*-handlers are called when the object's properties are set. Of course, object_and_properties_init() does not do this. But indeed, it'd be quite nice if they would. Thus, one would need the C functions call_get_handler and call_set_handler to be declared not static but PHPAPI (is this right?) and an additional method to test if a zend_class_entry is overloaded. * http://sitten-polizei.de/php/overload.patch would make it work. Maybe macros would be a better way? * http://sitten-polizei.de/php/sybase_ct.patch shows a sample usage (btw, is there any documentation on TSRM?) maybe _set_object_prop should be moved to ext/overload as a utiltiy function? I came up with this since I use sybase resultsets within SOAP, clearly needing to distinguish strings from datetime types, int, floats and so on. My first idea was to introduce a function sybase_bind_datatype(SYBASE_DATETIME, 'Date') but why not make use of an already existing and powerful extension? Because this extension is going away in ZE2? -Andrei http://www.gravitonic.com/ * We reason deeply, when we forcibly feel. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] prototypes for getters and setters.
On Wed, 13 Nov 2002, John Coggeshall wrote: I understand what your saying, however I guess I see the tradeoff of creating a new reserved word to a (IMHO of course) kinda messy new syntax a good one. Besides, having an absolute standard for get/set would be benefital to all developers.. Knowing that setting $foo is always setfoo() (or set_foo(), makes no difference) would be nice. We do have an absolute standard: __get() and __set(). -Andrei http://www.gravitonic.com/ * I wish life had an UNDO function. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] mbstring and 4.3.0
On Wed, 13 Nov 2002, Melvyn Sopacua wrote: FWIW: * If this is ever going to make core as a part of PHP's i18n efforts, you are going to have to deal with the 'unseen' at some point. You are not going to identify them, by testing it within a select group. For this reason, the userbase is always the guinnea-pig with every new feature in a release. Explain to me please why --enable-mbstring is not enough. The userbase is not going to be a guinea-pig since only a subset of users will have a need for mbsting and those that do can use the switch. Those that don't will not even notice that it's not enabled. -Andrei http://www.gravitonic.com/ I must say I find television very educational. The minute somebody turns it on, I go to the library and read a good book. - Groucho Marx -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] 4.3 Branched
I made a branch for 4.3 and tagged it PHP_4_3. Please remember to sync your fixes into the branch, if they are important and relevant, of course. -Andrei http://www.gravitonic.com/ * It said 'Winmodem' on the box, but I still feel like I lost. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] RAW POST DATA
On Tue, 12 Nov 2002, Hartmut Holzgraefe wrote: the current problem with HTTP_RAW_POST_DATA is just that i never really figured out when it should be populated depending on HTTP method, Content type and always_populate_raw_post_data, this is going to be fixed today Okay. besides the HTTP_RAW_POST_DATA issue what i did was a cleanup of the HTTP content handler code in SAPI.c that fixes problems with PHP not comsuming content data although at least the apache 1.x API relies on it (for keepalive connections) That needs to be tested pretty well, I imagine? php://input works for the apache sapi, but not with CGI i had no time yet to realy dig into it but i'm pretty sure it is a problem within the CGI sapi code and not in the content handler ... i definetly want this feature in 4.3 as with plain 4.2.x it is impossible to handle PUT and WebDAV requests and even with the allow_webdav_methods patch and HTTP_RAW_POST_DATA extended to PUT and WebDAV specific methods you get back the same memory consumption problems as with file uploads before 4.2.0 This php://input thing is what concerns me. How much time do you need to finish and test it? We don't want to delay RC1 too much. -Andrei http://www.gravitonic.com/ Someone clearly thinks that C is a garbage collected language -- Morten Welinder -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] [RFC] gd, imagefilter
On Tue, 12 Nov 2002, Pierre-Alain Joye wrote: Hello, That's it :) I did not find a sample privat function, now I do. For the ML archive, here is how to do it: On Tue, 12 Nov 2002 17:48:08 +0100 (CET) Derick Rethans [EMAIL PROTECTED] wrote: typedef image_filter { void (function*)(INTERNAL_FUNCTION_PARAMETERS); } image_filter; has to be: typedef void (*image_filter)(INTERNAL_FUNCTION_PARAMETERS); We do not need a bidemensional array, except if we want to add the arg number to avoid a useless call. image_filter filters[] = {_php_image_filter_none, _php_image_filter_negate, _php_image_filter_blur }; the _php_ prefix seems to be the std for privat function, confirmation ? Use just php_. _php_ is deprecated. -Andrei http://www.gravitonic.com/ * Reality isn't all it's cracked up to be. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] mbstring and 4.3.0
On Tue, 12 Nov 2002, Ilia A. wrote: mbstring has many dedicated developers whom are doing excellent maintaining and upgrading this extension. Which at the moment makes mbstring very much a work in progress, there is hardly a day without at least one or two CVS commits to it. Since this is a work in progress, it is simply not safe to enable it by default if we want to claim any sort of stability for 4.3.0 release. There is a chance it'll work out, but IMHO there is even a greater chance it will cause problems like it did in 4.2.3 with mangling of POST requests, 4.3.0 will have more then enough new stuff as is. Perhaps by the next major release, mbstring will be a lot more mature and thoroughly tested in production enviroment. At that point we can discuss this issue again and consider whether this extension has merit for most users and based on that decide whether or not to enable it by default. I very much agree and am extremly reluctant to have mbstring enabled by default, even though it is a very promising extension. -Andrei http://www.gravitonic.com/ When I get a little money, I buy books; and if any is left I buy food and clothes. -- Erasmus -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] Changelog broken?
On Mon, 11 Nov 2002, Steve Alberty wrote: Hi, the Changelog file in the php4 cvs tree is unchanged since 7 days. Is the script (cvs2cl ?) broken? It's actually rcs2log script with some modifications. And yes, I think the number of CVS accounts has finally broken this poor script's back. awk dies with the message argument list too long. -Andrei http://www.gravitonic.com/ * I do not envy the guy at [EMAIL PROTECTED] -- me * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] abstract functions
ZE1 way: class MyClass { function MyClass() { die('MyClass is an abstract class'); } } ZE2 way: class AbstractClassException { } class MyClass { function MyClass() { throw new AbstractClassException(); } } On Sat, 09 Nov 2002, Jens Rehsack wrote: Hi, does PHP4 with the ZE2 supports abstract function like Delphi or C++? That would be very useful for class development, cause we can avoid testing if a class is abstract if an abstract class couldn't be instantiated? Syntax could be like in C++ class X { X(){} int y() = 0; } or little bit more like pascal class X { X(){} // PHP function x(); abstract; } or class X { X(){} // PHP abstract function x(); } Greetings, Jens -- L i W W W i Jens Rehsack LW W W L i W W W W i nnnLiWing IT-Services L iW W W Wi n n g g i W W i n n g gFriesenstraße 2 06112 Halle g g g Tel.: +49 - 3 45 - 5 17 05 91ggg e-Mail: [EMAIL PROTECTED] Fax: +49 - 3 45 - 5 17 05 92http://www.liwing.de/ -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php -Andrei http://www.gravitonic.com/ * A feature is a bug with seniority. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] turning strlen() into an opcode
I've made a small patch that turns strlen() into a statement executed by the engine instead of a function. The reasoning is that something that integral should probably be in the engine. I haven't done hard benchmarking but it seems to improve performance of that particular piece of code by about 25%. Feedback is welcome. -Andrei http://www.gravitonic.com/ * UNIX, isn't that some archaic form of DOS? - our job applicant * Index: zend_builtin_functions.c === RCS file: /repository/Zend/zend_builtin_functions.c,v retrieving revision 1.124 diff -u -2 -b -w -B -r1.124 zend_builtin_functions.c --- zend_builtin_functions.c21 Oct 2002 08:42:32 - 1.124 +++ zend_builtin_functions.c8 Nov 2002 21:15:20 - -30,5 +30,4 static ZEND_FUNCTION(func_get_arg); static ZEND_FUNCTION(func_get_args); -static ZEND_NAMED_FUNCTION(zend_if_strlen); static ZEND_FUNCTION(strcmp); static ZEND_FUNCTION(strncmp); -80,5 +79,4 ZEND_FE(func_get_arg, NULL) ZEND_FE(func_get_args, NULL) - { strlen, zend_if_strlen, NULL }, ZEND_FE(strcmp, NULL) ZEND_FE(strncmp,NULL) -244,19 +242,4 zend_hash_next_index_insert(return_value-value.ht, element, sizeof(zval *), NULL); } -} -/* }}} */ - - -/* {{{ proto int strlen(string str) - Get string length */ -ZEND_NAMED_FUNCTION(zend_if_strlen) -{ - zval **str; - - if (ZEND_NUM_ARGS() != 1 || zend_get_parameters_ex(1, str) == FAILURE) { - ZEND_WRONG_PARAM_COUNT(); - } - convert_to_string_ex(str); - RETVAL_LONG((*str)-value.str.len); } /* }}} */ Index: zend_compile.c === RCS file: /repository/Zend/zend_compile.c,v retrieving revision 1.239 diff -u -2 -b -w -B -r1.239 zend_compile.c --- zend_compile.c 3 Nov 2002 15:16:44 - 1.239 +++ zend_compile.c 8 Nov 2002 21:15:21 - -2101,4 +2101,15 } +void zend_do_strlen(znode *result, znode *expr TSRMLS_DC) +{ + zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC); + + opline-opcode = ZEND_STRLEN; + opline-result.op_type = IS_TMP_VAR; + opline-result.u.var = get_temporary_variable(CG(active_op_array)); + opline-op1 = *expr; + SET_UNUSED(opline-op2); + *result = opline-result; +} void zend_do_foreach_begin(znode *foreach_token, znode *array, znode *open_brackets_token, znode *as_token, int variable TSRMLS_DC) Index: zend_compile.h === RCS file: /repository/Zend/zend_compile.h,v retrieving revision 1.144 diff -u -2 -b -w -B -r1.144 zend_compile.h --- zend_compile.h 4 Aug 2002 06:39:44 - 1.144 +++ zend_compile.h 8 Nov 2002 21:15:21 - -326,4 +326,6 void zend_do_isset_or_isempty(int type, znode *result, znode *variable TSRMLS_DC); +void zend_do_strlen(znode *result, znode *expr TSRMLS_DC); + void zend_do_foreach_begin(znode *foreach_token, znode *array, znode *open_brackets_token, znode *as_token, int variable TSRMLS_DC); void zend_do_foreach_cont(znode *value, znode *key, znode *as_token TSRMLS_DC); -522,4 +524,6 #define ZEND_SEND_VAR_NO_REF 106 + +#define ZEND_STRLEN 107 /* end of block */ Index: zend_execute.c === RCS file: /repository/Zend/zend_execute.c,v retrieving revision 1.315 diff -u -2 -b -w -B -r1.315 zend_execute.c --- zend_execute.c 3 Nov 2002 15:16:45 - 1.315 +++ zend_execute.c 8 Nov 2002 21:15:21 - -2360,4 +2360,20 } NEXT_OPCODE(); + case ZEND_STRLEN: { + zval tmp_val, *val = +get_zval_ptr(EX(opline)-op1, EX(Ts), EG(free_op1), BP_VAR_R); + if (val-type != IS_STRING) { + tmp_val = *val; + zval_copy_ctor(tmp_val); + convert_to_string(tmp_val); + val = tmp_val; + } + +EX(Ts)[EX(opline)-result.u.var].tmp_var.value.lval = val-value.str.len; + EX(Ts)[EX(opline)-result.u.var].tmp_var.type += IS_LONG; + if (val == tmp_val) { + zval_dtor(tmp_val); + } + FREE_OP(EX(Ts), EX(opline)-op1, +EG(free_op1)); + } + NEXT_OPCODE();
Re: [PHP-DEV] turning strlen() into an opcode
On Sat, 09 Nov 2002, Andi Gutmans wrote: I am very much against anything like this. Improving strlen()'s performance only will have a negligible performance impact on a real world script. With the same kind of argument you could probably find 10-20 functions which would be faster if you'd make opcodes for them. That's not really what you'd want to do. Also, the patch isn't quite the same functionality wise because strlen in your patch is a reserved word. This isn't my main problem though as it could be solved. Just out of curiousity, what are the problems with making it a reserved word and how could it be solved? If you want to really help improve performance of real-world scripts then try and find a way to improve performance of *all* function calls, i.e., of the extension API; and not by moving functions from the extension API into the core. No big deal. This just came up at the PHP conference in Germany during a chat with George and Thies. -Andrei http://www.gravitonic.com/ * If Bill Gates had a nickel for every time Windows crashed.. Oh, wait.. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] PHP 4.3.0
On Sat, 09 Nov 2002, Andi Gutmans wrote: Hey, What's the schedule for 4.3? It seems to be lingering. That said I'd like to resolve the bison issue before we release it (i.e. make sure that ZE1 isn't bitten by versions 1.28). It's not lingering. We just have to be more careful since it's such a large release. I will make RC1 this weekend. -Andrei http://www.gravitonic.com/ It's an emergent property of connected human minds that they create things for one another's pleasure and to conquer their uneasy sense of being too alone. -- Eben Moglen -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] ext/sybase_ct commit?
On Sat, 02 Nov 2002, Timm Friebe wrote: Round 2 - fight:-) OK, I guess now I'm ready for committing my changes. I got PHP compiled and tested out the new functionality of my ext/sybase_ct changes against CVS from today. Just to make sure I'm getting it all right: This is what I'd put in the commit message - Implemented features/changes requested in Bug #16960 (Timm): . Added a new function sybase_unbuffered_query() . Added a new function sybase_fetch_assoc() . Added sybase_set_message_handler() which enables users to handle server messages in a callback function . Added an ini entry for deadlock retries - retrying deadlocks can cause transaction state to break (sybct.deadlock_retry_count, defaults to -1 forever). . Fixed sybase_fetch_object() not to return object with numeric members . Fixed issues with identical fieldnames . Made sybase_fetch_*() functions return correct datatypes . Made phpinfo() section more verbose . Made sybase_query() error messages more verbose Can you compress this down to a couple of entries? -Andrei http://www.gravitonic.com/ * Ethernet n.: something used to catch the etherbunny. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] mbstring and 4.3.0
At the PHP Conference in Germany several of us have discussed the current state of mbstring and there was a proposal to not have it enabled by default for 4.3.0 release. It seems that the extension attempts to do magic stuff by overloading functions in the executor globals and, as Thies said, that could be dangerous. Also, doesn't it affect run-tests.php script currently? Comments are welcome. -Andrei http://www.gravitonic.com/ * We are not a clone. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] ext/sybase_ct commit?
On Fri, 08 Nov 2002, Timm Friebe wrote: Sorry, I committed it before you wrote your e-mail. I don't quite understand why this should be shorter, though. This sort of was a mega-patch... or is it generally better so write stuff like Added new functions: sybase_unbuffered_query(), sybase_fetch_assoc(), sybase_set_message_handler(), see docs (Timm) I personally think I'd rather like to see a somewhat verbose Changelog. If this isn't what is wanted, I'll try and keep it shorter for future commits. Yes, I think it's better to compress it as in your example. -Andrei http://www.gravitonic.com/ As I was going up the stair, I met a man who wasn't there. He wasn't there again today. I wish, I wish he'd stay away. -Hughes Mearns -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] Re: [PHP-CVS] cvs: php4 /ext/calendar calendar.c jewish.c sdncal.h
On Thu, 31 Oct 2002, Derick Rethans wrote: A crap, yes... fixing README.CVS-RULES right away. Umm... should stay there. Just don't use it until 4.3.0 is out. -Andrei http://www.gravitonic.com/ Claiming Java is easier than C++ is like saying that K2 is shorter than Everest. -- Larry O'Brien (editor, Software Development) -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] Re: [PHP-CVS] cvs: php4 /main streams.c
On Mon, 28 Oct 2002, Derick Rethans wrote: Hey Ilia, Does this prevent opening of things like block and character special files? If yes, then let's change it to explicitly check for directories instead, as there are bound to be people out there that want to open things like /dev/hda1 (for example). You want to open that for writing? :) That's what Real Programmers [TM] do. -Andrei http://www.gravitonic.com/ * If Bill Gates had a nickel for every time Windows crashed.. Oh, wait.. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] PHP 4.3.0pre2
Hello, PHP 4.3.0pre2 is available for download from http://qa.php.net. This second pre-release incorporates a large number of bug fixes since the first one. Still, to help us catch as many bugs as possible, please download it and start testing. -Andrei http://www.gravitonic.com/ * Gun manufacturers don't make bad products, bad parents do. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] from one hash to another, in an extension
On Wed, 23 Oct 2002, Tim Daly, Jr. wrote: I'm trying to figure out the right way to take an entry from one hash table, and put it in another, in C. This is what I first tried: // naive attempt at // $hash2[key] = $hash1[key]; zval **val; zend_hash_find(hash1, key, strlen(key)+1, (void **)val); SEPARATE_ZVAL(val); zval_add_ref(val); zend_hash_update(hash2, key, strlen(key)+1, (void *)val, NULL); That seemed to work. But I started having strange problems in my PHP code, like I would assign the property of an object, and later the same property would be magically null again. This problem goes away when I remove the SEPARATE_ZVAL above. So, I though maybe one of you kind folks might shed some light on this for me. You don't need to SEPARATE_ZVAL() in this case. -- Andrei Zmievski Mail: [EMAIL PROTECTED] Sr. Front End Software Engineer Web:http://www.fast.no/ Fast Search Transfer Inc Phone: 781-304-2493 93 Worcester Street Fax:781-304-2410 Wellesley MA 02481-9181, USAMain: 781-304-2400 -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] from one hash to another, in an extension
On Wed, 23 Oct 2002, Tim Daly, Jr. wrote: You don't need to SEPARATE_ZVAL() in this case. I don't need to, or I need not to? Don't use SEPARATE_ZVAL() when copying zval from one hash to another. -Andrei http://www.gravitonic.com/ We all have photographic memories, it's just that some of us don't have any film. -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] Forked ext/gd by default
I think we should use forked version of gd library by default for 4.3.0. From what I hear it is already the best version of any of them out there and if it saves us any more grief, all the better. Objections? -Andrei http://www.gravitonic.com/ You choose to do the bad things in your life; the good ones come and drag you along with them. - Michael Marshall Smith -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] short_open_tag
They are _not_ the same person! On Thu, 17 Oct 2002, Zeev Suraski wrote: Well, I differ with you on that. I don't think there's anything in the same class as ?xml. Zeev At 18:08 17/10/2002, Andi Gutmans wrote: I don't think we should add special hacks to the scanner. Soon we're going to have a zillion hacks for other XML/SGML/foobar documents. Andi At 12:17 PM 10/16/2002 -0400, Ilia A. wrote: Since the general consensus by the developers is not to remove the short_tags or even disable them. Perhaps we should consider alternate solutions to this problem. Given the buzzword popularity of XML and its slowly growing popularity among website designers (XHTML) this issue is likely to come up in the future yet again. The solution I would like to offer, is a patch that adds special handling for ?xml. Thus preventing the language parser from attempting to parse data inside ?xml as PHP source. Ilia -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php -Andrei http://www.gravitonic.com/ Claiming Java is easier than C++ is like saying that K2 is shorter than Everest. -- Larry O'Brien (editor, Software Development) -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] removing apidoc.txt
I propose we remove apidoc.txt from the tree. It is prety outdated and only promotes confusion. We have a module for API documentation and it is available online as well. -Andrei http://www.gravitonic.com/ Computers are useless. They can only give you answers. --Pablo Picasso -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] short_open_tag
On Thu, 17 Oct 2002, Derick Rethans wrote: On Thu, 17 Oct 2002, Andrei Zmievski wrote: I. Am. So. Tired. Of. Seeing. This. Come. Up. Over. And. Over. Again. The next time someone mentions this on the list, I'm grabbing a LART[1] and heading over to their house. So we're not going to turn it off by default? Come here, dear, I've got a present for you. -Andrei http://www.gravitonic.com/ Don't sweat it -- it's not real life. It's only ones and zeroes. -- Gene Spafford -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] short_open_tag
On Thu, 17 Oct 2002, Yasuo Ohgaki wrote: This is one of the reason why I think we should try to change short_open_tag default. ? is reserved for XML PI (Processing Instruction). There may be many (and/or custom) PI tags and it may become more serious problem in the future. We may even have XML processor that processes PHP code in XML documents in the future. i.e. PHP interpreter is invoked from XML processor. Fortunately, we don't have much problem now. I think we are better to start discourage use of short tag more loudly instead of work around one by one. [about 40,000 other messages on this topic snipped] I. Am. So. Tired. Of. Seeing. This. Come. Up. Over. And. Over. Again. The next time someone mentions this on the list, I'm grabbing a LART[1] and heading over to their house. [1] Luser Attitude Readjustment Tool http://www.tuxedo.org/~esr/jargon/html/entry/LART.html -Andrei http://www.gravitonic.com/ * We are not a clone. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] nl2br is broken in PHP4.3.0pre1
On Wed, 16 Oct 2002, Derick Rethans wrote: That's all up to Andrei, but I would favor for a pre2 during the next week for further testing, but it looks good so far. Yes, we'll make another 'pre' release early next week. Lots of good bugs have been fixed since pre1. -Andrei http://www.gravitonic.com/ Magic 8-ball is much more powerful than we thought. I mean, back in the 70's it was predicting the nature of software in the 90's -- Outlook not so good. -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] [4.3] Current critical bugs
Hi, We have 10 critical bugs in the list currently. If you could please see about fixing at least one of them, we'd be that much closer to a release candidate. Summary: need to use -taso with Netscape LDAP libs URL: http://bugs.php.net/bug.php?id=1298 Summary: Copy of array is affected by reference URL: http://bugs.php.net/bug.php?id=15025 Summary: Under Apache, register_shutdown_function() broke between 4.0.x to 4.1.x URL: http://bugs.php.net/bug.php?id=15209 Summary: max_execution_time affects large uploads URL: http://bugs.php.net/bug.php?id=16880 Summary: random error: open_basedir restriction in effect. File is in wrong directory URL: http://bugs.php.net/bug.php?id=19292 Summary: cosmetic problem on line 308 in var_unserializer.c URL: http://bugs.php.net/bug.php?id=19317 Summary: 4.2.3 and higher include operator mistake URL: http://bugs.php.net/bug.php?id=19689 Summary: math.c: In function `_php_math_zvaltobase' [...] `HUGE_VAL' undeclared URL: http://bugs.php.net/bug.php?id=19807 Summary: Wrong $_REQUEST values URL: http://bugs.php.net/bug.php?id=19848 Summary: pear package produces broken .tgz archive URL: http://bugs.php.net/bug.php?id=19906 -Andrei http://www.gravitonic.com/ * Change is the only constant. * -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] [4.3] Current critical bugs
On Tue, 15 Oct 2002, Zeev Suraski wrote: Summary: Copy of array is affected by reference URL: http://bugs.php.net/bug.php?id=15025 If you keep that one on the critical list, then 4.3.0 will remain a philosophical concept :) You said you'd think about fixing it and I've never heard back from you. :) -Andrei http://www.gravitonic.com/ As I was going up the stair, I met a man who wasn't there. He wasn't there again today. I wish, I wish he'd stay away. -Hughes Mearns -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] Re: [4.3] Current critical bugs
Why don't you close it? :) On Tue, 15 Oct 2002, Rasmus Lerdorf wrote: It has been fixed for a while. On Tue, 15 Oct 2002, Peter Neuman wrote: Hi, Andrei Zmievski [EMAIL PROTECTED]: Summary: random error: open_basedir restriction in effect. File is in wrong directory URL: http://bugs.php.net/bug.php?id=19292 Please Fix this, this is a very big Bug.. Thanks Peter Neuman -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php -Andrei http://www.gravitonic.com/ -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-DEV] If programming languages could speak...
On Sat, 12 Oct 2002, Sebastian Bergmann wrote: And PHP answered: All I ever do, day in and day out, is work and work and work. The only time I'm noticed is when I break, and then I'm cursed and kicked, and roundly blasted for being useless. However, when things go well, I never get a kind word. There's no notice of my ease of use, my elegance, my simplicity. Only my failures. - http://weblog.burningbird.net/archives/000581.php That's true for more than just programming languages. :) -Andrei http://www.gravitonic.com/ If you find a job that you love, you'll never work another day in your life. - Mark Jackson -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-DEV] --disable-cgi yet again
Can someone good with build system add --disable-cgi swtich, please? There is a patch in php-dev archives but it doesn't work against the current tree. I hate building cgi every time when I don't need it. -Andrei http://www.gravitonic.com/ Music expresses that which can not be said and on which it is impossible to be silent. -Victor Hugo -- PHP Development Mailing List http://www.php.net/ To unsubscribe, visit: http://www.php.net/unsub.php