o,
naturally curl_exec() will return an empty string.
-- Tim Starling
some edge cases which are not quite right. To really do a
good job, a new case map will be needed. But if we document it as
being for natural language, and set the right expectations, we can fix
the edge cases later.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: https://www.php.net/unsub.php
depends on whether title case or upper case will
be used.
-- Tim Starling
he
latest confirmed PHP version.
Have you considered keeping the support matrix in the registry
database, instead of in pecl.json? Then it can be updated with new
build/test information after release.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: https://www.php.net/unsub.php
on decimal literals. The previous implementation
seems to prioritize rounding of decimal literals over correct rounding
of the actual value.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: https://www.php.net/unsub.php
r
the RFC, I'd like to see a discussion of the specific usability
problems with the intl extension.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: https://www.php.net/unsub.php
I did have Subversion write access, which I got by taking over
maintainership of a PEAR package, but I was never brave enough to push
things to the PHP core.)
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: https://www.php.net/unsub.php
neral case should be possible.
As a matter of style, I think PHP's false returns are fine. I don't
think we need to follow Python into making every error an exception.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: https://www.php.net/unsub.php
ur ecosystem is doing database access in an
__unserialize() magic method. But if someone tried it, I would want
the resulting errors to be properly logged with correct backtraces,
not silently discarded.
I would vote in favour of such a feature being added as a non-default
option, by analogy with
On 25/11/21 11:34 pm, Paul Crovella wrote:
> On Thu, Nov 25, 2021 at 3:14 AM Tim Starling wrote:
>> On 25/11/21 7:57 pm, Côme Chilliet wrote:
>>
>>> To reuse the example from the RFC, if I want to convert a UTF string to
>>> uppercase using Turkish rules and ge
nd because they are intended for natural language processing
>
> I definitely do not agree with this argument and it should be
> removed from the RFC to me as it might add confusion in the future.
Done.
-- Tim Starling
-insensitive comparison you can use Collator. But for display
you just have to do it yourself. For the Turkish Wikipedia and other
Turkic language websites we are currently using str_replace().
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: https://www.php.net/unsub.php
t; SORT_NATURAL flag were also covered by this RFC.
> Is that possible? Would it make sense?
I'm not going to migrate those functions at this time. It's just a
project scope decision.
-- Tim Starling
Voting is now open for my RFC on locale-independent case conversion.
https://wiki.php.net/rfc/strtolower-ascii
Voting will close in two weeks, on 2021-12-09.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: https://www.php.net/unsub.php
OK, thanks for the answer.
My PR is up now, with a fixme comment for the GOTO and SWITCH VMs. I'm
still not sure how to make them work.
https://github.com/php/php-src/pull/7642
-- Tim Starling
On 10/11/21 8:10 pm, Dmitry Stogov wrote:
> I prefer to keep GOTO and SWITCH VMs. It's
edit.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: https://www.php.net/unsub.php
t an opt-in mechanism, although I think 8.2 is too soon
for all core classes to opt in to it. We already have classes that
throw an exception in __set(), so it would be nice to have some
syntactic sugar for that.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: https://www.php.net/unsub.php
/libs/Shellbox/+/refs/changes/48/722548/5/src/Shellbox.php#113>
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: https://www.php.net/unsub.php
ing locale sensitivity for this RFC, I decided to get rid
of escapeshellarg() from MediaWiki. Instead we are doing our own shell
escaping:
https://gerrit.wikimedia.org/r/c/mediawiki/libs/Shellbox/+/722548
I also made MediaWiki use a fixed locale, instead of being configurable.
-- Tim Starling
iB/s, i.e. 50ps per
byte. This was a benchmark written in C -- you would have a lot of
trouble making a PHP tight loop in which SSE2 case conversion is the
slow part.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: https://www.php.net/unsub.php
ocale-sensitive case conversion be provided with
the new names ctype_tolower() and ctype_toupper(). Those names might
seem odd at first glance, but they are wrappers for functions in
ctype.h and work in a very similar way to the rest of the ctype extension.
-- Tim Starling
--
PHP Internals
FFFBF (pass 6 will not run unless
pass 7 is disabled), zend_dfa_optimize_op_array() is called with
call_map=NULL, so ct_eval_func_call() is never entered. I'll leave
this change for someone who is able to test it (or for someone braver
than me).
-- Tim Starling
--
PHP Internals - PHP Runt
d to efficiently convert
> strings to lowercase in a case-insensitive way.
> (zend_string_toupper hasn't been needed yet due to not yet having any use
> cases in php-src's internals, but could be added in such a PR)
I uploaded my work so far and made a PR. It already has
zend_string_t
s and as such is of questionable
> usefulness even in cases where it is not actively harmful.
>
> That said, I do think this change requires an RFC.
Thanks Nikita. I'll write the code and then make an RFC.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: https://www.php.net/unsub.php
But I think I would want to hear from someone who
uses locale-dependence so I can understand what their needs are. I
guess the RFC will sort that out.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: https://www.php.net/unsub.php
On 17/9/21 12:58 pm, Tim Starling wrote:
> I would like to know if a patch to make strtolower and strtoupper do
> plain ASCII case conversion would be accepted, or if an RFC should be
> created.
>
In case it's unclear, I mean that strtolower() should do 8-bit clean
conversion of
locales and locale-dependent
functions, as locales are a fundamentally broken concept." I agree
with that. I think PHP should migrate away from locale dependence.
When PHP was young, it was convenient to use the C library, but we've
progressed well past that point now.
-- Tim Starling
--
P
readline extension, which includes support
for both libedit and the GNU Readline library. You can't use libedit
without the readline extension.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
gt; Does it work as dynamically loaded module?
>
> CLI can still use readline library. This would be about readline PHP
> extension.
>
Actually, readline support in "php -a" is part of the extension. The
extension hooks the SAPI module. See PHP_MINIT_FUNCTION(cli_readline)
in rea
p could
benefit from having closure objects available for logging, especially
if it is possible to get line numbers.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
he policy chosen by PHP. But like I said
in my original post, I really don't mind: thank you for writing
ext/datetime, please continue annoying users to whatever extent you
see fit.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
n other posts to this
list, I don't think we're alone in this.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
dicating his distaste for the state of OS
support for querying of system timezone. That's the reward we give him
for writing lots of date/time code.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
;
$x = new Foo($y);
with this:
function foo() {
static $x, $y;
$y = new Bar();
$x = new Foo($y);
}
foo();
then the bug is still seen. Or indeed, because of the logic error I've
discussed, this also shows an incorrect destructor order:
$y = new Bar();
$x = new Foo($y);
$z =
I guess I'm suffering from some tl;dr here. Here's the short version:
please apply the attached patch to the 5.3 branch. It removes some
code which is broken and unnecessary.
Index: Zend/zend_execute_API.c
===
--- Zend/zend_execute_A
to introduce a pre-RSHUTDOWN hook, allowing modules to
call user code in a relatively sane environment. It's implemented in a
way that is closely analogous to the post-deactivate hook. I had
trouble testing it because trunk was so broken that it wouldn't run
MediaWiki, but the patch appears to
riables as their class declaration. This could probably be
implemented in the default handlers without touching the rest of the code.
The original poster suggested an optimisation pass post-compile, which
obviously doesn't break anything because there's extensions that do it
already.
so. Fair enough really.
>
Rasmus is not the whole community. Sometimes community members have
spare time or the freedom to choose what they work on. I put these ideas
out on this list in the hopes that someone might be inspired by them.
Also it's nice to get feedback in case I decide
not in any of these places:
http://www.php.net/manual/en/reserved.variables.get.php
http://www.php.net/manual/en/reserved.variables.post.php
http://www.php.net/manual/en/reserved.variables.cookies.php
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscrib
bviously you could clean that up with a macro.
For Mr. "everyone has 8GB of memory and tiny little data sets" Lerdorf,
I could point out that reducing the average zend_op size and placing
strings close to other op data will also make execution faster, due to
the improved CPU cache h
r the first time, the oparray could be expanded, with pointers added,
and the result cached. This would reduce memory usage for code which is
never executed. And it would have the added advantage of making APC
easier to implement, since it could just copy the whole unexpanded
oparray with memcpy().
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
Rasmus Lerdorf wrote:
> Tim Starling wrote:
>
>> Given this, sometimes it's easy to forget that PHP is pathologically
>> memory hungry, to the point of making simple tasks difficult or
>> impossible to perform in limited environments. It's the worst languag
e hashtable overheads
* An oparray format with less 64-bit pointers and more smallish integers
That sort of thing.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
and so we have to
keep passing them reference parameters to avoid breaking them in PHP
5.3+. So the window for easy migration to value parameters has closed.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
, we should find some
> solution for that.
>
There seems to have been no progress on this. Is there anything I can do
to help?
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
tried emailing stas but I didn't get a reply.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
Jani Taskinen wrote:
> Tim Starling kirjoitti:
>> The readline extension links both libreadline and libhistory. This is
>> unnecessary, and inspection of the readline example programs since
>> version 2.0 implies that it has always been unnecessary. Both libraries
>> in
nd of a bug tracker admin. It's totally PHP's
fault and there's nothing any distro can do to fix it.
-- Tim Starling
Index: ext/readline/config.m4
===
RCS file: /repository/php-src/ext/readline/config.m4,v
retriev
random number generator with only 16 bits of state.
> Is there any way - to make it better ( or a bit as good as the m_twister is
> ? ) ?
>
No, apparently it's conventional to expose whatever crap PRNG the system
has lying around instead of forcing programmers to use one of the
mately in response to a leap
second change propagated from the stratum 1 time servers.
http://www.eecis.udel.edu/~mills/leap.html
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
018214&w=2
You should see the size of the workaround I had to put in MediaWiki for
this bug.
http://svn.wikimedia.org/viewvc/mediawiki/?view=rev&revision=41379
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
atch the LC_CTYPE environment variable */
setlocale(LC_CTYPE, "");
/* ... usual stuff ... */
/* Restore locale */
setlocale(LC_CTYPE, oldlocale);
efree(oldlocale);
If an application fiddles with LC_CTYPE between calling escapeshellcmd()
and calling shell_exec(), they probably deserve what's co
le to the user, for a programming model intermediate between
multiprocessing and traditional threading.
Python-style multithreading wouldn't be useful for the applications I
have in mind.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
concepts like locks and worker pools.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
Taking over maintainership of File_Ogg (see pear-dev)
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
cott or fork PHP 6. That's why a simple migration path
is important.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
nity informed about upcoming changes. I'm not aware of any better
system.
-- Tim Starling
P.S.: Reply-To header munging is good too.
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
a sarcastic feature request aimed at none other than yourself. Ignored
bug reports are better than ones shot on sight by trigger-happy admins.
At least they provide a forum for interested developers to discuss
solutions.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
T
Jani Taskinen wrote:
On Fri, 2007-12-14 at 00:35 +1100, Tim Starling wrote:
If you unsubscribe everyone, we won't be able to read it. I only
subscribed to this list after I got frustrated with the NNTP server
constantly giving connection refused errors. Being subscribed is
apparentl
is list after I got frustrated with the NNTP server
constantly giving connection refused errors. Being subscribed is
apparently the only convenient way to read the list regularly.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
ilar notes but no response as
to why the patches supplied have NOT been committed.
My patch wasn't committed because it didn't supply a backwards
compatibility option and nobody provided one. It should be a fairly
simple task.
-- Tim Starling
--
PHP Internals - PHP Runtime Develop
ot;. Sometimes someone will find the bug
and reproduce it months later, but there is no procedure in place to
have the bug reopened. There aren't even any relevant contact details
available to draw the attention of admins to the bug that needs reopening.
So my suggestion is to allow th
portant
because client systems may apply either NFC or NFD, or just leave the
text unnormalized, leading to spurious instability of text in a version
tracking system like a wiki.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
a MediaWiki context, and I can't
believe that it wouldn't be considered a bug.
-- Tim Starling
http://www.google.com/search?q=%22tim+starling%22
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
RTFM
http://www.php.net/manual/en/tsrm.php
Hmmm OK, maybe someone should WTFM. Well in the meantime, we can
always just read the detailed comments in the source, right?
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
Stefan Esser wrote:
> It is very good that bugs in PHP Applications are bad for PHP's image.
> The majority of servers get hacked because of Remote URL Includes (and
> not by XSS/SQL Injection). The existance of Remote URL Includes is fully
> to blame on the PHP engine and is UNIQUE. After years th
data types, or to parsing for that matter.
A simple example might be:
$count = $db->selectField('page', 'page_title', array('page_id' => $id));
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
array(
'user_id=rev_user',
'rev_page' => $page_id
),
# Query tag, goes into a comment in the SQL
__METHOD__,
# Options
array(
'LIMIT' => 10,
'ORDER BY' => 'rev_timestamp DESC',
)
);
tainly more verbose than the
equivalent in Perl.
Over and over, we see security vulnerabilities introduced due to the
manipulation of text-like protocols using string concatenation and
interpolation. The solution is to handle each and every one as a protocol,
not as a string.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
Just something I noticed while compiling PHP 5.2.0RC6 on Windows. It looks
like it's been like this since the dawn of time, so it's not a release
blocker. The attached patch makes --with-apache-includes and
--with-apache-lib work as documented.
Index: sapi/apache/config.w32
===
ome way for the application to control
magic_quotes_gpc and register_globals, I'd be a happy man.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
think
of is trying to work out the location of PEAR, for those modules that use
it. I suppose we would have to append the default include_path to the
runtime open_basedir, to make sure that PEAR is accessible.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To
the command interpreter. This kind of quoting is
done on Unix, see
tsrm_virtual_cwd.c around line 1016. But it is missing on Windows. It's a bug,
plain and simple.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
endent code:
if (ini_get('windows_shell_quoting')) {
$result = shell_exec($cmd);
} else {
$result = shell_exec(ugly_hack($cmd));
}
The same php.ini option could put escapeshellarg() into a windows-compatible
mode. Maybe I should
submit that patch too, for completeness.
-
r file name
The problem as it manifests itself in PHP was reported as Bug #34671, and
closed as bogus by a
trigger-happy admin. You can't work around it properly in application-level
code, because you can't
specify /s.
-- Tim Starling
Index: TSRM/tsrm_win32.c
===
Zend error - Missing class
information for %R", Z_TYPE(opline->op1.u.constant),
Z_UNIVAL(opline->op1.u.constant));
return NULL;
} else {
ce = *pce;
}
same as do_bind_class()? I'll submit that as a proper patch if you prefer.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
Antony Dovgal wrote:
> What exactly are you trying to fix?
Confusing, misdocumented code. I'm sorry, am I wasting bandwidth? I felt
duty-bound to report it.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
function is
only available on some systems. In MediaWiki we use wfSuppressWarnings() and
wfRestoreWarnings() instead of @, but of course that's slower to type and to
execute, so the temptation is always there to use the evil @.
If suppression of fatals could be switched off, even as an
allations in the world, with about 100 servers running PHP, and there's
a number of custom extensions to check as well. Still, it has to be done
some time.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
we don't see this more often is because the arrays
usually contain less than 64K entries. The size of the arrays depend on user
input.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
kport this simple but important bugfix to PHP 4? Many PHP
users are still using PHP 4, and it's not a very well advertised fact that
it does not properly support arrays with more than 64K entries.
-- Tim Starling
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: htt
81 matches
Mail list logo