# Manage dependencies to unofficial packages

**URL:** <https://discourse.julialang.org/t/manage-dependencies-to-unofficial-packages/26129>\
**Category:** New to Julia\
**Created:** [July 8, 2019, 7:28am UTC](https://discourse.julialang.org/t/manage-dependencies-to-unofficial-packages/26129 "2019-07-08T07:28:03Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![DrChainsaw](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/drchainsaw/32/8497_2.png) [@DrChainsaw](https://discourse.julialang.org/u/DrChainsaw)\
**Post date:** [July 8, 2019, 7:28am UTC](https://discourse.julialang.org/t/manage-dependencies-to-unofficial-packages/26129/1 "2019-07-08T07:28:04Z")

</div>

Hi,

I have two (public) packages on github where one depends on the other. As it seems now, doing Pgk.add on the one with the dependency does not work out of the box, one must first manually install the other one.

Is there some convenient way to track dependencies to unofficial packages?

When I add an unofficial package the URL get registered in the project manifest, but by default (at least when using PkgTemplates) it is not checked in. Project.toml only has the package name and uuid, but I guess none of those mean anything without the package being in some manifest, or?

Packages:  
independent:

> **[GitHub - DrChainsaw/NaiveNASlib.jl: Relentless mutation!!](https://github.com/DrChainsaw/NaiveNASlib.jl)**
>
> Relentless mutation!! Contribute to DrChainsaw/NaiveNASlib.jl development by creating an account on GitHub.

depends on the above:

> **[GitHub - DrChainsaw/NaiveNASflux.jl: Your local Flux surgeon](https://github.com/DrChainsaw/NaiveNASflux.jl)**
>
> Your local Flux surgeon. Contribute to DrChainsaw/NaiveNASflux.jl development by creating an account on GitHub.

---

<div class="post-metadata">

**Author:** ![DrChainsaw](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/drchainsaw/32/8497_2.png) [@DrChainsaw](https://discourse.julialang.org/u/DrChainsaw)\
**Post date:** [July 8, 2019, 11:05pm UTC](https://discourse.julialang.org/t/manage-dependencies-to-unofficial-packages/26129/2 "2019-07-08T23:05:36Z")

</div>

I think I found the answer:

> [@Pkg workflow for unregistered packages](https://discourse.julialang.org/t/pkg-workflow-for-unregistered-packages/17385):
>
> Hi, We have upgraded our projects/packages to Julia 1.0. The new Pkg is a well thought-out package manager, and we are currently trying to figure how to best use it in our development workflow. In the following, I describe our scenario first, then explain what workflow we currently have in mind, followed by some questions. Scenario: We develop an Application Bench, and two unregistered packages Foo and Bar. All three repositories live on github. Foo has a dependency on Bar. Both packages Foo…

I used the wrong terminology when searching (“unofficial” instead of “unregistered”) but after re-reading the pkg documentation I got it right.

I opted for adding a before\_install script to CI like this:  
julia -e ‘using Pkg; Pkg.add(PackageSpec(url=“[GitHub - DrChainsaw/NaiveNASlib.jl: Relentless mutation!!](https://github.com/DrChainsaw/NaiveNASlib.jl)”));’
