Closed Eiyeron closed 6 years ago
Does it work with "haxe.enableCompilationServer": false
in your settings (no --connect
should appear anymore)?
Is your vshaxe version up-to-date (1.11.0)?
Also check the Haxe output channel for potential errors: https://github.com/vshaxe/vshaxe/wiki/Troubleshooting#completion-doesnt-work-at-all
It works with setting the configuration flag to false. My vs-haxe is up to date
The server doesn't seem to react to the build step if I launch the build task with the flag to true.
Can you check the Haxe output channel? You should see some output like this:
Haxe language server started
Initializing completion cache...
Listening on port 6000
Done.
The port should match what's added by --connect
. When you launch the task with --connect
it should print this:
Client connected
And finally, when the build finished:
Client disconnected
Btw, what Haxe version are you running?
I'm running 3.4.7. The server doesn't even react when the task launches even though it listens on port 6000
What does the output channel's output look like if you enable verbose mode?
"haxe.displayServer": {
"arguments": ["-v"]
}
This is pretty strange.. I wonder if you're having some Windows Firewall issue where ports are blocked or something... Perhaps try turning that off temporarily to see if it helps?
Processing Arguments [--cwd,e:/Dev/Haxe/Flixel/Textbox,-main,ApplicationMain,-cp,E:/Dev/Haxe/HaxeToolkit/haxe/lib/flixel/4,3,0,-D,flixel=4.3.0,-cp,E:/Dev/Haxe/HaxeToolkit/haxe/lib/openfl/3,6,1,-D,openfl=3.6.1,-cp,E:/Dev/Haxe/HaxeToolkit/haxe/lib/lime/2,9,1,-D,lime=2.9.1,--macro,keep('IntIterator'),-cp,E:/Dev/Haxe/HaxeToolkit/haxe/lib/hscript/2,1,1,-D,hscript=2.1.1,-cp,E:/Dev/Haxe/HaxeToolkit/haxe/lib/flixel-addons/2,5,0,-D,flixel-addons=2.5.0,-cp,source,-cp,E:\Dev\Haxe\HaxeToolkit\haxe\lib\openfl/3,6,1/extern,-D,HXCPP_QUIET,-D,openfl-next,-D,tools=2.9.1,-D,NAPE_NO_INLINE,-D,no-compilation,-D,native,-D,FLX_NO_TOUCH,-D,lime-native,-D,openfl-native,-D,windows,-D,desktop,--remap,flash:openfl,--macro,flixel.system.macros.FlxDefines.run(),-cp,export/windows/neko/haxe,-neko,export/windows/neko/obj/ApplicationMain.n,--macro,keep("Main"),-debug,-D,display,-D,display-details,--no-output,--display,e:/Dev/Haxe/Flixel/Textbox/source/PlayState.hx@0@diagnostics]
Defines FLX_NO_TOUCH=1,HXCPP_QUIET=1,NAPE_NO_INLINE=1,dce=std,debug=1,desktop=1,display-details=1,display=1,display_details=1,flixel-addons=2.5.0,flixel=4.3.0,flixel_addons=2.5.0,haxe3=1,haxe_ver=3.407,hscript=2.1.1,lime-native=1,lime=2.9.1,lime_native=1,native=1,neko=1,no-compilation=1,no_compilation=1,no_copt=1,openfl-native=1,openfl-next=1,openfl=3.6.1,openfl_native=1,openfl_next=1,source-header=Generated by Haxe 3.4.7,sys=1,tools=2.9.1,true=1,windows=1
Using signature e8393497bd8ba7fd34c33196236f1cc1
Display position: e:\dev\haxe\flixel\textbox\source\playstate.hx: 0-0
0, n: skipping ApplicationMain(textbox.Textbox)
0, n: parsed e:\dev\haxe\flixel\textbox\export\windows\neko\haxe\applicationmain.hx (not cached, using "display" define)
0, n: skipping Main(textbox.Textbox)
0, n: skipping PlayState
0, n: parsed e:\dev\haxe\flixel\textbox\source\playstate.hx (not cached, is display file)
0, n: skipping textbox.Textbox
Completion Response =
[]
Stats = 2 files, 4 classes, 20 methods, 3 macros
Time spent : 0.155s
It seems to get the build command but skips everything for some reason (I turned back the enable compilation flag).
Edit: here I edited a variable PlayState so I could see the difference.
That's not the build command, that's a request to get diagnostics information from the Haxe server. You can tell by this at the end of the arguments list:
--display,e:/Dev/Haxe/Flixel/Textbox/source/PlayState.hx@0@diagnostics
But yeah, even without verbose mode you should see Client connected
, so for some reason it can't connect...
I wonder, does the following work for you?
haxe --wait 7000
in a cmd.exe
(port 7000 just to have no collisions if there's a VSCode window open)lime test neko --connect 7000
on your projectNothing really fancy (I have seen those warnings for years now, so they're off the hook on this one)
Edit: next time, I'll think of stretching down the terminals, my bad.
Hm, so that's working then... haxe --wait <port>
is not quite the same as what vshaxe does internally. Still not sure if it could perhaps be a firewall issue.
Just a wild guess, but this is interesting: https://stackoverflow.com/a/21230911/2631715 - vshaxe doesn't explicitly specify localhost, so that might be the issue. netstat -a -n
confirms that:
TCP [::]:6000 [::]:0
While for the haxe --wait
server, 127.0.0.0
is used:
TCP 127.0.0.1:7000 0.0.0.0:0
Could you give the following a shot?
C:\Users\<User>\.vscode\extensions\vshaxe\bin\server.js
replace this line (should be around line 8785 somewhere):
this.socketListener.listen(port);
with this:
this.socketListener.listen(port,"localhost");
--connect
works nowSorry, I can't try this on the computer where the issue is located now. If I don't forget, I'll give you feed back next Monday.
Thanks for your support and have a nice weekend!
Thanks! For now I've committed that change, it seems more correct either way: https://github.com/vshaxe/haxe-languageserver/commit/085e571306e7db67b6042bfac0fb142d9b898009
Any luck with the manually applied patch?
Hello. Yeah, it works with the applied patch.
I also suspect a conflict with this computer's firewall policies or another program that already uses the port.
Thanks for the patch and the support!
Nice, thanks for confirming! :) We might want to release the next version a bit sooner then to avoid others running into this.
Hello folks! Any news on this?, I'm having the same issue
Nothing happens, and also windows is using that port I think
TCP 127.0.0.1:6000 0.0.0.0:0 LISTENING
The fix for this was released with vshaxe 1.12.0. Your output looks good actually.
But it does not raise the server, when I run lime: run html5
I just get:
Executing task: lime run html5 --connect 6000
But nothing else happens
I'm not sure what the problem could be right now, but it must be different from what was originally reported in this issue. As mentioned earlier here, you can just turn off the compilation server if you need a workaround.
Hello. I'm currently using this extension (using the version on the extension stroe. Everything works minus one specific step in the process: no build is actually done in both tasks.
The
lime test neko -debug --connect 6000
doesn't build at all. If there is an error in the code, it won't even be notified. I don't know what it is trying to connect to but what it only does is launching the last built version (or crash due to lacking .objs file -precisely ApplicationMain.n- on a clean project folder)I have to manually do
lime test neko
(with or without-debug
) in the console (lime is in PATH, so no issues here).I mostly noted the issue on Windows but I'll give a try on linux again later. The
project.xml
file is the same as HXFlixel's, with flixel-addons haxelib option uncommented. I wonder if it's a misconfiguration from my part or just an issue within the extension.Have a nice day.