René's URL Explorer Experiment


Title: fix(core): Page frame reference not unset on native view disposal by CatchABus · Pull Request #10417 · NativeScript/NativeScript · GitHub

Open Graph Title: fix(core): Page frame reference not unset on native view disposal by CatchABus · Pull Request #10417 · NativeScript/NativeScript

X Title: fix(core): Page frame reference not unset on native view disposal by CatchABus · Pull Request #10417 · NativeScript/NativeScript

Description: PR Checklist The PR title follows our guidelines: https://github.com/NativeScript/NativeScript/blob/master/tools/notes/CONTRIBUTING.md#commit-messages. There is an issue for the bug/feature this PR is for. To avoid wasting your time, it's best to open a suggestion issue first and wait for approval before working on it. You have signed the CLA. All existing tests are passing: https://github.com/NativeScript/NativeScript/blob/master/tools/notes/DevelopmentWorkflow.md#running-unit-tests-application. Tests for the changes are included - https://github.com/NativeScript/NativeScript/blob/master/tools/notes/WritingUnitTests.md. What is the current behavior? There is currently an issue on Svelte Native that's related to HMR removing page elements and throwing exception. The reason is that even though _removeView unsets page parent, the page still keeps reference of parent using property _frame and parent Frame happens to check that property when trying to dispose entry views in Core. What is the new behavior? This change will ensure page won't keep any reference to parent after disposal. Doing so helps avoid calling _removeView multiple times. More specifically, it ends up meddling with the following check: https://github.com/NativeScript/NativeScript/blob/main/packages/core/ui/frame/frame-common.ts#L201 Fixes #10361 halfnelson/svelte-native#347

Open Graph Description: PR Checklist The PR title follows our guidelines: https://github.com/NativeScript/NativeScript/blob/master/tools/notes/CONTRIBUTING.md#commit-messages. There is an issue for the bug/feature this...

X Description: PR Checklist The PR title follows our guidelines: https://github.com/NativeScript/NativeScript/blob/master/tools/notes/CONTRIBUTING.md#commit-messages. There is an issue for the bug/feature this...

Opengraph URL: https://github.com/NativeScript/NativeScript/pull/10417

X: @github

direct link

Domain: github.com

route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:f377669a-9bd6-1c77-5e05-fc62adfd6344
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-id9698:22B5CC:54183F:6E3910:6A61543F
html-safe-nonceefc7c41f3778169328a2b3f715800b16c274ecc40d8589736202780d5cc2767e
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI5Njk4OjIyQjVDQzo1NDE4M0Y6NkUzOTEwOjZBNjE1NDNGIiwidmlzaXRvcl9pZCI6IjMyMDUyNjI4MTEyMTczNTE3NDMiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ==
visitor-hmac3686fb7ae48dbd0d6ff518ebee412679c6dc7c776eb893d569affbc021051d9d
hovercard-subject-tagpull_request:1567364586
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/NativeScript/NativeScript/pull/10417/files
twitter:imagehttps://avatars.githubusercontent.com/u/55595100?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/55595100?s=400&v=4
og:image:altPR Checklist The PR title follows our guidelines: https://github.com/NativeScript/NativeScript/blob/master/tools/notes/CONTRIBUTING.md#commit-messages. There is an issue for the bug/feature this...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
None35b919fdb8e6752d2ed95a144e761ca5e924557563e2ed0a5ebf6c4430cdeeb6
turbo-cache-controlno-preview
diff-viewunified
go-importgithub.com/NativeScript/NativeScript git https://github.com/NativeScript/NativeScript.git
octolytics-dimension-user_id7392261
octolytics-dimension-user_loginNativeScript
octolytics-dimension-repository_id31492490
octolytics-dimension-repository_nwoNativeScript/NativeScript
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id31492490
octolytics-dimension-repository_network_root_nwoNativeScript/NativeScript
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
release1e22b08b60ccb67c3791f565bed248565260e611
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/NativeScript/NativeScript/pull/10417/files#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2FNativeScript%2FNativeScript%2Fpull%2F10417%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
Code QualityEnforce quality at mergehttps://github.com/features/code-quality
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%2FNativeScript%2FNativeScript%2Fpull%2F10417%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=NativeScript%2FNativeScript
Reloadhttps://github.com/NativeScript/NativeScript/pull/10417/files
Reloadhttps://github.com/NativeScript/NativeScript/pull/10417/files
Reloadhttps://github.com/NativeScript/NativeScript/pull/10417/files
Please reload this pagehttps://github.com/NativeScript/NativeScript/pull/10417/files
NativeScript https://github.com/NativeScript
NativeScripthttps://github.com/NativeScript/NativeScript
Please reload this pagehttps://github.com/NativeScript/NativeScript/pull/10417/files
Notifications https://github.com/login?return_to=%2FNativeScript%2FNativeScript
Fork 1.7k https://github.com/login?return_to=%2FNativeScript%2FNativeScript
Star 25.6k https://github.com/login?return_to=%2FNativeScript%2FNativeScript
Code https://github.com/NativeScript/NativeScript
Issues 771 https://github.com/NativeScript/NativeScript/issues
Pull requests 67 https://github.com/NativeScript/NativeScript/pulls
Discussions https://github.com/NativeScript/NativeScript/discussions
Actions https://github.com/NativeScript/NativeScript/actions
Projects https://github.com/NativeScript/NativeScript/projects
Wiki https://github.com/NativeScript/NativeScript/wiki
Security and quality 0 https://github.com/NativeScript/NativeScript/security
Insights https://github.com/NativeScript/NativeScript/pulse
Code https://github.com/NativeScript/NativeScript
Issues https://github.com/NativeScript/NativeScript/issues
Pull requests https://github.com/NativeScript/NativeScript/pulls
Discussions https://github.com/NativeScript/NativeScript/discussions
Actions https://github.com/NativeScript/NativeScript/actions
Projects https://github.com/NativeScript/NativeScript/projects
Wiki https://github.com/NativeScript/NativeScript/wiki
Security and quality https://github.com/NativeScript/NativeScript/security
Insights https://github.com/NativeScript/NativeScript/pulse
Sign up for GitHub https://github.com/signup?return_to=%2FNativeScript%2FNativeScript%2Fissues%2Fnew%2Fchoose
terms of servicehttps://docs.github.com/terms
privacy statementhttps://docs.github.com/privacy
Sign inhttps://github.com/login?return_to=%2FNativeScript%2FNativeScript%2Fissues%2Fnew%2Fchoose
NathanWalkerhttps://github.com/NathanWalker
NativeScript:mainhttps://github.com/NativeScript/NativeScript/tree/main
CatchABus:ios-page-parent-unsethttps://github.com/CatchABus/NativeScript/tree/ios-page-parent-unset
Conversation 0 https://github.com/NativeScript/NativeScript/pull/10417
Commits 4 https://github.com/NativeScript/NativeScript/pull/10417/commits
Checks 0 https://github.com/NativeScript/NativeScript/pull/10417/checks
Files changed https://github.com/NativeScript/NativeScript/pull/10417/files
Please reload this pagehttps://github.com/NativeScript/NativeScript/pull/10417/files
fix(core): Page frame reference not unset on native view disposal https://github.com/NativeScript/NativeScript/pull/10417/files#top
Show all changes 4 commits https://github.com/NativeScript/NativeScript/pull/10417/files
1ff325c fix(core): Page frame reference not unset on native view disposal CatchABus Oct 20, 2023 https://github.com/NativeScript/NativeScript/pull/10417/commits/1ff325cb0f9b8f9bae859bd3699f91fe260e8d2b
0809c45 chore: Parent unset enhancement for reusable views CatchABus Oct 21, 2023 https://github.com/NativeScript/NativeScript/pull/10417/commits/0809c4588575012c3c832619b34ea13a25f92847
f732124 chore: Getting rid of _frame property to use parent instead CatchABus Oct 21, 2023 https://github.com/NativeScript/NativeScript/pull/10417/commits/f73212459385deaf1c80b0c3181cde2597616adb
6c2ac46 chore: Minor page correction CatchABus Oct 21, 2023 https://github.com/NativeScript/NativeScript/pull/10417/commits/6c2ac46e736f27c22f51acf507ea886419c1b706
Clear filters https://github.com/NativeScript/NativeScript/pull/10417/files
Please reload this pagehttps://github.com/NativeScript/NativeScript/pull/10417/files
Please reload this pagehttps://github.com/NativeScript/NativeScript/pull/10417/files
frame-common.ts https://github.com/NativeScript/NativeScript/pull/10417/files#diff-b6c28c76dc54a2ecbf53229d19bcd804d8ffbecc67ad7d320ad27f4faf42ab47
index.d.ts https://github.com/NativeScript/NativeScript/pull/10417/files#diff-285dfac55f63fa74d935e0ea35490790f1e3834f71c4d3a6395ace42a6ac3abe
index.ios.ts https://github.com/NativeScript/NativeScript/pull/10417/files#diff-e10bced30a590017c0d42bb1d654b00cc718c5e7385bd6bb797d8dcf5d8bb11c
page-common.ts https://github.com/NativeScript/NativeScript/pull/10417/files#diff-0c8bbc8895e5513dd234375f7c18dc489efeee42a468bfaa183cf6c2534d4fb5
packages/core/ui/frame/frame-common.tshttps://github.com/NativeScript/NativeScript/pull/10417/files#diff-b6c28c76dc54a2ecbf53229d19bcd804d8ffbecc67ad7d320ad27f4faf42ab47
View file https://github.com/CatchABus/NativeScript/blob/6c2ac46e736f27c22f51acf507ea886419c1b706/packages/core/ui/frame/frame-common.ts
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/NativeScript/NativeScript/pull/10417/{{ revealButtonHref }}
https://github.com/NativeScript/NativeScript/pull/10417/files#diff-b6c28c76dc54a2ecbf53229d19bcd804d8ffbecc67ad7d320ad27f4faf42ab47
https://github.com/NativeScript/NativeScript/pull/10417/files#diff-b6c28c76dc54a2ecbf53229d19bcd804d8ffbecc67ad7d320ad27f4faf42ab47
https://github.com/NativeScript/NativeScript/pull/10417/files#diff-b6c28c76dc54a2ecbf53229d19bcd804d8ffbecc67ad7d320ad27f4faf42ab47
https://github.com/NativeScript/NativeScript/pull/10417/files#diff-b6c28c76dc54a2ecbf53229d19bcd804d8ffbecc67ad7d320ad27f4faf42ab47
packages/core/ui/page/index.d.tshttps://github.com/NativeScript/NativeScript/pull/10417/files#diff-285dfac55f63fa74d935e0ea35490790f1e3834f71c4d3a6395ace42a6ac3abe
View file https://github.com/CatchABus/NativeScript/blob/6c2ac46e736f27c22f51acf507ea886419c1b706/packages/core/ui/page/index.d.ts
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/NativeScript/NativeScript/pull/10417/{{ revealButtonHref }}
https://github.com/NativeScript/NativeScript/pull/10417/files#diff-285dfac55f63fa74d935e0ea35490790f1e3834f71c4d3a6395ace42a6ac3abe
https://github.com/NativeScript/NativeScript/pull/10417/files#diff-285dfac55f63fa74d935e0ea35490790f1e3834f71c4d3a6395ace42a6ac3abe
packages/core/ui/page/index.ios.tshttps://github.com/NativeScript/NativeScript/pull/10417/files#diff-e10bced30a590017c0d42bb1d654b00cc718c5e7385bd6bb797d8dcf5d8bb11c
View file https://github.com/CatchABus/NativeScript/blob/6c2ac46e736f27c22f51acf507ea886419c1b706/packages/core/ui/page/index.ios.ts
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/NativeScript/NativeScript/pull/10417/{{ revealButtonHref }}
https://github.com/NativeScript/NativeScript/pull/10417/files#diff-e10bced30a590017c0d42bb1d654b00cc718c5e7385bd6bb797d8dcf5d8bb11c
https://github.com/NativeScript/NativeScript/pull/10417/files#diff-e10bced30a590017c0d42bb1d654b00cc718c5e7385bd6bb797d8dcf5d8bb11c
https://github.com/NativeScript/NativeScript/pull/10417/files#diff-e10bced30a590017c0d42bb1d654b00cc718c5e7385bd6bb797d8dcf5d8bb11c
https://github.com/NativeScript/NativeScript/pull/10417/files#diff-e10bced30a590017c0d42bb1d654b00cc718c5e7385bd6bb797d8dcf5d8bb11c
https://github.com/NativeScript/NativeScript/pull/10417/files#diff-e10bced30a590017c0d42bb1d654b00cc718c5e7385bd6bb797d8dcf5d8bb11c
https://github.com/NativeScript/NativeScript/pull/10417/files#diff-e10bced30a590017c0d42bb1d654b00cc718c5e7385bd6bb797d8dcf5d8bb11c
https://github.com/NativeScript/NativeScript/pull/10417/files#diff-e10bced30a590017c0d42bb1d654b00cc718c5e7385bd6bb797d8dcf5d8bb11c
packages/core/ui/page/page-common.tshttps://github.com/NativeScript/NativeScript/pull/10417/files#diff-0c8bbc8895e5513dd234375f7c18dc489efeee42a468bfaa183cf6c2534d4fb5
View file https://github.com/CatchABus/NativeScript/blob/6c2ac46e736f27c22f51acf507ea886419c1b706/packages/core/ui/page/page-common.ts
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/NativeScript/NativeScript/pull/10417/{{ revealButtonHref }}
https://github.com/NativeScript/NativeScript/pull/10417/files#diff-0c8bbc8895e5513dd234375f7c18dc489efeee42a468bfaa183cf6c2534d4fb5
https://github.com/NativeScript/NativeScript/pull/10417/files#diff-0c8bbc8895e5513dd234375f7c18dc489efeee42a468bfaa183cf6c2534d4fb5
https://github.com/NativeScript/NativeScript/pull/10417/files#diff-0c8bbc8895e5513dd234375f7c18dc489efeee42a468bfaa183cf6c2534d4fb5
https://github.com/NativeScript/NativeScript/pull/10417/files#diff-0c8bbc8895e5513dd234375f7c18dc489efeee42a468bfaa183cf6c2534d4fb5
https://github.com/NativeScript/NativeScript/pull/10417/files#diff-0c8bbc8895e5513dd234375f7c18dc489efeee42a468bfaa183cf6c2534d4fb5
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.