Máté Kocsis
e4f2376919
Improve string class constant code generation ( #9577 )
...
Using strlen() will make sure that non-constant values can also be used.
2022-09-26 23:12:34 +02:00
Máté Kocsis
b4ec3e9bc0
Do not generate CONST_CS when registering constants ( #9439 )
2022-08-28 08:27:19 +02:00
Derick Rethans
6ae86c2358
Fixed bug #80022 : Support ISO 8601 years outside 0000-9999 range better
2022-07-22 15:34:57 +01:00
Máté Kocsis
e328c68305
Rename @cname to @cvalue in stubs ( #9043 )
...
@cname currently refers to the constant name in C. However, it is not always a (constant) name, but sometimes a function invocation, so naming it as @cvalue would be more appropriate.
2022-07-19 15:11:42 +02:00
Máté Kocsis
e13d60c039
DatePeriod properties cannot be made readonly ( #9013 )
2022-07-19 10:20:45 +02:00
Pierrick Charron
6fd2b39397
Indent with TAB in .h files generated by gen_stub
2022-06-13 08:55:54 -04:00
Máté Kocsis
debd38f851
Add support for sensitive parameters in stubs
2022-06-04 18:15:05 +02:00
Máté Kocsis
21fe72757c
Declare DatePeriod properties ( #8534 )
2022-05-28 08:43:10 +02:00
Máté Kocsis
14da1cb909
Add support for class constants in stubs ( #7434 )
2022-05-22 22:27:23 +02:00
Máté Kocsis
8b991b4ae4
Add static return type for DateTime*::createFrom*() when possible
...
Fix GH-8544
2022-05-13 12:13:48 +02:00
Máté Kocsis
37b3092820
Fix more specific return type hints for some ext/date methods
...
Ideally, these methods should have been declared with a static return type, so let's add a PHPDoc type hint + a TODO for fixing the issue in the future.
2022-05-13 11:18:26 +02:00
Derick Rethans
d54bcbb43b
Add DatePeriod's __serialize and __unserialize methods ( #8464 )
2022-05-03 22:06:17 +01:00
Derick Rethans
f869a546e7
Add DateInterval's __serialize and __unserialize methods
2022-04-29 10:27:38 +01:00
Derick Rethans
181623f9c0
Add DateTimeZone's __serialize and __unserialize methods
2022-04-29 09:44:27 +01:00
Derick Rethans
8b2ee5388c
Add DateTime/DateTimeImmutable's __serialize and __unserialize methods
2022-04-29 09:44:27 +01:00
Kamil Tekiela
5fbba9b995
getTimestamp does not return false
2021-09-30 09:13:55 +01:00
Máté Kocsis
1bf1481a2a
Specify a few array func info entries ( #7425 )
2021-08-30 14:29:18 +02:00
Máté Kocsis
8e6e9838b0
Add support for generating MAY_BE_ARRAY_OF_REF func info flag ( #7416 )
2021-08-30 13:50:34 +02:00
Máté Kocsis
5e424d2884
Fix a few ext/date return types
2021-08-26 15:26:13 +02:00
Máté Kocsis
2d248c80b9
Generate optimizer func info from stubs for ext/date ( #7403 )
2021-08-25 21:29:46 +02:00
Nikita Popov
4b3615a33f
Deprecate strftime() and gmstrftime()
...
These are deprecated in favor of date()/DateTime::format() (for
locale-indendent formatting) and IntlDateFormatter::format()
(for locale-dependent formatting).
Part of https://wiki.php.net/rfc/deprecations_php_8_1 .
2021-07-14 09:38:43 +02:00
Nikita Popov
5bb83b3778
Deprecate date_sunrise() and date_sunset()
...
date_sunrise() and date_sunset() are deprecated in favor of
date_sun_info().
Part of https://wiki.php.net/rfc/deprecations_php_8_1 .
2021-07-08 15:27:08 +02:00
Máté Kocsis
532c60cb92
Add support for tentative return types of internal methods
...
RFC: https://wiki.php.net/rfc/internal_method_return_types
Closses GH-6971
2021-05-14 15:55:25 +02:00
Máté Kocsis
bf0f6aaf18
Improve class entry generation
...
Related to GH-6701
2021-02-16 13:09:56 +01:00
Máté Kocsis
99b08ac281
Implicitly enable function entry generation when class entry generation is enabled
...
Closes GH-6675
2021-02-09 13:37:24 +01:00
Máté Kocsis
5f21062054
Generate class entries for a few extensions
...
Relates to GH-6644
2021-02-03 09:24:09 +01:00
Nikita Popov
c31f9f7ee4
Sync date_diff and DateTime::diff return type
...
This function/method cannot return false.
2021-01-18 14:39:32 +01:00
Máté Kocsis
46a2c6a8d7
Fix return type of DateTimeImmutable::__set_state()
2020-12-28 14:45:13 +01:00
Christoph M. Becker
269936e680
DateTime*::getOffset() no longer returns false as of PHP 8.0.0
...
Cf. <https://github.com/php/doc-en/pull/282 >.
Closes GH-6539.
2020-12-26 15:13:05 +01:00
Christoph M. Becker
32c6c29d79
Revert "DateTime:: and DateTimeImmutable::getTimestamp() may return false"
...
This reverts commit b67c232189
.
2020-12-20 23:07:02 +01:00
Christoph M. Becker
b67c232189
DateTime:: and DateTimeImmutable::getTimestamp() may return false
2020-12-20 19:32:12 +01:00
Christoph M. Becker
3c68f43251
Fix ext/date stubs
...
Closes GH-6523.
2020-12-20 18:14:20 +01:00
Máté Kocsis
47bbfe1fc0
Require stubs to declare return types for magic methods when possible
...
Closes GH-6376
2020-10-23 16:33:16 +02:00
Máté Kocsis
d6264b0966
Verify parameter names of function aliases
...
Closes GH-6335
2020-10-16 10:56:33 +02:00
Máté Kocsis
186612e4d7
Improve parameter names in ext/intl
...
Closes GH-6309
2020-10-12 18:06:45 +02:00
George Peter Banyard
95f4ee38bb
Add some ValueErrors to ext/date
...
Closes GH-5613
2020-09-16 01:29:28 +02:00
Máté Kocsis
046cc5e4c2
Add another round of missing parameter types to stubs
...
Closes GH-5950
2020-08-07 16:48:45 +02:00
Derick Rethans
cdc8523300
Last pass of 'More consistent parameter names for date/time functions'
2020-07-27 11:42:13 +01:00
Derick Rethans
f66627abff
Another pass of improving ext/date argument names
2020-07-26 10:38:53 +01:00
Derick Rethans
e96e4ac726
More consistent parameter names for date/time functions
2020-07-24 11:49:01 +01:00
Nikita Popov
81d8d60250
Add missing param to DatePeriod::__construct()
...
The signature is very overloaded, but takes at most four params,
not three.
2020-07-17 10:46:11 +02:00
Máté Kocsis
30067894fc
Update outdated arginfo hashes
2020-06-30 16:02:11 +02:00
Nikita Popov
ff19ec2df3
Introduce InternalIterator
...
Userland classes that implement Traversable must do so either
through Iterator or IteratorAggregate. The same requirement does
not exist for internal classes: They can implement the internal
get_iterator mechanism, without exposing either the Iterator or
IteratorAggregate APIs. This makes them usable in get_iterator(),
but incompatible with any Iterator based APIs.
A lot of internal classes do this, because exposing the userland
APIs is simply a lot of work. This patch alleviates this issue by
providing a generic InternalIterator class, which acts as an
adapater between get_iterator and Iterator, and can be easily
used by many internal classes. At the same time, we extend the
requirement that Traversable implies Iterator or IteratorAggregate
to internal classes as well.
Closes GH-5216.
2020-06-24 15:31:41 +02:00
Nikita Popov
c9b9f525a9
Include stub hash in generated arginfo files
...
The hash is used to check whether the arginfo file needs to be
regenerated. PHP-Parser will only be downloaded if this is actually
necessary.
This ensures that release artifacts will never try to regenerate
stubs and thus fetch PHP-Parser, as long as you do not modify any
files.
Closes GH-5739.
2020-06-24 09:55:19 +02:00
Máté Kocsis
ffcc8135e2
Convert UNKNOWN default values to null in ext/date
...
Closes GH-5509
2020-05-02 11:05:37 +02:00
Máté Kocsis
3fe49d81f8
Generate method entries from stubs for a couple of extensions
...
Closes GH-5368
2020-04-11 13:28:53 +02:00
Máté Kocsis
1d05771a70
Add support for generating method entries from stubs
...
Closes GH-5363
2020-04-11 09:15:14 +02:00
Máté Kocsis
3709e74b5e
Store default parameter values of internal functions in arg info
...
Closes GH-5353. From now on, PHP will have reflection information
about default values of parameters of internal functions.
Co-authored-by: Nikita Popov <nikita.ppv@gmail.com>
2020-04-08 18:37:51 +02:00
Máté Kocsis
7c3078737f
Generate function entries from stubs for a couple of extensions
...
Closes GH-5347
2020-04-04 20:41:48 +02:00
mike
1658b5babc
Adding DateTime(Immutable)::createFromInterface()
...
These are like
DateTime::createFromImmutable()
DateTimeImmutable::createFromMutable()
but accept any DateTimeInterface instead.
Closes GH-5016.
2020-01-03 16:55:12 +01:00