-
Notifications
You must be signed in to change notification settings - Fork 1
Description
I'll probably write up something for this, but we should come to a consensus on how these ought to be standardized, and it will be easier to have the discussion preserved on github.
Terkala mentioned in syndicate-ss14/macrocosm#5 that it wasn't worth namespacing Content.Server/_MACRO/Salvage/SalvageRuinGenerator.cs as a _MACRO file, because:
it would lead to times when people try to import the salvage magnet system to something else, and they'd end up only half-importing the stuff the magnet needs to work and breaking things.'
Similarly, the accent trait components and systems in syndicate-ss14/macrocosm#3 are namespaced as namespace Content.Server.Speech.naaa rather than namespace Content.Server._MACRO.Speech.naaa. The non-speech systems are namespaced with _MACRO.
I have no strong opinion on what the best option here is, personally. I like the idea of namespacing all our files with _MACRO for consistency's sake, but if doing so would have a noticeable impact on development as terkala mentioned, it might need some clarification as to how and why we namespace files with _MACRO or not.
Tacking on organization rules about folders and such because I feel it is a similar enough conversation. My big question there is whether we want to follow the upstream folder conventions (pictured below) or use a single folder to package each major feature- for example, below is PR 3's current (upstream) folder structure:
An alternative to this would be having all the apid files in an 'apid' folder, all the decapoid files in a 'decapoid' folder, which may then contain the conventional upstream subfolders (or not...?)
Would love to hear thoughts on this from all corners. Will give this issue a little while for discussion and then open a PR when enough people weigh in. PR will subsequently go up for review / voting as normal.