Open
Description
Annotate gem does not support Rails autoloader collapsed directories i.e.
pry(AnnotateModels)> Rails.autoloaders.main
=> #<Zeitwerk::Loader:0x00007f6305898b58
@autoloaded_dirs=[],
@autoloads={},
@collapse_dirs=
#<Set: {"/home/developer/my_app/app/components/my_namespace/models"}>,
@collapse_glob_patterns=#<Set: {/home/developer/my_app/app/components/*/models", "/home/developer/my_app/app/components/my_namespace/jobs"}>,
@eager_load_exclusions=#<Set: {}>,
@eager_loaded=true,
@ignored_glob_patterns=
#<Set: {"/home/developer/my_app/lib/rails",
"/home/developer/my_app/lib/patches",
"//home/developer/my_app/lib/rails/generators/job",
...
pry(AnnotateModels)> Rails.autoloaders.main.collapsed_dirs
=> #<Set: {"/home/developer/my_app/app/components/my_namespace/models"}>
In config/application.rb
:
Rails.autoloaders.main.collapse("app/components/*/models")
I've obfuscated the model names and namespace, but the end result is still the same.
Commands
$ bundle exec annotate
Unable to annotate app/components/my_namespace/models/my_model.rb: file doesn't contain a valid model class
Unable to annotate app/components/my_namespace/models/my_second_model.rb: file doesn't contain a valid model class
Unable to annotate app/components/my_namespace/models/my_third_model.rb: file doesn't contain a valid model class
$
Version
- annotate (3.2.0 96831c1)
- rails (7.0.3.1)
- ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [x86_64-linux]
Metadata
Metadata
Assignees
Labels
No labels