spring-attic / spring-boot-r2dbc

Experimental Spring Boot support for R2DBC
82 stars 13 forks source link

Provide a BOM for R2DBC + drivers #41

Closed snicoll closed 5 years ago

snicoll commented 5 years ago

To avoid having to specify versions for drives and R2DBC as well as this very project, it would be nice to have a bom that provides dependency management for:

snicoll commented 5 years ago

There is already something in spring-boot-dependencies-r2dbc but this pom extends from the Spring Boot bom so it doesn't make a great candidate. An option would be to have a separate parent that imports the Spring Boot BOM and extends from the existing bom.

There is a similar arrangement in Spring Initializr. Renaming the -dependencies to -bom might help clarify the intend.

mp911de commented 5 years ago

We have io.r2dbc:r2dbc-bom which we could use to include also community driver versions.

snicoll commented 5 years ago

We'll need one bom for this project anyway so I suggest to leave r2dbc-bom alone for the time being and spike here. We can move things around if required.

snicoll commented 5 years ago

@mp911de thanks but the bom still extends from the Spring Boot master bom which is not acceptable as I've indicated above: https://github.com/spring-projects-experimental/spring-boot-r2dbc/issues/41#issuecomment-529450226

Can you please reconsider?

mp911de commented 5 years ago

My bad, I missed the part about inheritance. spring-boot-bom-r2dbc is now a standalone BOM without a parent. spring-boot-r2dbc-build now extends from spring-boot-dependencies and imports the BOM for the build itself.

snicoll commented 5 years ago

Thanks but we're not there yet. As you've decided to import the bom rather than inherit from it, all the plugins that the bom defines are not executed anymore (javaformat and checkstyle). This information should move to spring-boot-r2dbc-build. Retrospectively, your arrangement is better as this information does not really belong to the bom.

Moving that definition to the build should restore the check of rules and formatting.