view src/version.h @ 33583:123acdc8e64c v9.0.2036

patch 9.0.2036: if_python: rework python3.12 build dependency Commit: https://github.com/vim/vim/commit/396058acd0cc66e5071d052e03d2067b134952af Author: Yee Cheng Chin <ychin.git@gmail.com> Date: Tue Oct 17 10:38:11 2023 +0200 patch 9.0.2036: if_python: rework python3.12 build dependency Problem: if_python: rework python3.12 build dependency (after 9.0.1996) Solution: use PyTuple_Size instead of inlining the Py_SIZE into the Vim code base Use a simpler fix for Python 3.12 build issues Python 3.12 introduced link dependencies to their `Py_SIZE()` inline function, which #13290 fixed by copying the inline function to Vim's Python binding code. This works but it's fragile, as a future update may change the implementation of `Py_SIZE` and there is no way for us to know. The reason we need `Py_SIZE` to begin with is that we use `PyTuple_GET_SIZE()` which calls that. Just fix it by mapping that to (confusingly similarly named) `PyTuple_Size()`, which we already do in the stable ABI implementation. There's a minor performance cost in that it's not inlined and it does error checking but that's fine as we only call this function rarely (in an error handler). related: #13290 closes: #13359 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Yee Cheng Chin <ychin.git@gmail.com>
author Christian Brabandt <cb@256bit.org>
date Tue, 17 Oct 2023 10:45:04 +0200
parents f8116058ca76
children 4635e43f2c6f
line wrap: on
line source

/* vi:set ts=8 sts=4 sw=4 noet:
 *
 * VIM - Vi IMproved		by Bram Moolenaar
 *
 * Do ":help uganda"  in Vim to read copying and usage conditions.
 * Do ":help credits" in Vim to see a list of people who contributed.
 */

/*
 * Define the version number, name, etc.
 * The patchlevel is in included_patches[], in version.c.
 */

// Trick to turn a number into a string.
#define VIM_TOSTR_(a)			#a
#define VIM_TOSTR(a)			VIM_TOSTR_(a)

// Values that change for a new release.
#define VIM_VERSION_MAJOR		9
#define VIM_VERSION_MINOR		0
#define VIM_VERSION_BUILD		284
#define VIM_VERSION_BUILD_BCD		0x11c
#define VIM_VERSION_DATE_ONLY		"2022 Jun 28"

// Values based on the above
#define VIM_VERSION_MAJOR_STR		VIM_TOSTR(VIM_VERSION_MAJOR)
#define VIM_VERSION_MINOR_STR		VIM_TOSTR(VIM_VERSION_MINOR)
#define VIM_VERSION_100	    (VIM_VERSION_MAJOR * 100 + VIM_VERSION_MINOR)

#define VIM_VERSION_BUILD_STR		VIM_TOSTR(VIM_VERSION_BUILD)
#ifndef VIM_VERSION_PATCHLEVEL
# define VIM_VERSION_PATCHLEVEL		0
#endif
#define VIM_VERSION_PATCHLEVEL_STR	VIM_TOSTR(VIM_VERSION_PATCHLEVEL)
// Used by MacOS port; should be one of: development, alpha, beta, final
#define VIM_VERSION_RELEASE		final

/*
 * VIM_VERSION_NODOT is used for the runtime directory name.
 * VIM_VERSION_SHORT is copied into the swap file (max. length is 6 chars).
 * VIM_VERSION_MEDIUM is used for the startup-screen.
 * VIM_VERSION_LONG is used for the ":version" command and "Vim -h".
 */
#define VIM_VERSION_NODOT     "vim" VIM_VERSION_MAJOR_STR VIM_VERSION_MINOR_STR
#define VIM_VERSION_SHORT     VIM_VERSION_MAJOR_STR "." VIM_VERSION_MINOR_STR
#define VIM_VERSION_MEDIUM    VIM_VERSION_SHORT
#define VIM_VERSION_LONG_ONLY "VIM - Vi IMproved " VIM_VERSION_MEDIUM
#define VIM_VERSION_LONG_HEAD VIM_VERSION_LONG_ONLY " (" VIM_VERSION_DATE_ONLY
#define VIM_VERSION_LONG      VIM_VERSION_LONG_HEAD ")"
#define VIM_VERSION_LONG_DATE VIM_VERSION_LONG_HEAD ", compiled "