Commit Graph

202 Commits

Author SHA1 Message Date
Gustavo André dos Santos Lopes
ac33e40d2a Keep date precision in MessageFormatter.
MessageFormatter::parse and MessageFormat::format (and their static
equivalents) now don't throw away better than second precision in the
arguments.

It's already bad enough that in MessageFormatter and IntlDateFormatter we
use seconds since epoch instead of milliseconds since epoch, deviating
from the ICU date representations. But we don't need to throw away extra
precision when parsing dates; we can keep the seconds since epoch
convention and return non integer doubles with only a small BC impact.
Note that we already could return doubles from MessageFormatter::parse if
the date was sufficiently in the past or in the future.
2012-05-13 23:03:07 +02:00
Gustavo André dos Santos Lopes
53860672f3 ICU < 4.8 compat in MessageFormatter
Restricted support for named arguments to ICU 4.8+.

Also added bound checks when converting arguments to Formattables.
2012-05-13 20:55:02 +01:00
Gustavo André dos Santos Lopes
43ff66e095 Don't check number of args in msgfmt_do_format
The check does not work reliably across ICU versions when named arguments
are added to the mix. For instance, for recent versions of ICU like 49,
a pattern like "{foo,number} {foo}", has 0 returned from
umsg_format_arg_count(), but for ICU 4.0, this returns 2.
2012-05-13 20:54:55 +01:00
Gustavo André dos Santos Lopes
0295ed7d22 Added new MessageFormatter tests. 2012-05-13 20:53:06 +01:00
Gustavo André dos Santos Lopes
1c4f99b988 Better error messages in MessageFormatter::format. 2012-05-13 20:53:06 +01:00
Gustavo André dos Santos Lopes
0ad1b14f16 Accept numeric strings for dates.
Refactored umsg_helper_zval_to_millis in the process.
2012-05-13 20:53:06 +01:00
Gustavo André dos Santos Lopes
20dd5ccf19 Cache arguments type info in MessageFormatter. 2012-05-13 20:53:05 +01:00
Gustavo André dos Santos Lopes
407455876e Set global error if insufficient numeric args. WS. 2012-05-13 20:53:05 +01:00
Gustavo André dos Santos Lopes
f1621485ad Fixed MessageFormatter subformat tests. 2012-05-13 20:53:05 +01:00
Gustavo André dos Santos Lopes
edca0e2adb Refactoring of patch for FR #61871. 2012-05-13 20:52:41 +01:00
Gustavo André dos Santos Lopes
c9b913b56b Orig patch for FR #61871 by David Sklar 2012-05-13 20:51:43 +01:00
Felipe Pena
93d42fb444 Merge branch 'PHP-5.4'
* PHP-5.4:
  - Fixed bug #61829 (Memory leak when calling MessageFormatter's constructor twice)
2012-04-23 15:19:35 -03:00
Felipe Pena
883d40667d Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  - Fixed bug #61829 (Memory leak when calling MessageFormatter's constructor twice)
2012-04-23 15:19:23 -03:00
Felipe Pena
c8865e3b84 - Fixed bug #61829 (Memory leak when calling MessageFormatter's constructor twice) 2012-04-23 15:18:12 -03:00
Stanislav Malyshev
71884b7024 Merge branch 'PHP-5.4'
* PHP-5.4:
  Bug#59597 NumberFormatter::parse() with TYPE_INT64 results in a 32 bit integer
2012-04-19 11:37:55 -07:00
Stanislav Malyshev
106e0a2e68 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Bug#59597 NumberFormatter::parse() with TYPE_INT64 results in a 32 bit integer
2012-04-19 11:37:31 -07:00
Stanislav Malyshev
5cbf2d6785 Merge branch 'pull-request/61' into PHP-5.3
* pull-request/61:
  Bug#59597 NumberFormatter::parse() with TYPE_INT64 results in a 32 bit integer
2012-04-19 11:28:30 -07:00
Sherif Ramadan
2827324c7c Bug#59597 NumberFormatter::parse() with TYPE_INT64 results in a 32 bit integer 2012-04-19 04:44:43 -04:00
Gustavo André dos Santos Lopes
d32ac3efc8 Fixed tests that required a "default" timezone.
Added date.timezone=Atlantic/Azores to all tests that were failing because
of ext/date warning about a timezone not having been set.
2012-04-01 23:28:01 +01:00
Gustavo André dos Santos Lopes
95fbae891a Compatibility with old versions of ICU (4.0+). 2012-04-01 23:28:01 +01:00
Gustavo André dos Santos Lopes
69f75bb43c Added support for new method TimeZone::getUnknown() added in ICU 49. 2012-04-01 23:28:00 +01:00
Gustavo André dos Santos Lopes
d3a29c108b Supported Calendar methods new to ICU 49. 2012-04-01 23:28:00 +01:00
Gustavo André dos Santos Lopes
7460741f99 Fix TimeZone tests failing due to new data in ICU 49. 2012-04-01 23:28:00 +01:00
Gustavo André dos Santos Lopes
5e65205a8f Initial checkin of calendar/timezone code. 2012-04-01 23:28:00 +01:00
Gustavo André dos Santos Lopes
ab627e0eb0 Convert EOL style to Unix. 2012-04-01 11:00:05 +02:00
Anatoliy Belsky
bd928f0592 Fix bug #61448 intl tests fail with icu >= 4.8 2012-03-28 15:07:01 +02:00
Anatoliy Belsky
a715a21594 Merge branch 'PHP-5.4'
* PHP-5.4:
  Fix bug #61448 intl tests fail with icu >= 4.8
