ekaterinadimitrova2 commented on code in PR #170: URL: https://github.com/apache/cassandra-website/pull/170#discussion_r963684957
########## site-content/source/modules/ROOT/pages/development/dependencies.adoc: ########## @@ -12,10 +12,38 @@ As Cassandra is an Apache product, all included libraries must follow Apache's https://www.apache.org/legal/resolved.html[software license requirements]. -=== Required steps to add or update libraries +=== Dependency management in Cassandra 4.2 and onwards + +In Cassandra 4.2 and onwards, dependencies are managed in Maven POM templates +in `.build/*-template.xml`. These templates are processed into valid Maven POMs +with the `ant write-poms` task and copied to `build/*.pom`. + +The following POMs from `build.xml` have been migrated to templates: +* `parent-pom` is now at `.build/parent-pom-template.xml` +* `all-pom` is now at `.build/cassandra-deps-template.xml` +* `build-deps-pom` is now at `.build/cassandra-build-deps-template.xml` + +To add new dependencies in Cassandra 4.2 onwards, add the dependency to +`parent-pom-template` and `cassandra-deps-template`, and optionally +`cassandra-build-deps-template` if the dependency is required for build only. +See +https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Dependency_Management[the +Maven docs] on how to reference dependencies in the parent POM from the child +POMs. + +For dependency versions that need to be available in `build.xml` and +`parent-pom-template`, specify the version as a property in `build.xml`, add it +to the `ant write-poms` target, then add the property to `parent-pom-template` +with the value of the template substitution. + +For more information on this change, see +https://issues.apache.org/jira/browse/CASSANDRA-17750[CASSANDRA-17750]. Review Comment: I agree with Abe here. Even people long time on the project who don't deal with those things regularly will benefit -- 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]

