> The idea of promotion from private to higher seems somewhat dubious to
> me.
>
> If the property being established is in fact something that's common
> -- either defined by the underlying hardware ("transmit power") or
> some defacto or de jure standards -- then we shouldn't be creating any
> private properties for it. Doing so would be a mistake for the same
> reason that having each driver randomly and independently defining
> driver.conf variables was a mistake. It ends up with chaos.
>
> If they're to be respected at all, private properties have to be weird
> and local. Anything else deserves a higher commitment and a more
> thorough review.
>
> Thus, I don't think it makes sense to worry much about promotion or
> the disruption it would cause. It _does_ make sense, though, to make
> sure that users can be aware that they're touching bits that might rot
> over time. Naming (as in the link_* scheme) could be part of that.
That makes perfect sense in a perfect world. But the mistakes you
mentioned can and will be made again. We provide an easier way of
creating/getting/setting properties, easier means accessible, accessible
means more people with less architectural insight are going to
contribute. You and Peter aren't going to look over each of their
shoulders, unfortunately :) If the only mechanism of enforcing your
design is human discipline, it can't be trusted.
-Artem