Title: Please expose Expat >=2.6.0 API function `XML_SetReparseDeferralEnabled` · Issue #115398 · python/cpython · GitHub
Open Graph Title: Please expose Expat >=2.6.0 API function `XML_SetReparseDeferralEnabled` · Issue #115398 · python/cpython
X Title: Please expose Expat >=2.6.0 API function `XML_SetReparseDeferralEnabled` · Issue #115398 · python/cpython
Description: Feature or enhancement Proposal: Hello CPython team! 👋 Expat 2.6.0 introduced a new function XML_SetReparseDeferralEnabled that currently neither xml.parsers.expat.XMLParserType of pyexpat nor xml.etree.ElementTree.XMLParser of ElementTr...
Open Graph Description: Feature or enhancement Proposal: Hello CPython team! 👋 Expat 2.6.0 introduced a new function XML_SetReparseDeferralEnabled that currently neither xml.parsers.expat.XMLParserType of pyexpat nor xml....
X Description: Feature or enhancement Proposal: Hello CPython team! 👋 Expat 2.6.0 introduced a new function XML_SetReparseDeferralEnabled that currently neither xml.parsers.expat.XMLParserType of pyexpat nor xml....
Opengraph URL: https://github.com/python/cpython/issues/115398
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Please expose Expat \u003e=2.6.0 API function `XML_SetReparseDeferralEnabled`","articleBody":"# Feature or enhancement\r\n\r\n### Proposal:\r\n\r\nHello CPython team! :wave: \r\n\r\nExpat 2.6.0 introduced a new [function `XML_SetReparseDeferralEnabled`](https://libexpat.github.io/doc/api/latest/#XML_SetReparseDeferralEnabled) that currently neither [`xml.parsers.expat.XMLParserType` of pyexpat](https://docs.python.org/3/library/pyexpat.html#xmlparser-objects) nor [`xml.etree.ElementTree.XMLParser` of ElementTree](https://docs.python.org/3/library/xml.etree.elementtree.html#xml.etree.ElementTree.XMLParser) give access to it, so when some Python-based library or application finds themselves in a situation where toggling reparse deferral is beneficial or needed for their scenario in the future, they will not be able to do so with ease or at all.\r\n\r\nPlease note that this is a sibling ticket to #90949 in some sense and implementations could be combined or done in one go, potentially.\r\n\r\nAlso please note that…\r\n- for [`xml.etree.ElementTree.XMLParser`](https://docs.python.org/3/library/xml.etree.elementtree.html#xmlparser-objects) a new method `def flush(self):` could be a reasonable API addition based on the idea https://github.com/python/cpython/pull/115138#issuecomment-1932444270 ;\r\n- the same seems to apply to [`xml.sax.xmlreader.IncrementalParser`](https://docs.python.org/3/library/xml.sax.reader.html#xml.sax.xmlreader.IncrementalParser).\r\n\r\nI cannot provide a pull request on the topic economically myself unfortunately, but I am happy to support any related efforts (including voice calls on the topic as needed). Thanks in advance!\r\n\r\nBest, Sebastian\r\n\r\nCC #90949\r\nCC #115133\r\n\r\n### Has this already been discussed elsewhere?\r\n\r\nThis is a minor feature, which does not need previous discussion elsewhere\r\n\r\n### Links to previous discussion of this feature:\r\n\r\n_No response_\n\n\u003c!-- gh-linked-prs --\u003e\n### Linked PRs\n* gh-115623\n* gh-116248\n* gh-116268\n* gh-116270\n* gh-116272\n* gh-116275\n* gh-116278\n* gh-116301\n* gh-116411\n\u003c!-- /gh-linked-prs --\u003e\n","author":{"url":"https://github.com/hartwork","@type":"Person","name":"hartwork"},"datePublished":"2024-02-13T10:36:55.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":6},"url":"https://github.com/115398/cpython/issues/115398"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:5459a6a5-0737-01ca-664a-9f26029c44d0 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | 917E:305E50:598786F:7E00ED9:6A572DCB |
| html-safe-nonce | 073f6dcd25ae97ecbf98c3c4486228da7d3bdd7cc02a2f64756196d53ae8354f |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI5MTdFOjMwNUU1MDo1OTg3ODZGOjdFMDBFRDk6NkE1NzJEQ0IiLCJ2aXNpdG9yX2lkIjoiNjY5MDc1Nzk0MzA2MjExMzczOSIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | fdd0627a4ed79c9a6de9c62250c5d4d4a8aa414717aad58c40dde2e85f788e3b |
| hovercard-subject-tag | issue:2132000761 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/python/cpython/115398/issue_layout |
| twitter:image | https://opengraph.githubassets.com/4a0360d801c6c09a6e73fe50eb79cba9cc0747da77e4cb00111444bacb815b50/python/cpython/issues/115398 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/4a0360d801c6c09a6e73fe50eb79cba9cc0747da77e4cb00111444bacb815b50/python/cpython/issues/115398 |
| og:image:alt | Feature or enhancement Proposal: Hello CPython team! 👋 Expat 2.6.0 introduced a new function XML_SetReparseDeferralEnabled that currently neither xml.parsers.expat.XMLParserType of pyexpat nor xml.... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | hartwork |
| hostname | github.com |
| expected-hostname | github.com |
| None | 4e7a7296a3830877cf21a6ad2a972c9e618a48915e03966cf0c53eb08e5aad98 |
| turbo-cache-control | no-preview |
| go-import | github.com/python/cpython git https://github.com/python/cpython.git |
| octolytics-dimension-user_id | 1525981 |
| octolytics-dimension-user_login | python |
| octolytics-dimension-repository_id | 81598961 |
| octolytics-dimension-repository_nwo | python/cpython |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 81598961 |
| octolytics-dimension-repository_network_root_nwo | python/cpython |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 2576d1f0198cf1588faf2edf27f1ed120903be10 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width