joewitt commented on PR #10200: URL: https://github.com/apache/nifi/pull/10200#issuecomment-3191621445
@tpalfy > Although I think overall it would only be to NiFi's benefit if we considered components extensible. I infer you are not referring to the already existing incredibly extensive extensibility powers within NiFI but instead you are talking about 'we need to ensure extensions we build are themselves extensible'. This becomes purely about how each component is written and designed. You can demonstrate and model what you'd like to see done to support this with components. In fact every author of a component should consider whether they want that thing extended by others but also the cost to the community to maintain such additional APIs. Notably simply removing 'final' from a method or two does not do this. The extension developer has to consider whether they're going to make specific points of designed extensibility for a given component such that it might be open for extension but closed for modification. Or a totally different extensibility model where the extender could in fact break the thing. Whatever it is you as the author of the component get to choose that. It would also be interesting to see or consider how such APIs would get published. We maintain the purity of the 'nifi-api' so you'd also then need to consider 'nifi-exampleprocessor-api-X.Y.Z' and so on. The moment you declare a component itself extensible you are declaring whatever its API is as public. Now you also cannot make changes without risking breaking code written against them. I'll keep an eye out for a proposal or component where you share and show what you have in mind. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
