# Best practice: develop and adjust own package / precompilation

**URL:** <https://discourse.julialang.org/t/best-practice-develop-and-adjust-own-package-precompilation/103656>\
**Category:** New to Julia\
**Tags:** package, precompilation, time\
**Created:** [September 8, 2023, 10:08am UTC](https://discourse.julialang.org/t/best-practice-develop-and-adjust-own-package-precompilation/103656 "2023-09-08T10:08:07Z")\
**Posts on this page:** 1\
**Showing post:** 4

<div class="post-metadata">

**Author:** ![Benny](https://avatars.discourse-cdn.com/v4/letter/b/49beb7/32.png) [@Benny](https://discourse.julialang.org/u/Benny)\
**Post date:** [September 8, 2023, 12:09pm UTC](https://discourse.julialang.org/t/best-practice-develop-and-adjust-own-package-precompilation/103656/4 "2023-09-08T12:09:50Z")

</div>

> [@Lukas\_Hebing](#):
>
> However, when I do small changes, and re-type `using MyPackage1` in the REPL or restart the REPL after the changes, precompilation is starting again

Quoting the docs,

> Precompilation cache files store definitions of modules, types, methods, and constants. They may also store method specializations and the code generated for them, but this typically requires that the developer add explicit `precompile` directives or execute workloads that force compilation during the package build.

> However, if you update the module’s dependencies or change its source code, the module is automatically recompiled upon `using` or `import`.

In short, whenever you `using` or `import` after editing the source code, you are doing a change as big as reevaluating a module. It’s quicker to make small changes like interactively replacing a method in a REPL session. Some changes can’t be made (editing a `struct`’s field structure), and small edits out of order can be different from rerunning a whole thing, but you can get a lot of work done through small interactive changes between the big overhauls. Revise.jl is useful for making source code edits automatically perform those small changes in a REPL session, so you don’t have to repeat it manually in the session.

---

_[View the full topic](https://discourse.julialang.org/t/best-practice-develop-and-adjust-own-package-precompilation/103656)._
