raix / vscode-perl-debug

LOOKING FOR MAINTAINERS. Perl debugger extension for visual studio code
MIT License
64 stars 35 forks source link

Variable, Watch, Step by Step not working #100

Open PhilSanch opened 5 years ago

PhilSanch commented 5 years ago

Hello, I installed Perl Debug, but no variables are displayed in Visual Code. Step by step isn't working too, and no way to execute program up to defined breaking points. What is strange is that there is no error message nor problems listed in "PROBLEMS". Into "DEBUG CONSOLE", Perl Debug features are working properly (if I set "n", next line is executed properly, I do "p $FOE" it displays variable value).

I have installed PadWalker and Perl I used is the latest Strawberry version under Windows (W10).

Any clue where might come the issue? Thanks in advance for your support.

hoehrmann commented 5 years ago

Which version of the extension? Could you enable the launch.json setting debugRaw and have a look at the corresponding output window (possibly send in its contents)? Also, do a p $^X in the debug console to check which perl.exe you are using.

PhilSanch commented 5 years ago

Hello Bjorn, Thanks for your support and to help me. First answers to your question:

Now about your request. I'm quite new in "Visual Studio Code", so I hope I understood correctly your instruction. a) launch.json I move "debugRaw: false" to " debugRaw: true" I also move "debugLog: False" to "debugLog : true"

b) then I launched a Debug nothing happen. In "debug console", I got "perl debugger" CLI, ready to execute first line of the code... but clicking on F5 in "Visual Studio code" doesn't make any change... But if in "Perl Debugger CLI" I type "n" then "Perl debugger" is working fine. Below is what is displayed in "Debug console":

Platform: win32 Launching program in terminal and waiting Inactive RemoteSession Remote debugger at "127.0.0.1:55882" connected at port 0.

Loading DB routines from perl5db.pl version 1.53

Editor support available.

Enter h or 'h h' for help, or 'perldoc perldebug' for more help.

main::(C:\Users\DXXJ2506\Documents\Visual Studio/test.pl:7): 7: print "Yes\n" ;

