beyond-all-reason / beyond-all-reason/RecoilEngine
Get rid of `modinfo.replaces` for archives
- Dominant language
- C++
- Stars
- 679
- Forks
- 290
- Avg merge
- 3d 2h
- Merged PRs (30d)
- 40
Description
It seems to have been added in Spring 0.61b2, back in 2005, yet I have never seen it used. At a glance it doesn't make much sense:
* what if archives Y and Z both claim to replace archive X? Which to use?
* what if an archive Y exists that claims to replace archive X but I don't have Y installed, how do I learn it exists?
* how do I make sure some sucker can't just replace one of my archive's dependencies with a hacked one? If I knew anything verifiable (say, the checksum) about a replacement then I would know it exists and could just depend on it directly.
* what about sync? It would've been fine for the feature to be unsynced only but it doesn't limit it this way and also in unsynced you don't really need versioned archives.
Contributor guide
Research direction
Search the archive metadata handling for `modinfo.replaces` and trace where this field is parsed, stored, and consumed. Confirm all references and archive-related tests or validation paths before removing it; done means the obsolete field is no longer used and the relevant checks still pass.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- game-dev
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100