Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Breaking changes on main (flatten.nvim 1.0.0) #87

Open
willothy opened this issue Jan 13, 2024 · 0 comments · May be fixed by #86
Open

Breaking changes on main (flatten.nvim 1.0.0) #87

willothy opened this issue Jan 13, 2024 · 0 comments · May be fixed by #86
Labels
documentation Improvements or additions to documentation enhancement New feature or request information An announcement or discussion

Comments

@willothy
Copy link
Owner

willothy commented Jan 13, 2024

This is a tracking issue for breaking changes on main. I am releasing it an advance of any breaking changes to give fair warning, since I want using this plugin to be as seamless and unobtrusive to use as possible.

TLDR
No breaking changes yet. There will be some with 1.0.0, and then flatten will be stable.

I will soon be releasing version 1.0.0 of flatten.nvim, which will include some new features (#86), fully typed API/config docs for LSP (also #86), and a restructure of the core and guest code (wip) to allow for sending commands, files, and data separately.

This version will include some breaking changes to the configuration and callback signatures, but it will also be the last version of flatten.nvim to ever have breaking changes unless required by some change in upstream Neovim. I feel that flatten.nvim is largely feature-complete at this point, and therefore with 1.0.0 I am committing to full stability and semantic versioning. While features may be added, the API will not be subject to change once released. This is what precipitated the change to tables for callback arguments in #86 - we need to be able to add params as needed without huge arglists or breaking the API.

Any breakages required by changes in upstream Neovim will be accompanied by a major version bump for flatten.nvim, though I don't think that is likely to happen.

Unreleased (#86):

  • Moved pipe_path to callbacks, require it to be a function.
  • Changed pre_open, post_open, and block_end callbacks to take single tables instead of several args.
  • Renamed one_per to integrations.
  • TBD (considering but not implemented):
    • Rename callbacks to hooks?
    • Remove allow_command_passthrough option, add flag to explicitly disable command passthrough instead.
    • Possibly drop support for nvim 0.8? 0.9 is out everywhere and I would like to remove deprecated code.
@willothy willothy added documentation Improvements or additions to documentation enhancement New feature or request information An announcement or discussion labels Jan 13, 2024
@willothy willothy added this to the Stable Release 1.0 milestone Jan 13, 2024
@willothy willothy pinned this issue Jan 13, 2024
@willothy willothy linked a pull request Jan 13, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request information An announcement or discussion
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant