René's URL Explorer Experiment


Title: bpo-33416: Add end positions to Python AST by ilevkivskyi · Pull Request #11605 · python/cpython · GitHub

Open Graph Title: bpo-33416: Add end positions to Python AST by ilevkivskyi · Pull Request #11605 · python/cpython

X Title: bpo-33416: Add end positions to Python AST by ilevkivskyi · Pull Request #11605 · python/cpython

Description: The majority of this PR is tediously passing end_lineno and end_col_offset everywhere. Here are non-trivial points: It is not possible to reconstruct end positions in AST "on the fly", some information is lost after an AST node is constructed, so we need two more attributes for every AST node end_lineno and end_col_offset. I add end position information to both CST and AST. Although it may be technically possible to avoid adding end positions to CST, the code becomes more cumbersome and less efficient. Since the end position is not known for non-leaf CST nodes while the next token is added, this requires a bit of extra care (see _PyNode_FinalizeEndPos). Unless I made some mistake, the algorithm should be linear. For statements, I "trim" the end position of suites to not include the terminal newlines and dedent (this seems to be what people would expect), for example in class C: pass pass the end line and end column for the class definition is (2, 8). For end_col_offset I use the common Python convention for indexing, for example for pass the end_col_offset is 4 (not 3), so that [0:4] gives one the source code that corresponds to the node. I added a helper function ast.get_source_segment(), to get source text segment corresponding to a given AST node. It is also useful for testing. An (inevitable) downside of this PR is that AST now takes almost 25% more memory. I think however it is probably justified by the benefits. https://bugs.python.org/issue33416

Open Graph Description: The majority of this PR is tediously passing end_lineno and end_col_offset everywhere. Here are non-trivial points: It is not possible to reconstruct end positions in AST "on the fly", s...

X Description: The majority of this PR is tediously passing end_lineno and end_col_offset everywhere. Here are non-trivial points: It is not possible to reconstruct end positions in AST "on the fly&...

Opengraph URL: https://github.com/python/cpython/pull/11605

X: @github

direct link

Domain: github.com