2012-03-28 14:53:28 +02:00
Anatoliy Belsky
105a9a9d45 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fix bug #61448 intl tests fail with icu >= 4.8
2012-03-28 14:01:14 +02:00
Anatoliy Belsky
103995ba22 Fix bug #61448 intl tests fail with icu >= 4.8 2012-03-28 13:59:51 +02:00
Stanislav Malyshev
d780b4e4b3 Merge branch 'PHP-5.4'
* PHP-5.4:
  fix tests
2012-03-25 13:50:33 -07:00
Stanislav Malyshev
d51c1e0a4c fix tests 2012-03-25 13:49:19 -07:00
Stanislav Malyshev
53c2f47a8f Merge branch 'PHP-5.4'
* PHP-5.4:
  fix bug #61487 - bad bounds check in grapheme_strpos
2012-03-25 01:03:43 -07:00
Stanislav Malyshev
2bd5fa0eda Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  fix bug #61487 - bad bounds check in grapheme_strpos
2012-03-25 01:03:25 -07:00
Stanislav Malyshev
cd9cd36d7e fix bug #61487 - bad bounds check in grapheme_strpos 2012-03-25 00:56:38 -07:00
Rasmus Lerdorf
d00be8ce0b Same thing here. "June 18, 1969 8:49:59 AM " does not contain a timezone, so there
is no way to know whether dst should be applied or not.
2012-02-05 10:35:56 +00:00
Rasmus Lerdorf
2500b7e5ba Same thing here. "June 18, 1969 8:49:59 AM " does not contain a timezone, so there
is no way to know whether dst should be applied or not.
2012-02-05 10:35:56 +00:00
Rasmus Lerdorf
6659010dc9 Same thing here. "June 18, 1969 8:49:59 AM " does not contain a timezone, so there
is no way to know whether dst should be applied or not.
2012-02-05 10:35:56 +00:00
Rasmus Lerdorf
67fe1e2619 Without a timezone you can't know whether it is dst or not in this one 2012-02-05 10:29:34 +00:00
Rasmus Lerdorf
fe777cd4db Without a timezone you can't know whether it is dst or not in this one 2012-02-05 10:29:34 +00:00
Rasmus Lerdorf
c5ec2f77dd Without a timezone you can't know whether it is dst or not in this one 2012-02-05 10:29:34 +00:00
Gustavo André dos Santos Lopes
10324891f8 - Added the ability for the intl exception to throw exceptions when a global error is set. 2012-01-08 18:41:53 +00:00
Gustavo André dos Santos Lopes
9985d99358 - Fixed bug #60392 (U_IDNA_DOMAIN_NAME_TOO_LONG_ERROR undeclared)
(fedora at famillecollet dot com)
2011-11-26 14:55:31 +00:00
Gustavo André dos Santos Lopes
7c2946f80e - Fixed bug #60392 (U_IDNA_DOMAIN_NAME_TOO_LONG_ERROR undeclared)
(fedora at famillecollet dot com)
2011-11-26 14:55:31 +00:00
Gustavo André dos Santos Lopes
d06c4e90a7 - Updated UPGRADING, protos and attribution in ext/intl/idn/idn.c 2011-11-24 22:45:50 +00:00
Gustavo André dos Santos Lopes
5b383dacdf - Updated UPGRADING, protos and attribution in ext/intl/idn/idn.c 2011-11-24 22:45:50 +00:00
Gustavo André dos Santos Lopes
5fa1cfbbe6 - Support for UTS #46. 2011-11-24 17:54:50 +00:00
Gustavo André dos Santos Lopes
fa4fe63944 - Support for UTS #46. 2011-11-24 17:54:50 +00:00
Felipe Pena
735dc01811 - Fixed memory leak in several Intl locale functions 2011-11-22 12:29:15 +00:00
Felipe Pena
f6fb9fc2b2 - Fixed memory leak in several Intl locale functions 2011-11-22 12:29:15 +00:00
Felipe Pena
cc8c3a2d00 - Fixed memory leak in several Intl locale functions 2011-11-22 12:29:15 +00:00