Exafunction / CodeiumVisualStudio

Visual Studio extension for Codeium
https://codeium.com
MIT License
109 stars 25 forks source link

Unstable Internet Causing Codeium To Not Work #32

Open dadadies opened 6 months ago

dadadies commented 6 months ago

To start, I know very little about internet related connections and issues. But I do have an unstable internet connection where certain types of connection, specifically github, pypi, and apparently codeium, are the only connections I am unable to connect to and work with. I assume they require a 'perfect' and stable internet connection.

Here are my specific codeium errors: the chat window either stays stuck and says 'Loading', or it loads but it says 'retry connection' so when i type text and press enter it just goes to a new line in the text field instead of sending the message:

'''

Starting language server Codeium Extension for Visual Studio Language Server: I1217 13:36:37.685629 14508 main.go:539] Starting language server manager with pid 14508 Language Server: I1217 13:36:37.687141 14508 main.go:107] Manager acquired its lock file C:\Users\Owner\AppData\Local\Temp\a5zcolqw.svq/locks/manager.lock Language Server: I1217 13:36:37.695753 14508 main.go:245] Waiting for random port file in C:\Users\Owner\AppData\Local\Temp\a5zcolqw.svq/child_random_port_1702848997687141400_3304693970854226442 to be created Language Server: I1217 13:36:37.789557 17080 main.go:533] Starting language server process with pid 17080 Language Server: I1217 13:36:37.986477 17080 server.go:532] Successfully created API server client Language Server: I1217 13:36:37.992638 17080 server.go:538] Successfully created API streaming client Language Server: I1217 13:36:38.055563 17080 server.go:547] Successfully initialized tokenizer Language Server: I1217 13:36:38.056017 17080 unleash.go:95] Initializing Unleash Language Server: I1217 13:36:40.118435 17080 unleash.go:115] Successfully initialized Unleash Language Server: I1217 13:36:40.118435 17080 search_provider.go:156] Using database at C:\Users\Owner\AppData\Roaming.codeium\database/1/MODEL_EMBED_6591 Language Server: E1217 13:36:40.148251 17080 unleash.go:56] Unleash error: Post "https://unleash.codeium.com/api/client/register": context deadline exceeded (Client.Timeout exceeded while awaiting headers) Language Server: E1217 13:36:40.148251 17080 unleash.go:56] Unleash error: Get "https://unleash.codeium.com/api/client/features": context deadline exceeded (Client.Timeout exceeded while awaiting headers) Language Server: I1217 13:36:40.187706 17080 search_provider.go:168] Successfully created embedding search database Language Server: I1217 13:36:40.188707 17080 search_provider.go:214] Successfully created embedding search provider Language Server: I1217 13:36:40.188707 17080 server.go:613] Successfully created exact search provider Language Server: I1217 13:36:40.638616 17080 server.go:634] Successfully created completion provider Language Server: I1217 13:36:40.638616 17080 server.go:672] Child process attempting to acquire lock file C:\Users\Owner\AppData\Local\Temp\a5zcolqw.svq/locks/child_lock_1702848997687141400_5196452515966027005 Language Server: I1217 13:36:40.640048 17080 server.go:682] Child process acquired lock file C:\Users\Owner\AppData\Local\Temp\a5zcolqw.svq/locks/child_lock_1702848997687141400_5196452515966027005 Language Server: I1217 13:36:40.652917 17080 server.go:341] Language server will attempt to listen on host 127.0.0.1 Language server started on port 55238 Language Server: I1217 13:36:40.653915 17080 server.go:385] Language server listening on random port at 55238 Language Server: I1217 13:36:40.656195 17080 web_server.go:271] Chat Client file server listening at https://127.0.0.1:55240 Language Server: I1217 13:36:40.661414 17080 web_server.go:229] Chat Web Server listening at ws://127.0.0.1:55239 Language Server: I1217 13:36:40.749318 14508 main.go:281] Language server manager found random server port 55238 Language Server: I1217 13:36:40.749318 14508 main.go:282] Language server manager found random lsp port 42101 Language Server: I1217 13:36:40.749318 14508 main.go:289] Language server manager attempting to connect to language server at 127.0.0.1:55238 Language Server: I1217 13:36:41.039115 14508 main.go:160] Fixing language server port at 55238 Language Server: I1217 13:36:41.039115 14508 main.go:340] Language server manager successfully connected to new language server at 127.0.0.1:55238 Language Server Controller: Connected to ws://127.0.0.1:55239/connect/ide Language Server: E1217 13:37:40.064986 17080 unleash.go:56] Unleash error: Get "https://unleash.codeium.com/api/client/features": context deadline exceeded (Client.Timeout exceeded while awaiting headers) Language Server: E1217 13:37:40.064986 17080 unleash.go:56] Unleash error: Post "https://unleash.codeium.com/api/client/metrics": context deadline exceeded (Client.Timeout exceeded while awaiting headers) Language Server: E1217 13:38:40.061279 17080 unleash.go:56] Unleash error: Get "https://unleash.codeium.com/api/client/features": context deadline exceeded (Client.Timeout exceeded while awaiting headers) Language Server: E1217 13:38:40.061279 17080 unleash.go:56] Unleash error: Post "https://unleash.codeium.com/api/client/metrics": context deadline exceeded (Client.Timeout exceeded while awaiting headers)

'''

