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
I'm looking at Install_rules and Local_package and I feel like we could simplify a lot this code. Currently the way things work is:
we scan the list of all stanzas and construct various lists of libs, doc items, install items, etc per package
we map these lists to produce installation entries
we concatenate everything to produce the list of install entries per package
Instead, it seems to me that we could do one single pass over the list of stanzas, accumulating a (Loc.t * Install.Entry.t) list Package.Name.Map.t. That seems worth doing to me: not only it would simplify this code that is becoming complicated, but it would also make it more efficient as theses list can be large in big workspaces. After that, we should be able to delete Local_package which is only used in Install_rules. It is also used in Opam_create but it seems that it would be easy to do without it. @rgrinberg are you happy to have a look at this once Use scheme for install rules #2130 is merged?
The text was updated successfully, but these errors were encountered:
Quoting @diml from slack:
The text was updated successfully, but these errors were encountered: