Skip to content

chore: merge release in master #5254

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 11 commits into from
Feb 19, 2020
Merged

Conversation

rosen-vladimirov
Copy link
Contributor

PR Checklist

What is the current behavior?

What is the new behavior?

Fixes/Implements/Closes #[Issue Number].

rosen-vladimirov and others added 11 commits February 17, 2020 12:44
In case you have external files set in the webpack.config.js (or resources copied with CopyWebpackPlugin), the `tns run ...` command does not LiveSync them to device. Webpack compilation is triggered, but as the emitted files are not hot updates, the hot update hash of the compilation is the same as the previous one. In this case CLI decides there's nothing to sync.
To fix this extend the check in webpack-compiler-service to be based not only on the comparison between previous and current hash, but on the emitted files as well - if there are files which are not hot updates, continue the execution even if the previous and current hash are the same. That's exactly the case with externals.
…ternals

fix: external files are not livesynced
fix: support request cleanup + options for the commands
Currently CLI tries to persist the formating of logs as close as possible to the real logs coming from device.
The logs from the applications contain `file:///<filePath>`. CLI replaces the `<filePath>` with the real local file path. However, due to the `file:///` prefix, the link is not clickable. For example, in case you use VSCode's terminal, you should be able to use Ctrl + Click on the link and this will lead you to the exact line where the stack trace points to.
To resolve this issue, replace the `file:///` with just `file: `.
When CLI parses the device logs, it tries to replace the file location with the real file path location. However, this does not work for platform specific files (in non-Angular projects) as we are using a virtual file system in webpack, which "lies" the file `button.js` exists, while in fact the file is `button.<platform>.js`. So in the source maps, the location of the file is `button.js`.
To resolve this, check if there's a platform specific file and use it instead. Cache the original file location, so we'll not execute multiple file operations for the same file.
@cla-bot cla-bot bot added the cla: yes label Feb 19, 2020
@rosen-vladimirov rosen-vladimirov merged commit a2da3d0 into master Feb 19, 2020
@rosen-vladimirov rosen-vladimirov deleted the vladimirov/merge-rel-master branch February 19, 2020 16:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants