HMR doesn't work on IOS
vallemar opened this issue · 5 comments
Issue Description
Applications created with cli 8.5.3 does not work the HMR on ios.
I am creating a sample that I create with cli 8.5.3 and in this application the HMR does not work on ios. To test this I have done the following.
- I have installed the old cli@8.4.0. I have created a vue3 application and the HMR works fine.
- I have installed the new cli 8.5.3. I have created an application vue3 and the HMR does not work on ios.
Environment
OS: macOS 13.3
CPU: (12) arm64 Apple M2 Max
Shell: /bin/zsh
node: 18.14.0
npm: 9.3.1
nativescript: 8.5.3
# android
java: 11.0.18
ndk: Not Found
apis: Not Found
build_tools: Not Found
system_images: Not Found
# ios
xcode: 14.3/14E222b
cocoapods: 1.11.3
python: 3.10.10
python3: 3.10.10
ruby: 2.7.7
platforms:
- DriverKit 22.4
- iOS 16.4
- macOS 13.3
- tvOS 16.4
- watchOS 9.4Dependencies
"dependencies": {
"@nativescript/core": "~8.4.0",
"nativescript-vue": "3.0.0-beta.5"
},
"devDependencies": {
"@nativescript/ios": "8.5.1",
"@nativescript/tailwind": "^2.0.1",
"@nativescript/types": "~8.4.0",
"@nativescript/webpack": "~5.0.0",
"@types/node": "~17.0.21",
"tailwindcss": "^3.1.8",
"typescript": "~4.8.4",
"vue": "^3.2.45"
}Please accept these terms
- I have searched the existing issues as well as StackOverflow and this has not been posted before
- This is a bug report
- I agree to follow this project's Code of Conduct
A fix is in @nativescript/ios@8.5.2-alpha.2 - should be released in a runtime patch soon.
I tested the 8.5.2-alpha.2 and still doesn't work for me, it only works with the --no-hmr parameter, which is not convenient.
should work as before. If the app never worked with hmr in the past, this won't change that because that's not a runtime level issue. (vue2 for example doesn't work well with hmr, but vue3 beta works quite well).
Related? ns run ios crashes on evert otherHMR update. Running ns run ios --no-hmr does not, but causes a full app reload on each update.
I'm noticing a similar issue with the latest CLI version (8.6.3). Seems like relevant file changes are detected and I get the Refreshing application on device... log, but the actual change isn't reflected in the simulator screen.
My project was created using the plain TS template. Here's my env info:
OS: macOS 14.2.1
CPU: (16) x64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
Shell: /bin/bash
node: 20.10.0
npm: 10.2.3
nativescript: 8.6.3
# android
java: 11.0.21
ndk: Not Found
apis: Not Found
build_tools: Not Found
system_images: Not Found
# ios
xcode: 15.1/15C65
cocoapods: 1.14.3
python: 3.12.1
python3: 3.12.1
ruby: 2.7.8
platforms:
- DriverKit 23.2
- iOS 17.2
- macOS 14.2
- tvOS 17.2
- watchOS 10.2Dependencies
"dependencies": {
"@nativescript/core": "~8.6.2",
"@nativescript/theme": "~3.0.2"
},
"devDependencies": {
"@nativescript/android": "8.6.2",
"@nativescript/ios": "8.6.3",
"@nativescript/types": "~8.6.1",
"@nativescript/webpack": "~5.0.18",
"@prettier/plugin-xml": "^3.2.2",
"@types/node": "^20.10.5",
"@typescript-eslint/eslint-plugin": "^6.15.0",
"@typescript-eslint/parser": "^6.15.0",
"eslint": "^8.56.0",
"eslint-config-prettier": "^9.1.0",
"husky": "^8.0.3",
"lint-staged": "^15.2.0",
"nativescript": "^8.6.3",
"npm-run-all": "^4.1.5",
"prettier": "3.1.0",
"typescript": "~5.3.3"
}