You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Tree:
808180c206
3.10
3.11
3.12
3.13
3.14
main
2.0
2.1
2.2
2.3
2.4
2.5
2.6
2.7
3.0
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
legacy-trunk
v0.9.8
v0.9.9
v1.0.1
v1.0.2
v1.1
v1.1.1
v1.2
v1.2b1
v1.2b2
v1.2b3
v1.2b4
v1.3
v1.3b1
v1.4
v1.4b1
v1.4b2
v1.4b3
v1.5
v1.5.1
v1.5.2
v1.5.2a1
v1.5.2a2
v1.5.2b1
v1.5.2b2
v1.5.2c1
v1.5a1
v1.5a2
v1.5a3
v1.5a4
v1.5b1
v1.5b2
v1.6a1
v1.6a2
v2.0
v2.0.1
v2.0.1c1
v2.0b1
v2.0b2
v2.0c1
v2.1
v2.1.1
v2.1.1c1
v2.1.2
v2.1.2c1
v2.1.3
v2.1a1
v2.1a2
v2.1b1
v2.1b2
v2.1c1
v2.1c2
v2.2
v2.2.1
v2.2.1c1
v2.2.1c2
v2.2.2
v2.2.2b1
v2.2.3
v2.2.3c1
v2.2a3
v2.3.1
v2.3.2
v2.3.2c1
v2.3.3
v2.3.3c1
v2.3.4
v2.3.4c1
v2.3.5
v2.3.5c1
v2.3.6
v2.3.6c1
v2.3.7
v2.3.7c1
v2.3c1
v2.3c2
v2.4
v2.4.1
v2.4.1c1
v2.4.1c2
v2.4.2
v2.4.2c1
v2.4.3
v2.4.3c1
v2.4.4
v2.4.4c1
v2.4.5
v2.4.5c1
v2.4.6
v2.4.6c1
v2.4a1
v2.4a2
v2.4a3
v2.4b1
v2.4b2
v2.4c1
v2.5
v2.5.1
v2.5.1c1
v2.5.2
v2.5.2c1
v2.5.3
v2.5.3c1
v2.5.4
v2.5.5
v2.5.5c1
v2.5.5c2
v2.5.6
v2.5.6c1
v2.5a0
v2.5a1
v2.5a2
v2.5b1
v2.5b2
v2.5b3
v2.5c1
v2.5c2
v2.6
v2.6.1
v2.6.2
v2.6.2c1
v2.6.3
v2.6.3rc1
v2.6.4
v2.6.4rc1
v2.6.4rc2
v2.6.5
v2.6.5rc1
v2.6.5rc2
v2.6.6
v2.6.6rc1
v2.6.6rc2
v2.6.7
v2.6.8
v2.6.8rc1
v2.6.8rc2
v2.6.9
v2.6.9rc1
v2.6a1
v2.6a2
v2.6a3
v2.6b1
v2.6b2
v2.6b3
v2.6rc1
v2.6rc2
v2.7
v2.7.1
v2.7.10
v2.7.10rc1
v2.7.11
v2.7.11rc1
v2.7.12
v2.7.12rc1
v2.7.13
v2.7.13rc1
v2.7.14
v2.7.14rc1
v2.7.15
v2.7.15rc1
v2.7.16
v2.7.16rc1
v2.7.17
v2.7.17rc1
v2.7.18
v2.7.18rc1
v2.7.1rc1
v2.7.2
v2.7.2rc1
v2.7.3
v2.7.3rc1
v2.7.3rc2
v2.7.4
v2.7.4rc1
v2.7.5
v2.7.6
v2.7.6rc1
v2.7.7
v2.7.7rc1
v2.7.8
v2.7.9
v2.7.9rc1
v2.7a1
v2.7a2
v2.7a3
v2.7a4
v2.7b1
v2.7b2
v2.7rc1
v2.7rc2
v3.0
v3.0.1
v3.0a1
v3.0a2
v3.0a3
v3.0a4
v3.0a5
v3.0b1
v3.0b2
v3.0b3
v3.0rc1
v3.0rc2
v3.0rc3
v3.1
v3.1.1
v3.1.1rc1
v3.1.2
v3.1.2rc1
v3.1.3
v3.1.3rc1
v3.1.4
v3.1.4rc1
v3.1.5
v3.1.5rc1
v3.1.5rc2
v3.10.0
v3.10.0a1
v3.10.0a2
v3.10.0a3
v3.10.0a4
v3.10.0a5
v3.10.0a6
v3.10.0a7
v3.10.0b1
v3.10.0b2
v3.10.0b3
v3.10.0b4
v3.10.0rc1
v3.10.0rc2
v3.10.1
v3.10.10
v3.10.11
v3.10.12
v3.10.13
v3.10.14
v3.10.15
v3.10.16
v3.10.17
v3.10.18
v3.10.19
v3.10.2
v3.10.3
v3.10.4
v3.10.5
v3.10.6
v3.10.7
v3.10.8
v3.10.9
v3.11.0
v3.11.0a1
v3.11.0a2
v3.11.0a3
v3.11.0a4
v3.11.0a5
v3.11.0a6
v3.11.0a7
v3.11.0b1
v3.11.0b2
v3.11.0b3
v3.11.0b4
v3.11.0b5
v3.11.0rc1
v3.11.0rc2
v3.11.1
v3.11.10
v3.11.11
v3.11.12
v3.11.13
v3.11.14
v3.11.2
v3.11.3
v3.11.4
v3.11.5
v3.11.6
v3.11.7
v3.11.8
v3.11.9
v3.12.0
v3.12.0a1
v3.12.0a2
v3.12.0a3
v3.12.0a4
v3.12.0a5
v3.12.0a6
v3.12.0a7
v3.12.0b1
v3.12.0b2
v3.12.0b3
v3.12.0b4
v3.12.0rc1
v3.12.0rc2
v3.12.0rc3
v3.12.1
v3.12.10
v3.12.11
v3.12.12
v3.12.2
v3.12.3
v3.12.4
v3.12.5
v3.12.6
v3.12.7
v3.12.8
v3.12.9
v3.13.0
v3.13.0a1
v3.13.0a2
v3.13.0a3
v3.13.0a4
v3.13.0a5
v3.13.0a6
v3.13.0b1
v3.13.0b2
v3.13.0b3
v3.13.0b4
v3.13.0rc1
v3.13.0rc2
v3.13.0rc3
v3.13.1
v3.13.10
v3.13.11
v3.13.2
v3.13.3
v3.13.4
v3.13.5
v3.13.6
v3.13.7
v3.13.8
v3.13.9
v3.14.0
v3.14.0a1
v3.14.0a2
v3.14.0a3
v3.14.0a4
v3.14.0a5
v3.14.0a6
v3.14.0a7
v3.14.0b1
v3.14.0b2
v3.14.0b3
v3.14.0b4
v3.14.0rc1
v3.14.0rc2
v3.14.0rc3
v3.14.1
v3.14.2
v3.15.0a1
v3.15.0a2
v3.15.0a3
v3.1a1
v3.1a2
v3.1b1
v3.1rc1
v3.1rc2
v3.2
v3.2.1
v3.2.1b1
v3.2.1rc1
v3.2.1rc2
v3.2.2
v3.2.2rc1
v3.2.3
v3.2.3rc1
v3.2.3rc2
v3.2.4
v3.2.4rc1
v3.2.5
v3.2.6
v3.2.6rc1
v3.2a1
v3.2a2
v3.2a3
v3.2a4
v3.2b1
v3.2b2
v3.2rc1
v3.2rc2
v3.2rc3
v3.3.0
v3.3.0a1
v3.3.0a2
v3.3.0a3
v3.3.0a4
v3.3.0b1
v3.3.0b2
v3.3.0rc1
v3.3.0rc2
v3.3.0rc3
v3.3.1
v3.3.1rc1
v3.3.2
v3.3.3
v3.3.3rc1
v3.3.3rc2
v3.3.4
v3.3.4rc1
v3.3.5
v3.3.5rc1
v3.3.5rc2
v3.3.6
v3.3.6rc1
v3.3.7
v3.3.7rc1
v3.4.0
v3.4.0a1
v3.4.0a2
v3.4.0a3
v3.4.0a4
v3.4.0b1
v3.4.0b2
v3.4.0b3
v3.4.0rc1
v3.4.0rc2
v3.4.0rc3
v3.4.1
v3.4.10
v3.4.10rc1
v3.4.1rc1
v3.4.2
v3.4.2rc1
v3.4.3
v3.4.3rc1
v3.4.4
v3.4.4rc1
v3.4.5
v3.4.5rc1
v3.4.6
v3.4.6rc1
v3.4.7
v3.4.7rc1
v3.4.8
v3.4.8rc1
v3.4.9
v3.4.9rc1
v3.5.0
v3.5.0a1
v3.5.0a2
v3.5.0a3
v3.5.0a4
v3.5.0b1
v3.5.0b2
v3.5.0b3
v3.5.0b4
v3.5.0rc1
v3.5.0rc2
v3.5.0rc3
v3.5.0rc4
v3.5.1
v3.5.10
v3.5.10rc1
v3.5.1rc1
v3.5.2
v3.5.2rc1
v3.5.3
v3.5.3rc1
v3.5.4
v3.5.4rc1
v3.5.5
v3.5.5rc1
v3.5.6
v3.5.6rc1
v3.5.7
v3.5.7rc1
v3.5.8
v3.5.8rc1
v3.5.8rc2
v3.5.9
v3.6.0
v3.6.0a1
v3.6.0a2
v3.6.0a3
v3.6.0a4
v3.6.0b1
v3.6.0b2
v3.6.0b3
v3.6.0b4
v3.6.0rc1
v3.6.0rc2
v3.6.1
v3.6.10
v3.6.10rc1
v3.6.11
v3.6.11rc1
v3.6.12
v3.6.13
v3.6.14
v3.6.15
v3.6.1rc1
v3.6.2
v3.6.2rc1
v3.6.2rc2
v3.6.3
v3.6.3rc1
v3.6.4
v3.6.4rc1
v3.6.5
v3.6.5rc1
v3.6.6
v3.6.6rc1
v3.6.7
v3.6.7rc1
v3.6.7rc2
v3.6.8
v3.6.8rc1
v3.6.9
v3.6.9rc1
v3.7.0
v3.7.0a1
v3.7.0a2
v3.7.0a3
v3.7.0a4
v3.7.0b1
v3.7.0b2
v3.7.0b3
v3.7.0b4
v3.7.0b5
v3.7.0rc1
v3.7.1
v3.7.10
v3.7.11
v3.7.12
v3.7.13
v3.7.14
v3.7.15
v3.7.16
v3.7.17
v3.7.1rc1
v3.7.1rc2
v3.7.2
v3.7.2rc1
v3.7.3
v3.7.3rc1
v3.7.4
v3.7.4rc1
v3.7.4rc2
v3.7.5
v3.7.5rc1
v3.7.6
v3.7.6rc1
v3.7.7
v3.7.7rc1
v3.7.8
v3.7.8rc1
v3.7.9
v3.8.0
v3.8.0a1
v3.8.0a2
v3.8.0a3
v3.8.0a4
v3.8.0b1
v3.8.0b2
v3.8.0b3
v3.8.0b4
v3.8.0rc1
v3.8.1
v3.8.10
v3.8.11
v3.8.12
v3.8.13
v3.8.14
v3.8.15
v3.8.16
v3.8.17
v3.8.18
v3.8.19
v3.8.1rc1
v3.8.2
v3.8.20
v3.8.2rc1
v3.8.2rc2
v3.8.3
v3.8.3rc1
v3.8.4
v3.8.4rc1
v3.8.5
v3.8.6
v3.8.6rc1
v3.8.7
v3.8.7rc1
v3.8.8
v3.8.8rc1
v3.8.9
v3.9.0
v3.9.0a1
v3.9.0a2
v3.9.0a3
v3.9.0a4
v3.9.0a5
v3.9.0a6
v3.9.0b1
v3.9.0b2
v3.9.0b3
v3.9.0b4
v3.9.0b5
v3.9.0rc1
v3.9.0rc2
v3.9.1
v3.9.10
v3.9.11
v3.9.12
v3.9.13
v3.9.14
v3.9.15
v3.9.16
v3.9.17
v3.9.18
v3.9.19
v3.9.1rc1
v3.9.2
v3.9.20
v3.9.21
v3.9.22
v3.9.23
v3.9.24
v3.9.25
v3.9.2rc1
v3.9.3
v3.9.4
v3.9.5
v3.9.6
v3.9.7
v3.9.8
v3.9.9
${ noResults }
cpython/Parser
* Add tokenization of := - Add token to Include/token.h. Add token to documentation in Doc/library/token.rst. - Run `./python Lib/token.py` to regenerate Lib/token.py. - Update Parser/tokenizer.c: add case to handle `:=`. * Add initial usage of := in grammar. * Update Python.asdl to match the grammar updates. Regenerated Include/Python-ast.h and Python/Python-ast.c * Update AST and compiler files in Python/ast.c and Python/compile.c. Basic functionality, this isn't scoped properly * Regenerate Lib/symbol.py using `./python Lib/symbol.py` * Tests - Fix failing tests in test_parser.py due to changes in token numbers for internal representation * Tests - Add simple test for := token * Tests - Add simple tests for named expressions using expr and suite * Tests - Update number of levels for nested expressions to prevent stack overflow * Update symbol table to handle NamedExpr * Update Grammar to allow assignment expressions in if statements. Regenerate Python/graminit.c accordingly using `make regen-grammar` * Tests - Add additional tests for named expressions in RoundtripLegalSyntaxTestCase, based on examples and information directly from PEP 572 Note: failing tests are currently commented out (4 out of 24 tests currently fail) * Tests - Add temporary syntax test failure tests in test_parser.py Note: There is an outstanding TODO for this -- syntax tests need to be moved to a different file (presumably test_syntax.py), but this is covering what needs to be tested at the moment, and it's more convenient to run a single test for the time being * Add support for allowing assignment expressions as function argument annotations. Uncomment tests for these cases because they all pass now! * Tests - Move existing syntax tests out of test_parser.py and into test_named_expressions.py. Refactor syntax tests to use unittest * Add TargetScopeError exception to extend SyntaxError Note: This simply creates the TargetScopeError exception, it is not yet used anywhere * Tests - Update tests per PEP 572 Continue refactoring test suite: The named expression test suite now checks for any invalid cases that throw exceptions (no longer limited to SyntaxErrors), assignment tests to ensure that variables are properly assigned, and scope tests to ensure that variable availability and values are correct Note: - There are still tests that are marked to skip, as they are not yet implemented - There are approximately 300 lines of the PEP that have not yet been addressed, though these may be deferred * Documentation - Small updates to XXX/todo comments - Remove XXX from child description in ast.c - Add comment with number of previously supported nested expressions for 3.7.X in test_parser.py * Fix assert in seq_for_testlist() * Cleanup - Denote "Not implemented -- No keyword args" on failing test case. Fix PEP8 error for blank lines at beginning of test classes in test_parser.py * Tests - Wrap all file opens in `with...as` to ensure files are closed * WIP: handle f(a := 1) * Tests and Cleanup - No longer skips keyword arg test. Keyword arg test now uses a simpler test case and does not rely on an external file. Remove print statements from ast.c * Tests - Refactor last remaining test case that relied on on external file to use a simpler test case without the dependency * Tests - Add better description of remaning skipped tests. Add test checking scope when using assignment expression in a function argument * Tests - Add test for nested comprehension, testing value and scope. Fix variable name in skipped comprehension scope test * Handle restriction of LHS for named expressions - can only assign to LHS of type NAME. Specifically, restrict assignment to tuples This adds an alternative set_context specifically for named expressions, set_namedexpr_context. Thus, context is now set differently for standard assignment versus assignment for named expressions in order to handle restrictions. * Tests - Update negative test case for assigning to lambda to match new error message. Add negative test case for assigning to tuple * Tests - Reorder test cases to group invalid syntax cases and named assignment target errors * Tests - Update test case for named expression in function argument - check that result and variable are set correctly * Todo - Add todo for TargetScopeError based on Guido's comment ( |
7 years ago | |
|---|---|---|
| .. | ||
| Python.asdl | bpo-35224: PEP 572 Implementation (#10497) | 7 years ago |
| acceler.c | Untabify C files. Will watch buildbots. | 16 years ago |
| asdl.py | Add ast.Constant | 10 years ago |
| asdl_c.py | bpo-33416: Add end positions to Python AST (GH-11605) | 7 years ago |
| bitset.c | Untabify C files. Will watch buildbots. | 16 years ago |
| firstsets.c | Untabify C files. Will watch buildbots. | 16 years ago |
| grammar.c | properly free memory in pgen | 9 years ago |
| grammar1.c | bpo-31338 (#3374) | 8 years ago |
| listnode.c | Use NULL rather than 0. (#778) | 9 years ago |
| metagrammar.c | Untabify C files. Will watch buildbots. | 16 years ago |
| myreadline.c | bpo-35436: Add missing PyErr_NoMemory() calls and other minor bug fixes. (GH-11015) | 7 years ago |
| node.c | bpo-33416: Add end positions to Python AST (GH-11605) | 7 years ago |
| parser.c | bpo-33416: Add end positions to Python AST (GH-11605) | 7 years ago |
| parser.h | bpo-35224: PEP 572 Implementation (#10497) | 7 years ago |
| parsetok.c | bpo-33416: Add end positions to Python AST (GH-11605) | 7 years ago |
| parsetok_pgen.c | Issue #13590: Improve support for OS X Xcode 4: | 14 years ago |
| pgen.c | properly free memory in pgen | 9 years ago |
| pgenmain.c | bpo-35081: Rename internal headers (GH-10275) | 7 years ago |
| printgrammar.c | closes bpo-34646: Remove PyAPI_* macros from declarations. (GH-9218) | 7 years ago |
| token.c | bpo-35224: PEP 572 Implementation (#10497) | 7 years ago |
| tokenizer.c | bpo-16806: Fix `lineno` and `col_offset` for multi-line string tokens (GH-10021) | 7 years ago |
| tokenizer.h | bpo-16806: Fix `lineno` and `col_offset` for multi-line string tokens (GH-10021) | 7 years ago |
| tokenizer_pgen.c | Patch #534304: Implement phase 1 of PEP 263. | 24 years ago |