René's URL Explorer Experiment


Title: The preview of the new Python 3 port has broken HTML escaping in the XML feeds · Issue #582 · python/planet · GitHub

Open Graph Title: The preview of the new Python 3 port has broken HTML escaping in the XML feeds · Issue #582 · python/planet

X Title: The preview of the new Python 3 port has broken HTML escaping in the XML feeds · Issue #582 · python/planet

Description: I am using: O.S: Fedora 40 Browser: Firefox 131.0.2 Platform: desktop Problem The preview of the new Python 3 port has broken HTML escaping in the XML feeds eg try to view this in the browser: https://planetpython.org/3/rss10.xml and it ...

Open Graph Description: I am using: O.S: Fedora 40 Browser: Firefox 131.0.2 Platform: desktop Problem The preview of the new Python 3 port has broken HTML escaping in the XML feeds eg try to view this in the browser: http...

X Description: I am using: O.S: Fedora 40 Browser: Firefox 131.0.2 Platform: desktop Problem The preview of the new Python 3 port has broken HTML escaping in the XML feeds eg try to view this in the browser: http...

Opengraph URL: https://github.com/python/planet/issues/582

X: @github

direct link

Domain: patch-diff.githubusercontent.com


Hey, it has json ld scripts:
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"The preview of the new Python 3 port has broken HTML escaping in the XML feeds","articleBody":"I am using:  \r\n**O.S**:  Fedora 40\r\n**Browser**:  Firefox 131.0.2\r\n**Platform**: desktop\r\n\r\n## Problem\r\nThe preview of the new Python 3 port has broken HTML escaping in the XML feeds\r\n\r\neg try to view this in the browser:\r\n\r\n  https://planetpython.org/3/rss10.xml\r\n\r\nand it will complain about undefined entities, due to having raw unescaped HTML in the XML document\r\n\r\nBy comparison the original Python 2 code escaped HTML in the feed\r\n\r\n```\r\n$ wget https://planetpython.org/rss10.xml\r\n$ grep \"content:encoded\" rss10.xml | head -1\r\n\t\u003ccontent:encoded\u003e\u0026lt;p\u0026gt;As is probably apparent from the sequence of blog posts about the topic in the\r\n$ wget https://planetpython.org/3/rss10.xml\r\n$ grep \"content:encoded\" rss10.xml.1 | head -1\r\n\t\u003ccontent:encoded\u003e\u003cp\u003eAs is probably apparent from the sequence of blog posts about the topic in the\r\n```\r\n\r\n## Details\r\n![Screenshot from 2024-10-24 14-08-18](https://github.com/user-attachments/assets/a4ac1a59-629f-4bf1-a38a-8cec413f10df)\r\n\r\nThis problem is caused by a mistake in the python 3 conversion done in #577, specially in commit https://github.com/python/planet/pull/577/commits/86e31f90403c4659471396beeba922584e08d12e replaced code patterns like:\r\n\r\n```\r\nfeed[key] = sanitize.HTML(feed[key])\r\n```\r\n\r\nwith\r\n\r\n```\r\nfeed[key] = Markup(feed[key])\r\n```\r\n\r\nwhich is not providing functionally equivalent behaviour.\r\n\r\nThe `sanitize.HTML` method would parse the HTML and strip out various undesirable elements and attributes, and escaping was later performed by the template processor.\r\n\r\nThe `Markup` method will not parse anything, it'll just wrap the `str` in a `Markup` class, as a way to designate it as being safe to use as-is without further escaping. As a result when you later try to escape the variable in jinga using `... | e`, it will do nothing at all, resulting in raw HTML being put into the XML document, leading to the later parsing errors.\r\n\r\nI think either the original sanitizer code needs to be re-instated and made to work with py3, or perhaps an external library such as https://github.com/matthiask/html-sanitizer/ could be leveraged  ?","author":{"url":"https://github.com/berrange","@type":"Person","name":"berrange"},"datePublished":"2024-10-24T13:28:20.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":3},"url":"https://github.com/582/planet/issues/582"}

route-pattern/_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format)
route-controllervoltron_issues_fragments
route-actionissue_layout
fetch-noncev2:86bfeff6-7d4c-bb6d-b8b7-13da18f1ebef
current-catalog-service-hash81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114
request-idCFFE:29A429:10D8C59:160E785:69801036
html-safe-nonce07549e8ec1bb2e8f539a0ae6b96118569aeaa7962e5fec1f5146243a757e477f
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDRkZFOjI5QTQyOToxMEQ4QzU5OjE2MEU3ODU6Njk4MDEwMzYiLCJ2aXNpdG9yX2lkIjoiNTQ1NjMwMTAxMTIyMjEzODkzNCIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmac00f91986c80e6cab0187d46501e972a4f3ec0b8445814f7a2aca0ff19d683a2a
hovercard-subject-tagissue:2611623032
github-keyboard-shortcutsrepository,issues,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///voltron/issues_fragments/issue_layout
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/python/planet/582/issue_layout
twitter:imagehttps://opengraph.githubassets.com/5645c1db2492576d0973953cbc853ecfe8307fe574be9072c81f3353124dbb6b/python/planet/issues/582
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/5645c1db2492576d0973953cbc853ecfe8307fe574be9072c81f3353124dbb6b/python/planet/issues/582
og:image:altI am using: O.S: Fedora 40 Browser: Firefox 131.0.2 Platform: desktop Problem The preview of the new Python 3 port has broken HTML escaping in the XML feeds eg try to view this in the browser: http...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernameberrange
hostnamegithub.com
expected-hostnamegithub.com
None60279d4097367e16897439d16d6bbe4180663db828c666eeed2656988ffe59f6
turbo-cache-controlno-preview
go-importgithub.com/python/planet git https://github.com/python/planet.git
octolytics-dimension-user_id1525981
octolytics-dimension-user_loginpython
octolytics-dimension-repository_id24216135
octolytics-dimension-repository_nwopython/planet
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id24216135
octolytics-dimension-repository_network_root_nwopython/planet
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release7c85641c598ad130c74f7bcc27f58575cac69551
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://patch-diff.githubusercontent.com/python/planet/issues/582#start-of-content
https://patch-diff.githubusercontent.com/
Sign in https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython%2Fplanet%2Fissues%2F582
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub SparkBuild and deploy intelligent appshttps://github.com/features/spark
GitHub ModelsManage and compare promptshttps://github.com/features/models
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
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
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/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://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython%2Fplanet%2Fissues%2F582
Sign up https://patch-diff.githubusercontent.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fvoltron%2Fissues_fragments%2Fissue_layout&source=header-repo&source_repo=python%2Fplanet
Reloadhttps://patch-diff.githubusercontent.com/python/planet/issues/582
Reloadhttps://patch-diff.githubusercontent.com/python/planet/issues/582
Reloadhttps://patch-diff.githubusercontent.com/python/planet/issues/582
python https://patch-diff.githubusercontent.com/python
planethttps://patch-diff.githubusercontent.com/python/planet
Please reload this pagehttps://patch-diff.githubusercontent.com/python/planet/issues/582
Notifications https://patch-diff.githubusercontent.com/login?return_to=%2Fpython%2Fplanet
Fork 185 https://patch-diff.githubusercontent.com/login?return_to=%2Fpython%2Fplanet
Star 139 https://patch-diff.githubusercontent.com/login?return_to=%2Fpython%2Fplanet
Code https://patch-diff.githubusercontent.com/python/planet
Issues 25 https://patch-diff.githubusercontent.com/python/planet/issues
Pull requests 1 https://patch-diff.githubusercontent.com/python/planet/pulls
Actions https://patch-diff.githubusercontent.com/python/planet/actions
Security 0 https://patch-diff.githubusercontent.com/python/planet/security
Insights https://patch-diff.githubusercontent.com/python/planet/pulse
Code https://patch-diff.githubusercontent.com/python/planet
Issues https://patch-diff.githubusercontent.com/python/planet/issues
Pull requests https://patch-diff.githubusercontent.com/python/planet/pulls
Actions https://patch-diff.githubusercontent.com/python/planet/actions
Security https://patch-diff.githubusercontent.com/python/planet/security
Insights https://patch-diff.githubusercontent.com/python/planet/pulse
New issuehttps://patch-diff.githubusercontent.com/login?return_to=https://github.com/python/planet/issues/582
New issuehttps://patch-diff.githubusercontent.com/login?return_to=https://github.com/python/planet/issues/582
The preview of the new Python 3 port has broken HTML escaping in the XML feedshttps://patch-diff.githubusercontent.com/python/planet/issues/582#top
https://github.com/berrange
https://github.com/berrange
berrangehttps://github.com/berrange
on Oct 24, 2024https://github.com/python/planet/issues/582#issue-2611623032
https://planetpython.org/3/rss10.xmlhttps://planetpython.org/3/rss10.xml
https://private-user-images.githubusercontent.com/1517315/379781971-a4ac1a59-629f-4bf1-a38a-8cec413f10df.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzAwMDA3MzgsIm5iZiI6MTc3MDAwMDQzOCwicGF0aCI6Ii8xNTE3MzE1LzM3OTc4MTk3MS1hNGFjMWE1OS02MjlmLTRiZjEtYTM4YS04Y2VjNDEzZjEwZGYucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI2MDIwMiUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNjAyMDJUMDI0NzE4WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9NjRiNzg2NjRlZWE5MDc3MzYxNDg5ZmNiY2FhZTBlOWI2NzBlMmMzMTgxOGU3MGM3ZmZjYTkwZTRhMjVjNTlkYSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.AuuMePd8IvLoggd6g6POqe0uLAG1RcKE7VLzXKuXwXQ
#577https://github.com/python/planet/pull/577
86e31f9https://github.com/python/planet/commit/86e31f90403c4659471396beeba922584e08d12e
https://github.com/matthiask/html-sanitizer/https://github.com/matthiask/html-sanitizer/
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.