You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tubemq.apache.org by Goson zhang <go...@apache.org> on 2020/05/29 15:16:13 UTC

[DISCUSS] How to organize SDK directories for each language?

All,

Now many contributors have mentioned issues wanting to contribute SDK for
different languages for TubeMQ, then the question is coming: how do we
place these SDK contents?
Put one in each language under the root directory?
Or put it in a separate directory, and then create a directory under this
separate directory for each language?
Or is there a better solution?

Welcome everyone to discuss this topic and post your suggestions!

Thanks!

Re: [DISCUSS] How to organize SDK directories for each language?

Posted by Netroby <hu...@gmail.com>.
As our company production maintain policy. we split SDK with language
as their own git repository.
We have different group member maintain them.
Works well for more than 5 years.

Appreciate your time.
----------------------------
Netroby

Goson zhang <go...@apache.org> 于2020年6月3日周三 上午11:10写道:
>
> This is also a point of confusion:
>
> If the internal integration method is adopted, the advantage is that the
> code base is together, and related users can modify and update at any time;
> the disadvantage is how to build and compile in multiple languages.
> If the external repository is built, the advantages are independent, the
> disadvantage is whether the maintenance management of the external
> repository will keep up, and if the external repository is cancelled one
> day, how to deal with support at this time.
>
> This problem, I find that different projects have different practices,
> there is no standard.
>
> What about your solutions to this problem?
>
> Netroby <hu...@gmail.com> 于2020年6月2日周二 下午9:55写道:
>
> > How about make every client a dedicated repository.
> >
> > For long term open source project. you may face long terms evolutions.
> >
> > For example, mysql client has python, java, cpp, even nodejs client.
> > they have there own repository.
> >
> > Put them all in one repository, would make out a huge git repository.
> >
> > Day by day goes. it make huge history, take so much storage space.
> >
> > People will hard to work on it . too many conflicts .
> >
> > Appreciate your time.
> > ----------------------------
> > Netroby
> >
> > Goson zhang <go...@apache.org> 于2020年6月2日周二 下午7:40写道:
> > >
> > > Plan to organize SDK in different languages according to the following
> > > scheme:
> > > tubemq-client-twins
> > > tubemq-client-twins/tubemq-client-python
> > > tubemq-client-twins/tubemq-client-cpp
> > > tubemq-client-twins/tubemq-client-rust
> > > tubemq-client-twins/tubemq-client-go
> > >
> > > Construct tubemq-client-twins under the project root directory as the
> > > general directory of all multi-language SDKs, each language builds
> > > sub-directories under tubemq-client-twins directory according to
> > > tubemq-client-xxx (language name) for independent code storage and
> > > management, to avoid too many problems in the root directory.
> > >
> > > Let's see if there is a problem, if there is no problem, we will follow
> > > this idea to create an issue.
> > >
> > > Goson zhang <go...@apache.org> 于2020年5月29日周五 下午11:16写道:
> > >
> > > > All,
> > > >
> > > > Now many contributors have mentioned issues wanting to contribute SDK
> > for
> > > > different languages for TubeMQ, then the question is coming: how do we
> > > > place these SDK contents?
> > > > Put one in each language under the root directory?
> > > > Or put it in a separate directory, and then create a directory under
> > this
> > > > separate directory for each language?
> > > > Or is there a better solution?
> > > >
> > > > Welcome everyone to discuss this topic and post your suggestions!
> > > >
> > > > Thanks!
> > > >
> >

Re: [DISCUSS] How to organize SDK directories for each language?

Posted by Goson zhang <go...@apache.org>.
This is also a point of confusion:

If the internal integration method is adopted, the advantage is that the
code base is together, and related users can modify and update at any time;
the disadvantage is how to build and compile in multiple languages.
If the external repository is built, the advantages are independent, the
disadvantage is whether the maintenance management of the external
repository will keep up, and if the external repository is cancelled one
day, how to deal with support at this time.

This problem, I find that different projects have different practices,
there is no standard.

What about your solutions to this problem?

Netroby <hu...@gmail.com> 于2020年6月2日周二 下午9:55写道:

> How about make every client a dedicated repository.
>
> For long term open source project. you may face long terms evolutions.
>
> For example, mysql client has python, java, cpp, even nodejs client.
> they have there own repository.
>
> Put them all in one repository, would make out a huge git repository.
>
> Day by day goes. it make huge history, take so much storage space.
>
> People will hard to work on it . too many conflicts .
>
> Appreciate your time.
> ----------------------------
> Netroby
>
> Goson zhang <go...@apache.org> 于2020年6月2日周二 下午7:40写道:
> >
> > Plan to organize SDK in different languages according to the following
> > scheme:
> > tubemq-client-twins
> > tubemq-client-twins/tubemq-client-python
> > tubemq-client-twins/tubemq-client-cpp
> > tubemq-client-twins/tubemq-client-rust
> > tubemq-client-twins/tubemq-client-go
> >
> > Construct tubemq-client-twins under the project root directory as the
> > general directory of all multi-language SDKs, each language builds
> > sub-directories under tubemq-client-twins directory according to
> > tubemq-client-xxx (language name) for independent code storage and
> > management, to avoid too many problems in the root directory.
> >
> > Let's see if there is a problem, if there is no problem, we will follow
> > this idea to create an issue.
> >
> > Goson zhang <go...@apache.org> 于2020年5月29日周五 下午11:16写道:
> >
> > > All,
> > >
> > > Now many contributors have mentioned issues wanting to contribute SDK
> for
> > > different languages for TubeMQ, then the question is coming: how do we
> > > place these SDK contents?
> > > Put one in each language under the root directory?
> > > Or put it in a separate directory, and then create a directory under
> this
> > > separate directory for each language?
> > > Or is there a better solution?
> > >
> > > Welcome everyone to discuss this topic and post your suggestions!
> > >
> > > Thanks!
> > >
>

Re: [DISCUSS] How to organize SDK directories for each language?

Posted by Netroby <hu...@gmail.com>.
How about make every client a dedicated repository.

For long term open source project. you may face long terms evolutions.

For example, mysql client has python, java, cpp, even nodejs client.
they have there own repository.

Put them all in one repository, would make out a huge git repository.

Day by day goes. it make huge history, take so much storage space.

People will hard to work on it . too many conflicts .

Appreciate your time.
----------------------------
Netroby

Goson zhang <go...@apache.org> 于2020年6月2日周二 下午7:40写道:
>
> Plan to organize SDK in different languages according to the following
> scheme:
> tubemq-client-twins
> tubemq-client-twins/tubemq-client-python
> tubemq-client-twins/tubemq-client-cpp
> tubemq-client-twins/tubemq-client-rust
> tubemq-client-twins/tubemq-client-go
>
> Construct tubemq-client-twins under the project root directory as the
> general directory of all multi-language SDKs, each language builds
> sub-directories under tubemq-client-twins directory according to
> tubemq-client-xxx (language name) for independent code storage and
> management, to avoid too many problems in the root directory.
>
> Let's see if there is a problem, if there is no problem, we will follow
> this idea to create an issue.
>
> Goson zhang <go...@apache.org> 于2020年5月29日周五 下午11:16写道:
>
> > All,
> >
> > Now many contributors have mentioned issues wanting to contribute SDK for
> > different languages for TubeMQ, then the question is coming: how do we
> > place these SDK contents?
> > Put one in each language under the root directory?
> > Or put it in a separate directory, and then create a directory under this
> > separate directory for each language?
> > Or is there a better solution?
> >
> > Welcome everyone to discuss this topic and post your suggestions!
> >
> > Thanks!
> >

Re: [DISCUSS] How to organize SDK directories for each language?

Posted by Goson zhang <go...@apache.org>.
Plan to organize SDK in different languages according to the following
scheme:
tubemq-client-twins
tubemq-client-twins/tubemq-client-python
tubemq-client-twins/tubemq-client-cpp
tubemq-client-twins/tubemq-client-rust
tubemq-client-twins/tubemq-client-go

Construct tubemq-client-twins under the project root directory as the
general directory of all multi-language SDKs, each language builds
sub-directories under tubemq-client-twins directory according to
tubemq-client-xxx (language name) for independent code storage and
management, to avoid too many problems in the root directory.

Let's see if there is a problem, if there is no problem, we will follow
this idea to create an issue.

Goson zhang <go...@apache.org> 于2020年5月29日周五 下午11:16写道:

> All,
>
> Now many contributors have mentioned issues wanting to contribute SDK for
> different languages for TubeMQ, then the question is coming: how do we
> place these SDK contents?
> Put one in each language under the root directory?
> Or put it in a separate directory, and then create a directory under this
> separate directory for each language?
> Or is there a better solution?
>
> Welcome everyone to discuss this topic and post your suggestions!
>
> Thanks!
>