Is it possible to make codeium work with unstable connections? How does all the other websites and servers do it since they all work except the websites and servers I mentioned. Is this requirement for a stable connection a codeium preference that can be changed to accept unstable connections? Codeium live also seems to have an issue with unstable connections as it constantly resets the chat to the beginning every few seconds (i assume its due to my unstable connection).

I have a lot of what i assume to be spaghetti code and beginner level code that i would like codeium to help me in 'refactoring'.

thedemons commented 6 months ago

Hello, sorry to hear about the connection issue, has this been a persistent problem? Can you connect to the URL https://unleash.codeium.com/api/client/features using your browser? Also, have you tried to use a VPN?

AliShahesmaeili commented 6 months ago

image I have same problem! Via VPN i can open https://unleash.codeium.com/api/client/features in browser but in VS does not change

thedemons commented 6 months ago

Hey @AliShahesmaeili, would you mind helping us troubleshoot this problem?

Please kindly remove the --detect_proxy=false on LanguageServer.cs line 534, then build the extension using this guide and double click the .vsix file to install it. Alternatively, you can use my build instead: Codeium.zip.

Please make sure to uninstall the existing extension before installing the new one. After that, turn on the VPN to see if that works for you. Thanks!

dadadies commented 6 months ago

Hello, sorry to hear about the connection issue, has this been a persistent problem? Can you connect to the URL https://unleash.codeium.com/api/client/features using your browser? Also, have you tried to use a VPN?

I see: error: "Not allowed to access"

I always have connection issue with github and pypi and can never download anything from these sites through cmd prompts or anything that uses github or pypi. I have to download things manually or from other sources.

I am using a VPN but the connection is unstable, reconnecting every few sec or min. The unstable connection comes from the VPN but i don't know if this issue is the VPN or unstable connection in any of the cases.

thedemons commented 6 months ago

I see: error: "Not allowed to access"

That's normal, it means you can connect to the server, would you mind following the post I commented above and installing that version of the extension to see if the problem goes away?

dadadies commented 6 months ago

I see: error: "Not allowed to access"

That's normal, it means you can connect to the server, would you mind following the post I commented above and installing that version of the extension to see if the problem goes away?

Wow that works. Now I can 'code' like a pro. Thank you. Can you tell me what the issue was? It might help me help others figure out what is wrong with the other connections (sites /servers).

AliShahesmaeili commented 6 months ago

@thedemons Yes it works now with VPN when i remove the --detect_proxy=false

dadadies commented 6 months ago

I assume this problem is considered fixed and closed? I would close it but ill leave it to the veterans.

thedemons commented 6 months ago

Can you tell me what the issue was? It might help me help others figure out what is wrong with the other connections (sites /servers).

For some reasons your internet connection can't reach Codeium server and it requires you to use a VPN. But --detect_proxy=false prevented the language server from using the proxy hence you can use your browser but not the extension.


I assume this problem is considered fixed and closed? I would close it but ill leave it to the veterans.

Please leave it opened for now until the connection issue is fully fixed


We will investigate this further and hopefully, you won't need a VPN to use Codeium. Sorry for the inconvenience!

dadadies commented 6 months ago

We will investigate this further and hopefully, you won't need a VPN to use Codeium. Sorry for the inconvenience!

I have no internet without VPN so i actually need to use a VPN to be able to use codeium. So the solution / vsix you provided works perfectly for my specific VPN issue. But again i dont know if the issue was the VPN itself or just the general unstable connection it provides.

thedemons commented 6 months ago

@AliShahesmaeili @dadadies

Hey, sorry for the ping, PR #36 has added an option to enable proxy and it should be visible in Tools > Options > Codeium. It is disabled by default so kindly enable it from there.

Please uninstall that custom-build vsix and install the extension from the marketplace to ensure it's always up-to-date! Thanks!

image

dadadies commented 6 months ago

I installed from the marketplace and enabled language proxy server. But i still get a connection error:

