# Run two repls on the same project

**URL:** <https://discourse.julialang.org/t/run-two-repls-on-the-same-project/81620>\
**Category:** General Usage\
**Tags:** repl\
**Created:** [May 24, 2022, 11:18pm UTC](https://discourse.julialang.org/t/run-two-repls-on-the-same-project/81620 "2022-05-24T23:18:46Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![taotree](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/taotree/32/31982_2.png) [@taotree](https://discourse.julialang.org/u/taotree)\
**Post date:** [May 24, 2022, 11:18pm UTC](https://discourse.julialang.org/t/run-two-repls-on-the-same-project/81620/1 "2022-05-24T23:18:46Z")

</div>

I have a project with lots of modules I’m actively developing. But I also want to run some long running tasks based on it and occasionally update that, so I’ve been running a repl in vscode to develop, and a second one in a bash console (on Windows). Using Julia version 1.7.1

In general, it is working fine, but I always get a lot of warnings:

```julia
┌ Warning: Module Expirations with build ID 756185423171742 is missing from the cache.
│ This may mean Expirations [top-level] does not support precompilation but is imported by a module that does.
└ @ Base loading.jl:1107

```

These warnings only happen when I have both repls running. In the second repl, I don’t have `using Revise` but in vscode I do (which is deliberate, I don’t want that repl to update code as I edit). I tried running the second console with --compiled-modules=no but that didn’t seem to make a difference.

The second repl, I do run with --project and so they are sharing the same project files/environment. Do I need to somehow tell them to use different environments? But they do need to use the same project files.

---

<div class="post-metadata">

**Author:** ![jd-foster](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jd-foster/32/35824_2.png) [@jd-foster](https://discourse.julialang.org/u/jd-foster)\
**Post date:** [May 25, 2022, 4:29am UTC](https://discourse.julialang.org/t/run-two-repls-on-the-same-project/81620/2 "2022-05-25T04:29:26Z")

</div>

What is your main concern? For example, are you concerned the warnings have implications for the code correctness?

One idea is to use a project environment in the running REPL that tracks a git revision of your package under development:  
[https://pkgdocs.julialang.org/v1/repl/](https://pkgdocs.julialang.org/v1/repl/)

---

<div class="post-metadata">

**Author:** ![taotree](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/taotree/32/31982_2.png) [@taotree](https://discourse.julialang.org/u/taotree)\
**Post date:** [June 9, 2022, 2:25pm UTC](https://discourse.julialang.org/t/run-two-repls-on-the-same-project/81620/3 "2022-06-09T14:25:14Z")

</div>

It appears I made a mistake. The warnings were not because of the two REPLs, they were because I had a cyclic dependency in my modules.

Is there an existing tool to find cyclic dependencies between modules? I wrote one because I couldn’t find one, but it’s messy.
