StevenLuMT opened a new issue, #7: URL: https://github.com/apache/pulsar-java-contrib/issues/7
## I. Project background > [[improve][pip] PIP-367: Propose a Contributor Repository for Pulsar](https://github.com/apache/pulsar/pull/23061/files) When fixing the Client defect mentioned in PIP-359 for Pulsar, [Assaf ](https://github.com/apache/pulsar/pull/22902#issuecomment-2168778056)proposed that Pulsar's Client was too bloated and should not be added casually. This led to the idea of a contributor repository. After discussing with Enrico and Dave, we gradually refined the initial idea and created a repository example in a private repository. https://github.com/StevenLuMT/pulsar-java-contrib ## II. Project motivation 1. Provide default implementation of external interfaces to reduce user development costs In order to solve the problem of bloated main repository functions, Pulsar abstracts many functions and provides interfaces for users to implement by themselves. Some of them provide default implementations, while others do not. We will also implement these interfaces and use them in the production environment to make them more powerful. 2. Collect plugin implementations for each interface and separate plugins that are not suitable for maintenance in the Pulsar main repository. The scale of these plugins is generally not large, not like the oxia implemented by the company, and their value is limited. They should not be merged into the main Pulsar repository. Contributor repositories can be collected, and valuable plugins that are widely used and improved by users can eventually be incubated and successfully merged into the main Pulsar repository, thereby enriching the Pulsar ecosystem. 3. Collect various experimental functional features Some functional communities may have this demand, but some people feel that adding this feature is destructive, and even adding switches is unacceptable. At this time, these features can be moved to the contributor repository after discussion for incubation and development. 4. Collect best practices from users Pulsar is a relatively complex project, and there are explanations of various functions on the official website. However, there is no best practice document based on various scenarios. If there is a place that can provide scenario-based best practice documentation, it can lower the threshold for users to use Pulsar and help them better use Pulsar. [1] [Lari also mentioned in PIP-371 that separate repository contribution plugins should be created](https://lists.apache.org/thread/42hrf8f5r7yno05hrr6fcz6lgf4jr9f7) ## III. Project Objectives Goal 1: Provide a new plugin implementation for each existing open interface Goal 2: Collect customized requirements from at least three companies to prepare for further development Goal 3: Operate in the production environment and generate profits Goal 4: Publish at least three best practice documents <img width="1253" alt="image" src="https://github.com/user-attachments/assets/25bb94ea-4c1f-45ca-a9aa-d85804f206ab"> -- 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]
