more_visibility 0.1.11
more_visibility: ^0.1.11 copied to clipboard
Analysis server plugin and builder bringing directory-scoped visibility via @mprotected and @mdefault annotations.
0.1.11 #
- New feature: Add
excludeconfiguration option to disable visibility checks in specific directories.- Configure exclude patterns in
analysis_options.yamlusing glob syntax. - Useful for test code, generated files, or example directories where you need to access protected code.
- Example:
more_visibility: exclude: - test/** - integration_test/** - lib/generated/** - Files matching exclude patterns can freely access
@mprotected,@mdefault, and directory-private code without triggering violations.
- Configure exclude patterns in
0.1.10 #
- Breaking change:
directory_privaterule now only applies to application code, not dependencies.- Dependencies (files in
.pub-cacheor.dart-tool) are now excluded from directory-private enforcement. - This fixes false positives when using packages that export modules from underscore-prefixed directories (e.g.,
package:foo/_internal/bar.dart). - Application code in
lib/,test/, etc. continues to be checked as before.
- Dependencies (files in
0.1.8 #
- Add
directory_privaterule: directories with underscore prefix (e.g.,_components,_hooks) are only accessible from files at the same package depth.- Files in
lib/pages/_components/can only be imported by files inlib/pages/or otherlib/pages/_*/directories. - Files in parent directories (e.g.,
lib/) or child directories (e.g.,lib/pages/profile/) cannot access private directories. - Default severity is
error.
- Files in
0.1.0 #
- Introduce
@mprotectedand@mdefaultannotations. - Add custom lint to enforce directory-scoped visibility.
- Add post-process builder to auto-annotate generated files.
- Provide example project and end-to-end tests.