# Transitive Dependencies

Published articles for Transitive Dependencies.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Mastering The Gradle Dependency Tree

DevFeed: [Mastering The Gradle Dependency Tree](<https://devfeed.tech/articles/mastering-the-gradle-dependency-tree-25156.md>)

Original publisher: [Read original article](<https://blog.droidchef.dev/mastering-the-gradle-dependency-tree/>)

Author: Ishan Khanna

Published: 2023-01-11T23:09:51Z

Content type: tutorial

Language: en

Sources: [Ishan Khanna](<https://devfeed.tech/sources/ishan-khanna.md>)

Topics: [Gradle](<https://devfeed.tech/topics/gradle.md>), [modules](<https://devfeed.tech/topics/modules.md>), [Library](<https://devfeed.tech/topics/library.md>), [Maven Central](<https://devfeed.tech/topics/maven-central.md>)

Tags: [debug](<https://devfeed.tech/tags/debug.md>), [dependencies](<https://devfeed.tech/tags/dependencies.md>), [dependency](<https://devfeed.tech/tags/dependency.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [library](<https://devfeed.tech/tags/library.md>), [maven-central](<https://devfeed.tech/tags/maven-central.md>), [modularization](<https://devfeed.tech/tags/modularization.md>), [modules](<https://devfeed.tech/tags/modules.md>), [resolved](<https://devfeed.tech/tags/resolved.md>), [transitive-dependencies](<https://devfeed.tech/tags/transitive-dependencies.md>)

### AI overview

This tutorial explains Gradle dependencies, transitive dependencies, dependency configurations, and dependency trees. It also presents five ways to generate a dependency tree and discusses managing versions to avoid conflicts and unnecessary project bloat.

### Source excerpt

Learn everything about the Gradle Dependency Tree and Five Different Ways to Generate Them.

## Migrating away from JCenter

DevFeed: [Migrating away from JCenter](<https://devfeed.tech/articles/migrating-away-from-jcenter-28695.md>)

Original publisher: [Read original article](<https://jeroenmols.com/blog/2021/02/04/migratingjcenter/>)

Author: info@jeroenmols.com (Jeroen Mols)

Published: 2021-02-04T00:00:00Z

Content type: tutorial

Language: en

Sources: [Jeroen Mols](<https://devfeed.tech/sources/jeroen-mols.md>)

Topics: [Gradle](<https://devfeed.tech/topics/gradle.md>), [Maven](<https://devfeed.tech/topics/maven.md>), [Maven Central](<https://devfeed.tech/topics/maven-central.md>), [Jfrog](<https://devfeed.tech/topics/jfrog.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [bintray](<https://devfeed.tech/tags/bintray.md>), [blogs](<https://devfeed.tech/tags/blogs.md>), [dependencies](<https://devfeed.tech/tags/dependencies.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [guide](<https://devfeed.tech/tags/guide.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [jcenter](<https://devfeed.tech/tags/jcenter.md>), [jfrog](<https://devfeed.tech/tags/jfrog.md>), [library](<https://devfeed.tech/tags/library.md>), [maven](<https://devfeed.tech/tags/maven.md>), [maven-central](<https://devfeed.tech/tags/maven-central.md>), [migrate](<https://devfeed.tech/tags/migrate.md>), [repository](<https://devfeed.tech/tags/repository.md>), [transitive-dependencies](<https://devfeed.tech/tags/transitive-dependencies.md>)

### AI overview

A practical guide to migrating Gradle dependencies and published artifacts away from Bintray/JCenter after JFrog announced the repository shutdown. It explains replacing JCenter with Maven Central, testing clean builds, and restricting remaining dependencies to explicit repository declarations.

### Source excerpt

This week JFrog - out of nowhere - announced to completely remove their Maven repository. Since they'll pull it offline already by May 2021 (!!!) it's time to urgently migrate away.

## Test library releases using an in project Maven repository

DevFeed: [Test library releases using an in project Maven repository](<https://devfeed.tech/articles/test-library-releases-using-an-in-project-maven-repository-28693.md>)

Original publisher: [Read original article](<https://jeroenmols.com/blog/2020/12/02/inproject-maven/>)

Author: info@jeroenmols.com (Jeroen Mols)

Published: 2020-12-02T00:00:00Z

Content type: tutorial

Language: en

Sources: [Jeroen Mols](<https://devfeed.tech/sources/jeroen-mols.md>)

Topics: [Maven](<https://devfeed.tech/topics/maven.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [Android Library](<https://devfeed.tech/topics/android-library.md>), [releases](<https://devfeed.tech/topics/releases.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-library](<https://devfeed.tech/tags/android-library.md>), [blogs](<https://devfeed.tech/tags/blogs.md>), [build](<https://devfeed.tech/tags/build.md>), [dependencies](<https://devfeed.tech/tags/dependencies.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [library](<https://devfeed.tech/tags/library.md>), [maven](<https://devfeed.tech/tags/maven.md>), [maven-repository](<https://devfeed.tech/tags/maven-repository.md>), [releases](<https://devfeed.tech/tags/releases.md>), [testing](<https://devfeed.tech/tags/testing.md>), [transitive-dependencies](<https://devfeed.tech/tags/transitive-dependencies.md>)

### AI overview

A tutorial explains how to test the release version of an Android library inside its project by creating and using a local Maven repository, avoiding deployment to Maven during development.

### Source excerpt

Short, powerful post on how to test the release version of libraries directly within a project without having to deploy them to Maven first. As a bonus, there will also be an open-source example showcasing all of this in action.

## Android library development - Dependencies

DevFeed: [Android library development - Dependencies](<https://devfeed.tech/articles/android-library-development-dependencies-28692.md>)

Original publisher: [Read original article](<https://jeroenmols.com/blog/2020/11/11/library-dependencies/>)

Author: info@jeroenmols.com (Jeroen Mols)

Published: 2020-11-11T00:00:00Z

Content type: tutorial

Language: en

Sources: [Jeroen Mols](<https://devfeed.tech/sources/jeroen-mols.md>)

Topics: [Android Library](<https://devfeed.tech/topics/android-library.md>), [SDKs](<https://devfeed.tech/topics/sdks.md>), [Library](<https://devfeed.tech/topics/library.md>), [Gradle](<https://devfeed.tech/topics/gradle.md>), [Maven](<https://devfeed.tech/topics/maven.md>), [Development](<https://devfeed.tech/topics/development.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-library](<https://devfeed.tech/tags/android-library.md>), [blogs](<https://devfeed.tech/tags/blogs.md>), [build](<https://devfeed.tech/tags/build.md>), [dependencies](<https://devfeed.tech/tags/dependencies.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [library](<https://devfeed.tech/tags/library.md>), [maven](<https://devfeed.tech/tags/maven.md>), [sdk](<https://devfeed.tech/tags/sdk.md>), [transitive-dependencies](<https://devfeed.tech/tags/transitive-dependencies.md>)

### AI overview

This tutorial explains how transitive dependencies in Android libraries can create integration problems for applications, including conflicting dependency versions and incompatible dependencies. It introduces common approaches to resolving version conflicts and discusses the risks of forcing dependency versions.

### Source excerpt

Ever had a build failure while integrating an SDK? Wonder how you can avoid your SDK customers having dependency conflicts? How many transitive dependencies should your SDK have?

## Database Normalization and Primary Keys

DevFeed: [Database Normalization and Primary Keys](<https://devfeed.tech/articles/database-normalization-and-primary-keys-34585.md>)

Original publisher: [Read original article](<https://tapoueh.org/blog/2018/03/database-normalization-and-primary-keys/>)

Author: Dimitri Fontaine PostgreSQL Major Contributor; Author

Published: 2018-03-09T17:41:33Z

Content type: tutorial

Language: en

Sources: [Dimitri Fontaine](<https://devfeed.tech/sources/dimitri-fontaine.md>)

Topics: [Databases](<https://devfeed.tech/topics/databases.md>), [Database](<https://devfeed.tech/topics/database.md>), [Structured-data](<https://devfeed.tech/topics/structured-data.md>), [SQL](<https://devfeed.tech/topics/sql.md>), [data](<https://devfeed.tech/topics/data.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [database](<https://devfeed.tech/tags/database.md>), [reference](<https://devfeed.tech/tags/reference.md>), [sql](<https://devfeed.tech/tags/sql.md>), [structured](<https://devfeed.tech/tags/structured.md>), [transitive-dependencies](<https://devfeed.tech/tags/transitive-dependencies.md>)

### AI overview

This article explains database normalization and the role of primary keys in relational database design. It reviews normal forms from 1NF through DKNF and discusses dependencies, candidate keys, and logically structured data used with SQL.

### Source excerpt

In our previous article we saw three classic Database Modelization Anti-Patterns. The article also contains a reference to a Primary Key section of my book The Art of PostgresQL, so it's only fair that I would now publish said Primary Key section! So in this article, we dive into Primary Keys as being a cornerstone of database normalization. It's so important to get Primary Keys right that you would think everybody knows how to do it, and yet, most of the primary key constraints I've seen used in database design are actually not primary keys at all.

## Package Management conflicts Continuous Delivery

DevFeed: [Package Management conflicts Continuous Delivery](<https://devfeed.tech/articles/package-management-conflicts-continuous-delivery-31976.md>)

Original publisher: [Read original article](<https://tech.finn.no2013/06/26/package-management-conflicts-continuous-delivery/>)

Author: mick

Published: 2013-06-26T20:42:28Z

Content type: article

Language: en

Sources: [Finn.no](<https://devfeed.tech/sources/finn-no.md>)

Topics: [Package Management](<https://devfeed.tech/topics/package-management.md>), [CI/CD](<https://devfeed.tech/topics/cicd.md>), [Continuous Deployment (CD)](<https://devfeed.tech/topics/continuous-deployment.md>), [API](<https://devfeed.tech/topics/api.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [api-design](<https://devfeed.tech/tags/api-design.md>), [continuous-delivery](<https://devfeed.tech/tags/continuous-delivery.md>), [continuous-deployment](<https://devfeed.tech/tags/continuous-deployment.md>), [dependencies](<https://devfeed.tech/tags/dependencies.md>), [package-management](<https://devfeed.tech/tags/package-management.md>), [transitive-dependencies](<https://devfeed.tech/tags/transitive-dependencies.md>)

### AI overview

The article examines tensions between package management and Continuous Delivery. It explains that package releases cannot be undone once downloaded, whereas deployment changes can be rolled back, while API design and modularity limit how far Continuous Delivery can be applied. It proposes emphasizing safety and API design lower in the stack and delivery speed higher in the stack.

### Source excerpt

The idea of package management is to correctly operate and bundle together various components in any system. The practice of package management is a consequence from the design and evolution of each component's API. Package management is tedious but necessary. It can also help to address the 'fear of change'. We can minimise package management by minimising API. But we can't minimise API if we don't have experience with where it comes from. You can't define for yourself what the API of your code is. It is well beyond that of your public method signatures. Anything that with change can break a consumer is API. Continuous Delivery isn't void of API despite fixed and minimised interfaces between runtime services, each runtime service also contains an API in how it behaves. The big difference though is you own the release change, a la the deployment event, and if things don't go well you can roll back. Releasing artifacts in the context of package management can not be undone. Once you have released the artifact you must presume someone has already downloaded it and you can't get it back. The best you can do it release a new version and hope everyone upgrades to it quickly. Push code out from behind the shackles of package management take advantage of continuous delivery! Bearing in mind a healthy modular systems design comes from making sure you got the api design right - so the amount one can utilise CD is ultimately limited, unless you want to throw out modularity. In general we let components low in the stack "be safe" by focusing on api design over delivery time, and the opposite for components high in the stack. High in the stack doesn't refer to front-end code Code at the top of the stack is that free of package management and completely free for continuous deployment. Components with direct consumers no longer sit at the top of the stack. As components consumers multiple, and they become transitive dependencies, they move further down the stack. Typically entrop