mirror of
https://github.com/neovim/neovim.git
synced 2025-10-01 07:28:34 +00:00
api: api_info()['version']
API level is disconnected from NVIM version. The API metadata holds the current API level, and the lowest backwards-compatible level supported by this instance. Release 0.1.6 is the first release that reports the Nvim version and API level. metadata['version'] = { major: 0, minor: 1, patch: 6, api_level: 1, api_compatible: 0, api_prerelease: false, } The API level may remain unchanged across Nvim releases if the API has not changed. When changing the API, - set NVIM_API_PRERELEASE to true - increment NVIM_API_LEVEL (at most once per Nvim version) - adjust NVIM_API_LEVEL_COMPAT if backwards-compatibility was broken api_level_0.mpack was generated from Nvim 0.1.5 with: nvim --api-info
This commit is contained in:
@@ -7,6 +7,7 @@
|
||||
#include <assert.h>
|
||||
#include <limits.h>
|
||||
|
||||
#include "nvim/api/private/helpers.h"
|
||||
#include "nvim/vim.h"
|
||||
#include "nvim/ascii.h"
|
||||
#include "nvim/iconv.h"
|
||||
@@ -2514,6 +2515,17 @@ bool has_vim_patch(int n)
|
||||
return false;
|
||||
}
|
||||
|
||||
Dictionary version_dict(void) {
|
||||
Dictionary d = ARRAY_DICT_INIT;
|
||||
PUT(d, "major", INTEGER_OBJ(NVIM_VERSION_MAJOR));
|
||||
PUT(d, "minor", INTEGER_OBJ(NVIM_VERSION_MINOR));
|
||||
PUT(d, "patch", INTEGER_OBJ(NVIM_VERSION_PATCH));
|
||||
PUT(d, "api_level", INTEGER_OBJ(NVIM_API_LEVEL));
|
||||
PUT(d, "api_compatible", INTEGER_OBJ(NVIM_API_LEVEL_COMPAT));
|
||||
PUT(d, "api_prerelease", BOOLEAN_OBJ(NVIM_API_PRERELEASE));
|
||||
return d;
|
||||
}
|
||||
|
||||
void ex_version(exarg_T *eap)
|
||||
{
|
||||
// Ignore a ":version 9.99" command.
|
||||
|
Reference in New Issue
Block a user