c) Output window. Please find below extract of what is displayed in "output" window ["2019-05-07T14:43:15.270Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","\nLoading DB routines from perl5db.pl version 1.53\n"] ["2019-05-07T14:43:15.270Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","Editor support available.\n\nEnter h or 'h h' for help, or 'perldoc perldebug' for more help.\n\n"] ["2019-05-07T14:43:15.270Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","main::(C:\Users\DXXJ2506\Documents\Visual Studio/test.pl:7):\n7:\tprint \"Yes\n\" ;\n"] ["2019-05-07T14:43:15.330Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904"," DB<1> "] ["2019-05-07T14:43:15.331Z","perl-debug.streamcatcher.write"," 127.0.0.1:55903 serving 127.0.0.1:55904","o warnLevel=0\n"] ["2019-05-07T14:43:15.332Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904"," warnLevel = '0'\n"] ["2019-05-07T14:43:15.333Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904"," DB<2> "] ["2019-05-07T14:43:15.333Z","perl-debug.streamcatcher.write"," 127.0.0.1:55903 serving 127.0.0.1:55904","$DB::single = 1;\n"] ["2019-05-07T14:43:15.335Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","\n"] ["2019-05-07T14:43:15.340Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904"," DB<3> "] ["2019-05-07T14:43:15.340Z","perl-debug.streamcatcher.write"," 127.0.0.1:55903 serving 127.0.0.1:55904","p $$\n"] ["2019-05-07T14:43:15.340Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","17768"] ["2019-05-07T14:43:15.340Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","\n DB<4> "] ["2019-05-07T14:43:15.348Z","perl-debug.streamcatcher.write"," 127.0.0.1:55903 serving 127.0.0.1:55904","p $0\n"] ["2019-05-07T14:43:15.348Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","C:\Users\DXXJ2506\Documents\Visual Studio/ test.pl"] ["2019-05-07T14:43:15.348Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","\n DB<5> "] ["2019-05-07T14:43:15.348Z","perl-debug.streamcatcher.write"," 127.0.0.1:55903 serving 127.0.0.1:55904","p sub { local $@; eval \"require Sys::Hostname; Sys::Hostname::hostname()\" }->()\n"] ["2019-05-07T14:43:15.350Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","WX-EQ6112055"] ["2019-05-07T14:43:15.350Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","\n DB<6> "] ["2019-05-07T14:43:15.350Z","perl-debug.streamcatcher.write"," 127.0.0.1:55903 serving 127.0.0.1:55904","p $]\n"] ["2019-05-07T14:43:15.350Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","5.028001"] ["2019-05-07T14:43:15.358Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","\n DB<7> "] ["2019-05-07T14:43:15.358Z","perl-debug.streamcatcher.write"," 127.0.0.1:55903 serving 127.0.0.1:55904","p sub { local $@; eval \"require PadWalker; PadWalker->VERSION()\" }->()\n"] ["2019-05-07T14:43:15.363Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","2.3"] ["2019-05-07T14:43:15.363Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","\n DB<8> "] ["2019-05-07T14:43:15.363Z","perl-debug.streamcatcher.write"," 127.0.0.1:55903 serving 127.0.0.1:55904"," \t\t\tsub Devel::vscode::_unreportedSources { \t\t\t\treturn join \"\t\", grep { \t\t\t\t\tmy $old = $Devel::vscode::reportedSources{$}; \t\t\t\t\t$Devel::vscode::reportedSources{$} = $$; \t\t\t\t\tnot defined $old or $old ne $$ \t\t\t\t} grep { /^_<[^(]/ } keys %main:: \t\t\t} \t\t\n"] ["2019-05-07T14:43:15.363Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","\n"] ["2019-05-07T14:43:15.363Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904"," DB<9> "] ["2019-05-07T14:43:15.363Z","perl-debug.streamcatcher.write"," 127.0.0.1:55903 serving 127.0.0.1:55904"," \t\t\tsub Devel::vscode::getSourceCode { \t\t\t\tlocal $ = join(\"\", @{\"main::<@\"}); \t\t\t\ts/([^a-zA-Z0-9\x{80}-\x{10FFFF}])/ \t\t\t\t\tsprintf '%%%02x', ord \"$1\"/ge; \t\t\t\treturn $_ \t\t\t} \t\t\n"] ["2019-05-07T14:43:15.363Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","\n"] ["2019-05-07T14:43:15.363Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904"," DB<10> "] ["2019-05-07T14:43:15.363Z","perl-debug.streamcatcher.write"," 127.0.0.1:55903 serving 127.0.0.1:55904"," \t\t\tpackage DB; \t\t\tDB::postponed = sub { \t\t\t\tmy ($oldpostponed) = @; \t\t\t\t$Devel::vscode::overrodePostponed = 1; \t\t\t\treturn sub { \t\t\t\t\tif ('GLOB' eq ref(\$[0]) and $_[0] =~ /<(.)s*$/s) { \t\t\t\t\t\tprint { $DB::OUT } \"vscode: new loaded source $1\n\"; \t\t\t\t\t} else { \t\t\t\t\t\tprint { $DB::OUT } \"vscode: new subroutine $_[0]\n\"; \t\t\t\t\t} \t\t\t\t\t&{$old_postponed}; \t\t\t\t}; \t\t\t}->(\&DB::postponed) unless $Devel::vscode::_overrodePostponed; \t\t\n"] ["2019-05-07T14:43:15.365Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","\n"] ["2019-05-07T14:43:15.365Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904"," DB<11> "] ["2019-05-07T14:43:15.377Z","perl-debug.streamcatcher.write"," 127.0.0.1:55903 serving 127.0.0.1:55904","L b\n"] ["2019-05-07T14:43:15.377Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904"," DB<12> "] ["2019-05-07T14:43:15.377Z","perl-debug.streamcatcher.write"," 127.0.0.1:55903 serving 127.0.0.1:55904","L b\n"] ["2019-05-07T14:43:15.377Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904"," DB<13> "] ["2019-05-07T14:43:15.377Z","perl-debug.streamcatcher.write"," 127.0.0.1:55903 serving 127.0.0.1:55904","f test.pl\n"] ["2019-05-07T14:43:15.377Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","Choosing C:\Users\DXXJ2506\Documents\Visual Studio/test.pl matching 'test.pl':\n"] ["2019-05-07T14:43:15.377Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","Already in C:\Users\DXXJ2506\Documents\Visual Studio/test.pl.\n DB<14> "] ["2019-05-07T14:43:15.377Z","perl-debug.streamcatcher.write"," 127.0.0.1:55903 serving 127.0.0.1:55904","b 9\n"] ["2019-05-07T14:43:15.377Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904"," DB<15> "] ["2019-05-07T14:43:15.377Z","perl-debug.streamcatcher.write"," 127.0.0.1:55903 serving 127.0.0.1:55904","f test.pl\n"] ["2019-05-07T14:43:15.380Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","Choosing C:\Users\DXXJ2506\Documents\Visual Studio/test.pl matching 'test.pl':\n"] ["2019-05-07T14:43:15.380Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","Already in C:\Users\DXXJ2506\Documents\Visual Studio/test.pl.\n DB<16> "] ["2019-05-07T14:43:15.380Z","perl-debug.streamcatcher.write"," 127.0.0.1:55903 serving 127.0.0.1:55904","b 10\n"] ["2019-05-07T14:43:15.380Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904"," DB<17> "] ["2019-05-07T14:43:15.443Z","perl-debug.streamcatcher.write"," 127.0.0.1:55903 serving 127.0.0.1:55904","p Devel::vscode::_unreportedSources() if defined &Devel::vscode::unreportedSources\n"] ["2019-05-07T14:43:15.443Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904 ","<C:/Strawberry/perl/lib/IO.pm\t<C:/Strawberry/perl/lib/Sys/Hostname.pm\t<C:/Strawberry/perl/lib/IO/Socket/INET.pm\t<C:/Strawberry/perl/lib/IO/Select.pm\t<C:/Strawberry/perl/lib/Scalar/Util.pm\t<C:/Strawberry/perl/lib/ feature.pm \t<C:/Strawberry/perl/site/lib/PadWalker.pm\t<C:/Strawberry/perl/lib/List/Util.pm\t<C:/Strawberry/perl/lib/ warnings.pm\t<C:/Strawberry/perl/lib/Exporter.pm\t<C:\Users\DXXJ2506\Documents\Visual Studio/test.pl \t_<C:/Strawberry/perl/lib/Configgit.pl\t<C:/Strawberry/perl/lib/Exporter/Heavy.pm\t<C:/Strawberry/perl/lib/Socket.pm\t<C:/Strawberry/perl/lib/ vars.pm \t<C:/Strawberry/perl/vendor/lib/Term/ReadKey.pm\t<C:/Strawberry/perl/lib/Config.pm\t<C:/Strawberry/perl/lib/SelfLoader.pm\t<C:/Strawberry/perl/vendor/lib/Term/ReadLine/Perl.pm\t<C:/Strawberry/perl/lib/Carp.pm\t<C:/Strawberry/perl/lib/ perl5db.pl \t<C:/Strawberry/perl/lib/Term/ReadLine.pm\t<C:/Strawberry/perl/vendor/lib/Term/ReadLine/ readline.pm \t<C:/Strawberry/perl/lib/IO/Handle.pm\t<C:/Strawberry/perl/lib/ overloading.pm \t<C:/Strawberry/perl/lib/Errno.pm\t<C:/Strawberry/perl/lib/Cwd.pm\t<C:/Strawberry/perl/lib/IO/Socket/UNIX.pm\t<C:/Strawberry/perl/lib/Symbol.pm\t<C:/Strawberry/perl/lib/Win32.pm\t<C:/Strawberry/perl/lib/ strict.pm \t<C:/Strawberry/perl/lib/XSLoader.pm\t<C:/Strawberry/perl/lib/SelectSaver.pm\t<C:/Strawberry/perl/lib/IO/Socket.pm\t<C:/Strawberry/perl/lib/DynaLoader.pm\t<C:/Strawberry/perl/lib/Term/Cap.pm\t<C:/Strawberry/perl/lib/warnings/ register.pm\t_<C:/Strawberry/perl/lib/Config_heavy.pl"] ["2019-05-07T14:43:15.443Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","\n DB<18> "] ["2019-05-07T14:43:15.447Z","perl-debug.streamcatcher.write"," 127.0.0.1:55903 serving 127.0.0.1:55904","T\n"] ["2019-05-07T14:43:15.448Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","@ = DB::DB called from file 'C:\Users\DXXJ2506\Documents\Visual Studio/test.pl' line 7\n"] ["2019-05-07T14:43:15.448Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904"," DB<18> "] ["2019-05-07T14:43:15.493Z","perl-debug.streamcatcher.write"," 127.0.0.1:55903 serving 127.0.0.1:55904","T\n"] ["2019-05-07T14:43:15.495Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904","@ = DB::DB called from file 'C:\Users\DXXJ2506\Documents\Visual Studio/test.pl' line 7\n"] ["2019-05-07T14:43:15.495Z","perl-debug.streamcatcher.data","127.0.0.1:55903 serving 127.0.0.1:55904"," DB<18> "]

