Questions tagged [dependency-management]

121 questions
69
votes
9 answers

Why prefer a package manager over a library folder?

When I think about the pros and cons of a static library folder and a package manager I feel like the library folder is a better approach. Pros I see with a library folder: No need for an external tool to manage packages. No internet connection…
Ignacio Soler Garcia
  • 1,574
  • 2
  • 11
  • 17
43
votes
6 answers

When should dependencies be updated?

We had two major dependency-related crises with two different code bases (Android, and a Node.js web app). The Android repo needed to migrate from Flurry to Firebase, which required updating the Google Play Services library four major versions. A…
Chris Cirefice
  • 2,984
  • 4
  • 17
  • 37
37
votes
12 answers

How to keep your third party libraries up to date?

Let's say that I have a project that depends on 10 libraries, and within my project's trunk I'm free to use any versions of those libraries. So I start with the most recent versions. Then, each of those libraries gets an update once a month (on…
Joonas Pulakka
  • 23,534
  • 9
  • 64
  • 93
19
votes
2 answers

Using Subversion as an artifact repository vs a specific artifact management tool

TL;DR: Why use something like Apache Archiva or Sonatype Nexus as an artifact repository instead of Subversion? The build system I use currently has a lot of binary blobs (images, sound files, compiled binaries, etc), both as input and output to our…
me_and
  • 433
  • 3
  • 9
18
votes
4 answers

Sharing classes or interfaces between different projects

I was looking for some answers in SO or here, but without any results, that's why I would ask you. Let's assume I have a two different projects - for example server part and client part of an app. I'm developing my own part, while my friend is…
radekEm
  • 367
  • 1
  • 3
  • 10
17
votes
2 answers

Is it better to rely on transitive dependencies or explicitly declare them?

I have a project structure like this: My Project - Other Team's Project -Third Party Dependency My Project requires Other Team's Project to function, and both My Project and Other Team's Project require Third Party Dependency to function. We…
Thunderforge
  • 2,668
  • 3
  • 23
  • 30
16
votes
1 answer

Directory organization of a CMake (C++) repository containing several projects

I would like some advises on the organization of a set of related but independent C++ projects stored in a single (git) repository. The projects use CMake. For a simplified example we imagine 2 projects A and B, A depending on B. Most people…
Barth
  • 471
  • 1
  • 3
  • 10
15
votes
2 answers

How to properly manage dependencies for C/C++ project?

I have a project which uses 3-4 different open source C/C++ libraries. I built these libraries for several platforms and checked in include files and static libs for different platforms in my project. However, I struggle with a couple of problems.…
Victor Ronin
  • 629
  • 1
  • 5
  • 14
15
votes
4 answers

Should one use Dependency Injection even if the class is used only once?

During a code review I have started having a bit of a dilemma as to whether use dependency injection or not. I would like to hear your thoughts, because this is kind of an ongoing theme and would help in the future code reviews as well. Before I…
12
votes
1 answer

Node.js dependencies weigh too much

Recently I started playing with node.js. Now, every node tutorial out there states that you should start with npm init and then, say you want some standard server framework, say you choose express: npm install express but then you'll want many…
Or Yaniv
  • 249
  • 2
  • 6
10
votes
3 answers

Using Interfaces for Loosely Coupled Code

Background I have a project that depends on the usage of a certain type of hardware device, while it doesn't really matter who makes that hardware device as long as it does what I need it to do. With that being said, even two devices that are…
Snoop
  • 2,718
  • 5
  • 24
  • 52
10
votes
1 answer

Why does Apache have two separate tools for build and dependency management?

Apache has two separate tools: Apache Maven Apache Ant + Apache Ivy They seem to both fill the same niche. I have two questions: What are the highlights of the main differences between the two tools? I'm sure a really long article could be…
durron597
  • 7,590
  • 9
  • 37
  • 67
10
votes
1 answer

Dependency promotion strategies: siloed or orchestrated?

We have a lot of apps and web services (some public facing products, some internal and part of a private "backend") that are interdependent on one another. Each one of these components has 4 environments (clusters of servers/nodes serving specific…
10
votes
2 answers

To depend on source code or on binary?

We have two in-house projects, A and B, developed by different teams with B dependent on A. Since source code for both projects is stored in git, I've included project A as a submodule into project B and configured the build system to build both in…
mkalkov
  • 301
  • 1
  • 8
9
votes
4 answers

How do you approach transitive dependency conflicts that are only known at run-time?

How do you normally approach transitive dependency issues that occur at run-time in large software projects? For the past three weeks, I have been trying to start a component of a large piece of software within another component of the software,…
Tyler
  • 191
  • 6
1
2 3
8 9