René's URL Explorer Experiment


Title: Fix do all redirects by jklymak · Pull Request #49 · matplotlib/matplotlib.github.com · GitHub

Open Graph Title: Fix do all redirects by jklymak · Pull Request #49 · matplotlib/matplotlib.github.com

X Title: Fix do all redirects by jklymak · Pull Request #49 · matplotlib/matplotlib.github.com

Description: (Update 31 Jan 2021): closes: matplotlib/matplotlib#12374 closes: #25 Obviously this blows git hub up, but the script that does this is in the first commit... Problem 1: Currently the top level of the website has a copy of every file that has existed on our webpage, even if the file is obsolete, and not part of current matplotlib docs. For instance the /examples/ directory was removed after 2.0.2 (and replaced by /gallery/) but is still accessible at https://matplotlib.org/examples/. @tacaswell wants this to remain so old links do not die, but it also means that search engines think this is a perfectly acceptable current set of webpages, whereas we would like these versions to not show up in searches. Proposed solution: The script here either soft links all top-level files to their newest version in the docs, or makes an html-refresh to do that. So, for example gallery/api was moved for 3.0.0, so: ls -halt gallery/api gives: -rw-r--r-- 1 jklymak staff 463 Jan 20 22:24 quad_bezier.html lrwxr-xr-x 1 jklymak staff 33 Jan 20 22:24 legend.py -> ../../2.2.5/gallery/api/legend.py -rw-r--r-- 1 jklymak staff 463 Jan 20 22:24 radar_chart.html -rw-r--r-- 1 jklymak staff 448 Jan 20 22:24 logos2.html lrwxr-xr-x 1 jklymak staff 34 Jan 20 22:24 legend.png -> ../../2.2.5/gallery/api/legend.png and less quad_bezier.html gives

The page been moved to

Problem 2: Similarly our canonical links go to the top level or the level they were introduced in. So https://matplotlib.org/stable/gallery/showcase/mandelbrot.html has as its canonical link. Older versions of the docs would link to Solution: The script goes through each html file in all versions (including old versions) and changes the canonical link to the newest version. So for quad_bezier.html: less 2.2.5/gallery/api/quad_bezier.html gives less 2.2.4/gallery/api/quad_bezier.html gives the same link (because 2.2.5 is the newest). For files that exist in stable: less 2.2.4/tutorials/intermediate/artists.html gives the canonical version in stable. Maintenance Burden the script will need updating if a new top-level subdirectory is added and we don't want it included in the linking the script needs to be run when a new version of the docs is released; the script is slow, but I added multi-processing to the canonical links part to move it along.

Open Graph Description: (Update 31 Jan 2021): closes: matplotlib/matplotlib#12374 closes: #25 Obviously this blows git hub up, but the script that does this is in the first commit... Problem 1: Currently the top level of ...

X Description: (Update 31 Jan 2021): closes: matplotlib/matplotlib#12374 closes: #25 Obviously this blows git hub up, but the script that does this is in the first commit... Problem 1: Currently the top level of ...

Opengraph URL: https://github.com/matplotlib/matplotlib.github.com/pull/49

X: @github

direct link

Domain: github.com

