Releases: JuliaTesting/ExplicitImports.jl
Releases · JuliaTesting/ExplicitImports.jl
v1.15.0
ExplicitImports v1.15.0
New features
- support
ignorekwarg for allcheck_*functions (#165) - add new
test_*API functions for better integrations into Test.jl testsuites (and to help with Aqua integration) (#143)- new functions:
test_explicit_imports,test_no_implicit_imports, test_no_stale_explicit_imports,
test_all_explicit_imports_via_owners,test_all_explicit_imports_are_public,
test_all_qualified_accesses_via_owners,test_all_qualified_accesses_are_public,
test_no_self_qualified_accesses
- new functions:
- add
--testflag to CLI app (#166)
Bug fixes
- fix
ignoreto properly ignore submodules of ignored modules (#165)
Merged pull requests:
- add Test API for better Aqua integration (#143) (@ericphanson)
- expand
ignorefunctionality to consistently allow ignoring submodules (#165) (@ericphanson) - Add
--testflag for app (#166) (@ericphanson)
v1.14.2
ExplicitImports v1.14.2
- Fix issue where explicitly imported macros aren't detected as imported. This may cause previously undetected stale explicit imports of macros to now be detected. (#159)
- Fix bug in kwarg default values, e.g. where
f(; convert=convert)would not detect the usage ofconvertas external. (#148) - Fix scoping issues in default values of positional arguments (#147), similar to above for kwargs
- Fix bug where if a field name in a struct was the same as the usage of a global in a constructor, that usage would be missed. (#146)
- Fix bug where names exported by Base and re-exported by other modules are incorrectly suggested to be explicitly imported from those other modules. (#145)
Merged pull requests:
- Filter out exported-from-Base names appropriately (#145) (@ericphanson)
- Handle field name shadowing issues (#111) (#146) (@ericphanson)
- Fix scoping issues with default values in function arguments (#147) (@ericphanson)
- Fix defaults for kwargs (#148) (@ericphanson)
- Add integration tests (#149) (@ericphanson)
- Install dependabot.yml (#150) (@giordano)
- Bump julia-actions/install-juliaup from 1 to 2 (#151) (@dependabot[bot])
- Bump actions/checkout from 4 to 6 (#152) (@dependabot[bot])
- Bump julia-actions/setup-julia from 1 to 2 (#153) (@dependabot[bot])
- Bump julia-actions/cache from 1 to 2 (#154) (@dependabot[bot])
- Bump codecov/codecov-action from 3 to 5 (#155) (@dependabot[bot])
- Add codecov configuration to exclude vendored code from coverage (#156) (@Copilot)
- add Ferrite integration tests (#157) (@ericphanson)
- Try fixing codecov (#158) (@ericphanson)
- [~breaking] Fix issue where explicitly imported macros aren't detected as imported (#159) (@ericphanson)
- Update version of Oceananigans for integration tests (#162) (@giordano)
- Bump project version from 1.14.1 to 1.14.2 for release (#163) (@ericphanson)
Closed issues:
- false positive in stale names with default value for function args (#62)
- Support earlier Julia versions (#65)
unanalyzablenot clearly defined (#79)- submodules inside package extensions are not analyzable (#80)
- Exports from submodules that are
using'd in parent module not required to be explicitly imported (#84) @argcheckfalse positive (#97)- implicitly imported function with same name as kwarg not recognized (#98)
- imported name shadowed by field name (#111)
- Name shadowing of an import when assigning it to a function argument causes spurious unused import diagnostics (#120)
print_explicit_importssuggests importing symbols from wrong module (#137)
v1.14.1
ExplicitImports v1.14.1
Merged pull requests:
- Fix type parameter issue (#141) (@ericphanson)
- Fix test for Julia nightly Markdown rendering change (#142) (@ericphanson)
Closed issues:
v1.14.0
ExplicitImports v1.14.0
check_all_explicit_imports_are_publicandcheck_all_qualified_accesses_are_publicnow accept afromkeyword argument to limit checks to names from particular modules
Merged pull requests:
- Allow
check_*_publicfunctions to opt-in dependencies to check (#134) (@nickrobinson251) - Installing v1.12 doesn't require
nightlyanymore (#135) (@giordano)
v1.13.2
ExplicitImports v1.13.2
Merged pull requests:
- Fix ExplicitImports to work with
--depwarn=error(#132) (@devmotion)
Closed issues:
- Doesn't work in package tests when Base.@deprecate_binding is used on Julia 1.10 (#93)
v1.13.1
ExplicitImports v1.13.1
Merged pull requests:
- improve function argument parsing (#130) (@ericphanson)
Closed issues:
- name imported from parent package and passed to a function complains about stale imports (#129)
v1.13.0
ExplicitImports v1.13.0
- ExplicitImports now requires Julia 1.10+
- JuliaSyntax and AbstractTrees were removed as package dependencies (in favor of vendoring the code). This removes some sources of compatibility issues.
Merged pull requests:
- RFC: Vendor JuliaSyntax to avoid compatibility issues (#121) (@ericphanson)
- Drop support for pre-1.10 Julia (#122) (@ericphanson)
- vendor AbstractTrees (#123) (@ericphanson)
- add .gitattributes (#124) (@ericphanson)
- mark linguist-generated (#125) (@ericphanson)
- Move vendored code into src, fix version (#126) (@ericphanson)
Closed issues:
- unknown Kind name "iteration" (#119)
v1.12.0
ExplicitImports v1.12.0
Merged pull requests:
- Upgrade JuliaSyntax to v1 (#110) (@ericphanson)
- Remove duplicate --help message for unknown argument (#115) (@fredrikekre)
- update references to point to JuliaTesting (#117) (@ericphanson)
v1.11.3
ExplicitImports v1.11.3
Changes
- supports module aliases (
const ModB = ModA) - fixes issues on Julia v1.12-beta and v1.13
Merged pull requests:
- Add write permissions to CompatHelper action (#107) (@cgarling)
- bugfix: support module aliases (#112) (@ericphanson)
- format tests & wrap in testset (#113) (@ericphanson)
Closed issues:
v1.11.2
ExplicitImports v1.11.2
Merged pull requests:
- try to improve inferability and ttfx (#101) (@ericphanson)
- Print modules and files wrapped in backticks so that names with
_don't cause italics (#105) (@nickrobinson251)
Closed issues: