You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Track RBS sig file freshness, propagate to aliases, separate singleton attr keys
Three fixes for `merge_rbs_signatures` and the surrounding freshness flow:
- `rdoc.rb` now records `sig/*.rbs` mtimes alongside Ruby files in
`@last_modified` and forces a full reparse when only signatures
changed. The cached HTML pipeline keeps no in-memory class data
across runs, so without this `merge_rbs_signatures` would run on
an empty store. Also surfaces `rbs_signature_files`/`watch_files`
for the live server's watcher.
- `store.rb` now propagates merged RBS signatures to aliases
immediately during assignment by walking `method_attr.aliases`,
and tracks assigned objects so a re-merge in the live-server
reload path can clear stale signatures without nuking inline
`#:` annotations.
- `rbs_helper.rb` keys singleton attributes as `Klass.attr` and
instance attributes as `Klass#attr`, mirroring the method key
format and preventing a singleton attr from clobbering an
instance attr (or vice versa) when both share a name.
Drive-by cleanups while in the area: fold `.rbs` into
`remove_unparseable`'s extension regex; collapse the two identical
`rbs_*_key` helpers into one `rbs_key`; drop a redundant
`File.directory?` guard before `Dir[]`.
0 commit comments