Is it possible to use nativescript preview functionality with HMR? - nativescript

I'm using the 'tns preview' command for debugging my app, but HMR doesn't seem to be working.
I've generated a blank vue project using the 'tns create' command and started it with the preview functionality. The application is successfully deployed to an Android device, but any code changes I make won't be applied to the device.
Is this not supported or am I doing something wrong?

I managed to get it to work by adding the following option in the webpack config file:
watchOptions: {
poll: 1000 // Check for changes every second
}

I would strongly recommend using --no-hmr option while using nativescript-vue.
Even it will watch changes, it won't show always expected behaves.
Restarting of the application just takes 3-5 seconds but saves you lots of trouble in long term.
tns preview --no-hmr or tns run --no-hmr
--no-hmr - Disables Hot Module Replacement (HMR). In this case, when a change in the code is applied, CLI will transfer the modified files and restart the application.

Related

How to force Rider to use Chrome for debugging?

No matter what I do, I cannot get Rider to use Chrome for debugging. I've removed all other browsers listed and even set a "Custom path" to Chrome. I also have the required plugins installed and enabled; still, it starts up with:
Opening <URL> using the default OS app (=Edge)
It then starts logging errors like below:
Debugger listening on ws://...
Debugger attached.
Waiting for the debugger to disconnect...
About to exit with code: 0
Process terminated before summary could be written, possible error in async code no continuing!
Trying to exit with exit code 1
Process finished with exit code 0
The app consists of multiple SharePoint Framework (SPFx) React projects wrapped in netstandard2.0 class library projects. Each has a gulp file and I've created corresponding run/debug configurations similar to the below sample:
What do I need to do to get Rider to use Chrome?
In Gulp run configuration, you can't specify a browser to be used for debugging, neither you can debug the front-end app that runs in browser using this configuration. I suppose, it's your Gulp task that opens your system default browser once your app is started - the IDE has no control over this.
Anyway, to attach the debugger to the application that runs in browser, you need using JavaScript Debug run configuration with your server URL. In this configuration, you need to specify a browser to be used (the IDE will use Chrome there by default)
Also, I'd suggest removing --inspect option from Node options: in Gulp run configuration - it makes no sense here unless you are going to debug your Gulp task itself.

Test in cloud button has gone

I made a 'Xamarin UI Test' Project to test my app.
I was able to click in the button like this: Run in Test Cloud button.
But now i made my test using the Repl() and want to run it in the cloud the button has gone away.
What i have to do to fix it?
Cause of the Issue
It looks like you are hitting this bug: Bug 52372 - "Run in Test Cloud" option no longer appears in menu on C9
That issue is reported on this version for Xamarin 4.3.0.636. Note that it may happen in other versions but this is the initial version the bug was reported against. You can track the status of that issue either directly in the report on Xamarin's bugzilla, and/or you can watch for a release announcement on the Xamarin Releases Blog.
Workarounds
Downgrading Xamarin
While waiting for a fix to become available, you can downgrade to the previous Cycle 8 version of Xamarin by going to “Get the latest stable version of Cycle 8” section on your account page: https://store.xamarin.com/account/my/subscription/downloads#cycle8.
Uploading to Test Cloud via the Command Line
Alternatively, you can upload tests to the Test Cloud through the command line. To do this log into https://testcloud.xamarin.com & click "New Test Run" at the top. (Note this option is only visible if you have a currently valid Test Cloud account or trial.)
This launches a wizard which will have you pick some options (like whether you want to use Android or iOS; etc.), and at the end will generate a prototype command line. Below is an example for Android:
packages\Xamarin.UITest.[version]\tools\test-cloud.exe submit yourAppFile.apk [API_KEY] --devices [DEVICE_HASH] --series "master" --locale "en_US" --user [EMAIL] --assembly-dir pathToTestDllFolder
Note: I have removed the [API_KEY], [DEVICE_HASH] & [EMAIL] values for privacy reasons, however these will automatically be included when you generate the prototype from the wizard in Test Cloud.
You will still have to manually update the Xamarin.UITest.[version] as well as the actual names and relative paths of yourAppFile.apk & pathToTestDllFolder for this approach to work.

debugger doesn't work in chrome / safari/ firefox for ember app

