aboutsummaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorRui Abreu Ferreira <rap-ep@gmx.com>2016-09-25 18:46:37 +0100
committerJustin M. Keyes <justinkz@gmail.com>2016-10-26 14:23:50 +0200
commitf25797f86976cbccf697d6df953154c5e59656e6 (patch)
treef8f979f07c99e9d5e5db66af1b4ff6b5695dcc2c /CMakeLists.txt
parent90bf31c7421f6bc32703dd8d8a19cd29f06cc63d (diff)
downloadrneovim-f25797f86976cbccf697d6df953154c5e59656e6.tar.gz
rneovim-f25797f86976cbccf697d6df953154c5e59656e6.tar.bz2
rneovim-f25797f86976cbccf697d6df953154c5e59656e6.zip
api: Nvim version, API level #5386
The API level is disconnected from the NVIM version. The API metadata holds the current API level, and the lowest backwards-compatible level supported by this instance. Release 0.1.6 will be the first release reporting the Nvim version and API level. metadata['version'] = { major: 0, minor: 1, patch: 6, prerelease: true, api_level: 1, api_compatible: 0, } The API level may remain unchanged across Neovim releases if the API has not changed. When changing the API the CMake variable NVIM_API_PRERELEASE is set to true, and NVIM_API_CURRENT/NVIM_API_COMPATIBILITY are incremented accordingly. The functional tests check the API table against fixtures of past versions of Neovim. It compares all the functions in the old table with the new one, it does ignore some metadata attributes that do not alter the function signature or were removed since 0.1.5. Currently the only fixture is 0.mpack, generated from Neovim 0.1.5 with nvim --api-info.
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt6
1 files changed, 6 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 4aa6a2de32..3b139025d7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -65,6 +65,12 @@ set(NVIM_VERSION_MINOR 1)
set(NVIM_VERSION_PATCH 6)
set(NVIM_VERSION_PRERELEASE "-dev") # for package maintainers
+# Neovim API version. When changing the API, bump CURRENT if
+# PRERELEASE is false, and set PRERELEASE as true
+set(NVIM_API_CURRENT 1)
+set(NVIM_API_COMPATIBILITY 0)
+set(NVIM_API_PRERELEASE true)
+
file(TO_CMAKE_PATH ${CMAKE_CURRENT_LIST_DIR}/.git FORCED_GIT_DIR)
include(GetGitRevisionDescription)
get_git_head_revision(GIT_REFSPEC NVIM_VERSION_COMMIT)