Skip to content

Commit

Permalink
build based on 25b9f4d
Browse files Browse the repository at this point in the history
  • Loading branch information
Documenter.jl committed Feb 24, 2024
1 parent cba6760 commit b06d41e
Show file tree
Hide file tree
Showing 5 changed files with 5 additions and 5 deletions.
2 changes: 1 addition & 1 deletion dev/.documenter-siteinfo.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"documenter":{"julia_version":"1.10.1","generation_timestamp":"2024-02-24T19:42:12","documenter_version":"1.2.1"}}
{"documenter":{"julia_version":"1.10.1","generation_timestamp":"2024-02-24T21:06:02","documenter_version":"1.2.1"}}
2 changes: 1 addition & 1 deletion dev/api/index.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dev/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,4 @@
</code></pre><p>Note: the <code>WARNING</code> is more or less harmless; the way this package is written, it will happen any time there is a clash, even if that clash is not realized in your code. I cannot figure out how to suppress it.</p><h2>Limitations</h2><h3><code>global</code> scope quantifier ignored</h3><p>Currently, my parsing implementation does not take into account the <code>global</code> keyword, and thus results may be inaccurate when that is used. This could be fixed by improving the code in <code>src/get_names_used.jl</code>.</p><h3>Cannot recurse through dynamic <code>include</code> statements</h3><p>These are <code>include</code> in which the argument is not a string literal. For example:</p><pre><code class="language-julia hljs">julia&gt; print_explicit_imports(MathOptInterface)
┌ Warning: Dynamic `include` found at /Users/eph/.julia/packages/MathOptInterface/tpiUw/src/Test/Test.jl:631:9; not recursing
└ @ ExplicitImports ~/ExplicitImports/src/get_names_used.jl:37
...</code></pre><p>In this case, names in files which are included via <code>include</code> are not analyzed while parsing. This can result in inaccurate results, such as false positives in <code>explicit_imports</code> and false negatives (or false positives) in <code>stale_explicit_imports</code>.</p><p>This is essentially an inherent limitation of the approach used in this package. An alternate implementation using an <code>AbstractInterpreter</code> (like JET does) may be able to handle this (at the cost of increased complexity).</p><h2 id="Documentation-Index"><a class="docs-heading-anchor" href="#Documentation-Index">Documentation Index</a><a id="Documentation-Index-1"></a><a class="docs-heading-anchor-permalink" href="#Documentation-Index" title="Permalink"></a></h2><ul><li><a href="internals/#ExplicitImports.analyze_all_names"><code>ExplicitImports.analyze_all_names</code></a></li><li><a href="api/#ExplicitImports.check_no_implicit_imports"><code>ExplicitImports.check_no_implicit_imports</code></a></li><li><a href="api/#ExplicitImports.check_no_stale_explicit_imports"><code>ExplicitImports.check_no_stale_explicit_imports</code></a></li><li><a href="api/#ExplicitImports.explicit_imports"><code>ExplicitImports.explicit_imports</code></a></li><li><a href="api/#ExplicitImports.explicit_imports_single"><code>ExplicitImports.explicit_imports_single</code></a></li><li><a href="internals/#ExplicitImports.find_implicit_imports"><code>ExplicitImports.find_implicit_imports</code></a></li><li><a href="internals/#ExplicitImports.get_names_used"><code>ExplicitImports.get_names_used</code></a></li><li><a href="api/#ExplicitImports.print_explicit_imports"><code>ExplicitImports.print_explicit_imports</code></a></li><li><a href="api/#ExplicitImports.stale_explicit_imports"><code>ExplicitImports.stale_explicit_imports</code></a></li></ul></article><nav class="docs-footer"><a class="docs-footer-nextpage" href="api/">API reference »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.2.1 on <span class="colophon-date" title="Saturday 24 February 2024 19:42">Saturday 24 February 2024</span>. Using Julia version 1.10.1.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
...</code></pre><p>In this case, names in files which are included via <code>include</code> are not analyzed while parsing. This can result in inaccurate results, such as false positives in <code>explicit_imports</code> and false negatives (or false positives) in <code>stale_explicit_imports</code>.</p><p>This is essentially an inherent limitation of the approach used in this package. An alternate implementation using an <code>AbstractInterpreter</code> (like JET does) may be able to handle this (at the cost of increased complexity).</p><h2 id="Documentation-Index"><a class="docs-heading-anchor" href="#Documentation-Index">Documentation Index</a><a id="Documentation-Index-1"></a><a class="docs-heading-anchor-permalink" href="#Documentation-Index" title="Permalink"></a></h2><ul><li><a href="internals/#ExplicitImports.analyze_all_names"><code>ExplicitImports.analyze_all_names</code></a></li><li><a href="api/#ExplicitImports.check_no_implicit_imports"><code>ExplicitImports.check_no_implicit_imports</code></a></li><li><a href="api/#ExplicitImports.check_no_stale_explicit_imports"><code>ExplicitImports.check_no_stale_explicit_imports</code></a></li><li><a href="api/#ExplicitImports.explicit_imports"><code>ExplicitImports.explicit_imports</code></a></li><li><a href="api/#ExplicitImports.explicit_imports_single"><code>ExplicitImports.explicit_imports_single</code></a></li><li><a href="internals/#ExplicitImports.find_implicit_imports"><code>ExplicitImports.find_implicit_imports</code></a></li><li><a href="internals/#ExplicitImports.get_names_used"><code>ExplicitImports.get_names_used</code></a></li><li><a href="api/#ExplicitImports.print_explicit_imports"><code>ExplicitImports.print_explicit_imports</code></a></li><li><a href="api/#ExplicitImports.stale_explicit_imports"><code>ExplicitImports.stale_explicit_imports</code></a></li></ul></article><nav class="docs-footer"><a class="docs-footer-nextpage" href="api/">API reference »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.2.1 on <span class="colophon-date" title="Saturday 24 February 2024 21:06">Saturday 24 February 2024</span>. Using Julia version 1.10.1.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html>
Loading

0 comments on commit b06d41e

Please sign in to comment.