I am working in an ember application. The version is "ember-cli": "1.13.13".
For a very strange reason, debugger doesn't work in Chrome. (I also tried Safari, and Firefox developer's edition. Same thing.)
Specifically, the problem is I put a debugger statement in a function. Ember app loads and hits the function and the debugger statement in the function. What happens in the Developer Tools -> Sources tab is that it doesn't show me the function that the debugger is in.
Instead it keeps highlighting the last line of app-boot.js file. The breakpoint, or the line that it's paused on, is not showing up at all. (see screenshot attached)
Furthermore when I step into the function call using the down arrow, it remains at app-boot.js, so I have no idea whether it did step into the function or not.
This has been plaguing me for a while now.
I've resolved many times similar error on OSX + Chrome by using Empty Cache and Hard Reload - after that code in Sources tab was updated and I could correctly see actual source code.
Make sure you didn't blackbox scripts of your application.
Alternatively you could try to reinstall npm packages, bower packages - it might be issue with creating source maps in Ember CLI.
If nothing helps please investigate your JavaScript and associated map files and check if something might be missing, or maps don't update. You could possibly try turning them on and off in Ember CLI.
See Source Maps section in Ember CLI guides how to enable/disable them.

How to build a Cordova app to windows 10 (universal)

I'm currently developing a Cordova application with jQuery Mobile by using sublime text 3 and using Ripple to emulate my devices (I'll reference this project as SublimeProject).
I can build apps for IOS, Android and Win8. But now I need to build it for Windows 10. Apparently this doesn't work with my setup.
A colleague of mine told me to import the project in Visual Studio (I'll reference this as VSProject), add the plugins in the config.xml, copy over the files to the www folder and run it. Problem here is that it just doesn't work.
When I try to run it on Android with the Ripple - Nexus (Galaxy) emulator, it'll give me a warning like this:
I Haz CHeeseburger?!?!
PushPlugin.register
We seem to be missing some stuff :(
What is kinda cool though you can fill in the textarea to pass a json object to the callback you want to execute
Success! Fail!
But when I press Fail! the program will just work, somehow.
My console shows me the following for ripple.js:
ripple.js:37 Ripple :: Environment Warming Up (Tea. Earl Grey. Hot.)
ripple.js:51 Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience. For more help, check https://xhr.spec.whatwg.org/.
ripple.js:51 GET http://localhost:4400/config.xml 404 (Not Found)(anonymous function) # ripple.js:51module.exports.initialize # ripple.js:51_baton.pass # ripple.js:13xhr.onreadystatechange # ripple.js:39
ripple.js:37 cordova :: Initialization Finished (Make it so.)
ripple.js:37 cordova :: Native back button handler was detached.
ripple.js:41 missing exec:PushPlugin.register
ripple.js:48 PushPlugin
ripple.js:48 register
Makes sense that something is wrong with pushplugin, but can't figure out what.
Additional, when I try to run the application on Windows-AnyCPU (which my actual intent is), the application will just show me the default cordova splash screen and hang there:
So that's where I'm at. I need to figure out a way to get the app to run on Windows 10. Prefered to use Visual Studio because I know it has an option to build me an .xap file.
Updates:
Update 1
I'm tracing where the PushPlugin error comes from.
try {
pushNotification = window.plugins.pushNotification;
}
pushNotification seems to be undefined, yet in my config.xml I have the following line:
<gap:plugin name="com.phonegap.plugins.pushplugin" version="2.4.0" />
Update 2
The pushplugin doesn't seem to be relevant, because when debugging in Visual Studio, I'll find the pushNotification to be not undefined.
Currently there is nothing pointing to a good reason why I only see the splash screen instead of my application.
I had the same problem and it turned out it was due to duplicate url in the $stateProvider.

How to debug firefox extension after cfx run?

I want to debug my firefox extension. I set
javascript.options.showInConsole = true
devtools.chrome.enabled: true
devtools.debugger.remote-enabled: true
run in sdk console cfx run, after that i go to Web Developer -> Browser Toolbox get incoming connection and i see my extension main.js. But after that, the code in main.js already been executed. How to debug it after cfx run?
also, two other things might be messing with your approach:
1) when you use cfx run, that by default creates a new profile on every run, so any settings that you have changed will not persist. to avoid this, you need to specify a profile directory with --profiledir=DIR (warning: don't use your main profile).
2) if the addon main.js code has already run by the time you open the debugger, you should start firefox manually, setup the debugger, and then drag the addon xpi into a tab.
Bug 899054 - [Meta] Implement an Add-on Debugger
this is really close to landing (the UI bits in bug 911098 are in m-c), so if you grab a Nightly tomorrow, or the day after, it should be in there, and might just work (for some undefined value of "work").

Resources