Mercurial > hg > nginx-site
comparison xml/en/docs/njs/changes.xml @ 2569:2edc64c05b0e
Removed ECMAScript methods from njs Reference.
author | Yaroslav Zhuravlev <yar@nginx.com> |
---|---|
date | Tue, 14 Jul 2020 16:44:46 +0100 |
parents | ca1ccafab5ef |
children | 44792f1ee284 |
comparison
equal
deleted
inserted
replaced
2568:aa015272ea32 | 2569:2edc64c05b0e |
---|---|
7 <!DOCTYPE article SYSTEM "../../../../dtd/article.dtd"> | 7 <!DOCTYPE article SYSTEM "../../../../dtd/article.dtd"> |
8 | 8 |
9 <article name="Changes" | 9 <article name="Changes" |
10 link="/en/docs/njs/changes.html" | 10 link="/en/docs/njs/changes.html" |
11 lang="en" | 11 lang="en" |
12 rev="33" | 12 rev="34" |
13 toc="no"> | 13 toc="no"> |
14 | 14 |
15 <section id="njs0.4.2" name="Changes with njs 0.4.2"> | 15 <section id="njs0.4.2" name="Changes with njs 0.4.2"> |
16 | 16 |
17 <para> | 17 <para> |
80 | 80 |
81 <listitem> | 81 <listitem> |
82 <para> | 82 <para> |
83 Bugfix: | 83 Bugfix: |
84 fixed | 84 fixed |
85 <link doc="reference.xml" id="string_repeat"><literal>String.prototype.repeat()</literal></link> | 85 <literal>String.prototype.repeat()</literal> |
86 according to the specification. | 86 according to the specification. |
87 </para> | 87 </para> |
88 </listitem> | 88 </listitem> |
89 | 89 |
90 <listitem> | 90 <listitem> |
91 <para> | 91 <para> |
92 Bugfix: | 92 Bugfix: |
93 fixed | 93 fixed |
94 <link doc="reference.xml" id="string_replace"><literal>String.prototype.replace()</literal></link> | 94 <literal>String.prototype.replace()</literal> |
95 according to the specification. | 95 according to the specification. |
96 </para> | 96 </para> |
97 </listitem> | 97 </listitem> |
98 | 98 |
99 <listitem> | 99 <listitem> |
306 | 306 |
307 <listitem> | 307 <listitem> |
308 <para> | 308 <para> |
309 Bugfix: | 309 Bugfix: |
310 fixed | 310 fixed |
311 <link doc="reference.xml" id="string_replace"><literal>String.prototype.replace()</literal></link> | 311 <literal>String.prototype.replace()</literal> |
312 when function returns non-string. | 312 when function returns non-string. |
313 </para> | 313 </para> |
314 </listitem> | 314 </listitem> |
315 | 315 |
316 <listitem> | 316 <listitem> |
427 | 427 |
428 <listitem> | 428 <listitem> |
429 <para> | 429 <para> |
430 Bugfix: | 430 Bugfix: |
431 fixed | 431 fixed |
432 <link doc="reference.xml" id="encodeuri"><literal>encodeURI()</literal></link> | 432 <literal>encodeURI()</literal> |
433 and | 433 and |
434 <link doc="reference.xml" id="decodeuri"><literal>decodeURI()</literal></link> | 434 <literal>decodeURI()</literal> |
435 according to the specification. | 435 according to the specification. |
436 </para> | 436 </para> |
437 </listitem> | 437 </listitem> |
438 | 438 |
439 <listitem> | 439 <listitem> |
445 | 445 |
446 <listitem> | 446 <listitem> |
447 <para> | 447 <para> |
448 Bugfix: | 448 Bugfix: |
449 fixed handling of space argument in | 449 fixed handling of space argument in |
450 <link doc="reference.xml" id="core_json_stringify"><literal>JSON.stringify()</literal></link>. | 450 <literal>JSON.stringify()</literal>. |
451 </para> | 451 </para> |
452 </listitem> | 452 </listitem> |
453 | 453 |
454 <listitem> | 454 <listitem> |
455 <para> | 455 <para> |
456 Bugfix: | 456 Bugfix: |
457 fixed | 457 fixed |
458 <link doc="reference.xml" id="core_json_stringify"><literal>JSON.stringify()</literal></link> | 458 <literal>JSON.stringify()</literal> |
459 with | 459 with |
460 <literal>Number()</literal> and | 460 <literal>Number()</literal> and |
461 <literal>String()</literal> | 461 <literal>String()</literal> |
462 objects. | 462 objects. |
463 </para> | 463 </para> |
465 | 465 |
466 <listitem> | 466 <listitem> |
467 <para> | 467 <para> |
468 Bugfix: | 468 Bugfix: |
469 fixed Unicode Escaping in | 469 fixed Unicode Escaping in |
470 <link doc="reference.xml" id="core_json_stringify"><literal>JSON.stringify()</literal></link> | 470 <literal>JSON.stringify()</literal> |
471 according to specification. | 471 according to specification. |
472 </para> | 472 </para> |
473 </listitem> | 473 </listitem> |
474 | 474 |
475 <listitem> | 475 <listitem> |
574 | 574 |
575 <listitem> | 575 <listitem> |
576 <para> | 576 <para> |
577 Feature: | 577 Feature: |
578 added externals support for | 578 added externals support for |
579 <link doc="reference.xml" id="core_json_stringify"><literal>JSON.stringify()</literal></link>. | 579 <literal>JSON.stringify()</literal>. |
580 </para> | 580 </para> |
581 </listitem> | 581 </listitem> |
582 | 582 |
583 <listitem> | 583 <listitem> |
584 <para> | 584 <para> |
623 | 623 |
624 <listitem> | 624 <listitem> |
625 <para> | 625 <para> |
626 Bugfix: | 626 Bugfix: |
627 fixed | 627 fixed |
628 <link doc="reference.xml" id="core_json_stringify"><literal>JSON.stringify()</literal></link> | 628 <literal>JSON.stringify()</literal> |
629 with unprintable values and replacer function. | 629 with unprintable values and replacer function. |
630 </para> | 630 </para> |
631 </listitem> | 631 </listitem> |
632 | 632 |
633 <listitem> | 633 <listitem> |
1010 | 1010 |
1011 <listitem> | 1011 <listitem> |
1012 <para> | 1012 <para> |
1013 Bugfix: | 1013 Bugfix: |
1014 fixed | 1014 fixed |
1015 <link doc="reference.xml" id="string_replace"><literal>String.prototype.replace()</literal></link> | 1015 <literal>String.prototype.replace()</literal> |
1016 when first argument is not a string. | 1016 when first argument is not a string. |
1017 </para> | 1017 </para> |
1018 </listitem> | 1018 </listitem> |
1019 | 1019 |
1020 <listitem> | 1020 <listitem> |
1068 </listitem> | 1068 </listitem> |
1069 | 1069 |
1070 <listitem> | 1070 <listitem> |
1071 <para> | 1071 <para> |
1072 Bugfix: | 1072 Bugfix: |
1073 fixed <literal>Date.UTC()</literal> according to the specification. | 1073 fixed |
1074 </para> | 1074 <literal>Date.UTC()</literal> |
1075 </listitem> | 1075 according to the specification. |
1076 | 1076 </para> |
1077 <listitem> | 1077 </listitem> |
1078 <para> | 1078 |
1079 Bugfix: | 1079 <listitem> |
1080 fixed <literal>Date()</literal> constructor according to the specification. | 1080 <para> |
1081 </para> | 1081 Bugfix: |
1082 </listitem> | 1082 fixed |
1083 | 1083 <literal>Date()</literal> constructor |
1084 <listitem> | 1084 according to the specification. |
1085 <para> | 1085 </para> |
1086 Bugfix: | 1086 </listitem> |
1087 fixed type of <literal>Date.prototype</literal>. | 1087 |
1088 <listitem> | |
1089 <para> | |
1090 Bugfix: | |
1091 fixed type of | |
1092 <literal>Date.prototype</literal>. | |
1088 Thanks to Artem S. Povalyukhin. | 1093 Thanks to Artem S. Povalyukhin. |
1089 </para> | 1094 </para> |
1090 </listitem> | 1095 </listitem> |
1091 | 1096 |
1092 <listitem> | 1097 <listitem> |
1093 <para> | 1098 <para> |
1094 Bugfix: | 1099 Bugfix: |
1095 fixed <literal>Date.prototype.setTime()</literal>. | 1100 fixed |
1101 <literal>Date.prototype.setTime()</literal>. | |
1096 Thanks to Artem S. Povalyukhin. | 1102 Thanks to Artem S. Povalyukhin. |
1097 </para> | 1103 </para> |
1098 </listitem> | 1104 </listitem> |
1099 | 1105 |
1100 <listitem> | 1106 <listitem> |
1105 </listitem> | 1111 </listitem> |
1106 | 1112 |
1107 <listitem> | 1113 <listitem> |
1108 <para> | 1114 <para> |
1109 Bugfix: | 1115 Bugfix: |
1110 fixed <literal>caller</literal> and <literal>arguments</literal> | 1116 fixed |
1117 <literal>caller</literal> and | |
1118 <literal>arguments</literal> | |
1111 properties of a function instance. | 1119 properties of a function instance. |
1112 Thanks to Artem S. Povalyukhin. | 1120 Thanks to Artem S. Povalyukhin. |
1113 </para> | 1121 </para> |
1114 </listitem> | 1122 </listitem> |
1115 | 1123 |
1139 </listitem> | 1147 </listitem> |
1140 | 1148 |
1141 <listitem> | 1149 <listitem> |
1142 <para> | 1150 <para> |
1143 Bugfix: | 1151 Bugfix: |
1144 fixed <literal>[[SetPrototypeOf]]</literal>. | 1152 fixed |
1153 <literal>[[SetPrototypeOf]]</literal>. | |
1145 </para> | 1154 </para> |
1146 </listitem> | 1155 </listitem> |
1147 | 1156 |
1148 </list> | 1157 </list> |
1149 </para> | 1158 </para> |
1163 <list type="bullet"> | 1172 <list type="bullet"> |
1164 | 1173 |
1165 <listitem> | 1174 <listitem> |
1166 <para> | 1175 <para> |
1167 Feature: | 1176 Feature: |
1168 added <literal>Object</literal> shorthand methods and computed property names. | 1177 added |
1178 <literal>Object</literal> | |
1179 shorthand methods and computed property names. | |
1169 Thanks to 洪志道 (Hong Zhi Dao) and Artem S. Povalyukhin. | 1180 Thanks to 洪志道 (Hong Zhi Dao) and Artem S. Povalyukhin. |
1170 </para> | 1181 </para> |
1171 </listitem> | 1182 </listitem> |
1172 | 1183 |
1173 <listitem> | 1184 <listitem> |
1188 | 1199 |
1189 <listitem> | 1200 <listitem> |
1190 <para> | 1201 <para> |
1191 Feature: | 1202 Feature: |
1192 added | 1203 added |
1193 <link doc="reference.xml" id="string_trimend"><literal>String.prototype.trimEnd()</literal></link> | 1204 <literal>String.prototype.trimEnd()</literal> |
1194 and | 1205 and |
1195 <link doc="reference.xml" id="string_trimstart"><literal>String.prototype.trimStart()</literal></link>. | 1206 <literal>String.prototype.trimStart()</literal>. |
1196 </para> | 1207 </para> |
1197 </listitem> | 1208 </listitem> |
1198 | 1209 |
1199 <listitem> | 1210 <listitem> |
1200 <para> | 1211 <para> |
1227 | 1238 |
1228 <listitem> | 1239 <listitem> |
1229 <para> | 1240 <para> |
1230 Bugfix: | 1241 Bugfix: |
1231 extended the list of space separators in | 1242 extended the list of space separators in |
1232 <link doc="reference.xml" id="string_trim"><literal>String.prototype.trim()</literal></link>. | 1243 <literal>String.prototype.trim()</literal>. |
1233 </para> | 1244 </para> |
1234 </listitem> | 1245 </listitem> |
1235 | 1246 |
1236 <listitem> | 1247 <listitem> |
1237 <para> | 1248 <para> |
1238 Bugfix: | 1249 Bugfix: |
1239 fixed using of uninitialized value in | 1250 fixed using of uninitialized value in |
1240 <link doc="reference.xml" id="string_padstart"><literal>String.prototype.padStart()</literal></link>. | 1251 <literal>String.prototype.padStart()</literal>. |
1241 </para> | 1252 </para> |
1242 </listitem> | 1253 </listitem> |
1243 | 1254 |
1244 <listitem> | 1255 <listitem> |
1245 <para> | 1256 <para> |
1246 Bugfix: | 1257 Bugfix: |
1247 fixed | 1258 fixed |
1248 <link doc="reference.xml" id="string_replace"><literal>String.prototype.replace()</literal></link> for <literal>$0</literal> and <literal>$&</literal> replacement string. | 1259 <literal>String.prototype.replace()</literal> |
1249 </para> | 1260 for <literal>$0</literal> and <literal>$&</literal> replacement string. |
1250 </listitem> | 1261 </para> |
1251 | 1262 </listitem> |
1252 <listitem> | 1263 |
1253 <para> | 1264 <listitem> |
1254 Bugfix: | 1265 <para> |
1255 fixed | 1266 Bugfix: |
1256 <link doc="reference.xml" id="string_replace"><literal>String.prototype.replace()</literal></link> | 1267 fixed |
1268 <literal>String.prototype.replace()</literal> | |
1257 for byte strings with regex argument. | 1269 for byte strings with regex argument. |
1258 </para> | 1270 </para> |
1259 </listitem> | 1271 </listitem> |
1260 | 1272 |
1261 <listitem> | 1273 <listitem> |
1262 <para> | 1274 <para> |
1263 Bugfix: | 1275 Bugfix: |
1264 fixed global match in | 1276 fixed global match in |
1265 <link doc="reference.xml" id="string_replace"><literal>String.prototype.replace()</literal></link> | 1277 <literal>String.prototype.replace()</literal> |
1266 with regexp argument. | 1278 with regexp argument. |
1267 </para> | 1279 </para> |
1268 </listitem> | 1280 </listitem> |
1269 | 1281 |
1270 <listitem> | 1282 <listitem> |
1292 | 1304 |
1293 <listitem> | 1305 <listitem> |
1294 <para> | 1306 <para> |
1295 Bugfix: | 1307 Bugfix: |
1296 fixed | 1308 fixed |
1297 <link doc="reference.xml" id="object_values"><literal>Object.values()</literal></link> | 1309 <literal>Object.values()</literal> |
1298 and | 1310 and |
1299 <link doc="reference.xml" id="object_entries"><literal>Object.entries()</literal></link> | 1311 <literal>Object.entries()</literal> |
1300 for shared objects. | 1312 for shared objects. |
1301 </para> | 1313 </para> |
1302 </listitem> | 1314 </listitem> |
1303 | 1315 |
1304 <listitem> | 1316 <listitem> |
1305 <para> | 1317 <para> |
1306 Bugfix: | 1318 Bugfix: |
1307 fixed uninitialized memory access in | 1319 fixed uninitialized memory access in |
1308 <link doc="reference.xml" id="string_match"><literal>String.prototype.match()</literal></link>. | 1320 <literal>String.prototype.match()</literal>. |
1309 </para> | 1321 </para> |
1310 </listitem> | 1322 </listitem> |
1311 | 1323 |
1312 <listitem> | 1324 <listitem> |
1313 <para> | 1325 <para> |
1314 Bugfix: | 1326 Bugfix: |
1315 fixed | 1327 fixed |
1316 <link doc="reference.xml" id="string_match"><literal>String.prototype.match()</literal></link> | 1328 <literal>String.prototype.match()</literal> |
1317 for byte strings with regex argument. | 1329 for byte strings with regex argument. |
1318 </para> | 1330 </para> |
1319 </listitem> | 1331 </listitem> |
1320 | 1332 |
1321 <listitem> | 1333 <listitem> |
1329 | 1341 |
1330 <listitem> | 1342 <listitem> |
1331 <para> | 1343 <para> |
1332 Bugfix: | 1344 Bugfix: |
1333 fixed | 1345 fixed |
1334 <link doc="reference.xml" id="string_substring"><literal>String.prototype.substring()</literal></link> | 1346 <literal>String.prototype.substring()</literal> |
1335 with empty substring. | 1347 with empty substring. |
1336 </para> | 1348 </para> |
1337 </listitem> | 1349 </listitem> |
1338 | 1350 |
1339 <listitem> | 1351 <listitem> |
1340 <para> | 1352 <para> |
1341 Bugfix: | 1353 Bugfix: |
1342 fixed invalid memory access in | 1354 fixed invalid memory access in |
1343 <link doc="reference.xml" id="string_substring"><literal>String.prototype.substring()</literal></link>. | 1355 <literal>String.prototype.substring()</literal>. |
1344 </para> | 1356 </para> |
1345 </listitem> | 1357 </listitem> |
1346 | 1358 |
1347 <listitem> | 1359 <listitem> |
1348 <para> | 1360 <para> |
1349 Bugfix: | 1361 Bugfix: |
1350 fixed | 1362 fixed |
1351 <link doc="reference.xml" id="string_fromcharcode"><literal>String.fromCharCode()</literal></link> | 1363 <literal>String.fromCharCode()</literal> |
1352 for code points more than <literal>65535</literal> and <literal>NaN</literal>. | 1364 for code points more than <literal>65535</literal> and <literal>NaN</literal>. |
1353 </para> | 1365 </para> |
1354 </listitem> | 1366 </listitem> |
1355 | 1367 |
1356 <listitem> | 1368 <listitem> |
1357 <para> | 1369 <para> |
1358 Bugfix: | 1370 Bugfix: |
1359 fixed | 1371 fixed |
1360 <link doc="reference.xml" id="string_tolowercase"><literal>String.prototype.toLowerCase()</literal></link> | 1372 <literal>String.prototype.toLowerCase()</literal> |
1361 and | 1373 and |
1362 <link doc="reference.xml" id="string_touppercase"><literal>String.prototype.toUpperCase()</literal></link>. | 1374 <literal>String.prototype.toUpperCase()</literal>. |
1363 </para> | 1375 </para> |
1364 </listitem> | 1376 </listitem> |
1365 | 1377 |
1366 <listitem> | 1378 <listitem> |
1367 <para> | 1379 <para> |
1368 Bugfix: | 1380 Bugfix: |
1369 fixed <literal>Error()</literal> constructor with no arguments. | 1381 fixed |
1370 </para> | 1382 <literal>Error()</literal> |
1371 </listitem> | 1383 constructor with no arguments. |
1372 | 1384 </para> |
1373 <listitem> | 1385 </listitem> |
1374 <para> | 1386 |
1375 Bugfix: | 1387 <listitem> |
1376 fixed <literal>in</literal> operator for values with accessor descriptors. | 1388 <para> |
1389 Bugfix: | |
1390 fixed | |
1391 <literal>in</literal> | |
1392 operator for values with accessor descriptors. | |
1377 </para> | 1393 </para> |
1378 </listitem> | 1394 </listitem> |
1379 | 1395 |
1380 <listitem> | 1396 <listitem> |
1381 <para> | 1397 <para> |
1493 | 1509 |
1494 <listitem> | 1510 <listitem> |
1495 <para> | 1511 <para> |
1496 Bugfix: | 1512 Bugfix: |
1497 fixed integer-overflow in | 1513 fixed integer-overflow in |
1498 <link doc="reference.xml" id="string_concat"><literal>String.prototype.concat()</literal></link>. | 1514 <literal>String.prototype.concat()</literal>. |
1499 </para> | 1515 </para> |
1500 </listitem> | 1516 </listitem> |
1501 | 1517 |
1502 <listitem> | 1518 <listitem> |
1503 <para> | 1519 <para> |
1545 | 1561 |
1546 <listitem> | 1562 <listitem> |
1547 <para> | 1563 <para> |
1548 Bugfix: | 1564 Bugfix: |
1549 fixed heap-buffer-overflow in | 1565 fixed heap-buffer-overflow in |
1550 <link doc="reference.xml" id="string_touppercase"><literal>toUpperCase()</literal></link> | 1566 <literal>toUpperCase()</literal> |
1551 and | 1567 and |
1552 <link doc="reference.xml" id="string_touppercase"><literal>toLowerCase()</literal></link>. | 1568 <literal>toLowerCase()</literal>. |
1553 </para> | 1569 </para> |
1554 </listitem> | 1570 </listitem> |
1555 | 1571 |
1556 <listitem> | 1572 <listitem> |
1557 <para> | 1573 <para> |
1570 | 1586 |
1571 <listitem> | 1587 <listitem> |
1572 <para> | 1588 <para> |
1573 Bugfix: | 1589 Bugfix: |
1574 fixed | 1590 fixed |
1575 <link doc="reference.xml" id="string_tobytes"><literal>String.prototype.toBytes()</literal></link> | 1591 <literal>String.prototype.toBytes()</literal> |
1576 for ASCII strings. | 1592 for ASCII strings. |
1577 </para> | 1593 </para> |
1578 </listitem> | 1594 </listitem> |
1579 | 1595 |
1580 <listitem> | 1596 <listitem> |
1581 <para> | 1597 <para> |
1582 Bugfix: | 1598 Bugfix: |
1583 fixed truth value of JSON numbers in | 1599 fixed truth value of JSON numbers in |
1584 <link doc="reference.xml" id="core_json_parse"><literal>JSON.parse()</literal></link>. | 1600 <literal>JSON.parse()</literal>. |
1585 </para> | 1601 </para> |
1586 </listitem> | 1602 </listitem> |
1587 | 1603 |
1588 <listitem> | 1604 <listitem> |
1589 <para> | 1605 <para> |
1672 </listitem> | 1688 </listitem> |
1673 | 1689 |
1674 <listitem> | 1690 <listitem> |
1675 <para> | 1691 <para> |
1676 Bugfix: | 1692 Bugfix: |
1677 fixed <literal>Regexp.prototype.exec()</literal> for Unicode-only regexps. | 1693 fixed |
1678 </para> | 1694 <literal>Regexp.prototype.exec()</literal> |
1679 </listitem> | 1695 for Unicode-only regexps. |
1680 | 1696 </para> |
1681 <listitem> | 1697 </listitem> |
1682 <para> | 1698 |
1683 Bugfix: | 1699 <listitem> |
1684 fixed <literal>njs_vm_value_dump()</literal> for empty string values. | 1700 <para> |
1701 Bugfix: | |
1702 fixed | |
1703 <literal>njs_vm_value_dump()</literal> | |
1704 for empty string values. | |
1685 </para> | 1705 </para> |
1686 </listitem> | 1706 </listitem> |
1687 | 1707 |
1688 <listitem> | 1708 <listitem> |
1689 <para> | 1709 <para> |
1700 </listitem> | 1720 </listitem> |
1701 | 1721 |
1702 <listitem> | 1722 <listitem> |
1703 <para> | 1723 <para> |
1704 Bugfix: | 1724 Bugfix: |
1705 fixed overflow in <literal>Array.prototype.concat()</literal>. | 1725 fixed overflow in |
1726 <literal>Array.prototype.concat()</literal>. | |
1706 </para> | 1727 </para> |
1707 </listitem> | 1728 </listitem> |
1708 | 1729 |
1709 <listitem> | 1730 <listitem> |
1710 <para> | 1731 <para> |
1729 </listitem> | 1750 </listitem> |
1730 | 1751 |
1731 <listitem> | 1752 <listitem> |
1732 <para> | 1753 <para> |
1733 Bugfix: | 1754 Bugfix: |
1734 fixed <literal>Date()</literal> constructor with one argument. | 1755 fixed |
1756 <literal>Date()</literal> | |
1757 constructor with one argument. | |
1735 </para> | 1758 </para> |
1736 </listitem> | 1759 </listitem> |
1737 | 1760 |
1738 <listitem> | 1761 <listitem> |
1739 <para> | 1762 <para> |
1790 </listitem> | 1813 </listitem> |
1791 | 1814 |
1792 <listitem> | 1815 <listitem> |
1793 <para> | 1816 <para> |
1794 Bugfix: | 1817 Bugfix: |
1795 fixed <literal>Array.prototype.slice()</literal> for UTF8-invalid byte strings. | 1818 fixed |
1796 </para> | 1819 <literal>Array.prototype.slice()</literal> |
1797 </listitem> | 1820 for UTF8-invalid byte strings. |
1798 | 1821 </para> |
1799 <listitem> | 1822 </listitem> |
1800 <para> | 1823 |
1801 Bugfix: | 1824 <listitem> |
1802 fixed <literal>String.prototype.split()</literal> for UTF8-invalid byte strings. | 1825 <para> |
1826 Bugfix: | |
1827 fixed | |
1828 <literal>String.prototype.split()</literal> | |
1829 for UTF8-invalid byte strings. | |
1803 </para> | 1830 </para> |
1804 </listitem> | 1831 </listitem> |
1805 | 1832 |
1806 <listitem> | 1833 <listitem> |
1807 <para> | 1834 <para> |
1836 </listitem> | 1863 </listitem> |
1837 | 1864 |
1838 <listitem> | 1865 <listitem> |
1839 <para> | 1866 <para> |
1840 Feature: | 1867 Feature: |
1841 added <literal>Object.getOwnPropertyNames()</literal>. | 1868 added |
1869 <literal>Object.getOwnPropertyNames()</literal>. | |
1842 Thanks to Artem S. Povalyukhin. | 1870 Thanks to Artem S. Povalyukhin. |
1843 </para> | 1871 </para> |
1844 </listitem> | 1872 </listitem> |
1845 | 1873 |
1846 <listitem> | 1874 <listitem> |
1847 <para> | 1875 <para> |
1848 Feature: | 1876 Feature: |
1849 added <literal>Object.getOwnPropertyDescriptors()</literal>. | 1877 added |
1878 <literal>Object.getOwnPropertyDescriptors()</literal>. | |
1850 Thanks to Artem S. Povalyukhin. | 1879 Thanks to Artem S. Povalyukhin. |
1851 </para> | 1880 </para> |
1852 </listitem> | 1881 </listitem> |
1853 | 1882 |
1854 <listitem> | 1883 <listitem> |
1882 </listitem> | 1911 </listitem> |
1883 | 1912 |
1884 <listitem> | 1913 <listitem> |
1885 <para> | 1914 <para> |
1886 Bugfix: | 1915 Bugfix: |
1887 fixed <literal>Function.prototype.bind()</literal>. | 1916 fixed |
1917 <literal>Function.prototype.bind()</literal>. | |
1888 Thanks to 洪志道 (Hong Zhi Dao). | 1918 Thanks to 洪志道 (Hong Zhi Dao). |
1889 </para> | 1919 </para> |
1890 </listitem> | 1920 </listitem> |
1891 | 1921 |
1892 <listitem> | 1922 <listitem> |
2013 </listitem> | 2043 </listitem> |
2014 | 2044 |
2015 <listitem> | 2045 <listitem> |
2016 <para> | 2046 <para> |
2017 Feature: | 2047 Feature: |
2018 added <literal>Object.prototype.propertyIsEnumerable()</literal>. | 2048 added |
2049 <literal>Object.prototype.propertyIsEnumerable()</literal>. | |
2019 </para> | 2050 </para> |
2020 </listitem> | 2051 </listitem> |
2021 | 2052 |
2022 <listitem> | 2053 <listitem> |
2023 <para> | 2054 <para> |
2050 </listitem> | 2081 </listitem> |
2051 | 2082 |
2052 <listitem> | 2083 <listitem> |
2053 <para> | 2084 <para> |
2054 Bugfix: | 2085 Bugfix: |
2055 fixed <literal>nxt_file_dirname()</literal> for paths with no dir component. | 2086 fixed |
2087 <literal>nxt_file_dirname()</literal> for paths with no dir component. | |
2056 </para> | 2088 </para> |
2057 </listitem> | 2089 </listitem> |
2058 | 2090 |
2059 </list> | 2091 </list> |
2060 </para> | 2092 </para> |
2128 </listitem> | 2160 </listitem> |
2129 | 2161 |
2130 <listitem> | 2162 <listitem> |
2131 <para> | 2163 <para> |
2132 Feature: | 2164 Feature: |
2133 added <literal>setImmediate()</literal> method. | 2165 added |
2166 <literal>setImmediate()</literal> method. | |
2134 </para> | 2167 </para> |
2135 </listitem> | 2168 </listitem> |
2136 | 2169 |
2137 <listitem> | 2170 <listitem> |
2138 <para> | 2171 <para> |
2142 </listitem> | 2175 </listitem> |
2143 | 2176 |
2144 <listitem> | 2177 <listitem> |
2145 <para> | 2178 <para> |
2146 Bugfix: | 2179 Bugfix: |
2147 fixed <literal>Function.prototype.bind()</literal>. | 2180 fixed |
2181 <literal>Function.prototype.bind()</literal>. | |
2148 </para> | 2182 </para> |
2149 </listitem> | 2183 </listitem> |
2150 | 2184 |
2151 <listitem> | 2185 <listitem> |
2152 <para> | 2186 <para> |
2172 <listitem> | 2206 <listitem> |
2173 <para> | 2207 <para> |
2174 Bugfix: | 2208 Bugfix: |
2175 fixed | 2209 fixed |
2176 setting special response headers in | 2210 setting special response headers in |
2177 <link doc="reference.xml" id="string_split"><literal>String.prototype.split()</literal></link> | 2211 <literal>String.prototype.split()</literal> |
2178 for Unicode strings. | 2212 for Unicode strings. |
2179 </para> | 2213 </para> |
2180 </listitem> | 2214 </listitem> |
2181 | 2215 |
2182 <listitem> | 2216 <listitem> |
2183 <para> | 2217 <para> |
2184 Bugfix: | 2218 Bugfix: |
2185 fixed heap-buffer-overflow in | 2219 fixed heap-buffer-overflow in |
2186 <link doc="reference.xml" id="string_split"><literal>String.prototype.split()</literal></link>. | 2220 <literal>String.prototype.split()</literal>. |
2187 </para> | 2221 </para> |
2188 </listitem> | 2222 </listitem> |
2189 | 2223 |
2190 <listitem> | 2224 <listitem> |
2191 <para> | 2225 <para> |
2192 Bugfix: | 2226 Bugfix: |
2193 fixed <literal>Array.prototype.fill()</literal>. | 2227 fixed |
2228 <literal>Array.prototype.fill()</literal>. | |
2194 Thanks to Artem S. Povalyukhin. | 2229 Thanks to Artem S. Povalyukhin. |
2195 </para> | 2230 </para> |
2196 </listitem> | 2231 </listitem> |
2197 | 2232 |
2198 <listitem> | 2233 <listitem> |
2252 | 2287 |
2253 <listitem> | 2288 <listitem> |
2254 <para> | 2289 <para> |
2255 Feature: | 2290 Feature: |
2256 added | 2291 added |
2257 <link doc="reference.xml" id="object_entries"><literal>Object.entries()</literal></link> | 2292 <literal>Object.entries()</literal> |
2258 method. | 2293 method. |
2259 </para> | 2294 </para> |
2260 </listitem> | 2295 </listitem> |
2261 | 2296 |
2262 <listitem> | 2297 <listitem> |
2263 <para> | 2298 <para> |
2264 Feature: | 2299 Feature: |
2265 added | 2300 added |
2266 <link doc="reference.xml" id="object_values"><literal>Object.values()</literal></link> | 2301 <literal>Object.values()</literal> |
2267 method. | 2302 method. |
2268 </para> | 2303 </para> |
2269 </listitem> | 2304 </listitem> |
2270 | 2305 |
2271 <listitem> | 2306 <listitem> |
2413 </listitem> | 2448 </listitem> |
2414 | 2449 |
2415 <listitem> | 2450 <listitem> |
2416 <para> | 2451 <para> |
2417 Bugfix: | 2452 Bugfix: |
2418 fixed handling non-object values in <literal>Object.keys()</literal>. | 2453 fixed handling non-object values in |
2419 </para> | 2454 <literal>Object.keys()</literal>. |
2420 </listitem> | 2455 </para> |
2421 | 2456 </listitem> |
2422 <listitem> | 2457 |
2423 <para> | 2458 <listitem> |
2424 Bugfix: | 2459 <para> |
2425 fixed parsing of throw statement inside <literal>if</literal> statement. | 2460 Bugfix: |
2461 fixed parsing of throw statement inside | |
2462 <literal>if</literal> statement. | |
2426 </para> | 2463 </para> |
2427 </listitem> | 2464 </listitem> |
2428 | 2465 |
2429 <listitem> | 2466 <listitem> |
2430 <para> | 2467 <para> |
2488 </listitem> | 2525 </listitem> |
2489 | 2526 |
2490 <listitem> | 2527 <listitem> |
2491 <para> | 2528 <para> |
2492 Bugfix: | 2529 Bugfix: |
2493 fixed <literal>s.off()</literal> in stream module. | 2530 fixed |
2494 </para> | 2531 <literal>s.off()</literal> in stream module. |
2495 </listitem> | 2532 </para> |
2496 | 2533 </listitem> |
2497 <listitem> | 2534 |
2498 <para> | 2535 <listitem> |
2499 Bugfix: | 2536 <para> |
2500 fixed processing of data chunks in <literal>js_filter</literal> in stream module. | 2537 Bugfix: |
2501 </para> | 2538 fixed processing of data chunks in |
2502 </listitem> | 2539 <literal>js_filter</literal> in stream module. |
2503 | 2540 </para> |
2504 <listitem> | 2541 </listitem> |
2505 <para> | 2542 |
2506 Bugfix: | 2543 <listitem> |
2507 fixed http <literal>status</literal> and | 2544 <para> |
2508 <literal>contentType</literal> getter in http module. | 2545 Bugfix: |
2546 fixed http | |
2547 <literal>status</literal> and | |
2548 <literal>contentType</literal> | |
2549 getter in http module. | |
2509 </para> | 2550 </para> |
2510 </listitem> | 2551 </listitem> |
2511 | 2552 |
2512 <listitem> | 2553 <listitem> |
2513 <para> | 2554 <para> |
2538 </listitem> | 2579 </listitem> |
2539 | 2580 |
2540 <listitem> | 2581 <listitem> |
2541 <para> | 2582 <para> |
2542 Improvement: | 2583 Improvement: |
2543 handling non-array values in <literal>Array.prototype.slice()</literal>. | 2584 handling non-array values in |
2544 </para> | 2585 <literal>Array.prototype.slice()</literal>. |
2545 </listitem> | 2586 </para> |
2546 | 2587 </listitem> |
2547 <listitem> | 2588 |
2548 <para> | 2589 <listitem> |
2549 Bugfix: | 2590 <para> |
2550 fixed <literal>Array.prototype.length</literal> setter | 2591 Bugfix: |
2551 </para> | 2592 fixed |
2552 </listitem> | 2593 <literal>Array.prototype.length</literal> setter |
2553 | 2594 </para> |
2554 <listitem> | 2595 </listitem> |
2555 <para> | 2596 |
2556 Bugfix: | 2597 <listitem> |
2557 fixed <literal>njs_array_alloc()</literal> for length > 2**31. | 2598 <para> |
2558 </para> | 2599 Bugfix: |
2559 </listitem> | 2600 fixed |
2560 | 2601 <literal>njs_array_alloc()</literal> for length > 2**31. |
2561 <listitem> | 2602 </para> |
2562 <para> | 2603 </listitem> |
2563 Bugfix: | 2604 |
2564 handling int overflow in <literal>njs_array_alloc()</literal> on 32bit archs. | 2605 <listitem> |
2606 <para> | |
2607 Bugfix: | |
2608 handling int overflow in | |
2609 <literal>njs_array_alloc()</literal> on 32bit archs. | |
2565 </para> | 2610 </para> |
2566 </listitem> | 2611 </listitem> |
2567 | 2612 |
2568 <listitem> | 2613 <listitem> |
2569 <para> | 2614 <para> |
2580 </listitem> | 2625 </listitem> |
2581 | 2626 |
2582 <listitem> | 2627 <listitem> |
2583 <para> | 2628 <para> |
2584 Bugfix: | 2629 Bugfix: |
2585 fixed <literal>Object.getOwnPropertyDescriptor()</literal> for complex object | 2630 fixed |
2586 (inherited from <literal>Array</literal> and <literal>string</literal> values). | 2631 <literal>Object.getOwnPropertyDescriptor()</literal> |
2587 </para> | 2632 for complex object (inherited from |
2588 </listitem> | 2633 <literal>Array</literal> and |
2589 | 2634 <literal>string</literal> values). |
2590 <listitem> | 2635 </para> |
2591 <para> | 2636 </listitem> |
2592 Bugfix: | 2637 |
2593 fixed <literal>Object.prototype.hasOwnProperty()</literal> | 2638 <listitem> |
2639 <para> | |
2640 Bugfix: | |
2641 fixed | |
2642 <literal>Object.prototype.hasOwnProperty()</literal> | |
2594 for non-object properties | 2643 for non-object properties |
2595 </para> | 2644 </para> |
2596 </listitem> | 2645 </listitem> |
2597 | 2646 |
2598 <listitem> | 2647 <listitem> |
2625 stream module handlers refactored. | 2674 stream module handlers refactored. |
2626 </para> | 2675 </para> |
2627 | 2676 |
2628 <para> | 2677 <para> |
2629 New methods and properties: | 2678 New methods and properties: |
2630 <link doc="reference.xml" id="s_on">s.on()</link>, | 2679 <link doc="reference.xml" id="s_on"><literal>s.on()</literal></link>, |
2631 <link doc="reference.xml" id="s_off">s.off()</link>, | 2680 <link doc="reference.xml" id="s_off"><literal>s.off()</literal></link>, |
2632 <link doc="reference.xml" id="s_allow">s.allow()</link>, | 2681 <link doc="reference.xml" id="s_allow"><literal>s.allow()</literal></link>, |
2633 <link doc="reference.xml" id="s_done">s.done()</link>, | 2682 <link doc="reference.xml" id="s_done"><literal>s.done()</literal></link>, |
2634 <link doc="reference.xml" id="s_decline">s.decline()</link>, | 2683 <link doc="reference.xml" id="s_decline"><literal>s.decline()</literal></link>, |
2635 <link doc="reference.xml" id="s_deny">s.deny()</link>. | 2684 <link doc="reference.xml" id="s_deny"><literal>s.deny()</literal></link>. |
2636 </para> | 2685 </para> |
2637 | 2686 |
2638 <para> | 2687 <para> |
2639 Removed properties of the | 2688 Removed properties of the |
2640 <link doc="reference.xml" id="stream">Stream</link> object: | 2689 <link doc="reference.xml" id="stream">Stream</link> object: |
2642 <literal>s.ABORT</literal>, | 2691 <literal>s.ABORT</literal>, |
2643 <literal>s.AGAIN</literal>, | 2692 <literal>s.AGAIN</literal>, |
2644 <literal>s.DECLINED</literal>, | 2693 <literal>s.DECLINED</literal>, |
2645 <literal>s.ERROR</literal> | 2694 <literal>s.ERROR</literal> |
2646 (replaced with | 2695 (replaced with |
2647 <link doc="reference.xml" id="s_allow">s.allow()</link>, | 2696 <link doc="reference.xml" id="s_allow"><literal>s.allow()</literal></link>, |
2648 <link doc="reference.xml" id="s_done">s.done()</link>, | 2697 <link doc="reference.xml" id="s_done"><literal>s.done()</literal></link>, |
2649 <link doc="reference.xml" id="s_deny">s.deny()</link>). | 2698 <link doc="reference.xml" id="s_deny"><literal>s.deny()</literal></link>). |
2650 </para> | 2699 </para> |
2651 | 2700 |
2652 <para> | 2701 <para> |
2653 <literal>s.buffer</literal> | 2702 <literal>s.buffer</literal> |
2654 (for reading replaced with data argument of | 2703 (for reading replaced with data argument of |
2655 the corresponding callback, for writing use | 2704 the corresponding callback, for writing use |
2656 <link doc="reference.xml" id="s_send">s.send()</link>). | 2705 <link doc="reference.xml" id="s_send"><literal>s.send()</literal></link>). |
2657 </para> | 2706 </para> |
2658 | 2707 |
2659 <para> | 2708 <para> |
2660 <literal>s.fromUpstream</literal> | 2709 <literal>s.fromUpstream</literal> |
2661 (replaced with a callback for a corresponding event). | 2710 (replaced with a callback for a corresponding event). |
2662 </para> | 2711 </para> |
2663 | 2712 |
2664 <para> | 2713 <para> |
2665 <literal>s.eof</literal> | 2714 <literal>s.eof</literal> |
2666 (replaced with <literal></literal> | 2715 (replaced with <literal></literal> |
2667 <link doc="reference.xml" id="s_on_callback_last">flags.last</link>). | 2716 <link doc="reference.xml" id="s_on_callback_last"><literal>flags.last</literal></link>). |
2668 </para> | 2717 </para> |
2669 | 2718 |
2670 </listitem> | 2719 </listitem> |
2671 | 2720 |
2672 </list> | 2721 </list> |
2677 <list type="bullet"> | 2726 <list type="bullet"> |
2678 | 2727 |
2679 <listitem> | 2728 <listitem> |
2680 <para> | 2729 <para> |
2681 Feature: | 2730 Feature: |
2682 added <literal>Function.prototype.length</literal>. | 2731 added |
2732 <literal>Function.prototype.length</literal>. | |
2683 </para> | 2733 </para> |
2684 </listitem> | 2734 </listitem> |
2685 | 2735 |
2686 <listitem> | 2736 <listitem> |
2687 <para> | 2737 <para> |
2713 </listitem> | 2763 </listitem> |
2714 | 2764 |
2715 <listitem> | 2765 <listitem> |
2716 <para> | 2766 <para> |
2717 Bugfix: | 2767 Bugfix: |
2718 fixed <literal>Object.defineProperty()</literal> for existing properties. | 2768 fixed |
2769 <literal>Object.defineProperty()</literal> for existing properties. | |
2719 </para> | 2770 </para> |
2720 </listitem> | 2771 </listitem> |
2721 | 2772 |
2722 <listitem> | 2773 <listitem> |
2723 <para> | 2774 <para> |
2741 </listitem> | 2792 </listitem> |
2742 | 2793 |
2743 <listitem> | 2794 <listitem> |
2744 <para> | 2795 <para> |
2745 Bugfix: | 2796 Bugfix: |
2746 fixed <literal>Object.prototype.toString</literal> for different value types. | 2797 fixed |
2747 </para> | 2798 <literal>Object.prototype.toString</literal> |
2748 </listitem> | 2799 for different value types. |
2749 | 2800 </para> |
2750 <listitem> | 2801 </listitem> |
2751 <para> | 2802 |
2752 Bugfix: | 2803 <listitem> |
2753 fixed <literal>Object()</literal> constructor for object types arguments. | 2804 <para> |
2805 Bugfix: | |
2806 fixed | |
2807 <literal>Object()</literal> | |
2808 constructor for object types arguments. | |
2754 </para> | 2809 </para> |
2755 </listitem> | 2810 </listitem> |
2756 | 2811 |
2757 <listitem> | 2812 <listitem> |
2758 <para> | 2813 <para> |
2762 </listitem> | 2817 </listitem> |
2763 | 2818 |
2764 <listitem> | 2819 <listitem> |
2765 <para> | 2820 <para> |
2766 Bugfix: | 2821 Bugfix: |
2767 fixed <literal>String.slice()</literal> for undefined arguments. | 2822 fixed |
2823 <literal>String.slice()</literal> | |
2824 for undefined arguments. | |
2768 </para> | 2825 </para> |
2769 </listitem> | 2826 </listitem> |
2770 | 2827 |
2771 <listitem> | 2828 <listitem> |
2772 <para> | 2829 <para> |
2793 <list type="bullet"> | 2850 <list type="bullet"> |
2794 | 2851 |
2795 <listitem> | 2852 <listitem> |
2796 <para> | 2853 <para> |
2797 Bugfix: | 2854 Bugfix: |
2798 making a subrequest from a <literal>Reply</literal> object caused | 2855 making a subrequest from a |
2799 a segmentation fault. | 2856 <literal>Reply</literal> |
2857 object caused a segmentation fault. | |
2800 </para> | 2858 </para> |
2801 </listitem> | 2859 </listitem> |
2802 | 2860 |
2803 <listitem> | 2861 <listitem> |
2804 <para> | 2862 <para> |
2838 </listitem> | 2896 </listitem> |
2839 | 2897 |
2840 <listitem> | 2898 <listitem> |
2841 <para> | 2899 <para> |
2842 Feature: | 2900 Feature: |
2843 <link doc="reference.xml" id="string_bytesfrom">String.bytesFrom()</link> method | 2901 <link doc="reference.xml" id="string_bytesfrom"><literal>String.bytesFrom()</literal></link> method |
2844 (decoding <literal>hex</literal>, | 2902 (decoding <literal>hex</literal>, |
2845 <literal>base64</literal>, | 2903 <literal>base64</literal>, |
2846 <literal>base64url</literal> into a byte string). | 2904 <literal>base64url</literal> into a byte string). |
2847 </para> | 2905 </para> |
2848 </listitem> | 2906 </listitem> |
2849 | 2907 |
2850 <listitem> | 2908 <listitem> |
2851 <para> | 2909 <para> |
2852 Feature: | 2910 Feature: |
2853 <link doc="reference.xml" id="string_padstart">String.padStart()</link> and | 2911 <literal>String.padStart()</literal> and |
2854 <link doc="reference.xml" id="string_padend">String.padEnd()</link> methods. | 2912 <literal>String.padEnd()</literal> |
2913 methods. | |
2855 </para> | 2914 </para> |
2856 </listitem> | 2915 </listitem> |
2857 | 2916 |
2858 <listitem> | 2917 <listitem> |
2859 <para> | 2918 <para> |
2898 </listitem> | 2957 </listitem> |
2899 | 2958 |
2900 <listitem> | 2959 <listitem> |
2901 <para> | 2960 <para> |
2902 Bugfix: | 2961 Bugfix: |
2903 fixed exception handling in <literal>njs_vm_value_to_ext_string()</literal>. | 2962 fixed exception handling in |
2904 </para> | 2963 <literal>njs_vm_value_to_ext_string()</literal>. |
2905 </listitem> | 2964 </para> |
2906 | 2965 </listitem> |
2907 <listitem> | 2966 |
2908 <para> | 2967 <listitem> |
2909 Bugfix: | 2968 <para> |
2910 fixed <literal>Number()</literal> with boolean, null and undefined arguments. | 2969 Bugfix: |
2970 fixed | |
2971 <literal>Number()</literal> with boolean, null and undefined arguments. | |
2911 </para> | 2972 </para> |
2912 </listitem> | 2973 </listitem> |
2913 | 2974 |
2914 <listitem> | 2975 <listitem> |
2915 <para> | 2976 <para> |
3083 <list type="bullet"> | 3144 <list type="bullet"> |
3084 | 3145 |
3085 <listitem> | 3146 <listitem> |
3086 <para> | 3147 <para> |
3087 Bugfix: | 3148 Bugfix: |
3088 fixed heap-buffer-overflow in <literal>crypto.createHmac()</literal>. | 3149 fixed heap-buffer-overflow in |
3150 <literal>crypto.createHmac()</literal>. | |
3089 </para> | 3151 </para> |
3090 </listitem> | 3152 </listitem> |
3091 | 3153 |
3092 </list> | 3154 </list> |
3093 </para> | 3155 </para> |
3175 </listitem> | 3237 </listitem> |
3176 | 3238 |
3177 <listitem> | 3239 <listitem> |
3178 <para> | 3240 <para> |
3179 Bugfix: | 3241 Bugfix: |
3180 fixed crypto <literal>update()</literal> method after | 3242 fixed crypto <literal>update()</literal> method after |
3181 <literal>digest()</literal> is called. | 3243 <literal>digest()</literal> is called. |
3182 </para> | 3244 </para> |
3183 </listitem> | 3245 </listitem> |
3184 | 3246 |
3185 <listitem> | 3247 <listitem> |