Regards, Phil.

Le ven. 3 mai 2019 à 19:23, Björn Höhrmann notifications@github.com a écrit :

Which version of the extension? Could you enable the launch.json setting debugRaw and have a look at the corresponding output window (possibly send in its contents)? Also, do a p $^X in the debug console to check which perl.exe you are using.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/raix/vscode-perl-debug/issues/100#issuecomment-489174005, or mute the thread https://github.com/notifications/unsubscribe-auth/AL7JWT2PT2RM3HMPP4QHI2DPTRYHFANCNFSM4HKUMNFQ .

FirstStormtrooper commented 5 years ago

Hey, just registered for you!

Same for me. Use Visual Studio Code on Win10 with Strawberry-Perl. The first time I used it everything seems working. But then it shows no variables or debugging position. In the console you can see that the debugger is working. Need logs too?

Edit:

Using Perl 5.16.3 Windows 10 1703

PadWalker is installed

p $^X shows C:\Perl\perl\bin\perl.exe, its right

Output shows: ["2019-07-03T05:22:49.012Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","\nLoading DB routines from perl5db.pl version 1.37\nEditor support available.\n\nEnter h or 'h h' for help, or 'perldoc perldebug' for more help.\n\n"] ["2019-07-03T05:22:49.646Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","main::(C:\censored:35):\n35:\tour $Version = '$URL:$';\n"] ["2019-07-03T05:22:49.684Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<1> "] ["2019-07-03T05:22:49.684Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","o warnLevel=0\n"] ["2019-07-03T05:22:49.685Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," warnLevel = '0'\n DB<2> "] ["2019-07-03T05:22:49.685Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","$DB::single = 1;\n"] ["2019-07-03T05:22:49.685Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","\n DB<3> "] ["2019-07-03T05:22:49.686Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","p $$\n"] ["2019-07-03T05:22:49.686Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","17784\n"] ["2019-07-03T05:22:49.686Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<4> "] ["2019-07-03T05:22:49.687Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","p $0\n"] ["2019-07-03T05:22:49.690Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","C:\censored\n DB<5> "] ["2019-07-03T05:22:49.690Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","p sub { local $@; eval \"require Sys::Hostname; Sys::Hostname::hostname()\" }->()\n"] ["2019-07-03T05:22:49.691Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","PCName"] ["2019-07-03T05:22:49.693Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","\n DB<6> "] ["2019-07-03T05:22:49.693Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","p $]\n"] ["2019-07-03T05:22:49.693Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","5.016003\n"] ["2019-07-03T05:22:49.693Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<7> "] ["2019-07-03T05:22:49.693Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","p sub { local $@; eval \"require PadWalker; PadWalker->VERSION()\" }->()\n"] ["2019-07-03T05:22:49.696Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","1.96\n"] ["2019-07-03T05:22:49.696Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<8> "] ["2019-07-03T05:22:49.696Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312"," \t\t\tsub Devel::vscode::_unreportedSources { \t\t\t\treturn join \"\t\", grep { \t\t\t\t\tmy $old = $Devel::vscode::reportedSources{$}; \t\t\t\t\t$Devel::vscode::reportedSources{$} = $$; \t\t\t\t\tnot defined $old or $old ne $$ \t\t\t\t} grep { /^_<[^(]/ } keys %main:: \t\t\t} \t\t\n"] ["2019-07-03T05:22:49.697Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","\n"] ["2019-07-03T05:22:49.697Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<9> "] ["2019-07-03T05:22:49.698Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312"," \t\t\tsub Devel::vscode::getSourceCode { \t\t\t\tlocal $ = join(\"\", @{\"main::<@\"}); \t\t\t\ts/([^a-zA-Z0-9\x{80}-\x{10FFFF}])/ \t\t\t\t\tsprintf '%%%02x', ord \"$1\"/ge; \t\t\t\treturn $_ \t\t\t} \t\t\n"] ["2019-07-03T05:22:49.698Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","\n"] ["2019-07-03T05:22:49.698Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<10> "] ["2019-07-03T05:22:49.698Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312"," \t\t\tpackage DB; \t\t\tDB::postponed = sub { \t\t\t\tmy ($oldpostponed) = @; \t\t\t\t$Devel::vscode::overrodePostponed = 1; \t\t\t\treturn sub { \t\t\t\t\tif ('GLOB' eq ref(\$[0]) and $_[0] =~ /<(.)s*$/s) { \t\t\t\t\t\tprint { $DB::OUT } \"vscode: new loaded source $1\n\"; \t\t\t\t\t} else { \t\t\t\t\t\tprint { $DB::OUT } \"vscode: new subroutine $_[0]\n\"; \t\t\t\t\t} \t\t\t\t\t&{$old_postponed}; \t\t\t\t}; \t\t\t}->(\&DB::postponed) unless $Devel::vscode::_overrodePostponed; \t\t\n"] ["2019-07-03T05:22:49.698Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","\n DB<11> "] ["2019-07-03T05:22:49.734Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","p Devel::vscode::_unreportedSources() if defined &Devel::vscode::unreportedSources\n"] ["2019-07-03T05:22:49.734Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","<C:/Perl/perl/lib/auto/threads/shared/shared.dll\t<threads.c\t<C:/Perl/perl/lib/perl5db.pl\t<C:/Perl/perl/lib/List/Util.pm\t<C:/censored.pm\t<C:/Perl/perl/vendor/lib/JSON/XS.pm\t<C:/Perl/perl/lib/unicore/lib/Perl/PerlIDS.pl\t<C:/Perl/perl/lib/IO/Socket/UNIX.pm\t<C:/censored.pm\t<C:/censored\t<C:/Perl/perl/lib/Time/Local.pm\t<C:/Perl/perl/lib/File/Spec/Unix.pm\t<C:/Perl/perl/lib/auto/re/re.dll\t<C:/Perl/perl/lib/Configgit.pl\t<C:/Perl/perl/lib/Scalar/Util.pm\t<C:/Perl/perl/lib/IO/Socket/INET.pm\t<arybase.c\t<C:/Perl/perl/lib/IO/Seekable.pm\t<C:/Perl/perl/lib/Time/gmtime.pm\t<C:/Perl/perl/lib/Config.pm\t<C:/censored.pm\t<C:/censored\t<C:/Perl/perl/lib/bytes.pm\t<C:/Perl/perl/lib/Win32.pm\t<Socket.c\t<C:/censored.pm\t<C:/Perl/perl/vendor/lib/common/sense.pm\t<C:/Perl/perl/lib/auto/Sys/Hostname/Hostname.dll\t<XS.c\t<C:/censored.pm\t<C:/censored\t<C:/Perl/perl/lib/feature.pm\t<C:/Perl/perl/site/lib/auto/PadWalker/PadWalker.dll\t<C:/Perl/perl/lib/Sys/Hostname.pm\t<C:/Perl/perl/lib/Errno.pm\t<C:/Perl/perl/lib/Carp.pm\t<C:/censored\t<C:/Perl/perl/lib/auto/Fcntl/Fcntl.dll\t<Cwd.c\t<C:\censored.pl\t<C:/Perl/perl/vendor/lib/Term/ReadLine/Perl.pm\t<C:/censored.pm\t<C:/Perl/perl/lib/B.pm\t<C:/censored.pm\t<C:/Perl/perl/site/lib/Tkx.pm\t<C:/censored.pm\t<Tcl.c\t<B.xs\t<C:/Perl/perl/lib/warnings/register.pm\t<POSIX.c\t<attributes.c\t<Socket.xs\t<C:/Perl/perl/lib/File/Spec/Win32.pm\t<C:/censored.pm\t<C:/Perl/perl/lib/Term/Cap.pm\t<C:/Perl/perl/lib/auto/threads/threads.dll\t<C:/Perl/perl/lib/Data/Dumper.pm\t<C:/censored.pm\t<C:/Perl/perl/lib/strict.pm\t<C:/Perl/perl/vendor/lib/auto/Win32/Process/Process.dll\t<C:/Perl/perl/lib/auto/POSIX/POSIX.dll\t<C:/Perl/perl/lib/Time/HiRes.pm\t<C:/Perl/perl/site/lib/Tcl.pm\t<C:/Perl/perl/lib/SelectSaver.pm\t<C:/censored.pm\t<C:/censored.pm\t<C:/Perl/perl/lib/overload.pm\t<C:/Perl/perl/lib/Time/Seconds.pm\t<C:/Perl/perl/lib/Socket.pm\t<C:/censored.pm\t<C:/Perl/perl/lib/Configheavy.pl\t<Fcntl.c\t<IO.c\t<C:/Perl/perl/lib/auto/Time/HiRes/HiRes.dll\t<C:/censored.pm\t<DynaLoader.c\t<C:/Perl/perl/lib/integer.pm\t<C:/censored.pm\t<C:/Perl/perl/lib/Exporter.pm\t<C:/censored.pm\t<Win32CORE.c\t<..\perlio.c\t<shared.c\t<C:/censored.pm\t<C:/Perl/perl/vendor/lib/Win32/API/Type.pm\t<C:/Perl/perl/lib/re.pm\t<C:/Perl/perl/lib/auto/List/Util/Util.dll\t<C:/Perl/perl/vendor/lib/auto/Win32/API/API.dll\t<C:/Perl/perl/lib/Class/Struct.pm\t<C:/Perl/perl/lib/Carp/Heavy.pm\t<C:/Perl/perl/lib/DynaLoader.pm\t<C:/censored.pm\t<Dumper.c\t<win32.c\t<C:/Perl/perl/site/lib/PadWalker.pm\t<PadWalker.c\t<Process.c\t<C:/Perl/perl/lib/attributes.pm\t<C:/censored.pm\t<C:/Perl/perl/lib/auto/arybase/arybase.dll\t<C:/Perl/perl/lib/Time/Piece.pm\t<C:/Perl/perl/lib/arybase.pm\t<ReadKey.c\t<ListUtil.c\t<C:/Perl/perl/lib/vars.pm\t<C:/Perl/perl/lib/auto/Socket/Socket.dll\t<C:/Perl/perl/lib/Thread/Queue.pm\t<C:/Perl/perl/vendor/lib/Win32/API.pm\t<C:/Perl/perl/lib/threads.pm\t<C:/Perl/perl/lib/IO/Select.pm\t<Piece.c\t<..\universal.c\t<HiRes.c\t<C:/Perl/perl/lib/File/Temp.pm\t<C:/Perl/perl/vendor/lib/File/Slurp.pm\t<C:/Perl/perl/vendor/lib/auto/JSON/XS/XS.dll\t<..\mro.c\t<C:/Perl/perl/vendor/lib/Term/ReadKey.pm\t<C:/censored.pm\t<C:/Perl/perl/lib/Getopt/Long.pm\t<C:/Perl/perl/vendor/lib/auto/List/MoreUtils/MoreUtils.dll\t<perllib.c\t<API.c\t<C:/Perl/perl/lib/POSIX.pm\t<C:/Perl/perl/lib/auto/IO/IO.dll\t<C:/Perl/perl/lib/Symbol.pm\t<C:/Perl/perl/lib/IO.pm\t<POSIX.xs\t<re.c\t<C:/censored.pm\t<MoreUtils.c\t<C:/Perl/perl/vendor/lib/Win32/API/Struct.pm\t<C:/Perl/perl/lib/constant.pm\t<C:/Perl/perl/lib/Exporter/Heavy.pm\t<C:/Perl/perl/lib/warnings.pm\t<C:/censored.pm\t<C:/Perl/perl/lib/IO/Socket.pm\t<C:/Perl/perl/lib/Time/tm.pm\t<C:/Perl/perl/vendor/lib/Try/Tiny.pm\t<C:/Perl/perl/lib/threads/shared.pm\t<C:/censored.pm\t<C:/Perl/perl/lib/SelfLoader.pm\t<C:/censored.pm\t<C:/censored.pm\t_<C:/Perl/perl/lib/utf8heavy.pl\t<C:/Perl/perl/lib/File/Path.pm\t<C:/censored.pm\t<C:/censored.pm\t<C:/Perl/perl/site/lib/Config/IniFiles.pm\t<C:/Perl/perl/vendor/lib/Term/ReadLine/readline.pm\t<C:/Perl/perl/vendor/lib/Win32/Process.pm\t<C:/censored.pm\t<C:/Perl/perl/lib/auto/Data/Dumper/Dumper.dll\t<C:/Perl/perl/lib/File/Spec.pm\t<C:/Perl/perl/lib/File/Copy.pm\t<C:/Perl/perl/lib/auto/attributes/attributes.dll\t<C:/Perl/perl/lib/base.pm\t<C:/censored.pm\t<C:/Perl/perl/lib/XSLoader.pm\t<C:/Perl/perl/lib/IO/Handle.pm\t<C:/Perl/perl/lib/File/Basename.pm\t<perl.c\t<C:/Perl/perl/lib/Cwd.pm\t<C:/Perl/perl/lib/overloading.pm\t<C:/Perl/perl/lib/unicore/Heavy.pl\t<C:/Perl/perl/vendor/lib/List/MoreUtils.pm\t<B.c\t<Hostname.c\t<C:/Perl/perl/site/lib/auto/Tcl/Tcl.dll\t<C:/censored.pm\t<C:/Perl/perl/lib/Fcntl.pm\t<C:/Perl/perl/lib/AutoLoader.pm\t<C:/Perl/perl/lib/JSON/PP.pm\t<C:/Perl/perl/lib/auto/B/B.dll\t<C:/Perl/perl/lib/auto/Win32/Win32.dll\t<C:/Perl/perl/lib/Tie/Hash.pm\t<C:/Perl/perl/lib/auto/Cwd/Cwd.dll\t<C:/Perl/perl/lib/auto/Time/Piece/Piece.dll\t<Win32.xs\t<C:/Perl/perl/vendor/lib/auto/Term/ReadKey/ReadKey.dll\t<C:/censored.pm\t<C:/Perl/perl/lib/Term/ReadLine.pm\t<C:/Perl/perl/lib/parent.pm\t<C:/Perl/perl/lib/FindBin.pm\t<C:/Perl/perl/lib/utf8.pm\t<C:/censored.pm"] ["2019-07-03T05:22:49.734Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","\n DB<12> "] ["2019-07-03T05:22:49.807Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","T\n"] ["2019-07-03T05:22:49.807Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<12> "] ["2019-07-03T05:22:49.809Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","T\n"] ["2019-07-03T05:22:49.809Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<12> "] ["2019-07-03T05:22:56.852Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","n\n"] ["2019-07-03T05:22:56.855Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","main::(C:\censored.pl:36):\n36:\tour $Path2ThisScript; # see BEGIN block\n"] ["2019-07-03T05:22:56.862Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<12> "] ["2019-07-03T05:22:56.868Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","T\n"] ["2019-07-03T05:22:56.871Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<12> "] ["2019-07-03T05:22:56.909Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","T\n"] ["2019-07-03T05:22:56.910Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<12> "] ["2019-07-03T05:22:57.338Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","n\n"] ["2019-07-03T05:22:57.346Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","main::(C:\censored:37):\n37:\tour $PathVar; # see BEGIN block\n"] ["2019-07-03T05:22:57.348Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<12> "] ["2019-07-03T05:22:57.356Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","T\n"] ["2019-07-03T05:22:57.356Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<12> "] ["2019-07-03T05:22:57.393Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","T\n"] ["2019-07-03T05:22:57.393Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<12> "] ["2019-07-03T05:22:58.172Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","n\n"] ["2019-07-03T05:22:58.173Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","main::(C:\censored:38):\n38:\tour $LibVar; # see BEGIN block\n"] ["2019-07-03T05:22:58.173Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<12> "] ["2019-07-03T05:22:58.176Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","T\n"] ["2019-07-03T05:22:58.176Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<12> "] ["2019-07-03T05:22:58.226Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","T\n"] ["2019-07-03T05:22:58.226Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<12> "] ["2019-07-03T05:22:59.090Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","n\n"] ["2019-07-03T05:22:59.095Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","main::(C:\censored.pl:39):\n39:\tour $IniVar; # see BEGIN block\n"] ["2019-07-03T05:22:59.096Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<12> "] ["2019-07-03T05:22:59.107Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","T\n"] ["2019-07-03T05:22:59.108Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<12> "] ["2019-07-03T05:22:59.144Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","T\n"] ["2019-07-03T05:22:59.145Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<12> "] ["2019-07-03T05:22:59.786Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","n\n"] ["2019-07-03T05:22:59.788Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","main::(C:\censored.pl:40):\n40:\tour $DllVar; # see BEGIN block\n"] ["2019-07-03T05:22:59.788Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<12> "] ["2019-07-03T05:22:59.790Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","T\n"] ["2019-07-03T05:22:59.790Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<12> "] ["2019-07-03T05:22:59.836Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","T\n"] ["2019-07-03T05:22:59.836Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<12> "] ["2019-07-03T05:23:00.477Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","n\n"] ["2019-07-03T05:23:00.481Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","main::(C:\censored.pl:61):\n61:\tmy $DefaultValueVar = 600;\n"] ["2019-07-03T05:23:00.481Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<12> "] ["2019-07-03T05:23:00.494Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","T\n"] ["2019-07-03T05:23:00.494Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<12> "] ["2019-07-03T05:23:00.526Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","T\n"] ["2019-07-03T05:23:00.527Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<12> "] ["2019-07-03T05:23:15.132Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","p $^X\n"] ["2019-07-03T05:23:15.132Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","C:\Perl\perl\bin\perl.exe"] ["2019-07-03T05:23:15.133Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","\n DB<13> "] ["2019-07-03T05:24:04.368Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","n\n"] ["2019-07-03T05:24:04.370Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","main::(C:\censored.pl:62):\n62:\tmy $DefaultVar2;\n"] ["2019-07-03T05:24:04.370Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<13> "] ["2019-07-03T05:24:04.372Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","T\n"] ["2019-07-03T05:24:04.373Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<13> "] ["2019-07-03T05:24:04.421Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","T\n"] ["2019-07-03T05:24:04.421Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<13> "] ["2019-07-03T05:24:04.611Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","n\n"] ["2019-07-03T05:24:04.613Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","main::(C:\censored.pl:63):\n63:\tmy $DefaultVar3;\n"] ["2019-07-03T05:24:04.613Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<13> "] ["2019-07-03T05:24:04.618Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","T\n"] ["2019-07-03T05:24:04.618Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<13> "] ["2019-07-03T05:24:04.664Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","T\n"] ["2019-07-03T05:24:04.665Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<13> "] ["2019-07-03T05:24:04.828Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","n\n"] ["2019-07-03T05:24:04.835Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312","main::(C:\censored.pl:64):\n64:\tmy $DefaultVar4;\n DB<13> "] ["2019-07-03T05:24:04.839Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","T\n"] ["2019-07-03T05:24:04.839Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<13> "] ["2019-07-03T05:24:04.901Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","T\n"] ["2019-07-03T05:24:04.901Z","perl-debug.streamcatcher.data","127.0.0.1:57311 serving 127.0.0.1:57312"," DB<13> "] ["2019-07-03T05:24:05.380Z","perl-debug.streamcatcher.write","127.0.0.1:57311 serving 127.0.0.1:57312","c\n"]

FirstStormtrooper commented 5 years ago

Maybe, there is a problem with a Firewall on Debugging Ports (57311 and 57312 for me)?

MrSilco commented 5 years ago

I have the same problem on Win 10 Pro (latest version) with Perl v5.16.3 x64 with extension version 0.6.0 or 0.6.1. (Anyway on macOS 10.14.6 it works correcly with the same extension version.) With an earlier VSC & v0.5.0 extension the debugging was good previously. Now the symptoms are the following: the debug session starts but no visual yellow cursor can be seen next to the line where the debugger stops first. The variables & call stack windows are empty during the session. The debug console & terminal tabs show that we are in a debug session. The debugging keys are working but there is no visual feedback. When I try to stop the debugging I have to click on the stop button twice. (This is another bug that exists on macOS too but worked fine in extension v0.5.0.) The 1st stop terminates the terminal session (perl -d), the 2nd one terminates the debug console session.

MrSilco commented 5 years ago

I've realized what the problem is with the extension on Windows. This is due to the paths that contain backslashes in the @INC variable. On Windows the @INC can contain paths with mixed path separators (\ & /) even within a path too. So the extension cannot resolve them. I guess the '.' path behaves the same. This is why it doesn't work even with a single Perl file too.

raix commented 5 years ago

Not sure if we can normalize paths some how on Windows - Thank you for the investigation, will try reproducing

jkeroes commented 5 years ago

There's always File::Spec, as you're probably aware.

shuterml commented 5 years ago

Possible solution

I am not sure if this will help but I have had the same issue on several machines in our development environment and not on others and have spent weeks looking for a solution over the last year, sometimes resorting to rebuilding development environments completely. I have been really confused, uninstalled visual studio code, reinstalled, installed insiders edition portable editions to no avail and multiple versions of the Perl-Debug extension, no luck.

The code will start to debug and you can use the debugging window to step through the code using the n command but nothing displays, no variables watches no little yellow triangle for current line etc.

Then I tried something that we do when we write cross platform code and removed ALL spaces from the path names to where the Perl files are located and from the Perl files themselves.

As soon as I did this all the debugging functionality was working as expected on all editions Visual Studio Code .

As a test I have set the the identical code in two paths on the same machine with the only difference being that one path has a space in it and the other doesn't. The one with the space doesn't work correctly but the one without debugs absolutely fine.

From looking at the log information proved by PhilSanch who has had the issue I can see the path to the perl file is C:\Users\DXXJ2506\Documents\Visual Studio\test.pl

this has a space in in it.

The addition of a space in a path is such a simple thing but in my case it has a major effect of the usability of Perl debugging. I am not saying it is the correct solution but it has enabled me to debug again on all our systems and we are putting procedure in place to ensure all Perl code is in paths with NO SPACES on all platforms

raix commented 5 years ago

I'm thinking to test this in windows - I'll try to make the path/file resolver more resilient (would also be nice to get tests running for windows again)

FirstStormtrooper commented 5 years ago

Problem still existent in 0.6.2

raix commented 5 years ago

Thanks @FirstStormtrooper for reporting - I'm looking into this issue atm. improving file path checks / regex and adding more tests to this.

FirstStormtrooper commented 4 years ago

Are there any news?

PhilSanch commented 4 years ago

Hello I investigate and problem is due to GPO policy that do prevent writing or reading in some directories used by plugin.

Issue solved via making a VM and installing again on it everything

Regards Phil

Le lun. 25 nov. 2019 à 15:53, FirstStormtrooper notifications@github.com a écrit :

Are there any news?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/raix/vscode-perl-debug/issues/100?email_source=notifications&email_token=AL7JWT3TE2P6CZFNSED2AWDQVPRHFA5CNFSM4HKUMNF2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEFCVADI#issuecomment-558190605, or unsubscribe https://github.com/notifications/unsubscribe-auth/AL7JWT4EZFOLW3DQUJX5EILQVPRHFANCNFSM4HKUMNFQ .