|
5 | 5 | [](https://codecov.io/gh/JuliaLang/Precompiler.jl)
|
6 | 6 |
|
7 | 7 | Precompiler allows you to reduce the latency of the first execution of Julia code.
|
8 |
| -It is applicable both for package developers and "ordinary users"; for the latter, it can be viewed as an |
9 |
| -alternative to [PackageCompiler](https://github.com/JuliaLang/PackageCompiler.jl), particularly on Julia 1.9 and higher |
10 |
| -where both can be used to cache "native code." |
11 |
| -Nevertheless, the two are not identical: the primary differences between Precompiler and PackageCompiler are: |
| 8 | +**It is applicable for package developers and for "ordinary users" in their personal workflows.** |
12 | 9 |
|
13 |
| -- only Precompiler can be used by *package developers* to ensure a better experience for your users |
| 10 | +To learn how to use Precompiler, see the [documentation](https://JuliaLang.github.io/Precompiler.jl/stable/). |
| 11 | + |
| 12 | +## Precompiler and PackageCompiler |
| 13 | + |
| 14 | +Particularly on Julia 1.9 and higher, Precompiler allows dramatic reduction in "time to first execution" (TTFX). |
| 15 | +In this respect, it shares goals with (and performs similarly to) [PackageCompiler](https://github.com/JuliaLang/PackageCompiler.jl). |
| 16 | +Nevertheless, the two are not identical: |
| 17 | + |
| 18 | +- only Precompiler can be used by *package developers* to ensure a better out-of-box experience for your users |
14 | 19 | - only Precompiler allows you to update your packages without needing to rebuild Julia
|
15 | 20 | - only PackageCompiler dramatically speeds up loading time (i.e., `using ...`) for all the packages
|
16 | 21 |
|
17 |
| -Precompiler started as [SnoopPrecompile](https://github.com/timholy/SnoopCompile.jl/tree/master/SnoopPrecompile), but |
18 |
| -it differs in naming and in how one disables precompilation. |
| 22 | +## History (origins as SnoopPrecompile) |
| 23 | + |
| 24 | +Precompiler is the successor to [SnoopPrecompile](https://github.com/timholy/SnoopCompile.jl/tree/master/SnoopPrecompile). |
| 25 | +Precompiler differs in naming and in how one disables precompilation, but is otherwise a drop-in replacement. |
0 commit comments