Repository navigation
Commit c7f5313
committed
gh-158252: Use explicit directive flags in strptime
Replace positional flags with a lookup table and named masks, so year
and day checks do not depend on the order of a directive string.
Use new_datetime_ex for the exact-type fast path and Py_ISSPACE for
ASCII whitespace. Add tests covering Unicode whitespace in both the
input and format across all four public entry points.1 parent 510c622 commit c7f5313
4 files changed
Lines changed: 77 additions & 20 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1271 | 1271 | | |
1272 | 1272 | | |
1273 | 1273 | | |
| 1274 | + | |
| 1275 | + | |
| 1276 | + | |
| 1277 | + | |
| 1278 | + | |
| 1279 | + | |
| 1280 | + | |
| 1281 | + | |
| 1282 | + | |
| 1283 | + | |
1274 | 1284 | | |
1275 | 1285 | | |
1276 | 1286 | | |
| |||
3181 | 3191 | | |
3182 | 3192 | | |
3183 | 3193 | | |
| 3194 | + | |
| 3195 | + | |
| 3196 | + | |
| 3197 | + | |
| 3198 | + | |
| 3199 | + | |
| 3200 | + | |
| 3201 | + | |
| 3202 | + | |
| 3203 | + | |
| 3204 | + | |
3184 | 3205 | | |
3185 | 3206 | | |
3186 | 3207 | | |
| |||
4403 | 4424 | | |
4404 | 4425 | | |
4405 | 4426 | | |
| 4427 | + | |
| 4428 | + | |
| 4429 | + | |
| 4430 | + | |
| 4431 | + | |
| 4432 | + | |
| 4433 | + | |
| 4434 | + | |
| 4435 | + | |
| 4436 | + | |
| 4437 | + | |
4406 | 4438 | | |
4407 | 4439 | | |
4408 | 4440 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
371 | 371 | | |
372 | 372 | | |
373 | 373 | | |
| 374 | + | |
| 375 | + | |
| 376 | + | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
| 384 | + | |
374 | 385 | | |
375 | 386 | | |
376 | 387 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5882 | 5882 | | |
5883 | 5883 | | |
5884 | 5884 | | |
5885 | | - | |
| 5885 | + | |
5886 | 5886 | | |
5887 | 5887 | | |
5888 | 5888 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1447 | 1447 | | |
1448 | 1448 | | |
1449 | 1449 | | |
1450 | | - | |
1451 | | - | |
1452 | | - | |
1453 | | - | |
1454 | | - | |
1455 | | - | |
1456 | | - | |
1457 | 1450 | | |
1458 | 1451 | | |
1459 | 1452 | | |
| |||
1466 | 1459 | | |
1467 | 1460 | | |
1468 | 1461 | | |
1469 | | - | |
| 1462 | + | |
1470 | 1463 | | |
1471 | 1464 | | |
1472 | 1465 | | |
| |||
1496 | 1489 | | |
1497 | 1490 | | |
1498 | 1491 | | |
| 1492 | + | |
| 1493 | + | |
| 1494 | + | |
| 1495 | + | |
| 1496 | + | |
| 1497 | + | |
| 1498 | + | |
| 1499 | + | |
| 1500 | + | |
| 1501 | + | |
| 1502 | + | |
| 1503 | + | |
| 1504 | + | |
| 1505 | + | |
| 1506 | + | |
| 1507 | + | |
| 1508 | + | |
| 1509 | + | |
| 1510 | + | |
| 1511 | + | |
| 1512 | + | |
| 1513 | + | |
| 1514 | + | |
1499 | 1515 | | |
1500 | 1516 | | |
1501 | 1517 | | |
| |||
1511 | 1527 | | |
1512 | 1528 | | |
1513 | 1529 | | |
1514 | | - | |
1515 | | - | |
| 1530 | + | |
| 1531 | + | |
1516 | 1532 | | |
1517 | 1533 | | |
1518 | | - | |
| 1534 | + | |
1519 | 1535 | | |
1520 | 1536 | | |
1521 | 1537 | | |
1522 | 1538 | | |
1523 | | - | |
| 1539 | + | |
1524 | 1540 | | |
1525 | 1541 | | |
1526 | 1542 | | |
| |||
1541 | 1557 | | |
1542 | 1558 | | |
1543 | 1559 | | |
1544 | | - | |
1545 | | - | |
1546 | | - | |
| 1560 | + | |
| 1561 | + | |
1547 | 1562 | | |
1548 | 1563 | | |
1549 | | - | |
1550 | 1564 | | |
1551 | 1565 | | |
1552 | 1566 | | |
| |||
1620 | 1634 | | |
1621 | 1635 | | |
1622 | 1636 | | |
1623 | | - | |
| 1637 | + | |
1624 | 1638 | | |
1625 | 1639 | | |
1626 | 1640 | | |
| |||
1638 | 1652 | | |
1639 | 1653 | | |
1640 | 1654 | | |
1641 | | - | |
1642 | | - | |
| 1655 | + | |
| 1656 | + | |
1643 | 1657 | | |
1644 | 1658 | | |
1645 | 1659 | | |
| |||
0 commit comments