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

Stabilize API #1317

Closed
ammen99 opened this issue Oct 14, 2021 · 1 comment
Closed

Stabilize API #1317

ammen99 opened this issue Oct 14, 2021 · 1 comment
Labels
Milestone

Comments

@ammen99
Copy link
Member

ammen99 commented Oct 14, 2021

The plan for Wayfire has always been to rely heavily on external plugins for much of the specialized functionality each user wants. In order to make progress towards this goal, Wayfire needs to provide a stable API for external plugins, otherwise, many plugins will be written and then quickly get outdated without continuous maintenance.

Unfortunately, not all breaking changes can be foreseen at the current moment. However, we should have a plan for stabilizing the API:

  • For the 0.8 release: include all planned breaking changes. This will likely mean that 0.8 won't happen very soon (all changes will probably take several more months) and that most plugins will get broken, but so be it. Single this will also mean that likely some new bugs will be introduced, these changes will be merged to the stabilize-api branch first, then merged together to master after some testing.
  • After the 0.8 release: avoid major breaking changes at all costs. Examples of major breaking changes are transactions, Rework signal_connection_t #1307, Revamp view transformers #1308, Split view_interface_t #1309. 'Smaller' breaking changes like adding or changing parameters of single methods may still be done.
  • Depending on how the previous stage goes, we may declare stable API before Wayfire 1.0
@ammen99
Copy link
Member Author

ammen99 commented Aug 30, 2023

This is now more or less done. There are no more major API changes planned for the next few years (hopefully), except for new features like color management which will likely require changes in the shaders.

@ammen99 ammen99 closed this as completed Aug 30, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant