Why I probably will not contribute to Home Assistant (any more)

Why I probably will not contribute to Home Assistant (any more). My story:

  • I have found a bug in Homematic component YAML configuration

  • I found solution that works for me within of 1-2 hours, but it was rather a workaround than a correct solution

  • I spend another 6-7 hours to find correct solution that can be accepted as a PR (it took lot of time for me since I am not that deep in HA python development and first had to understand some basic things)

  • I submitted a small pull request to home assistant core (just 2 lines of code, Link to PR)

  • the pull request was declined because of ADR-0010 rule (ADR-0010) that says “Changes to existing YAML configuration for these same existing integrations, will no longer be accepted.”

Unfortunately I dont have enough knowledge for now to do such a big change as requested by the PR reviewer (refactor the whole component to use config flow). This rule generally is ok for me, but there must be exceptions for small bugfixes. I see no reason not to do so. Why not to accept small bugfixes for yaml even if is deprecated in this context. It is completely demotivating if PR is declined without really good reason except strongly following the rule that is, in my opinion, not really well-thought-out.

After that, for me, it is easier to do changes I need locally than spend time and, at the end, ending with a declined PR.

2 Likes

Speaking as a maintainer of a popular open source project (but not Home Assistant or any related projects) I can see both points of view here. While I may or may not have made the same choice as the HA team in this case there are cases where I’ve had to make a tradeoff between end user experience and contributor experience. It’s never easy to make life harder on contributors for the sake of end users (we’re contributors ourselves after all,) but often it’s necessary.

As an end user, would you prefer to have bugs fixed in the feature you need, even in an deprecated feature, or would you prefer to wait maybe month or years till tis feature will be refactored and do workarounds for yourself meanwile?

Clearly the features I use are the most important and bugs should always be fixed in those. :slight_smile: I hear you, it sucks be on the losing side of a tradeoff. We can only hope that the HA maintainers have made the best tradeoff they can, and if it turns out they haven’t we can hope they revisit the decision.