René's URL Explorer Experiment


Title: Early validation hook by SylvainCorlay · Pull Request #7603 · ipython/ipython · GitHub

Open Graph Title: Early validation hook by SylvainCorlay · Pull Request #7603 · ipython/ipython

X Title: Early validation hook by SylvainCorlay · Pull Request #7603 · ipython/ipython

Description: Official repository for IPython itself. Other repos in the IPython organization contain things like the website, documentation builds, etc. - Early validation hook by SylvainCorlay · Pull Request #7603 · ipython/ipython

Open Graph Description: This allows one to add a validation hook in the traitlet metadata. For example, define a "Parity" HasTraits instance: ```Python from IPython.utils.traitlets import * def validate(self, v...

X Description: This allows one to add a validation hook in the traitlet metadata. For example, define a "Parity" HasTraits instance: ```Python from IPython.utils.traitlets import * def validate...

Opengraph URL: https://github.com/ipython/ipython/pull/7603

X: @github

direct link

Domain: github.com

route-pattern/_view_fragments/voltron/pull_requests/show/:user_id/:repository/:id/pull_request_layout(.:format)
route-controllervoltron_pull_requests_fragments
route-actionpull_request_layout
fetch-noncev2:378a69d6-04e1-82ae-f612-68576eeaead0
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idB826:31785:22DE600:3219867:6A58EEC8
html-safe-nonced1c85169d731db6e47a8d0406d4951884cf23678fbb71051df11560e42be2e7a
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJCODI2OjMxNzg1OjIyREU2MDA6MzIxOTg2Nzo2QTU4RUVDOCIsInZpc2l0b3JfaWQiOiIxMzA4OTE4MjM2MTU5OTk1NTkyIiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0=
visitor-hmacbbf8456b912edae2709b9c59ca43a254cf6f29b6a7a6b1348d5cbbff02173d1c
hovercard-subject-tagpull_request:28072530
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///voltron/pull_requests_fragments/pull_request_layout
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/_view_fragments/voltron/pull_requests/show/ipython/ipython/7603/pull_request_layout
twitter:imagehttps://opengraph.githubassets.com/ea27fab454fa69edf48fcaa789ec6ee253142eb1991dd16872a21615441e9504/ipython/ipython/pull/7603
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/ea27fab454fa69edf48fcaa789ec6ee253142eb1991dd16872a21615441e9504/ipython/ipython/pull/7603
og:image:altThis allows one to add a validation hook in the traitlet metadata. For example, define a "Parity" HasTraits instance: ```Python from IPython.utils.traitlets import * def validate(self, v...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernameSylvainCorlay
hostnamegithub.com
expected-hostnamegithub.com
None5f2a0c7865178af3d91dd9f13b0cdfc3c73a2529c873d2780bb4c01271a57ec6
turbo-cache-controlno-cache
go-importgithub.com/ipython/ipython git https://github.com/ipython/ipython.git
octolytics-dimension-user_id230453
octolytics-dimension-user_loginipython
octolytics-dimension-repository_id658518
octolytics-dimension-repository_nwoipython/ipython
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id658518
octolytics-dimension-repository_network_root_nwoipython/ipython
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
release8aae7b8d6caacacf5c66eaeb2702d8dc88d85b4a
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/ipython/ipython/pull/7603#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fipython%2Fipython%2Fpull%2F7603
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%2Fipython%2Fipython%2Fpull%2F7603
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%2Fvoltron%2Fpull_requests_fragments%2Fpull_request_layout&source=header-repo&source_repo=ipython%2Fipython
Reloadhttps://github.com/ipython/ipython/pull/7603
Reloadhttps://github.com/ipython/ipython/pull/7603
Reloadhttps://github.com/ipython/ipython/pull/7603
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
ipython https://github.com/ipython
ipythonhttps://github.com/ipython/ipython
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
Notifications https://github.com/login?return_to=%2Fipython%2Fipython
Fork 4.5k https://github.com/login?return_to=%2Fipython%2Fipython
Star 16.7k https://github.com/login?return_to=%2Fipython%2Fipython
Code https://github.com/ipython/ipython
Issues 1.3k https://github.com/ipython/ipython/issues
Pull requests 31 https://github.com/ipython/ipython/pulls
Actions https://github.com/ipython/ipython/actions
Projects https://github.com/ipython/ipython/projects
Wiki https://github.com/ipython/ipython/wiki
Security and quality 2 https://github.com/ipython/ipython/security
Insights https://github.com/ipython/ipython/pulse
Code https://github.com/ipython/ipython
Issues https://github.com/ipython/ipython/issues
Pull requests https://github.com/ipython/ipython/pulls
Actions https://github.com/ipython/ipython/actions
Projects https://github.com/ipython/ipython/projects
Wiki https://github.com/ipython/ipython/wiki
Security and quality https://github.com/ipython/ipython/security
Insights https://github.com/ipython/ipython/pulse
minrkhttps://github.com/minrk
ipython:masterhttps://github.com/ipython/ipython/tree/master
SylvainCorlay:traitlet_hookhttps://github.com/SylvainCorlay/ipython/tree/traitlet_hook
Conversationhttps://github.com/ipython/ipython/pull/7603
Commits5 (5)https://github.com/ipython/ipython/pull/7603/commits
Checkshttps://github.com/ipython/ipython/pull/7603/checks
Files changedhttps://github.com/ipython/ipython/pull/7603/files
Early validation hookhttps://github.com/ipython/ipython/pull/7603#top
minrkhttps://github.com/minrk
ipython:masterhttps://github.com/ipython/ipython/tree/master
SylvainCorlay:traitlet_hookhttps://github.com/SylvainCorlay/ipython/tree/traitlet_hook
https://github.com/SylvainCorlay
SylvainCorlayhttps://github.com/SylvainCorlay
Jan 27, 2015https://github.com/ipython/ipython/pull/7603#issue-55557036
#6814https://github.com/ipython/ipython/issues/6814
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.com/SylvainCorlay
SylvainCorlayhttps://github.com/SylvainCorlay
Jan 27, 2015 https://github.com/ipython/ipython/pull/7603#ref-pullrequest-55553472
Validation on the python side #7602 https://github.com/ipython/ipython/pull/7602
https://github.com/SylvainCorlay
SylvainCorlayhttps://github.com/SylvainCorlay
Jan 27, 2015https://github.com/ipython/ipython/pull/7603#issuecomment-71567336
@jdfrederhttps://github.com/jdfreder
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.com/jdfreder
jdfrederhttps://github.com/jdfreder
4.0https://github.com/ipython/ipython/milestone/21
Jan 27, 2015https://github.com/ipython/ipython/pull/7603#event-225031672
https://github.com/jdfreder
jdfrederhttps://github.com/jdfreder
api-review https://github.com/ipython/ipython/issues?q=state%3Aopen%20label%3Aapi-review
needs-review https://github.com/ipython/ipython/issues?q=state%3Aopen%20label%3Aneeds-review
Jan 27, 2015https://github.com/ipython/ipython/pull/7603#event-225031756
https://github.com/jdfreder
jdfrederhttps://github.com/jdfreder
Jan 27, 2015https://github.com/ipython/ipython/pull/7603#issuecomment-71568034
@SylvainCorlayhttps://github.com/SylvainCorlay
@ellisonbghttps://github.com/ellisonbg
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.com/SylvainCorlay
SylvainCorlayhttps://github.com/SylvainCorlay
Jan 27, 2015https://github.com/ipython/ipython/pull/7603#issuecomment-71568213
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.com/jdfreder
jdfrederhttps://github.com/jdfreder
Jan 27, 2015https://github.com/ipython/ipython/pull/7603#issuecomment-71573326
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.com/jasongrout
jasongrouthttps://github.com/jasongrout
Jan 27, 2015https://github.com/ipython/ipython/pull/7603#issuecomment-71668631
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.com/SylvainCorlay
SylvainCorlayhttps://github.com/SylvainCorlay
Jan 27, 2015https://github.com/ipython/ipython/pull/7603#issuecomment-71668961
@jasongrouthttps://github.com/jasongrout
@jasongrouthttps://github.com/jasongrout
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.com/takluyver
takluyverhttps://github.com/takluyver
Jan 27, 2015https://github.com/ipython/ipython/pull/7603#issuecomment-71692775
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.com/SylvainCorlay
SylvainCorlayhttps://github.com/SylvainCorlay
Jan 27, 2015https://github.com/ipython/ipython/pull/7603#issuecomment-71695822
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.com/jasongrout
jasongrouthttps://github.com/jasongrout
Jan 28, 2015https://github.com/ipython/ipython/pull/7603#issuecomment-71773371
@takluyverhttps://github.com/takluyver
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.com/SylvainCorlay
SylvainCorlayhttps://github.com/SylvainCorlay
Jan 28, 2015https://github.com/ipython/ipython/pull/7603#issuecomment-71852645
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.com/SylvainCorlay
SylvainCorlayhttps://github.com/SylvainCorlay
Feb 3, 2015https://github.com/ipython/ipython/pull/7603#issuecomment-72746882
@ellisonbghttps://github.com/ellisonbg
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.com/takluyver
takluyverhttps://github.com/takluyver
Feb 4, 2015https://github.com/ipython/ipython/pull/7603#issuecomment-72764658
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.com/SylvainCorlay
SylvainCorlayhttps://github.com/SylvainCorlay
Feb 4, 2015https://github.com/ipython/ipython/pull/7603#issuecomment-72764981
@takluyverhttps://github.com/takluyver
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.com/SylvainCorlay
SylvainCorlayhttps://github.com/SylvainCorlay
Feb 4, 2015https://github.com/ipython/ipython/pull/7603#issuecomment-72784269
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.com/SylvainCorlay
SylvainCorlayhttps://github.com/SylvainCorlay
Feb 12, 2015https://github.com/ipython/ipython/pull/7603#issuecomment-74177324
@takluyverhttps://github.com/takluyver
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.com/takluyver
takluyverhttps://github.com/takluyver
Feb 12, 2015https://github.com/ipython/ipython/pull/7603#issuecomment-74178443
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.com/SylvainCorlay
SylvainCorlayhttps://github.com/SylvainCorlay
force-pushedhttps://github.com/ipython/ipython/compare/6a5dedc0e0d1d414d2aac432f3ad535b0e7db114..720c59cb6c93e4bdc2ed23f1720c67f9ba2a684d
6a5dedchttps://github.com/ipython/ipython/commit/6a5dedc0e0d1d414d2aac432f3ad535b0e7db114
720c59chttps://github.com/ipython/ipython/commit/720c59cb6c93e4bdc2ed23f1720c67f9ba2a684d
Compare https://github.com/ipython/ipython/compare/6a5dedc0e0d1d414d2aac432f3ad535b0e7db114..720c59cb6c93e4bdc2ed23f1720c67f9ba2a684d
February 20, 2015 15:21https://github.com/ipython/ipython/pull/7603#event-239180944
https://github.com/SylvainCorlay
SylvainCorlayhttps://github.com/SylvainCorlay
Feb 20, 2015https://github.com/ipython/ipython/pull/7603#issuecomment-75255064
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.com/SylvainCorlay
SylvainCorlayhttps://github.com/SylvainCorlay
force-pushedhttps://github.com/ipython/ipython/compare/1624b02576e7001928dfffccee1750b7d6353030..f5273092563ed2f24830e3994a4ca23f33cdbab4
1624b02https://github.com/ipython/ipython/commit/1624b02576e7001928dfffccee1750b7d6353030
f527309https://github.com/ipython/ipython/commit/f5273092563ed2f24830e3994a4ca23f33cdbab4
Compare https://github.com/ipython/ipython/compare/1624b02576e7001928dfffccee1750b7d6353030..f5273092563ed2f24830e3994a4ca23f33cdbab4
February 26, 2015 05:06https://github.com/ipython/ipython/pull/7603#event-242262775
SylvainCorlayhttps://github.com/SylvainCorlay
February 26, 2015 00:17https://github.com/ipython/ipython/pull/7603#commits-pushed-8ae013d
https://github.com/SylvainCorlay
early validation hookhttps://github.com/ipython/ipython/pull/7603/commits/8ae013dc5ee0902cadf073bfaa9b732a43e7a687
8ae013dhttps://github.com/ipython/ipython/pull/7603/commits/8ae013dc5ee0902cadf073bfaa9b732a43e7a687
https://github.com/SylvainCorlay
carry on with validation rather than bypassinghttps://github.com/ipython/ipython/pull/7603/commits/d197be2e9f293b3a0d4e4a044e0eaadbf186e996
d197be2https://github.com/ipython/ipython/pull/7603/commits/d197be2e9f293b3a0d4e4a044e0eaadbf186e996
https://github.com/SylvainCorlay
removed unused code is_valid_for and value_forhttps://github.com/ipython/ipython/pull/7603/commits/ead9b008eb1ce1d3c41c7ab397b65eec22b2adf7
ead9b00https://github.com/ipython/ipython/pull/7603/commits/ead9b008eb1ce1d3c41c7ab397b65eec22b2adf7
https://github.com/SylvainCorlay
Using _*_validate as validation hookhttps://github.com/ipython/ipython/pull/7603/commits/27405bfbda4e0e4fc490d87f04e5e87e5967f03c
27405bfhttps://github.com/ipython/ipython/pull/7603/commits/27405bfbda4e0e4fc490d87f04e5e87e5967f03c
https://github.com/SylvainCorlay
Adding a testhttps://github.com/ipython/ipython/pull/7603/commits/b23a83d9b92a9f3ee01f8fdf7981d5849a3dd4de
b23a83dhttps://github.com/ipython/ipython/pull/7603/commits/b23a83d9b92a9f3ee01f8fdf7981d5849a3dd4de
https://github.com/SylvainCorlay
SylvainCorlayhttps://github.com/SylvainCorlay
force-pushedhttps://github.com/ipython/ipython/compare/f5273092563ed2f24830e3994a4ca23f33cdbab4..b23a83d9b92a9f3ee01f8fdf7981d5849a3dd4de
f527309https://github.com/ipython/ipython/commit/f5273092563ed2f24830e3994a4ca23f33cdbab4
b23a83dhttps://github.com/ipython/ipython/commit/b23a83d9b92a9f3ee01f8fdf7981d5849a3dd4de
Compare https://github.com/ipython/ipython/compare/f5273092563ed2f24830e3994a4ca23f33cdbab4..b23a83d9b92a9f3ee01f8fdf7981d5849a3dd4de
February 26, 2015 05:20https://github.com/ipython/ipython/pull/7603#event-242266790
https://github.com/SylvainCorlay
SylvainCorlayhttps://github.com/SylvainCorlay
Feb 26, 2015https://github.com/ipython/ipython/pull/7603#issuecomment-76124619
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
minrkhttps://github.com/minrk
Mar 20, 2015 https://github.com/ipython/ipython/pull/7603#ref-commit-d532b15
https://github.com/minrk
Merge pull requesthttps://github.com/ipython/ipython/commit/d532b1509bcd12e3c4b987b520c2f9872583b3f3
#7603https://github.com/ipython/ipython/pull/7603
from SylvainCorlay/traitlet_hookhttps://github.com/ipython/ipython/commit/d532b1509bcd12e3c4b987b520c2f9872583b3f3
d532b15https://github.com/ipython/ipython/commit/d532b1509bcd12e3c4b987b520c2f9872583b3f3
https://github.com/minrk
minrkhttps://github.com/minrk
d532b15https://github.com/ipython/ipython/commit/d532b1509bcd12e3c4b987b520c2f9872583b3f3
Mar 20, 2015https://github.com/ipython/ipython/pull/7603#event-260440869
https://github.com/SylvainCorlay
SylvainCorlayhttps://github.com/SylvainCorlay
March 20, 2015 15:38https://github.com/ipython/ipython/pull/7603#event-260538833
https://github.com/minrk
minrkhttps://github.com/minrk
Mar 20, 2015https://github.com/ipython/ipython/pull/7603#issuecomment-84057274
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.com/SylvainCorlay
SylvainCorlayhttps://github.com/SylvainCorlay
Mar 20, 2015https://github.com/ipython/ipython/pull/7603#issuecomment-84063253
#7770https://github.com/ipython/ipython/pull/7770
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.com/minrk
minrkhttps://github.com/minrk
Mar 20, 2015 https://github.com/ipython/ipython/pull/7603#ref-pullrequest-63265712
catch RuntimeError getting obj._trait_validate #8099 https://github.com/ipython/ipython/pull/8099
https://github.com/minrk
minrkhttps://github.com/minrk
Mar 20, 2015https://github.com/ipython/ipython/pull/7603#issuecomment-84088563
#8099https://github.com/ipython/ipython/pull/8099
#7770https://github.com/ipython/ipython/pull/7770
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.co/hiddenchars
https://github.com/ipython/ipython/pull/{{ revealButtonHref }}
Sign up for freehttps://github.com/join?source=comment-repo
Sign in to commenthttps://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fipython%2Fipython%2Fpull%2F7603
api-review https://github.com/ipython/ipython/issues?q=state%3Aopen%20label%3Aapi-review
4.0 https://github.com/ipython/ipython/milestone/21
Please reload this pagehttps://github.com/ipython/ipython/pull/7603
https://github.com/SylvainCorlay
https://github.com/jdfreder
https://github.com/jasongrout
https://github.com/takluyver
https://github.com/minrk
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.