Starting language server Codeium Extension for Visual Studio Language Server: I1222 10:33:02.195758 12880 main.go:538] Starting language server manager with pid 12880 Language Server: I1222 10:33:02.197323 12880 main.go:107] Manager acquired its lock file C:\Users\Owner\AppData\Local\Temp\wl52khjk.d1r/locks/manager.lock Language Server: I1222 10:33:02.208247 12880 main.go:245] Waiting for random port file in C:\Users\Owner\AppData\Local\Temp\wl52khjk.d1r/child_random_port_1703269982197323100_3490000958135274720 to be created Language Server: I1222 10:33:02.293607 11144 main.go:532] Starting language server process with pid 11144 Language Server: I1222 10:33:02.418393 11144 proxy.go:113] proxyplease.proxy> No proxy provided. Attempting to infer from system. Language Server: I1222 10:33:02.430599 11144 proxy.go:113] proxyplease.proxy> Inferred proxy from system: http://127.0.0.1:60280 Language Server: I1222 10:33:02.430599 11144 client.go:589] [DEBUG] GET https://server.codeium.com/exa.api_server_pb.ApiServerService/GetCompletions Language Server: I1222 10:33:02.765673 11144 proxy.go:94] proxyplease.connect> Proxy successfully established. No authentication was required. Language Server: I1222 10:33:03.453343 11144 transport.go:27] Successfully dialed proxy Language Server: I1222 10:33:03.539500 11144 server.go:532] Successfully created API server client Language Server: I1222 10:33:03.539500 11144 transport.go:27] Successfully dialed proxy Language Server: I1222 10:33:03.556167 11144 server.go:538] Successfully created API streaming client Language Server: I1222 10:33:03.817627 11144 server.go:547] Successfully initialized tokenizer Language Server: I1222 10:33:03.817627 11144 unleash.go:95] Initializing Unleash Language Server: I1222 10:33:05.866586 11144 unleash.go:115] Successfully initialized Unleash Language Server: I1222 10:33:05.866586 11144 search_provider.go:156] Using database at C:\Users\Owner\AppData\Roaming.codeium\database/1/MODEL_EMBED_6591 Language Server: E1222 10:33:05.922924 11144 unleash.go:56] Unleash error: Get "https://unleash.codeium.com/api/client/features": context deadline exceeded (Client.Timeout exceeded while awaiting headers) Language Server: E1222 10:33:05.922924 11144 unleash.go:56] Unleash error: Post "https://unleash.codeium.com/api/client/register": dial tcp 35.223.238.178:443: i/o timeout (Client.Timeout exceeded while awaiting headers) Language Server: I1222 10:33:06.032569 11144 search_provider.go:168] Successfully created embedding search database Language Server: I1222 10:33:06.033859 11144 search_provider.go:214] Successfully created embedding search provider Language Server: I1222 10:33:06.033859 11144 server.go:613] Successfully created exact search provider Language Server: I1222 10:33:06.232201 11144 server.go:634] Successfully created completion provider Language Server: I1222 10:33:06.232201 11144 server.go:672] Child process attempting to acquire lock file C:\Users\Owner\AppData\Local\Temp\wl52khjk.d1r/locks/child_lock_1703269982198827900_7488561739610933746 Language Server: I1222 10:33:06.233201 11144 server.go:682] Child process acquired lock file C:\Users\Owner\AppData\Local\Temp\wl52khjk.d1r/locks/child_lock_1703269982198827900_7488561739610933746 Language Server: I1222 10:33:06.262684 11144 server.go:341] Language server will attempt to listen on host 127.0.0.1 Language server started on port 62343 Language Server: I1222 10:33:06.263725 11144 server.go:385] Language server listening on random port at 62343 Language Server: I1222 10:33:06.265068 11144 web_server.go:271] Chat Client file server listening at https://127.0.0.1:62345 Language Server: I1222 10:33:06.267066 11144 web_server.go:229] Chat Web Server listening at ws://127.0.0.1:62344 Language Server: I1222 10:33:06.297212 12880 main.go:281] Language server manager found random server port 62343 Language Server: I1222 10:33:06.297212 12880 main.go:282] Language server manager found random lsp port 42101 Language Server: I1222 10:33:06.297212 12880 main.go:289] Language server manager attempting to connect to language server at 127.0.0.1:62343 Language Server Controller: Connected to ws://127.0.0.1:62344/connect/ide Language Server: I1222 10:33:06.577848 12880 main.go:160] Fixing language server port at 62343 Language Server: I1222 10:33:06.577848 12880 main.go:340] Language server manager successfully connected to new language server at 127.0.0.1:62343 Language Server: E1222 10:34:05.833654 11144 unleash.go:56] Unleash error: Get "https://unleash.codeium.com/api/client/features": context deadline exceeded (Client.Timeout exceeded while awaiting headers) Language Server: E1222 10:34:05.833654 11144 unleash.go:56] Unleash error: Post "https://unleash.codeium.com/api/client/metrics": context deadline exceeded (Client.Timeout exceeded while awaiting headers)

Whatever was in the 'custom-build vsix' made codeium work when you uploaded it. However even the custom-build vsix doesn't work anymore. [This could be a lost cause. My situation is a bit unusual as I using an unknown VPN to have internet access and they might be doing unusual things that are interfering with github, pypi, and codeium. These 3 must be doing something similar to have the similar issues. Additionally my VPN doesn't allow peer-to-peer and who knows what else. I only have these issues when I am using this VPN. When i use public wifis i have no issues. That said the custom-build vsix did work for a moment so I know its possible to fix the issue.]

fortenforge commented 6 months ago

It looks like the setting did in fact work as proxyplease successfully found the proxy defined by the VPN and is using it. Not sure there's much else we can do unfortunately.

dadadies commented 6 months ago

I have found that occasionally i can use Codeium if I use a token. But normal signin doesn't. Its spotty but it works when it works. I dont know if this is considered fixed since i cant really confirm if before this change, there was an option to use a token as I don't remember there being a token option before the change.