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

Variable, Watch, Step by Step not working #100

Open
PhilSanch opened this issue May 3, 2019 · 14 comments
Open

Variable, Watch, Step by Step not working #100

PhilSanch opened this issue May 3, 2019 · 14 comments

Comments

@PhilSanch
Copy link

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
Copy link
Collaborator

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
Copy link
Author

PhilSanch commented May 7, 2019 via email

@FirstStormtrooper
Copy link

FirstStormtrooper commented Jul 3, 2019

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 ($old_postponed) = @; \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/Config_git.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/Config_heavy.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/utf8_heavy.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
Copy link

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

@MrSilco
Copy link

MrSilco commented Aug 21, 2019

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
Copy link

MrSilco commented Sep 9, 2019

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
Copy link
Owner

raix commented Sep 9, 2019

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

@jkeroes
Copy link

jkeroes commented Sep 9, 2019

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

@shuterml
Copy link

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
Copy link
Owner

raix commented Sep 13, 2019

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
Copy link

Problem still existent in 0.6.2

@raix
Copy link
Owner

raix commented Sep 16, 2019

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

@FirstStormtrooper
Copy link

Are there any news?

@PhilSanch
Copy link
Author

PhilSanch commented Dec 23, 2019 via email

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

No branches or pull requests

7 participants