Details
Diff Detail
- Lint
No Lint Coverage - Unit
No Test Coverage - Build Status
Buildable 26570 Build 24958: arc lint + arc unit
Event Timeline
I like it. But it still comes down to a bikeshed/opinion. Anyway it's a good guidance.
Ok. So, my concern here is that (a) I don't know what an "extra dependency" looks like, and (b) sometimes the configuration that would benefit the most people is the minimal or maximal set.
Maybe try:
When a port is capable of building with a variety of dependencies, the correct dependency list is the one that provides the most benefit to the most users. The goal should not be the minimum set that lets the port build, nor should it be the set that includes every possible dependency. Allow the "right" set to change over time as users provide feedback about features they need or features they never use.
This sounds fine, but what we're really talking about here is dependencies which enable optional features. As an example, a port may have a pulseaudio option which enables it to support pulseaudio output and is of interest to some users, but probably not many, so that might be off by default unless a number of people ask for it. Or a port may support http but not https unless an optional dependency on an ssl support package is enabled. Most users would probably expect to be able to make https requests when they can make http requests, so that would be something that would benefit most users to be on by default. Let's find the right wording and get this committed.
Ah okay. I thought this was separate from OPTIONS.Then maybe:
The right set of OPTIONS is the one that provides the most benefit to the most users. The goal should not necessarily be the minimum that lets the port build, nor should it necessarily be enabling every possible option. The same holds true for ports that are capable of building with a variety of dependencies. Allow the “right” set to change over time as users provide feedback about features they need or features they never use.”
It may be OPTIONS, it may not be. Doesn't really matter. The point is the default packages should most usable for most users, not as minimal as possible or just everything.
The committed version is a little weird. Sometimes the minimal dependency set is the ideal set, so saying it should never be it is misleading. Also, the last sentence isn't a sentence.