It doesn't actually do anything, and fixing that turns out to be
very complicated. Since nobody appears to have noticed, just remove
the field entirely.
Change their implementations to check full object equality, with case insensitivity for filename strings.
The filename case insensitivity doesn't extend to filenames in condition strings, as conditions are compared as strings, but the risk of duplicates due to that is much less than the risk of treating non-duplicate objects as duplicates.
Skip adding an edge between a pair of plugins if all the following
conditions are met:
- the edge is to be added due to group membership
- adding the edge would introduce a cycle in the absence of any
other group membership edges.
Use ISO language codes directly instead, which has the advantage that
new languages can be used in metadata without having up update the API
to support them. Closes#5.