Strahinja Val Markovic
5ae3a573b9
Workaround for annoying clang bug with pragma once
...
Fixes #216
2013-11-17 17:59:39 -08:00
Strahinja Val Markovic
757602becf
Workaround for header flags with compilation db
2013-11-17 14:17:20 -08:00
Strahinja Val Markovic
76f9c42d6e
Minor whitespace fix
2013-11-17 13:46:14 -08:00
Strahinja Val Markovic
1f23171c08
Test for exception on no flags from extra conf
2013-11-17 13:45:39 -08:00
Strahinja Val Markovic
19a5bf0500
Notifying user if no flags come from extra conf
2013-11-17 13:32:43 -08:00
Strahinja Val Markovic
2caf90637d
Better handling of bad flags from extra conf
2013-11-17 13:10:16 -08:00
Strahinja Val Markovic
64078f20a0
Added the g:ycm_use_ultisnips_completer option
...
This can be used to turn off UltiSnips completion candidates.
Fixes #596 .
2013-11-15 16:22:20 -08:00
Strahinja Val Markovic
d41a011198
Deleting some dead code
2013-11-15 15:48:55 -08:00
Strahinja Val Markovic
450403044b
Adding new g:ycm_path_to_python_interpreter option
...
Fixes #663
2013-11-14 10:50:53 -08:00
Strahinja Val Markovic
0226ba4c90
ycmd using Vim stdin on Windows
...
This resolves YCM crash problems. Fixes #637 .
2013-11-07 14:53:15 -08:00
Strahinja Val Markovic
4aa207c2ad
Checking for 'pythonw' only on Windows
...
On Mac OS X, checking for pythonw can return a path to an ancient 2.4 version of
Python in some cases. We don't want that.
2013-11-05 15:30:34 -08:00
Strahinja Val Markovic
207a0779c3
Ensuring filename is a plain Python string
...
We don't want to send a unicode string to the user's ycm_extra_conf.py file.
This should fix problems with sending the filename to YCM's CompilationDatabase
API.
2013-11-05 10:28:40 -08:00
Strahinja Val Markovic
aa0ccdb925
Better client notice when ycmd crashes
...
Now we only show the last 30 lines of stderr instead of everything in it which
was not very useful. We also tell the user about :YcmRestartServer.
2013-11-04 11:15:03 -08:00
Strahinja Val Markovic
9ea0c39279
Forcing requests to ycmd to ignore local proxies
...
Fixes #641
2013-11-04 10:34:42 -08:00
Strahinja Val Markovic
ca90d10ff7
Minor logic refactor for path to Python func
2013-11-01 10:53:16 -07:00
Strahinja Val Markovic
7bfb4c3402
Use a thread pool that doesn't join workers
...
By default, a ThreadPoolExecutor will wait at Python interpreter shutdown for
all the threads to stop by themselves before letting the interpreter shut down.
We don't want that for the network requests thread pool, it causes a shutdown
latency if there are outstanding requests. Killing the threads in our pool is
perfectly safe so we can avoid the latency by introducing an
UnsafeThreadPoolExecutor.
2013-10-30 18:08:35 -07:00
Sascha G.
2ea2444e66
Upping ycmd max request size to 1000kb
2013-10-30 22:50:58 +01:00
Tom Vincent
15b7e7683a
Blacklist vimwiki filetype
...
[vimwiki][] has a markdown-like syntax, which doesn't bode well with YCM
(flickering "pattern not found" messages, performance hits with long prose).
[vimwiki]: https://github.com/vimwiki/vimwiki
2013-10-30 01:35:17 +00:00
Strahinja Val Markovic
9734c473e2
Upping ycmd max request size to 500kb
...
Fixes #624
2013-10-29 12:16:46 -07:00
Strahinja Val Markovic
f91790e2ee
Only importing ycm_core in ycmd
...
I'm not sure, but it seems that loading both ycm_client_support and ycm_core
into the same process is causing random ycmd crashes.
2013-10-28 12:17:18 -07:00
Strahinja Val Markovic
6e782508b3
Now possible to sent Vim data to FlagsForFile func
...
Fixes #612 .
2013-10-26 16:22:43 -07:00
Strahinja Val Markovic
dda1a83c09
Turning off the omnisharp server after test
2013-10-26 12:30:49 -07:00
Strahinja Val Markovic
63534e1a6f
Fixing some cs completer subcommands failing
...
The subcommand would execute correctly, but since there would be no return
statement, it would hit the bottom of the function and raise an error.
2013-10-26 12:28:10 -07:00
Strahinja Val Markovic
3795f4f11c
Split server tests into multiple files
2013-10-26 12:15:56 -07:00
Strahinja Val Markovic
17d149e899
ycmd loads default options when none provided
2013-10-25 13:26:33 -07:00
Strahinja Val Markovic
2b8ee37bf5
ycmd uses a random free port when running vim-free
...
Previously the default was 6666, which was temporary.
2013-10-25 13:11:13 -07:00
Strahinja Val Markovic
77b8adf0a9
Minor refactoring for readability
2013-10-24 20:24:08 -07:00
Strahinja Val Markovic
2a42e2ccdf
Better way of locating the Python 2.6/2.7 bin
...
It appears we can't trust sys.executable on some Unix machines as well.
Fixes #607 .
2013-10-24 20:21:03 -07:00
Strahinja Val Markovic
a0f85f0b6c
The ycm_temp dir is now accessible by all
...
Fixes #606
2013-10-24 10:26:55 -07:00
Strahinja Val Markovic
4af2ba0faa
Option "shutdown_secs" is now "suicide_secs"
...
Calling the option server_idle_suicide_seconds should be easier to understand.
2013-10-23 12:33:27 -07:00
Strahinja Val Markovic
b2aa5e3d3f
Moving client-only settings out of settings JSON
...
Since these options are only used on the client, they shouldn't be in
default_settings.json.
2013-10-23 12:30:13 -07:00
Strahinja Val Markovic
262d8aad03
New ycmd watchdog kills server when idle too long
...
Defaults are kill server after 12 hours of inactivity; the reason why it's 12
hours and not less is because we don't want to kill the server when the user
just left his machine (and Vim) on during the night.
2013-10-23 12:21:33 -07:00
Strahinja Val Markovic
78107361b3
Killing some dead code
2013-10-22 13:48:15 -07:00
Strahinja Val Markovic
5b76bcf8b7
GetDetailedDiagnostic actually takes 2 params
...
The Completer class version of the func only took 1 by mistake.
2013-10-22 13:46:24 -07:00
Strahinja Val Markovic
ce96a47098
Printing server PID in YcmDebugInfo
2013-10-22 10:53:31 -07:00
Strahinja Val Markovic
6d9969fa9c
Surfacing ycmd server PID to user scripts
...
To get the PID, call function youcompleteme#ServerPid().
2013-10-22 10:51:37 -07:00
Strahinja Val Markovic
9d8fdac518
Minor cleanup of Completer comments
2013-10-18 12:35:40 -07:00
Strahinja Val Markovic
f6ca040cf7
Nth attempt at correct shutdown procedure.
...
If we install an explicit signal handler for SIGTERM and SIGINT and then call
sys.exit ourselves, atexit handlers are run. If we don't call sys.exit from the
handler, ycmd never shuts down. So fixed... I think. We'll see.
Fixes #577... again.
2013-10-17 22:15:17 -07:00
Strahinja Val Markovic
a5fb6b7509
Removing unsupported signal() calls on Windows
...
SIGQUIT and SIGHUP are not supported.
For details, see Python docs: http://docs.python.org/2/library/signal.html#signal.signal
2013-10-17 20:16:44 -07:00
Strahinja Val Markovic
6e9a16e90e
Signal handler must take 2 params
...
Otherwise we get a TypeError
2013-10-17 20:14:56 -07:00
Strahinja Val Markovic
acae8e4e9d
Tweaked the request retries logic.
...
We now send more retry requests that are less spaced apart.
2013-10-17 14:45:53 -07:00
Strahinja Val Markovic
40464f6e0d
Resolving issues with event requests timing out
...
It appears that the issue comes from sending a None timeout to Requests. It
seems it's a bug in Requests/urllib3. So we just pick an arbitrary long timeout
of 30s as the default.
2013-10-17 14:21:37 -07:00
Strahinja Val Markovic
5070835d01
Ensuring server cleanup on OS signals
...
atexit won't run registered functions for SIGTERM which we send to the server.
This prevents clean shutdown.
Also making sure that the server logfiles are deleted as well.
2013-10-17 12:21:59 -07:00
Strahinja Val Markovic
b4d5b4ffbb
More logging for extra conf store
2013-10-17 12:21:33 -07:00
Strahinja Val Markovic
5b37a2e36d
Don't print traceback when no detailed diagnostic
...
We should only print the message.
2013-10-16 14:37:42 -07:00
Strahinja Val Markovic
18002e17df
Better handling of crashed ycmd; restart command
...
Previously the YCM Vim client would go bonkers when ycmd crashed. Now the user
can continue using Vim just without YCM functionality.
Also added a :YcmRestartServer command to let the user restart ycmd if it
crashed. With a little luck, this will be rarely necessary.
2013-10-15 15:27:54 -07:00
Strahinja Val Markovic
436017bd4d
Now using new ycm_client_support shared lib
...
This means we can now load just ycm_client_support (which is a much smaller
library) into Vim and ycm_core into ycmd. Since ycm_client_support never depends
on libclang.so, we never have to load that into Vim which makes things much,
much easier.
2013-10-15 14:15:04 -07:00
Strahinja Val Markovic
016434e846
Deleting some dead code
2013-10-14 20:46:42 -07:00
Strahinja Val Markovic
98f549aeae
More robust way of picking an unused local port
...
Fixes #584 .
2013-10-14 20:38:45 -07:00
Strahinja Val Markovic
b903867cdd
ycm_core now imported after extra conf preload
2013-10-14 15:29:00 -07:00