|
1 |
| -*develop.txt* For Vim version 9.1. Last change: 2025 Sep 01 |
| 1 | +*develop.txt* For Vim version 9.1. Last change: 2025 Sep 07 |
2 | 2 |
|
3 | 3 |
|
4 | 4 | VIM REFERENCE MANUAL by Bram Moolenaar
|
|
13 | 13 | 2. Design decisions |design-decisions|
|
14 | 14 | 3. Assumptions |design-assumptions|
|
15 | 15 | 4. Coding style |coding-style|
|
| 16 | +5. Policy |design-policy| |
16 | 17 |
|
17 | 18 | See the file README.txt in the "src" directory for an overview of the source
|
18 | 19 | code.
|
@@ -447,13 +448,13 @@ For everything else use: >
|
447 | 448 |
|
448 | 449 | INDENTATION *style-indentation*
|
449 | 450 |
|
450 |
| -We use 4 space to indent the code. If you are using Vim to edit the source, |
| 451 | +We use 4 space to indent the code. If you are using Vim to edit the source, |
451 | 452 | you don't need to do anything due to the |modeline|.
|
452 | 453 |
|
453 | 454 | For other editors an `.editorconfig` is provided at the root of the repo.
|
454 | 455 |
|
455 | 456 | For the source files `sign.c` and `sound.c` and any new file use only spaces,
|
456 |
| -no tabs. In addition, any new file must include a modeline with `set et` to |
| 457 | +no tabs. In addition, any new file must include a modeline with `set et` to |
457 | 458 | pass the indentation test.
|
458 | 459 |
|
459 | 460 |
|
@@ -538,7 +539,7 @@ Wrong: >
|
538 | 539 |
|
539 | 540 | TYPES *style-types*
|
540 | 541 |
|
541 |
| -Use descriptive types. These are defined in src/vim.h, src/structs.h etc. |
| 542 | +Use descriptive types. These are defined in src/vim.h, src/structs.h etc. |
542 | 543 | Note that all custom types are postfixed with "_T"
|
543 | 544 |
|
544 | 545 | Example: >
|
@@ -728,4 +729,35 @@ OK: do
|
728 | 729 | while (cond);
|
729 | 730 |
|
730 | 731 |
|
| 732 | +============================================================================== |
| 733 | +5. Policy *design-policy* *new-features* *deprecated-features* |
| 734 | + |
| 735 | +The time between either a new minor (e.g. 9.2.0) or major (e.g. 10.0) version |
| 736 | +is released is called a development cycle. Within the development cycle each |
| 737 | +single change to the C core will receive a new increased human-readable patch |
| 738 | +number in order to reference each specific patch release. A typical |
| 739 | +development release cycle may last several years and accumulate about 1500 - |
| 740 | +2500 patch numbers. |
| 741 | + |
| 742 | +Before a release is made, a stability period will be announced. During this |
| 743 | +time, only clear bug fixes, security fixes, documentation changes, translation |
| 744 | +updates and runtime file updates will be accepted (provided they do not |
| 745 | +introduce backwards-incompatible changes), concentrating on polishing up the |
| 746 | +upcoming release. |
| 747 | + |
| 748 | +New features are accepted only within a development cycle, but not within the |
| 749 | +stability period. During the cycle, new features may be developed and are |
| 750 | +allowed to change, but they must be settled before the cycle closes. |
| 751 | + |
| 752 | +Once a minor release has been made, features included in that release must not |
| 753 | +receive any backwards-incompatible changes. Later patches are expected to |
| 754 | +preserve compatibility for the C core of Vim. Runtime files are handled a bit |
| 755 | +more flexibly to give runtime files maintainers a chance to change old |
| 756 | +behaviour. |
| 757 | + |
| 758 | +Within a development cycle, features may be marked as deprecated. Deprecated |
| 759 | +features can be disabled at compile time through an appropriate switch. After |
| 760 | +a new release, deprecated features may be removed completely in a following |
| 761 | +cycle. |
| 762 | + |
731 | 763 | vim:tw=78:ts=8:noet:ft=help:norl:
|
0 commit comments