microsoft/ApplicationInsights-Kubernetes

Is it possible to drop dependency of AutoMapper/10.1.1?

Ian1971 opened this issue · 6 comments

As automapper is a fairly ubiquitous library, forcing a version change is problematic.
It seems that KubernetesClient 6.0.26 has a dependency on Automapper, but later versions of it do not. Can this library have the KubernetesClient upgraded?

@Ian1971, Thanks for bringing this up. Technically, it is doable. This is the current dependency tree, it looks easy enough by just bumping up the version of KubernetesClient to 7.2.x.

image

That said, this is trickier than I had expected:

According to Support Period, K8s 1.22 is still supported till 10/28/2022.

And according to Version Compatibility, 6.x is for 1.22.

From that perspective, we will need to bump it up to 7.2.x, but in a couple of weeks.

Do you see AutoMapper causing problems on your project already? Could you please help us understand more about it? With a little bit of justification, we might be able to prioritize it a bit since 3.0 is already there for projects that run on 1.22.

That all sounds fine. For now, we have stuck with the older version of App Insights for Kubernetes (2.0.6).
For some of our services which currently use an older version of Automapper the new version would cause us to have to upgrade AutoMapper. Obviously, we want to do that at some point, but to do it now would have been more change than we anticipated in order to get better logging for Kubernetes in app insights.

So, we can wait till you are able to upgrade KubernetesClient safely.

I see. Let me repeat what you said so that we are on the same page: the problem is that 3.0 package references KubernetesClient/6.0.26, then references AutoMapper/10.1.1. And that would force your project to upgrade to AutoMapper>= 10.1.1. And that would cause problems for your project, sounds right?

Thank you for letting us know.

That makes sense.

I'll keep this issue open tracking for us to bump up KubernetesClient version - probably to 7.2.x.

Hi @Ian1971, I was looking into bumping up K8sClient and found out that AutoMapper/10.1.1 is always on the dependency chain even with the latest version. Here's what the dependency chain looks like with KubernetsClient/9.0.28:

image

We'd like to bump up the client version anyway, but it won't address your problem. I see 2 possibilities:

  • Upgrade your dependency to AutoMapper/10.1.1+
  • File an issue on KubernetesClient to see if they can downgrade/remove the dependency on AutoMapper.

What do you think?

I think we will just have to upgrade automapper, and stick with the older version of this library until we can.

Alright. Thank you for the discussion @Ian1971. I'll close this issue for now. Feel free to open new issues for further discussion.