diff options
author | Brad King <brad.king@kitware.com> | 2017-12-06 16:23:58 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2017-12-06 16:39:03 (GMT) |
commit | 8b2736c71ca6eb8e62a69f57ad07e4e19a95c936 (patch) | |
tree | df7d3ab1300b235da99e0870efaaefe8c487e567 /Help | |
parent | 7746fdb2fe0177341aadeafec2ae73aa08ddfaf6 (diff) | |
download | CMake-8b2736c71ca6eb8e62a69f57ad07e4e19a95c936.zip CMake-8b2736c71ca6eb8e62a69f57ad07e4e19a95c936.tar.gz CMake-8b2736c71ca6eb8e62a69f57ad07e4e19a95c936.tar.bz2 |
server: Revert "Report backtraces in codemodel response"
The backtrace information is very repetitive and hugely increases the
size of the codemodel object. We need to remove it until an alternative
representation can be developed. Revert commit v3.10.0-rc1~393^2
(server: Report backtraces in codemodel response, 2017-06-20), except
for the protocol version number (because it indicates other new things).
Unfortunately this is incompatible with clients that expect the
"crossReferences" field in targets. However, the regression in memory
usage is quite serious, especially on large projects, and therefore
breaks even older clients that do not use backtraces. Since the
"crossReferences" field was only provided by one release (3.10.0), it is
simplest to revert it outright for 3.10.1.
Fixes: #17502
Diffstat (limited to 'Help')
-rw-r--r-- | Help/manual/cmake-server.7.rst | 42 | ||||
-rw-r--r-- | Help/release/3.10.rst | 12 |
2 files changed, 13 insertions, 41 deletions
diff --git a/Help/manual/cmake-server.7.rst b/Help/manual/cmake-server.7.rst index c56e5a7..50a90ee 100644 --- a/Help/manual/cmake-server.7.rst +++ b/Help/manual/cmake-server.7.rst @@ -506,9 +506,6 @@ Each target object can have the following keys: with the sysroot path. "fileGroups" contains the source files making up the target. -"crossReferences" - contains the location of the target in the corresponding CMakeLists.txt - file and the locations of the related statements like "target_link_libraries" FileGroups are used to group sources using similar settings together. @@ -534,16 +531,6 @@ Each fileGroup object may contain the following keys: All file paths in the fileGroup are either absolute or relative to the sourceDirectory of the target. -CrossReferences object is used to report the location of the target (including -the entire call stack if the target is defined in a function) and the related -"target_link_libraries", "target_include_directories", "target_compile_definitions" -and "target_compile_options" statements. - -See the example below for details on the internal format of the "crossReferences" object. -Line numbers stated in the "backtrace" entries are 1-based. The last entry of a backtrace -is a special entry with missing "line" and "name" fields that specifies the initial -CMakeLists.txt file. - Example:: [== "CMake Server" ==[ @@ -580,34 +567,7 @@ CMake will reply:: "linkerLanguage": "C", "name": "cmForm", "sourceDirectory": "/home/code/src/cmake/Source/CursesDialog/form", - "type": "STATIC_LIBRARY", - "crossReferences": { - "backtrace": [ - { - "line": 7, - "name": "add_executable", - "path": "C:/full/path/CMakeLists.txt" - }, - { - "path": "c:/full/path/CMakeLists.txt" - } - ], - "relatedStatements": [ - { - "backtrace": [ - { - "line": 8, - "name": "target_link_libraries", - "path": "c:/full/path/CMakeLists.txt" - }, - { - "path": "c:/full/path/CMakeLists.txt" - } - ], - "type": "target_link_libraries" - } - ] - } + "type": "STATIC_LIBRARY" } ] }, diff --git a/Help/release/3.10.rst b/Help/release/3.10.rst index 35fe602..6a19dbf 100644 --- a/Help/release/3.10.rst +++ b/Help/release/3.10.rst @@ -255,3 +255,15 @@ Other Changes incompatible with the old behavior, it is expected that behavior under typical use cases with properly-quoted command-lines has not changed. + +Updates +======= + +Changes made since CMake 3.10.0 include the following. + +3.10.1 +------ + +* The :manual:`cmake-server(7)` ``codemodel`` response ``crossReferences`` + field added by 3.10.0 has been dropped due to excessive memory usage. + Another approach will be needed to provide backtrace information. |