Skip to content
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

Enable filesync with debug #2351

Closed
briandealwis opened this issue Jun 26, 2019 · 6 comments · Fixed by #4089
Closed

Enable filesync with debug #2351

briandealwis opened this issue Jun 26, 2019 · 6 comments · Fixed by #4089
Labels
area/debug area/sync kind/todo implementation task/epic for the skaffold team priority/p2 May take a couple of releases

Comments

@briandealwis
Copy link
Member

debug currently disables the Skaffold watcher to prevent Skaffold from redeploying artifacts on file changes: having a debug session ripped out when in progress is a suboptimal user experience! And many runtimes support installing changes, normally handled by the IDE.

But a side-effect is that this also disables the filesync functionality. We should be able to forego artifact redeployment while still supporting filesync.

@corneliusweig
Copy link
Contributor

That sounds good, however it can also be confusing: Sync has to be configured by supplying sync patterns. If a file gets changed which does not match any of the sync patterns, the container is usually rebuilt. Now if some changes get applied (via sync in debug-mode) and others are not (because they would require a rebuild in debug-mode), this can be a bit confusing.
Overall, I'm not sure if we do our users a favor, if sync is enabled during debugging.

@briandealwis
Copy link
Member Author

It seems some language runtimes, like Python, do not support a debugger-controlled hot-swap capability. VS Code and the Debug Adapter Protocol do not support installing code-changes either.

@corneliusweig
Copy link
Contributor

@briandealwis Do I understand you correctly, that this also speaks against enabling sync in debug mode?

@briandealwis
Copy link
Member Author

The opposite: Python's pydevd has some support for reloading changes from disk (pydev_reload). Haven't tried to figure out how to integrate it though.

@balopat balopat added the kind/todo implementation task/epic for the skaffold team label Aug 14, 2019
@briandealwis briandealwis added the priority/p2 May take a couple of releases label Aug 21, 2019
@tstromberg
Copy link
Contributor

Is this still an issue?

@briandealwis
Copy link
Member Author

Yes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/debug area/sync kind/todo implementation task/epic for the skaffold team priority/p2 May take a couple of releases
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants