ExplicitImports.jl
ExplicitImports.jl copied to clipboard
Figure out what implicit exports a Julia module is relying on, in order to make them explicit
we will suggest converting e.g. `using Foo` into `using Foo: Foo`, even if you don't even need `Foo` at all! That seems non-ideal
Here's a fun one `UUID` belongs to base ``` julia> parentmodule(Base.UUID) Base ``` but is not exported by Base ``` julia> UUID ERROR: UndefVarError: `UUID` not defined ``` However, it...
currently, we only track the names being explicitly imported. That is generally sufficient, since within a module a global name only resolves to one thing, and we can figure out...
Would it be possible to detect uses of non-public names? E.g. `using Foo: bar` where `Foo.bar` is not public. ## Example If I have: ```julia module MyPackage export f public...
like #48 but for explicit imports instead of qualified accesses