Giter Site home page Giter Site logo

Comments (8)

sunxiaoguang avatar sunxiaoguang commented on May 22, 2024

Hi @kylemeow, thanks for bring up this issue. We can have some discussion about the maturity of this project and have a plan for publishing binary packages to maven repository.

from tibigdata.

tisonkun avatar tisonkun commented on May 22, 2024

Hi @kylemeow @sunxiaoguang , distributing our artifacts on Maven Central Repository is a good idea for general access for our works. I would like to list out the submodules under our TiBigData repository so far for an overall insight.

  • io.tidb:tidb-jdbc, not depend on other submodules.
  • io.tidb:bigdata-core, depends on io.tidb:tidb-jdbc.
  • io.tidb:prestodb-connector, depends on io.tidb:bigdata-core and thus io.tidb:tidb-jdbc.
  • io.tidb:prestosql-connector, depends on io.tidb:bigdata-core and thus io.tidb:tidb-jdbc.
  • io.tidb:flink-tidb-connector, empty parent module for all flink-tidb-connector.
  • io.tidb:flink-tidb-connector-base, dependes on io.tidb:bigdata-core and thus io.tidb:tidb-jdbc.
  • io.tidb:flink-tidb-connector-1.11, dependes on io.tidb:flink-tidb-connector-base and thus io.tidb:bigdata-core and io.tidb:tidb-jdbc.
  • io.tidb:flink-tidb-connector-1.12, dependes on io.tidb:flink-tidb-connector-base and thus io.tidb:bigdata-core and io.tidb:tidb-jdbc.

I think both module can be distributed separated, but we possibly mess different concept under TiBigData. The name is quite common which is then error-prone because we tend to put everything under a "common" repository.

JDBC needs not to be coupled with BigData and it is totally self-contained, I suggest it has its own place tidb-jdbc like clickhouse-jdbc.

io.tidb:bigdata-core depends on JDBC just for TIDB_PREFIX & MYSQL_PREFIX. It seems overkilled.

presto & flink can also have their own names as tidb-presto & tidb-flink respectively.

However, as an early stage of development, it is ok to keep all artifacts in one repository but keep in mind prevent unexpected dependency.

In this part my suggestion is about the published artifact name.

  • flink-tidb-connector looks good.
  • tidb-jdbc looks good.
  • bigdata-core looks weird, it seems like a Java thin wrapper on the top of tikv client-java, maybe name it a tidb-java or so.
  • prestodb-connector and prestorsql-connector is better to be prestodb-tidb-connector and prestosql-tidb-connector respectively.

and it could be better we sync the name of directory and module.

from tibigdata.

sunxiaoguang avatar sunxiaoguang commented on May 22, 2024

Sure, let's have a thorough discussion over biweekly meeting about this after the holiday.

from tibigdata.

marsishandsome avatar marsishandsome commented on May 22, 2024

i will push a v0.0.3 release to maven repo today.

from tibigdata.

marsishandsome avatar marsishandsome commented on May 22, 2024

v0.0.3 is pushed to sonatype and will be synced to Maven Central in a few days.

https://oss.sonatype.org/service/local/repositories/releases/content/io/tidb/

https://repo1.maven.org/maven2/io/tidb/

from tibigdata.

kylemeow avatar kylemeow commented on May 22, 2024

Wow, glad to see it published on Maven. Nice work : )

from tibigdata.

marsishandsome avatar marsishandsome commented on May 22, 2024

@tisonkun good suggestion.
As discussed with @sunxiaoguang , currently we will continue to keep all the components in one repo. Reasons are as follows:

  • one repo is simple for fast-developing
  • it's an incubator project (graduated submodules may move to a separated repo in the future)

from tibigdata.

tisonkun avatar tisonkun commented on May 22, 2024

@marsishandsome Thanks! It makes sense for me. Hope we meet the requirements for graduation soon.

I think we can close this issue because we do publish our code to Maven Central Repository.

But a light document about how to achieve it is admirable. We can carefully fade out anything private or secret.

Here is an example from Apache ZooKeeper community and of course we can be much shorter.

from tibigdata.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.