hrsh7th / nvim-cmp

A completion plugin for neovim coded in Lua.
MIT License
7.86k stars 391 forks source link

Using Semantic Versioning releases #1925

Open TheTrueWhiteOwl opened 4 months ago

TheTrueWhiteOwl commented 4 months ago

When will nvim-cmp get its next release?

The last and only one (v.0.1.0) was in August 2022, almost two yeas ago...

Hasn't the functionality and the public API of this plugin mostly been defined by now, and hence this plugin should probably already be at major version: 1 (i.e. v1.0.0)?

I believe it would be beneficial if nvim-cmp would start including releases, following (semver)[https://semver.org/] such that users can guarantee that their nvim config does not break when backwards incompatible API changes are made. As an example take a lazy.nvim user:

{
   "hrsh7th/nvim-cmp",
    version = "^1.0.0", -- Would guarantee that lazy would only install versions compatible with version1.0.0 (i.e. 1.0.0<=version<2.0.0)
    dependencies = {
      "L3MON4D3/LuaSnip",
   },
   lazy = true,
   event = "LspAttach",

   opts = {
      sources = {
         {
            name = "nvim_lsp"
         },
      },
      snippet = {
         expand = function(args)
            require("luasnip").lsp_expand(args.body)
         end,
      },
   },
},
TheTrueWhiteOwl commented 4 months ago

This would also reduce the impacts and the necessity of having this issue (https://github.com/hrsh7th/nvim-cmp/issues/231) for documenting the breaking changes. These would already be clearly indicated by a change in the major version. (e.g. going from v1.x.x to v2.0.0).

itaranto commented 4 months ago

Duplicate of https://github.com/hrsh7th/nvim-cmp/issues/1719