Commit Graph

308 Commits

Author SHA1 Message Date
Strahinja Val Markovic
737109e7aa Check for libc++ before using it.
Fixes #731.
2013-12-17 18:35:03 -08:00
Leszek Swirski
b279b2b672 Fix --system-libclang on Ubuntu/Debian 2013-12-09 12:29:19 +00:00
Tom Hacohen
3543b4dd8d Fixed usage of database file in example .ycm_extra_conf.py.
Checking the path is set is not enough, we should also check the path
exists. This allows people to have a general-purpose
.ycm_extra_conf.conf that automatically loads a database file if exists,
and falls back to the manual flags if not.
2013-11-27 15:41:03 +00:00
Strahinja Val Markovic
0185147ba4 Better Clang support in CustomAssert 2013-11-23 16:54:21 -08:00
Strahinja Val Markovic
757602becf Workaround for header flags with compilation db 2013-11-17 14:17:20 -08:00
Strahinja Val Markovic
1c1fb47d7e Fixing typo in YCM extra conf comment 2013-11-17 13:18:11 -08:00
Strahinja Val Markovic
9c43634190 Force clang color output when building with Ninja 2013-11-17 11:23:16 -08:00
Leszek Swirski
f6b31e5284 Use locale overload of std::isupper 2013-11-14 01:13:47 +00:00
Strahinja Val Markovic
de0a8b613a Candidate ranking prefers lowercase chars
We have a path preferring candidates that all all-lowercase, but so far we
didn't prefer "fooBar" over "FooBar", which we should have.
2013-11-07 14:37:06 -08:00
Strahinja Val Markovic
227cceae8a Running style_format.sh on codebase 2013-10-29 19:13:52 -07:00
Zhao Cai
a99969bb95 Fix --system-libclang installation in Mac OSX 10.9 2013-10-29 18:18:18 -04:00
Strahinja Val Markovic
3a6b87bf6d Making global string constants actually constant
Well this is embarrasing.
2013-10-28 13:28:00 -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
f20448d89e Fix rare issue with static initialization
ycmd would sometimes crash on startup with a coredump and a message from glibc
on how free() was called for an invalid pointer. A gdb session pointed out that
the problem was with static initialization order.
2013-10-25 13:03:00 -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
6331df95cc compilation db caller can now know if db busy 2013-10-14 10:22:57 -07:00
Strahinja Val Markovic
f6432e1498 Releasing Python's GIL in C++ code where possible
Without this, all requests to the server become effectively serialized.
2013-10-11 19:27:04 -07:00
Strahinja Val Markovic
a471ce761f Minor code style changes 2013-10-07 11:03:29 -07:00
Strahinja Val Markovic
6b11edb2e2 Fix use-after-free bugs
UnsavedFile should now actually be storing the data, not just the pointers to
it.
2013-10-07 11:03:29 -07:00
Strahinja Val Markovic
c274b7d4f8 Fixing the diagnostic-related race conditions
Now, every FileReadyToParse event returns diagnostics, if any. This is instead
of the previous system where the diagnostics were being fetched in a different
request (this caused race conditions).
2013-10-07 11:03:29 -07:00
Strahinja Val Markovic
b9bb788a2a Diagnostics work again... somewhat.
There appear to be timing issues for the diag requests. Somehow, we're sending
out-of-date diagnostics and then not updating the UI when things change.

That needs to be fixed.
2013-10-07 11:03:29 -07:00
Strahinja Val Markovic
f56ced6374 Using add_definitions, workaround cmake warning
We haven't been building LLVM in-tree for many months now so we can use this now
just fine.
2013-10-07 11:03:28 -07:00
Strahinja Val Markovic
d63843ea4c Clang completer method params are const ref again
They were temporarily all passed by-value until server-side threading issues
were resolved.
2013-10-07 11:03:28 -07:00
Strahinja Val Markovic
531e564a88 Removing Concurrent* & Future classes
They're not needed anymore.
2013-10-07 11:03:28 -07:00
Strahinja Val Markovic
46360219f8 Removed threads & async API in CompilationDatabase
This is not needed anymore; the server request merely blocks when waiting for
flags.
2013-10-07 11:03:28 -07:00
Strahinja Val Markovic
6c53bad58f No more threading in completers!
The server is multi-threaded and will spawn a new thread for each new request.
Thus, the completers need not manage their own threads or even provide async
APIs; we _want_ them to block because now were implementing the request-response
networking API.

The client gets the async API through the network (i.e., it can do something
else while the request is pending).
2013-10-07 11:03:28 -07:00
Strahinja Val Markovic
4a95c2fc7c GoTo commands for clang completer work again 2013-10-07 11:03:27 -07:00
Strahinja Val Markovic
4c6a69b432 The UltiSnips completer works again 2013-10-07 11:03:27 -07:00
Strahinja Val Markovic
1730660555 A (barely) working version of ycmd + client
Still a lot of work to do.
2013-10-07 11:03:26 -07:00
Strahinja Val Markovic
9698bf8789 Bump ycm_core.so API version 2013-10-07 11:03:26 -07:00
Strahinja Val Markovic
a7c609efd7 More python unicode object support in ycm_core 2013-10-07 11:03:26 -07:00
Strahinja Val Markovic
29bb90a6b4 Decoupling completers from Vim; still WIP & broken
Note to self: squash this commit before merging into master.
2013-10-07 11:03:25 -07:00
Val Markovic
ee12530df0 Merge pull request #548 from vitalyster/trans_unit
Fix 'vector subscription out of range' MSVC assertions
2013-09-09 10:35:36 -07:00
Vitaly Takmazov
aadf5dd2b7 Fix class casting 2013-09-07 22:56:24 +04:00
Strahinja Val Markovic
96e4930684 Only setting -isystem on Mac OS X 2013-09-07 10:50:28 -07:00
Vitaly Takmazov
79b3e97abe Fix 'vector subscription out of range' MSVC assertions 2013-09-07 15:14:13 +04:00
vitalyster
142f19c130 Fix MSVC compilation 2013-09-07 13:40:11 +04:00
Strahinja Val Markovic
df0be9fb2c Fixing compilation on Cygwin
Fixes #529.
2013-08-31 18:02:06 -07:00
Strahinja Val Markovic
d2fe03f072 Refactoring a big test into smaller tests 2013-08-30 14:46:33 -07:00
Strahinja Val Markovic
62462b48bc Ident collector handles escaped starting quotes
Previously, it would consider \"foo\"bar" as a slash and a "foo\"bar" string and
this would screw up tracking of quotes in the file.

Fix #535.
2013-08-30 14:38:23 -07:00
Shani H Pribadi
7cc399a017 Fix boost compilation issue with glibc 2.18 2013-08-25 14:36:15 -07:00
Strahinja Val Markovic
6fcd1e5e2a Updating to Boost 1.54 2013-08-25 14:35:47 -07:00
Strahinja Val Markovic
60d4d28297 Adding a script for easy BoostParts updating 2013-08-25 14:34:02 -07:00
Strahinja Val Markovic
c2ec0e146a Minor whitespace changes 2013-08-25 13:12:41 -07:00
Strahinja Val Markovic
46fbff5008 Should compile on MinGW-64 now
Fixes #489.
2013-08-25 13:05:47 -07:00
Shani H Pribadi
527d98028b Fix boost compilation issue with glibc 2.18 2013-08-17 13:36:57 -07:00
Strahinja Val Markovic
938e2391e2 Fixing bizarre compilation error on recent clang 2013-08-16 14:49:00 -07:00
Strahinja Val Markovic
76aa87cb22 Ensuring TUs expire when compilation flags change. 2013-08-16 14:49:00 -07:00
Strahinja Val Markovic
0f7d9ec131 Some minor refactoring of TU store 2013-08-16 14:49:00 -07:00
Strahinja Val Markovic
a215f933a9 Refactoring out TU storage into own class
This makes the code more readable, maintainable and robust since we're now
encapsulating the mutex to filename_to_translation_unit_.
2013-08-16 14:49:00 -07:00