# Update one, and only one package

**URL:** <https://discourse.julialang.org/t/update-one-and-only-one-package/33755>\
**Category:** General Usage\
**Tags:** package\
**Created:** [January 24, 2020, 4:46pm UTC](https://discourse.julialang.org/t/update-one-and-only-one-package/33755 "2020-01-24T16:46:54Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![cstjean](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/cstjean/32/1444_2.png) [@cstjean](https://discourse.julialang.org/u/cstjean)\
**Post date:** [January 24, 2020, 4:46pm UTC](https://discourse.julialang.org/t/update-one-and-only-one-package/33755/1 "2020-01-24T16:46:54Z")

</div>

I’ve got some Julia application that was released, neatly instantiable from its MANIFEST file. Say it has versions `v1.0.0`, `v1.1.0` and `v2.0.0`. There was a bug in `1.1.0`, that was released 5 months ago. It was some issue with `MyPrivatePackage@v4.0.0` which I’ve now fixed. I’d like to produce a `v1.1.1` for my app. Unfortunately

```julia
(MyApp) pkg> add MyPrivatePackage@v4.0.1 # the fixed version

```

will update every dependency of `MyPrivatePackage` to its latest version. Is there a non-recursive `add`? We’ve been modifying MANIFEST, but it’s very painful and error-prone to find the tree SHAs

---

<div class="post-metadata">

**Author:** ![kristoffer.carlsson](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kristoffer.carlsson/32/22_2.png) [@kristoffer.carlsson](https://discourse.julialang.org/u/kristoffer.carlsson)\
**Post date:** [January 24, 2020, 5:14pm UTC](https://discourse.julialang.org/t/update-one-and-only-one-package/33755/2 "2020-01-24T17:14:09Z")

</div>

Julia 1.4 should at first try to add the package without doing any modifications to other packages and only if that fails try to upgrade stuff. Please try out 1.4 RC1 and see how it works.

Something like `up --fixed Foo@4.9.1` might work on 1.3.

---

<div class="post-metadata">

**Author:** ![cstjean](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/cstjean/32/1444_2.png) [@cstjean](https://discourse.julialang.org/u/cstjean)\
**Post date:** [August 14, 2020, 6:49pm UTC](https://discourse.julialang.org/t/update-one-and-only-one-package/33755/3 "2020-08-14T18:49:47Z")

</div>

FWIW on 1.4 it doesn’t seem to work, with `--fixed` or without. Our `up`ped package doesn’t have any compatibility bounds, and its Project.toml hasn’t changed, so I don’t see why it would need to update ~30 other packages when I `up MyPackage`. Also no other package (besides the environment I’m updating) depends on it.

Did I miss anything?

---

<div class="post-metadata">

**Author:** ![kristoffer.carlsson](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kristoffer.carlsson/32/22_2.png) [@kristoffer.carlsson](https://discourse.julialang.org/u/kristoffer.carlsson)\
**Post date:** [August 14, 2020, 6:58pm UTC](https://discourse.julialang.org/t/update-one-and-only-one-package/33755/4 "2020-08-14T18:58:53Z")

</div>

I think `up Package` acts pretty weird now, yes. I don’t even know the exact semantics it has. You can open an issue about it with how you want it to work.
