Skip to content

Migrate from SnoopPrecompile to PrecompileTools#44

Merged
jbytecode merged 1 commit intojbytecode:masterfrom
timholy:teh/precompiletools
Apr 25, 2023
Merged

Migrate from SnoopPrecompile to PrecompileTools#44
jbytecode merged 1 commit intojbytecode:masterfrom
timholy:teh/precompiletools

Conversation

@timholy
Copy link
Copy Markdown
Contributor

@timholy timholy commented Apr 25, 2023

This pull request migrates the package from SnoopPrecompile to PrecompileTools.
PrecompileTools is nearly a drop-in replacement except that there are changes in naming and how developers locally disable precompilation (to make their development workflow more efficient). These changes are described in PrecompileTool's enhanced documentation, which also includes instructions for users on how to set up custom "Startup" packages, handling precompilation tasks that are not amenable to workloads, and tips for troubleshooting.

Why the new package? It meets several goals:

  • The name "SnoopPrecompile" was easily confused with "SnoopCompile," a package designed for analyzing rather than enacting precompilation.
  • SnoopPrecompile/PrecompileTools has become (directly or indirectly) a dependency for much of the Julia ecosystem, a trend that seems likely to grow with time. It makes sense to host it in a more central location than one developer's personal account.
  • As Julia's own stdlibs migrate to become independently updateable (true for DelimitedFiles in Julia 1.9, with others anticipated for Julia 1.10), several of them would like to use PrecompileTools for high-quality precompilation. That requires making PrecompileTools its own "upgradable stdlib."
  • We wanted to change the use of Preferences to make packages more independent of one another. Since this would have been a breaking change, it seemed like a good opportunity to fix other issues, too.

For more information and discussion, see this discourse post.

@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented Apr 25, 2023

Codecov Report

Merging #44 (92e400e) into master (00012a7) will increase coverage by 0.05%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master      #44      +/-   ##
==========================================
+ Coverage   89.74%   89.80%   +0.05%     
==========================================
  Files          36       36              
  Lines        1795     1795              
==========================================
+ Hits         1611     1612       +1     
+ Misses        184      183       -1     
Impacted Files Coverage Δ
src/precompile/precompile.jl 100.00% <100.00%> (ø)

... and 1 file with indirect coverage changes

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

@jbytecode jbytecode merged commit 1d644ff into jbytecode:master Apr 25, 2023
@jbytecode
Copy link
Copy Markdown
Owner

@timholy - many thanks!

@timholy timholy deleted the teh/precompiletools branch April 25, 2023 11:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants