Skip to content
This repository has been archived by the owner on Feb 2, 2021. It is now read-only.

Fix ENOENT when sync to iOS simulator #892

Merged
merged 1 commit into from
Feb 16, 2017

Conversation

rosen-vladimirov
Copy link
Collaborator

In some cases we are not able to sync files to iOS Simulator as chokidar does not raise correct events on macOS when directory is renamed immediately after it's being created.
After adding a file to this directory we throw ENOENT, as such dir does not exist in Simulator's dir. In order to fix this, ensure the directory exist in the simulator.

In some cases we are not able to sync files to iOS Simulator as chokidar does not raise correct events on macOS when directory is renamed immediately after it's being created.
After adding a file to this directory we throw ENOENT, as such dir does not exist in Simulator's dir. In order to fix this, ensure the directory exist in the simulator.
@justcodebuilduser
Copy link

❤️

@rosen-vladimirov rosen-vladimirov merged commit f188b50 into release Feb 16, 2017
@rosen-vladimirov rosen-vladimirov deleted the vladimirov/fix-enoent-dir branch February 16, 2017 09:46
rosen-vladimirov added a commit to NativeScript/nativescript-cli that referenced this pull request Feb 16, 2017
On macOS sometimes we recive ENOENT errors during livesync operations (`tns run ios`). This is due to the following:
- incorrect detection if a file is modified - we check if the project dir's mTime and cTime values are bigger than the .nsprepareinfo. However in some cases they are equal, which means the dir has been modified in the same moment when the `.nsprepareinfo` is saved. In order to fix this, mark the files/dirs as modified in case the modified time of `.nsprepareinfo` and the respective file are the same.
- In some cases we are not able to sync files to iOS Simulator as chokidar does not raise correct events on macOS when directory is renamed immediately after it's being created.
After adding a file to this directory we throw ENOENT, as such dir does not exist in Simulator's dir. In order to fix this, ensure the directory exist in the simulator.

PR in common-lib: telerik/mobile-cli-lib#892
rosen-vladimirov added a commit to NativeScript/nativescript-cli that referenced this pull request Feb 16, 2017
On macOS sometimes we recive ENOENT errors during livesync operations (`tns run ios`). This is due to the following:
- incorrect detection if a file is modified - we check if the project dir's mTime and cTime values are bigger than the .nsprepareinfo. However in some cases they are equal, which means the dir has been modified in the same moment when the `.nsprepareinfo` is saved. In order to fix this, mark the files/dirs as modified in case the modified time of `.nsprepareinfo` and the respective file are the same.
- In some cases we are not able to sync files to iOS Simulator as chokidar does not raise correct events on macOS when directory is renamed immediately after it's being created.
After adding a file to this directory we throw ENOENT, as such dir does not exist in Simulator's dir. In order to fix this, ensure the directory exist in the simulator.

PR in common-lib: telerik/mobile-cli-lib#892
rosen-vladimirov added a commit to NativeScript/nativescript-cli that referenced this pull request Feb 16, 2017
On macOS sometimes we recive ENOENT errors during livesync operations (`tns run ios`). This is due to the following:
- incorrect detection if a file is modified - we check if the project dir's mTime and cTime values are bigger than the .nsprepareinfo. However in some cases they are equal, which means the dir has been modified in the same moment when the `.nsprepareinfo` is saved. In order to fix this, mark the files/dirs as modified in case the modified time of `.nsprepareinfo` and the respective file are the same.
- In some cases we are not able to sync files to iOS Simulator as chokidar does not raise correct events on macOS when directory is renamed immediately after it's being created.
After adding a file to this directory we throw ENOENT, as such dir does not exist in Simulator's dir. In order to fix this, ensure the directory exist in the simulator.

PR in common-lib: telerik/mobile-cli-lib#892
rosen-vladimirov added a commit to NativeScript/nativescript-cli that referenced this pull request Feb 16, 2017
* Fix uploading of .nsprepareinfo on Windows

When `.nprepareinfo` file is uploaded on device, we construct the device file path with `path.join` function. On Windows this function returns path similar to `\\data\\local\\tmp`, which is not working for Unix based OSes (Android in this case).
Fix this by converting the path to Unix style.

* Fix uploading of .nsbuilinfo on Windows

When `.npbuildnfo` file is uploaded on device, we construct the device file path with `path.join` function. On Windows this function returns path similar to `\\data\\local\\tmp`, which is not working for Unix based OSes (Android in this case).
Fix this by converting the path to Unix style.

* Fix ENOENT errors on macOS during livesync

On macOS sometimes we recive ENOENT errors during livesync operations (`tns run ios`). This is due to the following:
- incorrect detection if a file is modified - we check if the project dir's mTime and cTime values are bigger than the .nsprepareinfo. However in some cases they are equal, which means the dir has been modified in the same moment when the `.nsprepareinfo` is saved. In order to fix this, mark the files/dirs as modified in case the modified time of `.nsprepareinfo` and the respective file are the same.
- In some cases we are not able to sync files to iOS Simulator as chokidar does not raise correct events on macOS when directory is renamed immediately after it's being created.
After adding a file to this directory we throw ENOENT, as such dir does not exist in Simulator's dir. In order to fix this, ensure the directory exist in the simulator.

PR in common-lib: telerik/mobile-cli-lib#892

* Update to latest common lib
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants