You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Pub Serve not noticing file changes from editors in 'safe write' mode (e.g., IntelliJ) on OSX #21402
Pub serve does not appear to play nice with editors (specifically IntelliJ/IDEA) on OS X that use a 'safe write' mode (e.g., new file content is first saved to a temporary file, then the original file is deleted after which the temporary file is renamed to the original file name).
We were able to reproduce with InitelliJ on OSX using the Finance_Dart sample like so:
* Open Finance_Dart/client/web/app.html in browser (Chrome or Dartium or ...). Wait for page load.
* Modify Finance_Dart.client/web/app/view/item_list/day_purchases_list.html. For example, change
border-bottom: 1px dashed;
to:
border-bottom: 1px dashed red;
* Refresh browser and you won't see dashed line color change. :( Only restarting pub serve will do it.
NOTE: this issue does NOT affect Dart Editor as it triggers explicit reloads itself on text editor pane content changes.
It would be super awesome if we could get this looked at for 1.8. :)
The issue is very important for JetBrains IDE users because 'safe write' mode is enabled by default in all IDEs: WebStorm, IntelliJ IDEA, PhpStorm, RubyMine, PyCharm. Android Studio is affected as well, 'safe write' is also enabled by default there. Users who see Pub Serve not picking changes get no idea how to solve the issue without Pub Serve restart.
This wasn't triaged properly, so I don't think we ever saw it :p. In order for a pub bug to pop up on our radar, it really needs to have the "Area-Pub" label.
find some known string in the output, e.g. curl localhost:8080 | grep Mark, which for todomvc shows a single line with a label "Mark all as completed".
copy the file that contains this string to something else, e.g. cp lib/td_todos.html lib/td_todos2.html
edit the copied version and change the string
mv lib/td_todos2.html lib/td_todos.html
check the output again, notice that it hasn't changed.
Activity
pq commentedon Oct 24, 2014
More background in this Jetbrains ticket: https://youtrack.jetbrains.com/issue/WEB-13739
DartBot commentedon Oct 24, 2014
This comment was originally written by alexander.dor...@gmail.com
The issue is very important for JetBrains IDE users because 'safe write' mode is enabled by default in all IDEs: WebStorm, IntelliJ IDEA, PhpStorm, RubyMine, PyCharm. Android Studio is affected as well, 'safe write' is also enabled by default there. Users who see Pub Serve not picking changes get no idea how to solve the issue without Pub Serve restart.
sethladd commentedon Jan 15, 2015
Hi, Friendly ping... @Bob, were you planning to take a look at this? Or was @Natalie going to take a peak at the underlying issue?
Thanks so much for investigating!
cc @nex3.
Removed Priority-Unassigned label.
Added Priority-High label.
nex3 commentedon Jan 15, 2015
This wasn't triaged properly, so I don't think we ever saw it :p. In order for a pub bug to pop up on our radar, it really needs to have the "Area-Pub" label.
Added Area-Pub label.
alan-knight commentedon Jan 15, 2015
A command-line reproduction.
munificent commentedon Jan 22, 2015
Added Started label.
munificent commentedon Jan 26, 2015
This should be working now. The underlying issue was in the watcher package, fixed here:
https://codereview.chromium.org/861313006/
Then pulled into the repo for pub and tested here:
https://codereview.chromium.org/801943005/
https://codereview.chromium.org/870703003/
Added Fixed label.
DartBot commentedon Jan 26, 2015
This comment was originally written by @sethladd
Thanks!
DartBot commentedon Jan 27, 2015
This comment was originally written by alexander.dor...@gmail.com
Verified in today's nightly build. Thanks a lot!
munificent commentedon Jan 27, 2015
\o/
pq commentedon Jan 27, 2015
Fantastic. Thanks everybody!
DartBot commentedon Jun 5, 2015
This issue has been moved to dart-lang/pub#1177.