Replies: 1 comment 2 replies
-
Approach that would allow backwards compatibility is that you we migrate certain feature to plugin by ensuring we don't use same resources (database table... or even database). Then we can have check - if it's legacy installation / data is present feature just keeps working directly integrated. For new installations - we just hide feature; forcing installation of plugin if feature is desired. |
Beta Was this translation helpful? Give feedback.
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Even though plugins are still in experimental stage, I'd like to start a discussion around this particular issue. The reason why we introduced plugins is to allow modularity without permission, but also to clean up the UI and codebase so that user can start with a simple UI and build it by activating plugins that fit their use-case.
Technically, this is quite a complex topic and doesn't sound nearly as simple as what I described above. To avoid breaking-change we'd need to create some sort of a
Migration
to migrate existing users that use these features. Bigger problem is probably the API that people use together with these features.However, no matter how complex this sounds, personally I wouldn't mind a breaking change in one of the versions. Realistically BTCPay has been a software that's been built on a go for a long time and has many features that majority of people don't use or don't know they exist. I'm afraid then that by introducing plugins, users will have hard time distinguishing between an
App
,Plugin
,Service
or apay button
.This is very complex topic I simplified it a bit, but I'm hoping to start a discussion so we can try to find solutions that wouldn't affect existing users but wouldn't put a burden to future users.
Paging @Kukks @NicolasDorier @rockstardev for feedback and especially technical summary, but also asking anybody to leave their opinion about the topic.
Beta Was this translation helpful? Give feedback.
All reactions