Hirohito Higashi
e7c765fe59
patch 9.1.1840: Generating prototype files does not work on all platforms
...
Problem: Generating prototype files does not work on all platforms
Solution: Rework prototypes generation using python instead of cproto,
enable it in CI to test it for each PR (Hirohito Higashi).
closes : #18045
Signed-off-by: Hirohito Higashi <h.east.727@gmail.com >
Signed-off-by: Christian Brabandt <cb@256bit.org >
2025-10-08 18:31:13 +00:00
Yegappan Lakshmanan
da34f84847
patch 9.1.1668: items() does not work for Blobs
...
Problem: items() does not work for Blobs
Solution: Extend items() to support Blob
(Yegappan Lakshmanan).
closes : #18080
Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com >
Signed-off-by: Christian Brabandt <cb@256bit.org >
2025-08-23 06:18:34 -04:00
Yegappan Lakshmanan
d6a762fe1b
patch 9.1.1636: style issues
...
Problem: style issues
Solution: Fix indentation of function parameters exceeding 80 character
length (Yegappan Lakshmanan).
closes : #18013
Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com >
Signed-off-by: Christian Brabandt <cb@256bit.org >
2025-08-16 16:26:54 +02:00
Yegappan Lakshmanan
a566a78029
patch 9.1.1588: Vim9: cannot split dict inside command block
...
Problem: Vim9: cannot split dict inside command block
(lacygoill)
Solution: Remove the current restriction (Yegappan Lakshmanan).
fixes : #17841
closes : #17845
Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com >
Signed-off-by: Christian Brabandt <cb@256bit.org >
2025-07-25 18:23:58 +02:00
Yegappan Lakshmanan
9cb865e95b
patch 9.1.1232: Vim script is missing the tuple data type
...
Problem: Vim script is missing the tuple data type
Solution: Add support for the tuple data type
(Yegappan Lakshmanan)
closes : #16776
Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com >
Signed-off-by: Christian Brabandt <cb@256bit.org >
2025-03-23 16:42:16 +01:00
John Marriott
b32800f7c5
patch 9.1.1063: too many strlen() calls in userfunc.c
...
Problem: too many strlen() calls in userfunc.c
Solution: refactor userfunc.c and remove calls to strlen(),
drop set_ufunc_name() and roll it into alloc_ufunc(),
check for out-of-memory condition in trans_function_name_ext()
(John Marriott)
closes : #16537
Signed-off-by: John Marriott <basilisk@internode.on.net >
Signed-off-by: Christian Brabandt <cb@256bit.org >
2025-02-01 15:25:34 +01:00
ichizok
663d18d610
patch 9.1.0984: exception handling can be improved
...
Problem: exception handling can be improved
Solution: add v:stacktrace and getstacktrace()
closes : #16360
Co-authored-by: Naruhiko Nishino <naru123456789@gmail.com >
Signed-off-by: ichizok <gclient.gaap@gmail.com >
Signed-off-by: Christian Brabandt <cb@256bit.org >
2025-01-02 18:06:00 +01:00
Yinzuo Jiang
7ccd1a2e85
patch 9.1.0524: the recursive parameter in the *_equal functions can be removed
...
Problem: the recursive parameter in the *_equal functions can be removed
Solution: Remove the recursive parameter in dict_equal(), list_equal()
object_equal and tv_equal(). Use a comparison of the static
var recursive_cnt == 0 to determine whether or not tv_equal()
has been called recursively (Yinzuo Jiang).
closes : #15070
Signed-off-by: Yinzuo Jiang <jiangyinzuo@foxmail.com >
Signed-off-by: Christian Brabandt <cb@256bit.org >
2024-07-04 17:20:53 +02:00
Yegappan Lakshmanan
51c45e89b5
patch 9.1.0450: evalc. code too complex
...
Problem: eval.c code too complex
Solution: refactor eval6() and eval9() functions into several smaller
functions (Yegappan Lakshmanan)
closes : #14875
Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com >
Signed-off-by: Christian Brabandt <cb@256bit.org >
2024-05-30 07:52:44 +02:00
Christian Brabandt
29269a71b5
patch 9.1.0341: Problem: a few memory leaks are found
...
Problem: a few memory leaks are found
(LuMingYinDetect )
Solution: properly free the memory
Fixes the following problems:
- Memory leak in f_maplist()
fixes : #14486
- Memory leak in option.c
fixes : #14485
- Memory leak in f_resolve()
fixes : #14484
- Memory leak in f_autocmd_get()
related: #14474
- Memory leak in dict_extend_func()
fixes : #14477
fixes : #14238
closes : #14517
Signed-off-by: Christian Brabandt <cb@256bit.org >
2024-04-16 22:44:31 +02:00
Ernie Rael
e79e207760
patch 9.1.0027: Vim is missing a foreach() func
...
Problem: Vim is missing a foreach() func
Solution: Implement foreach({expr1}, {expr2}) function,
which applies {expr2} for each item in {expr1}
without changing it (Ernie Rael)
closes : #12166
Signed-off-by: Ernie Rael <errael@raelity.com >
Signed-off-by: Christian Brabandt <cb@256bit.org >
2024-01-13 11:47:33 +01:00
Ernie Rael
fa831102c3
patch 9.0.2163: Vim9: type can be assigned to list/dict
...
Problem: Vim9: type can be assigned to list/dict
Solution: Prevent assigning a `type` to a `list` or `dict`
closes : #13683
Signed-off-by: Ernie Rael <errael@raelity.com >
Signed-off-by: Christian Brabandt <cb@256bit.org >
2023-12-14 20:06:39 +01:00
zeertzjq
fc3058495d
patch 9.0.1745: Missing test coverage for blockwise Visual highlight
...
Problem: Missing test coverage for blockwise Visual highlight with
virtual that starts with a double-width char.
Solution: Add a new virtual text to the test. Some other small fixes.
closes : #12835
Signed-off-by: Christian Brabandt <cb@256bit.org >
Co-authored-by: zeertzjq <zeertzjq@outlook.com >
2023-08-19 13:27:03 +02:00
zeertzjq
e7d49465a4
patch 9.0.1459: typo in name of type
...
Problem: Typo in name of type.
Solution: Change funccal_T to funccall_T. (closes #12265 )
2023-04-16 20:53:55 +01:00
Ernie Rael
e6d40dcdc7
patch 9.0.1416: crash when collection is modified when using filter()
...
Problem: Crash when collection is modified when using filter().
Solution: Lock the list/dict/blob. (Ernie Rael, closes #12183 )
2023-03-19 21:23:38 +00:00
Yegappan Lakshmanan
14113fdf9c
patch 9.0.1390: FOR_ALL_ macros are defined in an unexpected file
...
Problem: FOR_ALL_ macros are defined in an unexpected file.
Solution: Move FOR_ALL_ macros to macros.h. Add FOR_ALL_HASHTAB_ITEMS.
(Yegappan Lakshmanan, closes #12109 )
2023-03-07 17:13:51 +00:00
Yegappan Lakshmanan
1cfb14aa97
patch 9.0.1166: code is indented more than necessary
...
Problem: Code is indented more than necessary.
Solution: Use an early return where it makes sense. (Yegappan Lakshmanan,
closes #11792 )
2023-01-09 19:04:23 +00:00
Bram Moolenaar
a9fa8c58fb
patch 9.0.1133: error message names do not match the items
...
Problem: Error message names do not match the items.
Solution: Add "_str" when the text contains "%s".
2023-01-02 18:10:04 +00:00
Yegappan Lakshmanan
87c1cbbe98
patch 9.0.1105: code is indented too much
...
Problem: Code is indented too much.
Solution: Use an early return. (Yegappan Lakshmanan, closes #11756 )
2022-12-27 19:54:52 +00:00
Bram Moolenaar
ef2c325f5e
patch 9.0.0949: crash when unletting a variable while listing variables
...
Problem: Crash when unletting a variable while listing variables.
Solution: Disallow changing a hashtable while going over the entries.
(closes #11435 )
2022-11-25 16:31:51 +00:00
Bram Moolenaar
bc222152d8
patch 9.0.0926: Coverity warns for not using return value of dict_add()
...
Problem: Coverity warns for not using return value of dict_add().
Solution: When dict_add() fails then don't call hash_remove().
2022-11-23 11:34:01 +00:00
Bram Moolenaar
35fc61cb5b
patch 9.0.0917: the WinScrolled autocommand event is not enough
...
Problem: The WinScrolled autocommand event is not enough.
Solution: Add WinResized and provide information about what changed.
(closes #11576 )
2022-11-22 12:40:50 +00:00
zeertzjq
91c75d18d9
patch 9.0.0836: wrong error when using extend() with funcref
...
Problem: Wrong error when using extend() with funcref.
Solution: Better check the variable type. (closes #11468 , closes #11455 )
2022-11-05 20:21:58 +00:00
dundargoc
c57b5bcd22
patch 9.0.0828: various typos
...
Problem: Various typos.
Solution: Correct typos. (closes #11432 )
2022-11-02 13:30:51 +00:00
Bram Moolenaar
82418263fa
patch 9.0.0618: calling function for reduce() has too much overhead
...
Problem: Calling function for reduce() has too much overhead.
Solution: Do not create a funccall_T every time.
2022-09-28 16:16:15 +01:00
Bram Moolenaar
73e28dcc61
patch 9.0.0491: no good reason to build without the float feature
...
Problem: No good reason to build without the float feature.
Solution: Remove configure check for float and "#ifdef FEAT_FLOAT".
2022-09-17 21:08:33 +01:00
ii14
7c7e1e9b98
patch 9.0.0409: #{g:x} was seen as a curly-braces expression
...
Problem: #{g:x} was seen as a curly-braces expression.
Solution: Do never see #{} as a curly-braces expression. (closes #11075 )
2022-09-07 19:40:17 +01:00
Yegappan Lakshmanan
04c4c5746e
patch 9.0.0335: checks for Dictionary argument often give a vague error
...
Problem: Checks for Dictionary argument often give a vague error message.
Solution: Give a useful error message. (Yegappan Lakshmanan, closes #11009 )
2022-08-30 19:48:24 +01:00
Bram Moolenaar
3e518a8ec7
patch 9.0.0331: cannot use items() on a string
...
Problem: Cannot use items() on a string.
Solution: Make items() work on a string. (closes #11016 )
2022-08-30 17:45:33 +01:00
Bram Moolenaar
976f859763
patch 9.0.0327: items() does not work on a list
...
Problem: items() does not work on a list. (Sergey Vlasov)
Solution: Make items() work on a list. (closes #11013 )
2022-08-30 14:34:52 +01:00
Bram Moolenaar
d61efa50f8
patch 9.0.0063: too many type casts for dict_get functions
...
Problem: Too many type casts for dict_get functions.
Solution: Change the key argument from "char_u *" to "char *".
2022-07-23 09:52:04 +01:00
Yegappan Lakshmanan
ca195cc84f
patch 8.2.5089: some functions return a different value on failure
...
Problem: Some functions return a different value on failure.
Solution: Initialize the return value earlier. (Yegappan Lakshmanan,
closes #10568 )
2022-06-14 13:42:26 +01:00
Bram Moolenaar
0abc2871c1
patch 8.2.4930: interpolated string expression requires escaping
...
Problem: Interpolated string expression requires escaping.
Solution: Do not require escaping in the expression.
2022-05-10 13:24:30 +01:00
Yegappan Lakshmanan
4829c1c9e9
patch 8.2.4683: verbose check with dict_find() to see if a key is present
...
Problem: Verbose check with dict_find() to see if a key is present.
Solution: Add dict_has_key(). (Yegappan Lakshmanan, closes #10074 )
2022-04-04 15:16:54 +01:00
Bram Moolenaar
e0c2b2ceaa
patch 8.2.4301: Vim9: type error for copy of dict
...
Problem: Vim9: type error for copy of dict.
Solution: Do not use dict<any> but no type. (closes #9696 )
2022-02-05 14:05:51 +00:00
Bram Moolenaar
381692b6f1
patch 8.2.4286: Vim9: strict type checking after copy() and deepcopy()
...
Problem: Vim9: strict type checking after copy() and deepcopy().
Solution: Allow type to change after making a copy. (closes #9644 )
2022-02-02 20:01:27 +00:00
Bram Moolenaar
04935fb17e
patch 8.2.4043: using int for second argument of ga_init2()
...
Problem: Using int for second argument of ga_init2().
Solution: Remove unnessary type cast (int) when using sizeof().
2022-01-08 16:19:22 +00:00
Bram Moolenaar
a6f7929e62
patch 8.2.4005: error messages are spread out
...
Problem: Error messages are spread out.
Solution: Move more error messages to errors.h.
2022-01-04 21:30:47 +00:00
Bram Moolenaar
10d6f18b2f
patch 8.2.3997: Vim9: not enough testing for extend() and map()
...
Problem: Vim9: not enough testing for extend() and map().
Solution: Add more test cases. Fix uncovered problems. Remove unused type
fields.
2022-01-04 15:54:38 +00:00
Bram Moolenaar
078a46161e
patch 8.2.3996: Vim9: type checking lacks information about declared type
...
Problem: Vim9: type checking for list and dict lacks information about
declared type.
Solution: Add dv_decl_type and lv_decl_type. Refactor the type stack to
store two types in each entry.
2022-01-04 15:17:03 +00:00
Bram Moolenaar
74409f6279
patch 8.2.3970: error messages are spread out
...
Problem: Error messages are spread out.
Solution: Move more errors to errors.h.
2022-01-01 15:58:22 +00:00
Bram Moolenaar
460ae5dfca
patch 8.2.3967: error messages are spread out
...
Problem: Error messages are spread out.
Solution: Move more errors to errors.h.
2022-01-01 14:19:49 +00:00
Bram Moolenaar
436b5adc97
patch 8.2.3961: error messages are spread out
...
Problem: Error messages are spread out.
Solution: Move more errors to errors.h.
2021-12-31 22:49:24 +00:00
Bram Moolenaar
b4168fd917
patch 8.2.3875: gcc complains about buffer overrun
...
Problem: gcc complains about buffer overrun.
Solution: Use mch_memmove() instead of STRCPY(). (John Marriott)
2021-12-22 20:29:09 +00:00
Yegappan Lakshmanan
f973eeb491
patch 8.2.3871: list.c contains code for dict and blob
...
Problem: List.c contains code for dict and blob.
Solution: Refactor to put code where it belongs. (Yegappan Lakshmanan,
closes #9386 )
2021-12-22 18:19:26 +00:00
Bram Moolenaar
e124204c4f
patch 8.2.3830: error messages are spread out
...
Problem: Error messages are spread out.
Solution: Move more error messages to errors.h.
2021-12-16 20:56:57 +00:00
Bram Moolenaar
98cb90ef86
patch 8.2.3702: first key in dict is seen as curly expression and fails
...
Problem: First key in dict is seen as curly expression and fails.
Solution: Ignore failure of curly expression. (closes #9247 )
2021-11-30 11:56:22 +00:00
Bram Moolenaar
3b3755fe19
patch 8.2.3650: Vim9: for loop variable can be a list member
...
Problem: Vim9: for loop variable can be a list member.
Solution: Check for valid variable name. (closes #9179 )
2021-11-22 20:10:18 +00:00
Bram Moolenaar
3b31851356
patch 8.2.3407: using uninitialized memory with "let g:['bar'] = 2"
...
Problem: Using uninitialized memory with "let g:['bar'] = 2".
Solution: Initialize v_type of a new dict item.
2021-09-06 19:19:45 +02:00
Bram Moolenaar
ef98257593
patch 8.2.3335: Vim9: not enough tests run with Vim9
...
Problem: Vim9: not enough tests run with Vim9.
Solution: Run a few more tests in Vim9 script and :def function. Fix that
items(), keys() and values9) return zero for a NULL dict.
Make join() return an empty string for a NULL list. Make sort()
return an empty list for a NULL list.
2021-08-12 19:27:57 +02:00