route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:154bbfd7-4fef-1f36-4424-249059e1e6e0
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-id945E:1D5468:51FFA3:6D40F3:6A517179
html-safe-nonce78dcae59379a5a363352ba8a7999382062164989c4b415c649a85b33ab7dc3b5
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI5NDVFOjFENTQ2ODo1MUZGQTM6NkQ0MEYzOjZBNTE3MTc5IiwidmlzaXRvcl9pZCI6IjY5OTQ3ODIxOTg2NTA5MTc3IiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0=
visitor-hmacf3cd4ff36472958eca1930788b9a62d3b4bad73395f4a719236767c420a8dbf1
hovercard-subject-tagpull_request:558905656
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/matplotlib/matplotlib.github.com/pull/49/files
twitter:imagehttps://avatars.githubusercontent.com/u/1562854?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/1562854?s=400&v=4
og:image:alt(Update 31 Jan 2021): closes: matplotlib/matplotlib#12374 closes: #25 Obviously this blows git hub up, but the script that does this is in the first commit... Problem 1: Currently the top level of ...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
Noneb9a586c06a05a7a86fc7e3f4dbd03e42f6869085879aa184aa6369456dbd50fb
turbo-cache-controlno-preview
diff-viewunified
go-importgithub.com/matplotlib/matplotlib.github.com git https://github.com/matplotlib/matplotlib.github.com.git
octolytics-dimension-user_id215947
octolytics-dimension-user_loginmatplotlib
octolytics-dimension-repository_id1385150
octolytics-dimension-repository_nwomatplotlib/matplotlib.github.com
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id1385150
octolytics-dimension-repository_network_root_nwomatplotlib/matplotlib.github.com
turbo-body-classeslogged-out env-production page-responsive
disable-turbotrue
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
releaseb19955a9dd40fd99462443f7911b522d7216776a
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/matplotlib/matplotlib.github.com/pull/49/files#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fmatplotlib%2Fmatplotlib.github.com%2Fpull%2F49%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%2Fmatplotlib%2Fmatplotlib.github.com%2Fpull%2F49%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=matplotlib%2Fmatplotlib.github.com
Reloadhttps://github.com/matplotlib/matplotlib.github.com/pull/49/files
Reloadhttps://github.com/matplotlib/matplotlib.github.com/pull/49/files
Reloadhttps://github.com/matplotlib/matplotlib.github.com/pull/49/files
Please reload this pagehttps://github.com/matplotlib/matplotlib.github.com/pull/49/files
matplotlib https://github.com/matplotlib
matplotlib.github.comhttps://github.com/matplotlib/matplotlib.github.com
Notifications https://github.com/login?return_to=%2Fmatplotlib%2Fmatplotlib.github.com
Fork 62 https://github.com/login?return_to=%2Fmatplotlib%2Fmatplotlib.github.com
Star 28 https://github.com/login?return_to=%2Fmatplotlib%2Fmatplotlib.github.com
Code https://github.com/matplotlib/matplotlib.github.com
Issues 1 https://github.com/matplotlib/matplotlib.github.com/issues
Pull requests 2 https://github.com/matplotlib/matplotlib.github.com/pulls
Actions https://github.com/matplotlib/matplotlib.github.com/actions
Projects https://github.com/matplotlib/matplotlib.github.com/projects
Wiki https://github.com/matplotlib/matplotlib.github.com/wiki
Security and quality 0 https://github.com/matplotlib/matplotlib.github.com/security
Insights https://github.com/matplotlib/matplotlib.github.com/pulse
Code https://github.com/matplotlib/matplotlib.github.com
Issues https://github.com/matplotlib/matplotlib.github.com/issues
Pull requests https://github.com/matplotlib/matplotlib.github.com/pulls
Actions https://github.com/matplotlib/matplotlib.github.com/actions
Projects https://github.com/matplotlib/matplotlib.github.com/projects
Wiki https://github.com/matplotlib/matplotlib.github.com/wiki
Security and quality https://github.com/matplotlib/matplotlib.github.com/security
Insights https://github.com/matplotlib/matplotlib.github.com/pulse
Sign up for GitHub https://github.com/signup?return_to=%2Fmatplotlib%2Fmatplotlib.github.com%2Fissues%2Fnew%2Fchoose
terms of servicehttps://docs.github.com/terms
privacy statementhttps://docs.github.com/privacy
Sign inhttps://github.com/login?return_to=%2Fmatplotlib%2Fmatplotlib.github.com%2Fissues%2Fnew%2Fchoose
QuLogichttps://github.com/QuLogic
matplotlib:masterhttps://github.com/matplotlib/matplotlib.github.com/tree/master
jklymak:fix-do-all-reditrectshttps://github.com/jklymak/matplotlib.github.com/tree/fix-do-all-reditrects
Conversation 47 https://github.com/matplotlib/matplotlib.github.com/pull/49
Commits 18 https://github.com/matplotlib/matplotlib.github.com/pull/49/commits
Checks 0 https://github.com/matplotlib/matplotlib.github.com/pull/49/checks
Files changed https://github.com/matplotlib/matplotlib.github.com/pull/49/files
Please reload this pagehttps://github.com/matplotlib/matplotlib.github.com/pull/49/files
Fix do all redirects https://github.com/matplotlib/matplotlib.github.com/pull/49/files#top
Show all changes 18 commits https://github.com/matplotlib/matplotlib.github.com/pull/49/files
67572bf UTILS: script jklymak Feb 3, 2021 https://github.com/matplotlib/matplotlib.github.com/pull/49/commits/67572bf15aa193084887af8be470362004e222f1
35bc91c MNT: make move portable tacaswell Feb 3, 2021 https://github.com/matplotlib/matplotlib.github.com/pull/49/commits/35bc91c34675998279751996ab5dee29816662b7
86a6021 MNT: make re-direct relative tacaswell Feb 3, 2021 https://github.com/matplotlib/matplotlib.github.com/pull/49/commits/86a6021a7b16aa1602d67df790f243bbcc0a0b63
95c3a6a MNT: pre-filter tocheck tacaswell Feb 3, 2021 https://github.com/matplotlib/matplotlib.github.com/pull/49/commits/95c3a6a35eaed61a49816524832e2f88d8f54630
681f21b WIP: make the script faster and redirects relative tacaswell Feb 3, 2021 https://github.com/matplotlib/matplotlib.github.com/pull/49/commits/681f21b52b26a170ad9b4d02021172ca4c821ea8
72bd896 WIP: make script faster? tacaswell Feb 3, 2021 https://github.com/matplotlib/matplotlib.github.com/pull/49/commits/72bd89683c19705eb52edbb51905c6fe39542a81
7a9c066 FIX: redirect url tacaswell Feb 3, 2021 https://github.com/matplotlib/matplotlib.github.com/pull/49/commits/7a9c066f1d0605bffb6837890ee4d893059f839e
0fdda70 MNT: tweak non-redirected message tacaswell Feb 3, 2021 https://github.com/matplotlib/matplotlib.github.com/pull/49/commits/0fdda704b90958c79ee5f6001a16d9ff1c653268
4fd177e ENH: add a banner for old docs jklymak Feb 4, 2021 https://github.com/matplotlib/matplotlib.github.com/pull/49/commits/4fd177e54e0075a6f10b67e84d3b07234e95934e
4799a02 Clean up flake8 stylistic things. QuLogic Feb 4, 2021 https://github.com/matplotlib/matplotlib.github.com/pull/49/commits/4799a026e222378c640cbdfe8e40e518a1927dfe
7543df1 Revert some accidental changes. QuLogic Feb 4, 2021 https://github.com/matplotlib/matplotlib.github.com/pull/49/commits/7543df1570738caba4e80bf3fa96bc1c27ae5822
1e9977f Make redirect script executable. QuLogic Feb 4, 2021 https://github.com/matplotlib/matplotlib.github.com/pull/49/commits/1e9977f0fa2b7c30e34fe79bd32b51e23c50cd44
2f144a8 DOC: add a bit of docs jklymak Feb 7, 2021 https://github.com/matplotlib/matplotlib.github.com/pull/49/commits/2f144a8e49bf87da7636bbc52769a476593c3d71
1ff05eb Minor stylistic changes to redirects script. QuLogic Feb 9, 2021 https://github.com/matplotlib/matplotlib.github.com/pull/49/commits/1ff05eb04be3ef4b8d8859cf53fdd586d244e574
df8ed61 Use pathlib more in redirect script. QuLogic Feb 9, 2021 https://github.com/matplotlib/matplotlib.github.com/pull/49/commits/df8ed616dd53bcf4393d3c10b672eb622d0d468d
a575269 Correctly ignore new sitemap location. QuLogic Feb 9, 2021 https://github.com/matplotlib/matplotlib.github.com/pull/49/commits/a575269ed5a4e591a0e8b660d708a918c974b6f8
6fcc3b7 Use functools.cache in redirects script. QuLogic Feb 9, 2021 https://github.com/matplotlib/matplotlib.github.com/pull/49/commits/6fcc3b744733fb9081825a96731fa5d3b42ce812
55bc6e3 FIX: change to unreleased message jklymak Feb 10, 2021 https://github.com/matplotlib/matplotlib.github.com/pull/49/commits/55bc6e31f9e3bace9a43dc1910948338deaa6d62
Clear filters https://github.com/matplotlib/matplotlib.github.com/pull/49/files
Please reload this pagehttps://github.com/matplotlib/matplotlib.github.com/pull/49/files
Please reload this pagehttps://github.com/matplotlib/matplotlib.github.com/pull/49/files
_websiteutils/make_redirects_links.pyhttps://github.com/matplotlib/matplotlib.github.com/pull/49/files#diff-b5c89aa563aae3d43ac8dc30652de38ac846cf127ff8387fcfcf5edb5b06c1bc
View file https://github.com/jklymak/matplotlib.github.com/blob/55bc6e31f9e3bace9a43dc1910948338deaa6d62/_websiteutils/make_redirects_links.py
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/matplotlib/matplotlib.github.com/pull/49/{{ revealButtonHref }}
QuLogichttps://github.com/QuLogic
Feb 10, 2021https://github.com/matplotlib/matplotlib.github.com/pull/49/files#r573362152
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/matplotlib/matplotlib.github.com/pull/49/files
jklymakhttps://github.com/jklymak
Feb 10, 2021https://github.com/matplotlib/matplotlib.github.com/pull/49/files#r573378197
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/matplotlib/matplotlib.github.com/pull/49/files
jklymakhttps://github.com/jklymak
Feb 10, 2021https://github.com/matplotlib/matplotlib.github.com/pull/49/files#r573378993
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/matplotlib/matplotlib.github.com/pull/49/files
QuLogichttps://github.com/QuLogic
Feb 10, 2021https://github.com/matplotlib/matplotlib.github.com/pull/49/files#r573379525
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/matplotlib/matplotlib.github.com/pull/49/files
jklymakhttps://github.com/jklymak
Feb 10, 2021https://github.com/matplotlib/matplotlib.github.com/pull/49/files#r573380602
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/matplotlib/matplotlib.github.com/pull/49/files
QuLogichttps://github.com/QuLogic
Feb 10, 2021https://github.com/matplotlib/matplotlib.github.com/pull/49/files#r573382178
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
df8ed61https://github.com/matplotlib/matplotlib.github.com/commit/df8ed616dd53bcf4393d3c10b672eb622d0d468d
6fcc3b7https://github.com/matplotlib/matplotlib.github.com/commit/6fcc3b744733fb9081825a96731fa5d3b42ce812
Please reload this pagehttps://github.com/matplotlib/matplotlib.github.com/pull/49/files
jklymakhttps://github.com/jklymak
Feb 10, 2021https://github.com/matplotlib/matplotlib.github.com/pull/49/files#r573400666
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/matplotlib/matplotlib.github.com/pull/49/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.