# How to make my develop version library?

**URL:** https://discourse.julialang.org/t/how-to-make-my-develop-version-library/129196
**Category:** General Usage
**Tags:** question, package
**Created:** [May 21, 2025, 4:19am UTC](https://discourse.julialang.org/t/how-to-make-my-develop-version-library/129196 "2025-05-21T04:19:57Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![JaebeomCho](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jaebeomcho/32/217466_2.png) [@JaebeomCho](https://discourse.julialang.org/u/JaebeomCho)
#### Post date: [May 21, 2025, 4:19am UTC](https://discourse.julialang.org/t/how-to-make-my-develop-version-library/129196/1 "2025-05-21T04:19:57Z")

</div>

Hi, I’m developing a module for my team.

I’m currently developing a Julia package that relies on a forked version of another public package (Fortran90Namelists.jl). I’ve made some important internal modifications to this dependency and want my package to use **this modified fork** rather than the version registered in the General registry.

Although I’ve taken the following steps:

- Assigned a new UUID to my forked version of Fortran90Namelists.jl
- Published it to a public Git repository
- Added the dependency using Pkg.add(“[https://github.com/.../MyForkedFortran90Namelists.jl](https://github.com/.../MyForkedFortran90Namelists.jl)”)

But I still find that when users install **my main package** (e.g., via Pkg.add(“[https://github.com/.../MyPackage.jl](https://github.com/.../MyPackage.jl)”)), Julia resolves the dependency using the **original registered version** , not my custom fork — unless the user explicitly runs Pkg.develop on the forked dependency.

My core question is:

How can I ensure that when other users install my package, Julia automatically pulls in **my forked version of a dependency** (e.g., Fortran90Namelists.jl), rather than resolving to the version in the registry?

I’d prefer a solution that does **not** require the user to manually develop the dependency, if possible.

---

<div class="post-metadata">

### Author: ![gdalle](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/gdalle/32/27854_2.png) [@gdalle](https://discourse.julialang.org/u/gdalle)
#### Post date: [May 21, 2025, 5:30am UTC](https://discourse.julialang.org/t/how-to-make-my-develop-version-library/129196/2 "2025-05-21T05:30:07Z")

</div>

Your best option is probably adding a `[sources]` section to `MyPackage.jl/Project.toml` ([10. Project.toml and Manifest.toml · Pkg.jl](https://pkgdocs.julialang.org/v1/toml-files/#The-%5Bsources%5D-section)), with the link to the `Fortran90Namelists.jl` repo. Note however that it won’t work if `MyPackage` is used as a dependency. The condition is that your users have to work inside the `MyPackage` environment.

---

<div class="post-metadata">

### Author: ![xgdgsc](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/xgdgsc/32/608_2.png) [@xgdgsc](https://discourse.julialang.org/u/xgdgsc)
#### Post date: [May 21, 2025, 6:54am UTC](https://discourse.julialang.org/t/how-to-make-my-develop-version-library/129196/3 "2025-05-21T06:54:23Z")

</div>

Setup [GitHub - GunnarFarneback/LocalRegistry.jl: Create and maintain local registries for Julia packages.](https://github.com/GunnarFarneback/LocalRegistry.jl)

---

<div class="post-metadata">

### Author: ![JaebeomCho](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jaebeomcho/32/217466_2.png) [@JaebeomCho](https://discourse.julialang.org/u/JaebeomCho)
#### Post date: [May 23, 2025, 2:07am UTC](https://discourse.julialang.org/t/how-to-make-my-develop-version-library/129196/4 "2025-05-23T02:07:17Z")

</div>

@xgdgsc Wow this one looks cool. Very helpful for me. I appreciate! 😀