route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:5d34fa79-cfcc-baff-df8a-44616f49ebc6
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idB156:37F578:1360352:1C2AA25:6A5619C6
html-safe-nonced3f65d842ec0ae8de8442d39494cce9bde573f477faa3fc389c8c32dc836d94c
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJCMTU2OjM3RjU3ODoxMzYwMzUyOjFDMkFBMjU6NkE1NjE5QzYiLCJ2aXNpdG9yX2lkIjoiNTE5NDg2NzY3NDc3ODU3MzI1NCIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmac22f8f942b028713e3a9331b63157618d56b2c2a9f96ba9300632316e91a20a49
hovercard-subject-tagpull_request:245784669
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///pull_requests/show/files
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/python/cpython/pull/11605/files
twitter:imagehttps://avatars.githubusercontent.com/u/12005495?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/12005495?s=400&v=4
og:image:altThe majority of this PR is tediously passing end_lineno and end_col_offset everywhere. Here are non-trivial points: It is not possible to reconstruct end positions in AST "on the fly", s...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
Nonef4368738fc918fecd9b3958f6b49218bbe60d4185f38e72e3954e11f1ad0213a
turbo-cache-controlno-preview
diff-viewunified
go-importgithub.com/python/cpython git https://github.com/python/cpython.git
octolytics-dimension-user_id1525981
octolytics-dimension-user_loginpython
octolytics-dimension-repository_id81598961
octolytics-dimension-repository_nwopython/cpython
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id81598961
octolytics-dimension-repository_network_root_nwopython/cpython
turbo-body-classeslogged-out env-production page-responsive full-width
disable-turbotrue
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
releaseb76b9cc70d30da50674184c9c66c56423fd0b93c
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/python/cpython/pull/11605/files#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython%2Fcpython%2Fpull%2F11605%2Ffiles
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/open-source/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/open-source/accelerator
GitHub Starshttps://stars.github.com
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/enterprise/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython%2Fcpython%2Fpull%2F11605%2Ffiles
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fpull_requests%2Fshow%2Ffiles&source=header-repo&source_repo=python%2Fcpython
Reloadhttps://github.com/python/cpython/pull/11605/files
Reloadhttps://github.com/python/cpython/pull/11605/files
Reloadhttps://github.com/python/cpython/pull/11605/files
Please reload this pagehttps://github.com/python/cpython/pull/11605/files
python https://github.com/python
cpythonhttps://github.com/python/cpython
Please reload this pagehttps://github.com/python/cpython/pull/11605/files
Notifications https://github.com/login?return_to=%2Fpython%2Fcpython
Fork 35k https://github.com/login?return_to=%2Fpython%2Fcpython
Star 73.8k https://github.com/login?return_to=%2Fpython%2Fcpython
Code https://github.com/python/cpython
Issues 5k+ https://github.com/python/cpython/issues
Pull requests 2.3k https://github.com/python/cpython/pulls
Actions https://github.com/python/cpython/actions
Projects https://github.com/python/cpython/projects
Security and quality 0 https://github.com/python/cpython/security
Insights https://github.com/python/cpython/pulse
Code https://github.com/python/cpython
Issues https://github.com/python/cpython/issues
Pull requests https://github.com/python/cpython/pulls
Actions https://github.com/python/cpython/actions
Projects https://github.com/python/cpython/projects
Security and quality https://github.com/python/cpython/security
Insights https://github.com/python/cpython/pulse
Sign up for GitHub https://github.com/signup?return_to=%2Fpython%2Fcpython%2Fissues%2Fnew%2Fchoose
terms of servicehttps://docs.github.com/terms
privacy statementhttps://docs.github.com/privacy
Sign inhttps://github.com/login?return_to=%2Fpython%2Fcpython%2Fissues%2Fnew%2Fchoose
ilevkivskyihttps://github.com/ilevkivskyi
python:masterhttps://github.com/python/cpython/tree/master
ilevkivskyi:add-end-line-colhttps://github.com/ilevkivskyi/cpython/tree/add-end-line-col
Conversation 50 https://github.com/python/cpython/pull/11605
Commits 37 https://github.com/python/cpython/pull/11605/commits
Checks 0 https://github.com/python/cpython/pull/11605/checks
Files changed https://github.com/python/cpython/pull/11605/files
Please reload this pagehttps://github.com/python/cpython/pull/11605/files
bpo-33416: Add end positions to Python AST https://github.com/python/cpython/pull/11605/files#top
Show all changes 37 commits https://github.com/python/cpython/pull/11605/files
ba4ba82 Some initial infra ilevkivskyi Jan 6, 2019 https://github.com/python/cpython/pull/11605/commits/ba4ba82d4f2772e01d9832572cbbfca81475874e
3e343e3 Regenerate nodes ilevkivskyi Jan 6, 2019 https://github.com/python/cpython/pull/11605/commits/3e343e3a57006bacd02a989e1b20fc107f21105e
1684c17 Mindless implementation: known bugs, notably in fstrings ilevkivskyi Jan 6, 2019 https://github.com/python/cpython/pull/11605/commits/1684c17c10662ffdae69a60dc48955b93848e165
514d4ea Some test fixes ilevkivskyi Jan 7, 2019 https://github.com/python/cpython/pull/11605/commits/514d4eac93f321f946b3b70d0867ed0317a7fd65
3ab2516 More test fixes ilevkivskyi Jan 7, 2019 https://github.com/python/cpython/pull/11605/commits/3ab2516e01c4f654bbd65086a85ecbe28f8ab46c
1d3e352 Add a TODO ilevkivskyi Jan 8, 2019 https://github.com/python/cpython/pull/11605/commits/1d3e352ad552c7aa243d40a15b0dde31db9b8e7e
dbf9cc9 Switch to better algorithm for finding end position ilevkivskyi Jan 13, 2019 https://github.com/python/cpython/pull/11605/commits/dbf9cc96e1a03608d1727a187356b855601f38ee
a44207b Merge remote-tracking branch 'upstream/master' into add-end-line-col ilevkivskyi Jan 13, 2019 https://github.com/python/cpython/pull/11605/commits/a44207b7449e89342a03d12f275c68d750b9994e
5af33da Be consistent for line_num ilevkivskyi Jan 13, 2019 https://github.com/python/cpython/pull/11605/commits/5af33da74d7b35f4734102ff45fb9ab23820c532
ce7f5ce Minor fixes; start adding tests ilevkivskyi Jan 13, 2019 https://github.com/python/cpython/pull/11605/commits/ce7f5ce83ad050b17dcaf17697545d566b9d0b71
2171eb9 Update two failing tests ilevkivskyi Jan 13, 2019 https://github.com/python/cpython/pull/11605/commits/2171eb9dd1b842995bddd91aece1183e13caaed6
10cf4bd Fix multiline strings ilevkivskyi Jan 14, 2019 https://github.com/python/cpython/pull/11605/commits/10cf4bd6b247bfb695b6c7d578b6d081d8f2381f
ed05305 Fix end position for if statement ilevkivskyi Jan 15, 2019 https://github.com/python/cpython/pull/11605/commits/ed053052184bb164b206f03e4a84a96c324c4f91
58fbfa6 Adjust end positions in while and for ilevkivskyi Jan 15, 2019 https://github.com/python/cpython/pull/11605/commits/58fbfa67c19e3dd9eb8402e0d610a756b67a4217
f2589ff Add also with ilevkivskyi Jan 15, 2019 https://github.com/python/cpython/pull/11605/commits/f2589ff131b0296c61dd6ed1e27078bb1603503c
7d5ca5e Fix try end position (concludes fixing suites) ilevkivskyi Jan 15, 2019 https://github.com/python/cpython/pull/11605/commits/7d5ca5ea7477aa56c320bea8c50d2feab2cfc36f
aa62e3c Some formatting plus minor fixes ilevkivskyi Jan 15, 2019 https://github.com/python/cpython/pull/11605/commits/aa62e3c70a3e55eac4663575628e591530b937a3
96a0ec0 More formatting; fix import from ilevkivskyi Jan 16, 2019 https://github.com/python/cpython/pull/11605/commits/96a0ec098529f20b702badac6ef9a2644154b02d
c169025 Fix f-strings ilevkivskyi Jan 16, 2019 https://github.com/python/cpython/pull/11605/commits/c169025152f080bdfcdb6068a94cf67e5082f1da
553a772 Add few more tests ilevkivskyi Jan 16, 2019 https://github.com/python/cpython/pull/11605/commits/553a7725633c213a0567e0afdabe38de2318cd00
5cc01e9 Add final bunch of tests ilevkivskyi Jan 17, 2019 https://github.com/python/cpython/pull/11605/commits/5cc01e906c72f0fd171867f6c0f4622f42f6fe8c
dce260e Update docstrings ilevkivskyi Jan 17, 2019 https://github.com/python/cpython/pull/11605/commits/dce260ed7e52034741c6c587c50c6b50b72ab325
9ba6604 Update docs ilevkivskyi Jan 17, 2019 https://github.com/python/cpython/pull/11605/commits/9ba66049cbb5884769e71415d94dfd86741f5931
69a6280 Add get_source_segment() helper ilevkivskyi Jan 17, 2019 https://github.com/python/cpython/pull/11605/commits/69a6280442be5c1c9a7e20c54e1fe3e3afbda699
4af426f Consistent formatting in docstring; use new helper in tests ilevkivskyi Jan 17, 2019 https://github.com/python/cpython/pull/11605/commits/4af426fdbde8b7f5eecbf7071cea6e61ae8d348b
e5a12c3 Fix bug ilevkivskyi Jan 17, 2019 https://github.com/python/cpython/pull/11605/commits/e5a12c30f9b62da25241cfc9a95f906e6a96f1d4
0275a93 Split few long lines ilevkivskyi Jan 17, 2019 https://github.com/python/cpython/pull/11605/commits/0275a93539b41074d4ffcc0999de7fddb2b0cf31
f20635b Add tests and docs gor the helper ilevkivskyi Jan 18, 2019 https://github.com/python/cpython/pull/11605/commits/f20635b255ee6e57b28a4253aed8c13803287435
c9da8f5 Fix missing comma ilevkivskyi Jan 18, 2019 https://github.com/python/cpython/pull/11605/commits/c9da8f54c45e3dff3308acffcf07964aad025564
f97f38a 📜🤖 Added by blurb_it. blurb-it[bot] Jan 18, 2019 https://github.com/python/cpython/pull/11605/commits/f97f38a111382730da82200dfd35e5f3a5236027
70cc16c Fix .rst warning and a smelly symbol ilevkivskyi Jan 18, 2019 https://github.com/python/cpython/pull/11605/commits/70cc16c7bf767f9b77cb0846f12da2a3a34de033
48936b9 Fix get_source_segment ilevkivskyi Jan 19, 2019 https://github.com/python/cpython/pull/11605/commits/48936b9b3f7205e036bc4676f220fde850a91f79
ac5b5cb More CR ilevkivskyi Jan 19, 2019 https://github.com/python/cpython/pull/11605/commits/ac5b5cb7617180306f1668b0ce73ea2a8dd56c6a
4726f17 rst fixes ilevkivskyi Jan 19, 2019 https://github.com/python/cpython/pull/11605/commits/4726f17bfe0dce24e9671d0f14bebe7b2f7188fd
eeea87d Remove unused vars ilevkivskyi Jan 19, 2019 https://github.com/python/cpython/pull/11605/commits/eeea87d87f4d58649f7faee9bb75ec05268fa074
027a4ca 📜🤖 Added by blurb_it. blurb-it[bot] Jan 19, 2019 https://github.com/python/cpython/pull/11605/commits/027a4cae21cf8ce25ea8c9168b856ee37b038099
ff361f2 Remove old NEWS file ilevkivskyi Jan 19, 2019 https://github.com/python/cpython/pull/11605/commits/ff361f26b3aabb8c27706b399f5d03f922d7ea61
Clear filters https://github.com/python/cpython/pull/11605/files
Please reload this pagehttps://github.com/python/cpython/pull/11605/files
Please reload this pagehttps://github.com/python/cpython/pull/11605/files
ast.rst https://github.com/python/cpython/pull/11605/files#diff-2001e0882d63f99ea9256cccc068969c03afa6dca739cf2ee1f5068d4534ab08
Python-ast.h https://github.com/python/cpython/pull/11605/files#diff-aa47c9a4ecdd799c2932afef25673bf9c33ec9ef75f1bc6054b924bea602c747
node.h https://github.com/python/cpython/pull/11605/files#diff-d86c5e17c9a16edda507c509843279051d82f0b4d8d97147ec4d549acb5b9ccf
ast.py https://github.com/python/cpython/pull/11605/files#diff-abeeed217a24ce3c21e15c2e32e2f0886cea69986c2641455c1eefc983c1f977
test_asdl_parser.py https://github.com/python/cpython/pull/11605/files#diff-9d5a6370d2afd7ed1f3ed05b9c65fd65a0054822eb855c413c2582840582a0f0
test_ast.py https://github.com/python/cpython/pull/11605/files#diff-3f516b60719dd445d33225e4f316b36e85c9c51a843a0147349d11a005c55937
test_parser.py https://github.com/python/cpython/pull/11605/files#diff-d93e7572b76bff572320c40b6906d4be533871949bb93d66a528ab625a34da3e
2019-01-19-19-41-53.bpo-33416.VDeOU5.rst https://github.com/python/cpython/pull/11605/files#diff-2b6ff171f03b158de5aacf0d6932a63e678fa2933cec049a810a038134f5a5ba
parsermodule.c https://github.com/python/cpython/pull/11605/files#diff-6dad708535a25559cbf5bed55ee78342dc3fcfee124f5153c0d5d2232b76b313
Python.asdl https://github.com/python/cpython/pull/11605/files#diff-56cfb21eb86b07bb94e916eb74143c7d6c2ac6f2494216c0e2507fd080c34aed
asdl_c.py https://github.com/python/cpython/pull/11605/files#diff-c4dd13901c011c278fe5b6d175fdd23ed94e51568fe6b2ee4215d5ab376be9a8
node.c https://github.com/python/cpython/pull/11605/files#diff-38a85afccbb65ffe5b01b0dda2f45251b47ffedae65d657df9e1a41f04385b11
parser.c https://github.com/python/cpython/pull/11605/files#diff-6d39440cedc67d1ce7a0586bfb6ecb8483803448a9c93f3fae3ad0e2260e29f7
parser.h https://github.com/python/cpython/pull/11605/files#diff-6622a6bd6464924e24424528f02317003e36f0874fbbcae4c3a74898d74abffa
parsetok.c https://github.com/python/cpython/pull/11605/files#diff-4f288ddeb5a08a904223ec054b3f2fa2380ecdb76951e11fe7192ea6536bae44
Python-ast.c https://github.com/python/cpython/pull/11605/files#diff-0258ad568d1bc0a5fa1c949351df0cc72a0a63441a1ed78c77d59f5695704857
ast.c https://github.com/python/cpython/pull/11605/files#diff-63309d32b22eaebd869b7ac0d2d4d02f95bd7ff5de2ba042d07c8e6962af8bbc
ast_opt.c https://github.com/python/cpython/pull/11605/files#diff-7a65e647c7985eb08fdefdab01ccdd2505c86ecdee2fa856fc9627c552ded146
compile.c https://github.com/python/cpython/pull/11605/files#diff-ebc983d9f91e5bcf73500e377ac65e85863c4f77fd5b6b6caf4fcdf7c0f0b057
Doc/library/ast.rsthttps://github.com/python/cpython/pull/11605/files#diff-2001e0882d63f99ea9256cccc068969c03afa6dca739cf2ee1f5068d4534ab08
View file https://github.com/ilevkivskyi/cpython/blob/ff361f26b3aabb8c27706b399f5d03f922d7ea61/Doc/library/ast.rst
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/11605/{{ revealButtonHref }}
https://github.com/python/cpython/pull/11605/files#diff-2001e0882d63f99ea9256cccc068969c03afa6dca739cf2ee1f5068d4534ab08
https://github.com/python/cpython/pull/11605/files#diff-2001e0882d63f99ea9256cccc068969c03afa6dca739cf2ee1f5068d4534ab08
https://github.com/python/cpython/pull/11605/files#diff-2001e0882d63f99ea9256cccc068969c03afa6dca739cf2ee1f5068d4534ab08
https://github.com/python/cpython/pull/11605/files#diff-2001e0882d63f99ea9256cccc068969c03afa6dca739cf2ee1f5068d4534ab08
gvanrossumhttps://github.com/gvanrossum
Jan 18, 2019https://github.com/python/cpython/pull/11605/files#r249112592
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/python/cpython/pull/11605/files
ilevkivskyihttps://github.com/ilevkivskyi
Jan 19, 2019https://github.com/python/cpython/pull/11605/files#r249254528
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/python/cpython/pull/11605/files
https://github.com/python/cpython/pull/11605/files#diff-2001e0882d63f99ea9256cccc068969c03afa6dca739cf2ee1f5068d4534ab08
Include/Python-ast.hhttps://github.com/python/cpython/pull/11605/files#diff-aa47c9a4ecdd799c2932afef25673bf9c33ec9ef75f1bc6054b924bea602c747
View file https://github.com/ilevkivskyi/cpython/blob/ff361f26b3aabb8c27706b399f5d03f922d7ea61/Include/Python-ast.h
Open in desktop https://desktop.github.com
Please reload this pagehttps://github.com/python/cpython/pull/11605/files
Include/node.hhttps://github.com/python/cpython/pull/11605/files#diff-d86c5e17c9a16edda507c509843279051d82f0b4d8d97147ec4d549acb5b9ccf
View file https://github.com/ilevkivskyi/cpython/blob/ff361f26b3aabb8c27706b399f5d03f922d7ea61/Include/node.h
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/11605/{{ revealButtonHref }}
https://github.com/python/cpython/pull/11605/files#diff-d86c5e17c9a16edda507c509843279051d82f0b4d8d97147ec4d549acb5b9ccf
https://github.com/python/cpython/pull/11605/files#diff-d86c5e17c9a16edda507c509843279051d82f0b4d8d97147ec4d549acb5b9ccf
https://github.com/python/cpython/pull/11605/files#diff-d86c5e17c9a16edda507c509843279051d82f0b4d8d97147ec4d549acb5b9ccf
Lib/ast.pyhttps://github.com/python/cpython/pull/11605/files#diff-abeeed217a24ce3c21e15c2e32e2f0886cea69986c2641455c1eefc983c1f977
View file https://github.com/ilevkivskyi/cpython/blob/ff361f26b3aabb8c27706b399f5d03f922d7ea61/Lib/ast.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/11605/{{ revealButtonHref }}
https://github.com/python/cpython/pull/11605/files#diff-abeeed217a24ce3c21e15c2e32e2f0886cea69986c2641455c1eefc983c1f977
https://github.com/python/cpython/pull/11605/files#diff-abeeed217a24ce3c21e15c2e32e2f0886cea69986c2641455c1eefc983c1f977
gvanrossumhttps://github.com/gvanrossum
Jan 18, 2019https://github.com/python/cpython/pull/11605/files#r249114715
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/python/cpython/pull/11605/files
ilevkivskyihttps://github.com/ilevkivskyi
Jan 19, 2019https://github.com/python/cpython/pull/11605/files#r249254668
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/python/cpython/pull/11605/files
https://github.com/python/cpython/pull/11605/files#diff-abeeed217a24ce3c21e15c2e32e2f0886cea69986c2641455c1eefc983c1f977
https://github.com/python/cpython/pull/11605/files#diff-abeeed217a24ce3c21e15c2e32e2f0886cea69986c2641455c1eefc983c1f977
ilevkivskyihttps://github.com/ilevkivskyi
Jan 19, 2019https://github.com/python/cpython/pull/11605/files#r249255535
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/python/cpython/pull/11605/files
https://github.com/python/cpython/pull/11605/files#diff-abeeed217a24ce3c21e15c2e32e2f0886cea69986c2641455c1eefc983c1f977
Lib/test/test_asdl_parser.pyhttps://github.com/python/cpython/pull/11605/files#diff-9d5a6370d2afd7ed1f3ed05b9c65fd65a0054822eb855c413c2582840582a0f0
View file https://github.com/ilevkivskyi/cpython/blob/ff361f26b3aabb8c27706b399f5d03f922d7ea61/Lib/test/test_asdl_parser.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/python/cpython/pull/11605/{{ revealButtonHref }}
https://github.com/python/cpython/pull/11605/files#diff-9d5a6370d2afd7ed1f3ed05b9c65fd65a0054822eb855c413c2582840582a0f0
serhiy-storchakahttps://github.com/serhiy-storchaka
Jan 19, 2019https://github.com/python/cpython/pull/11605/files#r249241584
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/python/cpython/pull/11605/files
ilevkivskyihttps://github.com/ilevkivskyi
Jan 19, 2019https://github.com/python/cpython/pull/11605/files#r249255092
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/python/cpython/pull/11605/files
https://github.com/python/cpython/pull/11605/files#diff-9d5a6370d2afd7ed1f3ed05b9c65fd65a0054822eb855c413c2582840582a0f0
Please reload this pagehttps://github.com/python/cpython/pull/11605/files
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.