hass-core/CODEOWNERS
Line: 7: incorrect codeowner organization: home-assistant/core Line: 7: no users/groups matched Line: 8: incorrect codeowner organization: home-assistant/core Line: 8: no users/groups matched Line: 9: incorrect codeowner organization: home-assistant/core Line: 9: no users/groups matched Line: 10: incorrect codeowner organization: home-assistant/core Line: 10: no users/groups matched Line: 13: incorrect codeowner user: kellerza Line: 13: no users/groups matched Line: 16: incorrect codeowner user: shred86 Line: 16: no users/groups matched Line: 17: incorrect codeowner user: atmurray Line: 17: no users/groups matched Line: 18: incorrect codeowner user: frenck Line: 18: no users/groups matched Line: 19: incorrect codeowner user: ispysoftware Line: 19: no users/groups matched Line: 20: incorrect codeowner user: bieniu Line: 20: no users/groups matched Line: 21: incorrect codeowner user: bachya Line: 21: no users/groups matched Line: 22: incorrect codeowner user: ajschmidt8 Line: 22: no users/groups matched Line: 23: incorrect codeowner organization: home-assistant/cloud Line: 23: incorrect codeowner user: ochlocracy Line: 23: no users/groups matched Line: 24: incorrect codeowner user: gcampax Line: 24: incorrect codeowner user: balloob Line: 24: no users/groups matched Line: 25: incorrect codeowner user: fabaff Line: 25: no users/groups matched Line: 26: incorrect codeowner user: robbiet480 Line: 26: no users/groups matched Line: 27: incorrect codeowner user: danielhiversen Line: 27: no users/groups matched Line: 28: incorrect codeowner user: bachya Line: 28: no users/groups matched Line: 29: incorrect codeowner user: pnbruckner Line: 29: no users/groups matched Line: 30: incorrect codeowner user: JeffLIrion Line: 30: no users/groups matched Line: 31: incorrect codeowner user: bachya Line: 31: no users/groups matched Line: 32: incorrect codeowner organization: home-assistant/core Line: 32: no users/groups matched Line: 33: incorrect codeowner user: caronc Line: 33: no users/groups matched Line: 34: incorrect codeowner user: PhilRW Line: 34: no users/groups matched Line: 35: incorrect codeowner user: elupus Line: 35: no users/groups matched Line: 36: incorrect codeowner user: fabaff Line: 36: no users/groups matched Line: 37: incorrect codeowner user: fabaff Line: 37: no users/groups matched Line: 38: incorrect codeowner user: vanbalken Line: 38: no users/groups matched Line: 39: incorrect codeowner user: kennedyshead Line: 39: no users/groups matched Line: 40: incorrect codeowner user: MatsNL Line: 40: no users/groups matched Line: 41: incorrect codeowner user: mtdcr Line: 41: no users/groups matched Line: 42: incorrect codeowner user: baqs Line: 42: no users/groups matched Line: 43: incorrect codeowner user: bdraco Line: 43: no users/groups matched Line: 44: incorrect codeowner user: davet2001 Line: 44: no users/groups matched Line: 45: incorrect codeowner organization: home-assistant/core Line: 45: no users/groups matched Line: 46: incorrect codeowner organization: home-assistant/core Line: 46: no users/groups matched Line: 47: incorrect codeowner user: pattyland Line: 47: no users/groups matched Line: 48: incorrect codeowner user: timvancann Line: 48: no users/groups matched Line: 49: incorrect codeowner user: ahayworth Line: 49: incorrect codeowner user: danielsjf Line: 49: no users/groups matched Line: 50: incorrect codeowner user: awarecan Line: 50: incorrect codeowner user: robbiet480 Line: 50: no users/groups matched Line: 51: incorrect codeowner user: Kane610 Line: 51: no users/groups matched Line: 52: incorrect codeowner user: eavanvalkenburg Line: 52: no users/groups matched Line: 53: incorrect codeowner user: hfurubotten Line: 53: no users/groups matched Line: 54: incorrect codeowner user: alemuro Line: 54: no users/groups matched Line: 55: incorrect codeowner user: fabaff Line: 55: no users/groups matched Line: 56: incorrect codeowner user: UgaitzEtxebarria Line: 56: no users/groups matched Line: 57: incorrect codeowner user: gadgetmobile Line: 57: no users/groups matched Line: 58: incorrect codeowner user: fronzbot Line: 58: no users/groups matched Line: 59: incorrect codeowner user: belidzs Line: 59: no users/groups matched Line: 60: incorrect codeowner user: gerard33 Line: 60: no users/groups matched Line: 61: incorrect codeowner user: maddenp Line: 61: no users/groups matched Line: 62: incorrect codeowner user: robbiet480 Line: 62: incorrect codeowner user: bieniu Line: 62: no users/groups matched Line: 63: incorrect codeowner user: danielhiversen Line: 63: incorrect codeowner user: felipediel Line: 63: no users/groups matched Line: 64: incorrect codeowner user: bieniu Line: 64: no users/groups matched Line: 65: incorrect codeowner user: eavanvalkenburg Line: 65: no users/groups matched Line: 66: incorrect codeowner user: liudger Line: 66: no users/groups matched Line: 67: incorrect codeowner user: jxwolstenholme Line: 67: no users/groups matched Line: 68: incorrect codeowner user: mjj4791 Line: 68: incorrect codeowner user: ties Line: 68: no users/groups matched Line: 69: incorrect codeowner user: emontnemery Line: 69: no users/groups matched Line: 70: incorrect codeowner user: Cereal2nd Line: 70: incorrect codeowner user: jjlawren Line: 70: no users/groups matched Line: 71: incorrect codeowner user: braam Line: 71: no users/groups matched Line: 72: incorrect codeowner user: fbradyirl Line: 72: no users/groups matched Line: 73: incorrect codeowner user: fbradyirl Line: 73: no users/groups matched Line: 74: incorrect codeowner user: fbradyirl Line: 74: no users/groups matched Line: 75: incorrect codeowner organization: home-assistant/cloud Line: 75: no users/groups matched Line: 76: incorrect codeowner user: ludeeus Line: 76: no users/groups matched Line: 77: incorrect codeowner user: michaelarnauts Line: 77: no users/groups matched Line: 78: incorrect codeowner organization: home-assistant/core Line: 78: no users/groups matched Line: 79: incorrect codeowner organization: home-assistant/core Line: 79: no users/groups matched Line: 80: incorrect codeowner organization: home-assistant/core Line: 80: no users/groups matched Line: 81: incorrect codeowner user: OnFreund Line: 81: no users/groups matched Line: 82: incorrect codeowner organization: home_assistant/core Line: 82: no users/groups matched Line: 83: incorrect codeowner user: fabaff Line: 83: no users/groups matched Line: 84: incorrect codeowner organization: home-assistant/core Line: 84: no users/groups matched Line: 85: incorrect codeowner user: fabaff Line: 85: no users/groups matched Line: 86: incorrect codeowner user: fabaff Line: 86: no users/groups matched Line: 87: incorrect codeowner user: fredrike Line: 87: no users/groups matched Line: 88: incorrect codeowner user: fabaff Line: 88: no users/groups matched Line: 89: incorrect codeowner user: Kane610 Line: 89: no users/groups matched Line: 90: incorrect codeowner user: bollewolle Line: 90: incorrect codeowner user: Emilv2 Line: 90: no users/groups matched Line: 91: incorrect codeowner organization: home-assistant/core Line: 91: no users/groups matched Line: 92: incorrect codeowner user: scarface-4711 Line: 92: incorrect codeowner user: starkillerOG Line: 92: no users/groups matched Line: 93: incorrect codeowner user: afaucogney Line: 93: no users/groups matched Line: 94: incorrect codeowner organization: home-assistant/core Line: 94: no users/groups matched Line: 95: incorrect codeowner user: 2Fake Line: 95: incorrect codeowner user: Shutgun Line: 95: no users/groups matched Line: 96: incorrect codeowner user: fabaff Line: 96: no users/groups matched Line: 97: incorrect codeowner user: ctalkington Line: 97: no users/groups matched Line: 98: incorrect codeowner user: thibmaek Line: 98: no users/groups matched Line: 99: incorrect codeowner user: oblogic7 Line: 99: incorrect codeowner user: bdraco Line: 99: no users/groups matched Line: 100: incorrect codeowner user: depl0y Line: 100: no users/groups matched Line: 101: incorrect codeowner user: bieniu Line: 101: no users/groups matched Line: 102: incorrect codeowner user: fabaff Line: 102: no users/groups matched Line: 103: incorrect codeowner user: ziv1234 Line: 103: no users/groups matched Line: 104: incorrect codeowner user: etheralm Line: 104: no users/groups matched Line: 105: incorrect codeowner user: marthoc Line: 105: no users/groups matched Line: 106: incorrect codeowner user: OverloadUT Line: 106: no users/groups matched Line: 107: incorrect codeowner user: mtdcr Line: 107: no users/groups matched Line: 108: incorrect codeowner user: jeroenterheerdt Line: 108: no users/groups matched Line: 109: incorrect codeowner user: mezz64 Line: 109: no users/groups matched Line: 110: incorrect codeowner user: frenck Line: 110: no users/groups matched Line: 111: incorrect codeowner user: bdraco Line: 111: no users/groups matched Line: 112: incorrect codeowner user: majuss Line: 112: no users/groups matched Line: 113: incorrect codeowner user: mezz64 Line: 113: no users/groups matched Line: 114: incorrect codeowner user: borpin Line: 114: no users/groups matched Line: 115: incorrect codeowner user: fbradyirl Line: 115: no users/groups matched Line: 116: incorrect codeowner user: bdurrer Line: 116: no users/groups matched Line: 117: incorrect codeowner user: hfurubotten Line: 117: no users/groups matched Line: 118: incorrect codeowner user: michaeldavie Line: 118: no users/groups matched Line: 119: incorrect codeowner user: ttroy50 Line: 119: no users/groups matched Line: 120: incorrect codeowner user: ThaStealth Line: 120: no users/groups matched Line: 121: incorrect codeowner user: rytilahti Line: 121: no users/groups matched Line: 122: incorrect codeowner user: OttoWinter Line: 122: no users/groups matched Line: 123: incorrect codeowner user: TheLastProject Line: 123: no users/groups matched Line: 124: incorrect codeowner user: zxdavb Line: 124: no users/groups matched Line: 125: incorrect codeowner user: baqs Line: 125: no users/groups matched Line: 126: incorrect codeowner user: rohankapoorcom Line: 126: no users/groups matched Line: 127: incorrect codeowner user: fabaff Line: 127: no users/groups matched Line: 128: incorrect codeowner user: dgomes Line: 128: no users/groups matched Line: 129: incorrect codeowner user: robbiet480 Line: 129: no users/groups matched Line: 130: incorrect codeowner user: fabaff Line: 130: no users/groups matched Line: 131: incorrect codeowner user: ZephireNZ Line: 131: no users/groups matched Line: 132: incorrect codeowner user: fabaff Line: 132: no users/groups matched Line: 133: incorrect codeowner user: ChrisMandich Line: 133: incorrect codeowner user: bdraco Line: 133: no users/groups matched Line: 134: incorrect codeowner user: bachya Line: 134: no users/groups matched Line: 135: incorrect codeowner user: uvjustin Line: 135: no users/groups matched Line: 136: incorrect codeowner user: kifeo Line: 136: no users/groups matched Line: 137: incorrect codeowner user: kimfrellsen Line: 137: no users/groups matched Line: 138: incorrect codeowner user: skgsergio Line: 138: no users/groups matched Line: 139: incorrect codeowner user: robbiet480 Line: 139: no users/groups matched Line: 140: incorrect codeowner user: snoof85 Line: 140: incorrect codeowner user: Quentame Line: 140: no users/groups matched Line: 141: incorrect codeowner user: nielstron Line: 141: no users/groups matched Line: 142: incorrect codeowner organization: home-assistant/frontend Line: 142: no users/groups matched Line: 143: incorrect codeowner user: cyberjunky Line: 143: no users/groups matched Line: 144: incorrect codeowner user: exxamalte Line: 144: no users/groups matched Line: 145: incorrect codeowner user: zxdavb Line: 145: no users/groups matched Line: 146: incorrect codeowner user: exxamalte Line: 146: no users/groups matched Line: 147: incorrect codeowner user: exxamalte Line: 147: no users/groups matched Line: 148: incorrect codeowner user: exxamalte Line: 148: no users/groups matched Line: 149: incorrect codeowner user: bieniu Line: 149: no users/groups matched Line: 150: incorrect codeowner user: fabaff Line: 150: no users/groups matched Line: 151: incorrect codeowner user: fabaff Line: 151: incorrect codeowner user: engrbm87 Line: 151: no users/groups matched Line: 152: incorrect codeowner user: robbiet480 Line: 152: no users/groups matched Line: 153: incorrect codeowner user: vangorra Line: 153: no users/groups matched Line: 154: incorrect codeowner organization: home-assistant/cloud Line: 154: no users/groups matched Line: 155: incorrect codeowner user: lufton Line: 155: no users/groups matched Line: 156: incorrect codeowner user: awarecan Line: 156: no users/groups matched Line: 157: incorrect codeowner user: robbiet480 Line: 157: no users/groups matched Line: 158: incorrect codeowner user: fabaff Line: 158: no users/groups matched Line: 159: incorrect codeowner user: jkeljo Line: 159: no users/groups matched Line: 160: incorrect codeowner user: bdraco Line: 160: no users/groups matched Line: 161: incorrect codeowner organization: home-assistant/core Line: 161: no users/groups matched Line: 162: incorrect codeowner user: indykoning Line: 162: no users/groups matched Line: 163: incorrect codeowner user: robbiet480 Line: 163: no users/groups matched Line: 164: incorrect codeowner user: bachya Line: 164: no users/groups matched Line: 165: incorrect codeowner user: ehendrix23 Line: 165: incorrect codeowner user: bramkragten Line: 165: incorrect codeowner user: bdraco Line: 165: no users/groups matched Line: 166: incorrect codeowner organization: home-assistant/hass-io Line: 166: no users/groups matched Line: 167: incorrect codeowner user: andylockran Line: 167: no users/groups matched Line: 168: incorrect codeowner user: andrewsayre Line: 168: no users/groups matched Line: 169: incorrect codeowner user: eifinger Line: 169: no users/groups matched Line: 170: incorrect codeowner user: mezz64 Line: 170: no users/groups matched Line: 171: incorrect codeowner user: fbradyirl Line: 171: no users/groups matched Line: 172: incorrect codeowner user: bannhead Line: 172: no users/groups matched Line: 173: incorrect codeowner organization: home-assistant/core Line: 173: no users/groups matched Line: 174: incorrect codeowner user: Rendili Line: 174: incorrect codeowner user: KJonline Line: 174: no users/groups matched Line: 175: incorrect codeowner user: DavidMStraub Line: 175: no users/groups matched Line: 176: incorrect codeowner organization: home-assistant/core Line: 176: no users/groups matched Line: 177: incorrect codeowner user: bdraco Line: 177: no users/groups matched Line: 178: incorrect codeowner user: Jc2k Line: 178: no users/groups matched Line: 179: incorrect codeowner user: pvizeli Line: 179: incorrect codeowner user: danielperna84 Line: 179: no users/groups matched Line: 180: incorrect codeowner user: SukramJ Line: 180: no users/groups matched Line: 181: incorrect codeowner user: zxdavb Line: 181: no users/groups matched Line: 182: incorrect codeowner user: robbiet480 Line: 182: no users/groups matched Line: 183: incorrect codeowner organization: home-assistant/core Line: 183: no users/groups matched Line: 184: incorrect codeowner user: scop Line: 184: incorrect codeowner user: fphammerle Line: 184: no users/groups matched Line: 185: incorrect codeowner user: abmantis Line: 185: no users/groups matched Line: 186: incorrect codeowner user: balloob Line: 186: no users/groups matched Line: 187: incorrect codeowner user: bdraco Line: 187: no users/groups matched Line: 188: incorrect codeowner user: vigonotion Line: 188: no users/groups matched Line: 189: incorrect codeowner user: lewei50 Line: 189: no users/groups matched Line: 190: incorrect codeowner user: flz Line: 190: no users/groups matched Line: 191: incorrect codeowner user: Quentame Line: 191: no users/groups matched Line: 192: incorrect codeowner user: exxamalte Line: 192: no users/groups matched Line: 193: incorrect codeowner user: zxdavb Line: 193: no users/groups matched Line: 194: incorrect codeowner user: fabaff Line: 194: no users/groups matched Line: 195: incorrect codeowner organization: home-assistant/core Line: 195: no users/groups matched Line: 196: incorrect codeowner organization: home-assistant/core Line: 196: no users/groups matched Line: 197: incorrect codeowner organization: home-assistant/core Line: 197: no users/groups matched Line: 198: incorrect codeowner organization: home-assistant/core Line: 198: no users/groups matched Line: 199: incorrect codeowner organization: home-assistant/core Line: 199: no users/groups matched Line: 200: incorrect codeowner user: teharris1 Line: 200: no users/groups matched Line: 201: incorrect codeowner user: dgomes Line: 201: no users/groups matched Line: 202: incorrect codeowner organization: home-assistant/core Line: 202: no users/groups matched Line: 203: incorrect codeowner user: jnimmo Line: 203: no users/groups matched Line: 204: incorrect codeowner user: robbiet480 Line: 204: no users/groups matched Line: 205: incorrect codeowner user: rohankapoorcom Line: 205: no users/groups matched Line: 206: incorrect codeowner user: dgomes Line: 206: incorrect codeowner user: abmantis Line: 206: no users/groups matched Line: 207: incorrect codeowner user: ctalkington Line: 207: no users/groups matched Line: 208: incorrect codeowner user: bachya Line: 208: no users/groups matched Line: 209: incorrect codeowner user: ttroy50 Line: 209: no users/groups matched Line: 210: incorrect codeowner user: engrbm87 Line: 210: no users/groups matched Line: 211: incorrect codeowner user: bdraco Line: 211: incorrect codeowner user: shbatm Line: 211: no users/groups matched Line: 212: incorrect codeowner user: Swamp-Ig Line: 212: no users/groups matched Line: 213: incorrect codeowner user: tsvi Line: 213: no users/groups matched Line: 214: incorrect codeowner user: jesserockz Line: 214: no users/groups matched Line: 215: incorrect codeowner user: Michsior14 Line: 215: no users/groups matched Line: 216: incorrect codeowner user: dannerph Line: 216: no users/groups matched Line: 217: incorrect codeowner user: foxel Line: 217: no users/groups matched Line: 218: incorrect codeowner user: basnijholt Line: 218: no users/groups matched Line: 219: incorrect codeowner user: bendavid Line: 219: no users/groups matched Line: 220: incorrect codeowner user: Julius2342 Line: 220: no users/groups matched Line: 221: incorrect codeowner user: armills Line: 221: no users/groups matched Line: 222: incorrect codeowner user: heythisisnate Line: 222: incorrect codeowner user: kit-klein Line: 222: no users/groups matched Line: 223: incorrect codeowner user: robbiet480 Line: 223: no users/groups matched Line: 224: incorrect codeowner user: ludeeus Line: 224: no users/groups matched Line: 225: incorrect codeowner user: alengwenus Line: 225: no users/groups matched Line: 226: incorrect codeowner user: pnbruckner Line: 226: no users/groups matched Line: 227: incorrect codeowner user: Quentame Line: 227: no users/groups matched Line: 228: incorrect codeowner user: fabaff Line: 228: no users/groups matched Line: 229: incorrect codeowner user: issacg Line: 229: no users/groups matched Line: 230: incorrect codeowner organization: home-assistant/core Line: 230: no users/groups matched Line: 231: incorrect codeowner user: evanjd Line: 231: no users/groups matched Line: 232: incorrect codeowner organization: home-assistant/frontend Line: 232: no users/groups matched Line: 233: incorrect codeowner user: fbradyirl Line: 233: incorrect codeowner user: mzdrale Line: 233: no users/groups matched Line: 234: incorrect codeowner user: fabaff Line: 234: no users/groups matched Line: 235: incorrect codeowner user: majuss Line: 235: no users/groups matched Line: 236: incorrect codeowner user: JonGilmore Line: 236: no users/groups matched Line: 237: incorrect codeowner user: swails Line: 237: no users/groups matched Line: 238: incorrect codeowner user: fabaff Line: 238: no users/groups matched Line: 239: incorrect codeowner user: tinloaf Line: 239: no users/groups matched Line: 240: incorrect codeowner user: jardiamj Line: 240: no users/groups matched Line: 241: incorrect codeowner user: dgomes Line: 241: no users/groups matched Line: 242: incorrect codeowner user: vilppuvuorinen Line: 242: no users/groups matched Line: 243: incorrect codeowner user: kennedyshead Line: 243: no users/groups matched Line: 244: incorrect codeowner user: danielhiversen Line: 244: no users/groups matched Line: 245: incorrect codeowner user: victorcerutti Line: 245: incorrect codeowner user: oncleben31 Line: 245: incorrect codeowner user: Quentame Line: 245: no users/groups matched Line: 246: incorrect codeowner user: rolfberkenbosch Line: 246: no users/groups matched Line: 247: incorrect codeowner user: MrHarcombe Line: 247: no users/groups matched Line: 248: incorrect codeowner user: danielhiversen Line: 248: incorrect codeowner user: ChristianKuehnel Line: 248: no users/groups matched Line: 249: incorrect codeowner user: engrbm87 Line: 249: no users/groups matched Line: 250: incorrect codeowner user: danielhiversen Line: 250: no users/groups matched Line: 251: incorrect codeowner user: fabaff Line: 251: no users/groups matched Line: 252: incorrect codeowner user: elmurato Line: 252: no users/groups matched Line: 253: incorrect codeowner user: tkislan Line: 253: no users/groups matched Line: 254: incorrect codeowner user: robbiet480 Line: 254: no users/groups matched Line: 255: incorrect codeowner user: adamchengtkc Line: 255: incorrect codeowner user: janiversen Line: 255: no users/groups matched Line: 256: incorrect codeowner user: etsinko Line: 256: incorrect codeowner user: OnFreund Line: 256: no users/groups matched Line: 257: incorrect codeowner user: fabaff Line: 257: no users/groups matched Line: 258: incorrect codeowner user: fabaff Line: 258: no users/groups matched Line: 259: incorrect codeowner organization: home-assistant/core Line: 259: incorrect codeowner user: emontnemery Line: 259: no users/groups matched Line: 260: incorrect codeowner user: peroyvind Line: 260: no users/groups matched Line: 261: incorrect codeowner user: bdraco Line: 261: no users/groups matched Line: 262: incorrect codeowner user: MartinHjelmare Line: 262: no users/groups matched Line: 263: incorrect codeowner user: fabaff Line: 263: no users/groups matched Line: 264: incorrect codeowner user: dshokouhi Line: 264: incorrect codeowner user: Santobert Line: 264: no users/groups matched Line: 265: incorrect codeowner user: YarmoM Line: 265: no users/groups matched Line: 266: incorrect codeowner user: pschmitt Line: 266: no users/groups matched Line: 267: incorrect codeowner user: nickw444 Line: 267: no users/groups matched Line: 268: incorrect codeowner user: awarecan Line: 268: no users/groups matched Line: 269: incorrect codeowner user: cgtobi Line: 269: no users/groups matched Line: 270: incorrect codeowner user: fabaff Line: 270: no users/groups matched Line: 271: incorrect codeowner user: ryannazaretian Line: 271: incorrect codeowner user: bdraco Line: 271: no users/groups matched Line: 272: incorrect codeowner user: vividboarder Line: 272: no users/groups matched Line: 273: incorrect codeowner user: meichthys Line: 273: no users/groups matched Line: 274: incorrect codeowner user: hfurubotten Line: 274: no users/groups matched Line: 275: incorrect codeowner user: filcole Line: 275: no users/groups matched Line: 276: incorrect codeowner user: thibmaek Line: 276: no users/groups matched Line: 277: incorrect codeowner user: fabaff Line: 277: no users/groups matched Line: 278: incorrect codeowner organization: home-assistant/core Line: 278: no users/groups matched Line: 279: incorrect codeowner user: matrozov Line: 279: incorrect codeowner user: papajojo Line: 279: no users/groups matched Line: 280: incorrect codeowner user: bachya Line: 280: no users/groups matched Line: 281: incorrect codeowner user: nickw444 Line: 281: no users/groups matched Line: 282: incorrect codeowner user: exxamalte Line: 282: no users/groups matched Line: 283: incorrect codeowner user: bdraco Line: 283: no users/groups matched Line: 284: incorrect codeowner user: pvizeli Line: 284: no users/groups matched Line: 285: incorrect codeowner user: clssn Line: 285: no users/groups matched Line: 286: incorrect codeowner user: bdraco Line: 286: no users/groups matched Line: 287: incorrect codeowner user: MatthewFlamm Line: 287: no users/groups matched Line: 288: incorrect codeowner user: chriscla Line: 288: no users/groups matched Line: 289: incorrect codeowner user: dshokouhi Line: 289: no users/groups matched Line: 290: incorrect codeowner user: robbiet480 Line: 290: no users/groups matched Line: 291: incorrect codeowner user: larssont Line: 291: no users/groups matched Line: 292: incorrect codeowner organization: home-assistant/core Line: 292: no users/groups matched Line: 293: incorrect codeowner user: garbled1 Line: 293: no users/groups matched Line: 294: incorrect codeowner user: hunterjm Line: 294: no users/groups matched Line: 295: incorrect codeowner user: misialq Line: 295: no users/groups matched Line: 296: incorrect codeowner user: danielhiversen Line: 296: no users/groups matched Line: 297: incorrect codeowner user: mvn23 Line: 297: no users/groups matched Line: 298: incorrect codeowner user: bachya Line: 298: no users/groups matched Line: 299: incorrect codeowner user: fabaff Line: 299: no users/groups matched Line: 300: incorrect codeowner user: mtreinish Line: 300: no users/groups matched Line: 301: incorrect codeowner user: pascallj Line: 301: no users/groups matched Line: 302: incorrect codeowner user: bvlaicu Line: 302: no users/groups matched Line: 303: incorrect codeowner user: cgarwood Line: 303: incorrect codeowner user: marcelveldt Line: 303: incorrect codeowner user: MartinHjelmare Line: 303: no users/groups matched Line: 304: incorrect codeowner user: joogps Line: 304: no users/groups matched Line: 305: incorrect codeowner organization: home-assistant/frontend Line: 305: no users/groups matched Line: 306: incorrect codeowner organization: home-assistant/frontend Line: 306: no users/groups matched Line: 307: incorrect codeowner user: Shulyaka Line: 307: no users/groups matched Line: 308: incorrect codeowner organization: home-assistant/core Line: 308: no users/groups matched Line: 309: incorrect codeowner user: elupus Line: 309: no users/groups matched Line: 310: incorrect codeowner user: antonverburg Line: 310: no users/groups matched Line: 311: incorrect codeowner user: fabaff Line: 311: incorrect codeowner user: johnluetke Line: 311: incorrect codeowner user: shenxn Line: 311: no users/groups matched Line: 312: incorrect codeowner user: trekky12 Line: 312: no users/groups matched Line: 313: incorrect codeowner user: JohNan Line: 313: no users/groups matched Line: 314: incorrect codeowner user: ChristianKuehnel Line: 314: no users/groups matched Line: 315: incorrect codeowner user: jjlawren Line: 315: no users/groups matched Line: 316: incorrect codeowner user: CoMPaTech Line: 316: incorrect codeowner user: bouwew Line: 316: no users/groups matched Line: 317: incorrect codeowner user: ColinHarrington Line: 317: no users/groups matched Line: 318: incorrect codeowner user: fredrike Line: 318: no users/groups matched Line: 319: incorrect codeowner user: bdraco Line: 319: incorrect codeowner user: jrester Line: 319: no users/groups matched Line: 320: incorrect codeowner user: knyar Line: 320: no users/groups matched Line: 321: incorrect codeowner user: k4ds3 Line: 321: incorrect codeowner user: jhollowe Line: 321: no users/groups matched Line: 322: incorrect codeowner user: ktnrg45 Line: 322: no users/groups matched Line: 323: incorrect codeowner user: swamp-ig Line: 323: no users/groups matched Line: 324: incorrect codeowner user: dgomes Line: 324: no users/groups matched Line: 325: incorrect codeowner user: fabaff Line: 325: no users/groups matched Line: 326: incorrect codeowner user: azogue Line: 326: no users/groups matched Line: 327: incorrect codeowner user: exxamalte Line: 327: no users/groups matched Line: 328: incorrect codeowner user: colinodell Line: 328: no users/groups matched Line: 329: incorrect codeowner user: cisasteelersfan Line: 329: no users/groups matched Line: 330: incorrect codeowner user: oblogic7 Line: 330: no users/groups matched Line: 331: incorrect codeowner user: kellerza Line: 331: no users/groups matched Line: 332: incorrect codeowner user: bdraco Line: 332: no users/groups matched Line: 333: incorrect codeowner user: konikvranik Line: 333: no users/groups matched Line: 334: incorrect codeowner user: vanstinator Line: 334: no users/groups matched Line: 335: incorrect codeowner user: gtdiehl Line: 335: incorrect codeowner user: jcalbert Line: 335: no users/groups matched Line: 336: incorrect codeowner user: bachya Line: 336: no users/groups matched Line: 337: incorrect codeowner user: fabaff Line: 337: no users/groups matched Line: 338: incorrect codeowner user: MTrab Line: 338: no users/groups matched Line: 339: incorrect codeowner user: danielhiversen Line: 339: no users/groups matched Line: 340: incorrect codeowner user: balloob Line: 340: no users/groups matched Line: 341: incorrect codeowner user: cgtobi Line: 341: no users/groups matched Line: 342: incorrect codeowner user: ctalkington Line: 342: no users/groups matched Line: 343: incorrect codeowner user: pschmitt Line: 343: incorrect codeowner user: cyr-ius Line: 343: incorrect codeowner user: shenxn Line: 343: no users/groups matched Line: 344: incorrect codeowner organization: home-assistant/core Line: 344: no users/groups matched Line: 345: incorrect codeowner user: fredericvl Line: 345: no users/groups matched Line: 346: incorrect codeowner user: bjornorri Line: 346: no users/groups matched Line: 347: incorrect codeowner user: escoand Line: 347: no users/groups matched Line: 348: incorrect codeowner organization: home-assistant/core Line: 348: no users/groups matched Line: 349: incorrect codeowner user: prairieapps Line: 349: no users/groups matched Line: 350: incorrect codeowner user: fabaff Line: 350: no users/groups matched Line: 351: incorrect codeowner organization: home-assistant/core Line: 351: no users/groups matched Line: 352: incorrect codeowner organization: home-assistant/core Line: 352: no users/groups matched Line: 353: incorrect codeowner user: kbickar Line: 353: no users/groups matched Line: 354: incorrect codeowner user: andrey-git Line: 354: no users/groups matched Line: 355: incorrect codeowner user: dcramer Line: 355: no users/groups matched Line: 356: incorrect codeowner user: fabaff Line: 356: no users/groups matched Line: 357: incorrect codeowner user: fabaff Line: 357: no users/groups matched Line: 358: incorrect codeowner user: bachya Line: 358: no users/groups matched Line: 359: incorrect codeowner organization: home-assistant/core Line: 359: no users/groups matched Line: 360: incorrect codeowner user: fabaff Line: 360: no users/groups matched Line: 361: incorrect codeowner user: fabaff Line: 361: no users/groups matched Line: 362: incorrect codeowner user: robmarkcole Line: 362: no users/groups matched Line: 363: incorrect codeowner user: bbernhard Line: 363: no users/groups matched Line: 364: incorrect codeowner user: bachya Line: 364: no users/groups matched Line: 365: incorrect codeowner user: bendikrb Line: 365: no users/groups matched Line: 366: incorrect codeowner user: jkeljo Line: 366: no users/groups matched Line: 367: incorrect codeowner user: ualex73 Line: 367: no users/groups matched Line: 368: incorrect codeowner user: kellerza Line: 368: no users/groups matched Line: 369: incorrect codeowner user: bsmappee Line: 369: no users/groups matched Line: 370: incorrect codeowner user: outadoc Line: 370: no users/groups matched Line: 371: incorrect codeowner user: andrewsayre Line: 371: no users/groups matched Line: 372: incorrect codeowner user: z0mbieprocess Line: 372: no users/groups matched Line: 373: incorrect codeowner user: ocalvo Line: 373: no users/groups matched Line: 374: incorrect codeowner user: fabaff Line: 374: no users/groups matched Line: 375: incorrect codeowner user: drobtravels Line: 375: incorrect codeowner user: scheric Line: 375: no users/groups matched Line: 376: incorrect codeowner user: Ernst79 Line: 376: no users/groups matched Line: 377: incorrect codeowner user: squishykid Line: 377: no users/groups matched Line: 378: incorrect codeowner user: ratsept Line: 378: no users/groups matched Line: 379: incorrect codeowner user: tetienne Line: 379: no users/groups matched Line: 380: incorrect codeowner user: ctalkington Line: 380: no users/groups matched Line: 381: incorrect codeowner user: rytilahti Line: 381: incorrect codeowner user: shenxn Line: 381: no users/groups matched Line: 382: incorrect codeowner user: fabaff Line: 382: no users/groups matched Line: 383: incorrect codeowner user: rohankapoorcom Line: 383: incorrect codeowner user: engrbm87 Line: 383: no users/groups matched Line: 384: incorrect codeowner user: peternijssen Line: 384: no users/groups matched Line: 385: incorrect codeowner user: frenck Line: 385: no users/groups matched Line: 386: incorrect codeowner user: dgomes Line: 386: no users/groups matched Line: 387: incorrect codeowner user: rajlaud Line: 387: no users/groups matched Line: 388: incorrect codeowner user: anonym-tsk Line: 388: no users/groups matched Line: 389: incorrect codeowner user: fabaff Line: 389: no users/groups matched Line: 390: incorrect codeowner user: fucm Line: 390: no users/groups matched Line: 391: incorrect codeowner user: fwestenberg Line: 391: no users/groups matched Line: 392: incorrect codeowner user: hunterjm Line: 392: no users/groups matched Line: 393: incorrect codeowner user: pvizeli Line: 393: no users/groups matched Line: 394: incorrect codeowner user: ooii Line: 394: no users/groups matched Line: 395: incorrect codeowner user: Swamp-Ig Line: 395: no users/groups matched Line: 396: incorrect codeowner user: mwegrzynek Line: 396: no users/groups matched Line: 397: incorrect codeowner user: benleb Line: 397: no users/groups matched Line: 398: incorrect codeowner user: fabaff Line: 398: no users/groups matched Line: 399: incorrect codeowner user: fabaff Line: 399: no users/groups matched Line: 400: incorrect codeowner user: danielhiversen Line: 400: no users/groups matched Line: 401: incorrect codeowner user: tomerfi Line: 401: no users/groups matched Line: 402: incorrect codeowner user: danielhiversen Line: 402: no users/groups matched Line: 403: incorrect codeowner user: nielstron Line: 403: no users/groups matched Line: 404: incorrect codeowner user: ProtoThis Line: 404: incorrect codeowner user: Quentame Line: 404: no users/groups matched Line: 405: incorrect codeowner user: aerialls Line: 405: no users/groups matched Line: 406: incorrect codeowner user: fabaff Line: 406: no users/groups matched Line: 407: incorrect codeowner user: michaelarnauts Line: 407: incorrect codeowner user: bdraco Line: 407: no users/groups matched Line: 408: incorrect codeowner user: philklei Line: 408: no users/groups matched Line: 409: incorrect codeowner user: guillempages Line: 409: no users/groups matched Line: 410: incorrect codeowner user: ludeeus Line: 410: no users/groups matched Line: 411: incorrect codeowner user: fredrike Line: 411: no users/groups matched Line: 412: incorrect codeowner user: PhracturedBlue Line: 412: incorrect codeowner user: tetienne Line: 412: no users/groups matched Line: 413: incorrect codeowner user: zabuldon Line: 413: incorrect codeowner user: alandtse Line: 413: no users/groups matched Line: 414: incorrect codeowner user: fredrike Line: 414: incorrect codeowner user: mellado Line: 414: no users/groups matched Line: 415: incorrect codeowner user: fabaff Line: 415: no users/groups matched Line: 416: incorrect codeowner user: fabaff Line: 416: no users/groups matched Line: 417: incorrect codeowner user: danielhiversen Line: 417: no users/groups matched Line: 418: incorrect codeowner user: bachya Line: 418: no users/groups matched Line: 419: incorrect codeowner user: fabaff Line: 419: no users/groups matched Line: 420: incorrect codeowner user: alemuro Line: 420: no users/groups matched Line: 421: incorrect codeowner user: boralyl Line: 421: no users/groups matched Line: 422: incorrect codeowner user: frenck Line: 422: no users/groups matched Line: 423: incorrect codeowner user: austinmroczek Line: 423: no users/groups matched Line: 424: incorrect codeowner user: rytilahti Line: 424: no users/groups matched Line: 425: incorrect codeowner user: ludeeus Line: 425: no users/groups matched Line: 426: incorrect codeowner user: ggravlingen Line: 426: no users/groups matched Line: 427: incorrect codeowner user: endor-force Line: 427: no users/groups matched Line: 428: incorrect codeowner user: engrbm87 Line: 428: incorrect codeowner user: JPHutchins Line: 428: no users/groups matched Line: 429: incorrect codeowner user: pvizeli Line: 429: no users/groups matched Line: 430: incorrect codeowner user: ollo69 Line: 430: no users/groups matched Line: 431: incorrect codeowner user: frenck Line: 431: no users/groups matched Line: 432: incorrect codeowner user: robbiet480 Line: 432: no users/groups matched Line: 433: incorrect codeowner user: robbiet480 Line: 433: no users/groups matched Line: 434: incorrect codeowner user: mzdrale Line: 434: no users/groups matched Line: 435: incorrect codeowner user: Kane610 Line: 435: no users/groups matched Line: 436: incorrect codeowner user: florisvdk Line: 436: no users/groups matched Line: 437: incorrect codeowner user: gwww Line: 437: no users/groups matched Line: 438: incorrect codeowner user: pvizeli Line: 438: no users/groups matched Line: 439: incorrect codeowner user: scop Line: 439: no users/groups matched Line: 440: incorrect codeowner organization: home-assistant/core Line: 440: no users/groups matched Line: 441: incorrect codeowner user: StevenLooman Line: 441: no users/groups matched Line: 442: incorrect codeowner user: ludeeus Line: 442: no users/groups matched Line: 443: incorrect codeowner user: exxamalte Line: 443: no users/groups matched Line: 444: incorrect codeowner user: dgomes Line: 444: no users/groups matched Line: 445: incorrect codeowner user: Cereal2nd Line: 445: incorrect codeowner user: brefra Line: 445: no users/groups matched Line: 446: incorrect codeowner user: Julius2342 Line: 446: no users/groups matched Line: 447: incorrect codeowner user: vangorra Line: 447: no users/groups matched Line: 448: incorrect codeowner user: flamm3blemuff1n Line: 448: no users/groups matched Line: 449: incorrect codeowner user: fabaff Line: 449: no users/groups matched Line: 450: incorrect codeowner user: markperdue Line: 450: incorrect codeowner user: webdjoe Line: 450: no users/groups matched Line: 451: incorrect codeowner user: oischinger Line: 451: no users/groups matched Line: 452: incorrect codeowner user: ManneW Line: 452: no users/groups matched Line: 453: incorrect codeowner user: HarlemSquirrel Line: 453: no users/groups matched Line: 454: incorrect codeowner user: raman325 Line: 454: no users/groups matched Line: 455: incorrect codeowner user: rodripf Line: 455: no users/groups matched Line: 456: incorrect codeowner user: andrey-git Line: 456: no users/groups matched Line: 457: incorrect codeowner user: rutkai Line: 457: no users/groups matched Line: 458: incorrect codeowner user: fabaff Line: 458: no users/groups matched Line: 459: incorrect codeowner user: bendavid Line: 459: no users/groups matched Line: 460: incorrect codeowner organization: home-assistant/core Line: 460: no users/groups matched Line: 461: incorrect codeowner user: mampfes Line: 461: no users/groups matched Line: 462: incorrect codeowner user: vangorra Line: 462: no users/groups matched Line: 463: incorrect codeowner user: frenck Line: 463: no users/groups matched Line: 464: incorrect codeowner user: fabaff Line: 464: no users/groups matched Line: 465: incorrect codeowner user: fabaff Line: 465: no users/groups matched Line: 466: incorrect codeowner user: MartinHjelmare Line: 466: no users/groups matched Line: 467: incorrect codeowner user: cisasteelersfan Line: 467: no users/groups matched Line: 468: incorrect codeowner user: danielhiversen Line: 468: incorrect codeowner user: syssi Line: 468: no users/groups matched Line: 469: incorrect codeowner user: rytilahti Line: 469: incorrect codeowner user: syssi Line: 469: no users/groups matched Line: 470: incorrect codeowner user: simse Line: 470: no users/groups matched Line: 471: incorrect codeowner user: fabaff Line: 471: incorrect codeowner user: flowolf Line: 471: no users/groups matched Line: 472: incorrect codeowner user: jalmeroth Line: 472: no users/groups matched Line: 473: incorrect codeowner user: rishatik92 Line: 473: no users/groups matched Line: 474: incorrect codeowner user: rytilahti Line: 474: incorrect codeowner user: zewelor Line: 474: no users/groups matched Line: 475: incorrect codeowner user: lindsaymarkward Line: 475: no users/groups matched Line: 476: incorrect codeowner user: flowolf Line: 476: no users/groups matched Line: 477: incorrect codeowner user: bachya Line: 477: no users/groups matched Line: 478: incorrect codeowner user: danielhiversen Line: 478: no users/groups matched Line: 479: incorrect codeowner user: robbiet480 Line: 479: incorrect codeowner user: Kane610 Line: 479: no users/groups matched Line: 480: incorrect codeowner user: emlove Line: 480: no users/groups matched Line: 481: incorrect codeowner user: dmulcahey Line: 481: incorrect codeowner user: adminiuga Line: 481: no users/groups matched Line: 482: incorrect codeowner organization: home-assistant/core Line: 482: no users/groups matched Line: 483: incorrect codeowner user: rohankapoorcom Line: 483: no users/groups matched Line: 484: incorrect codeowner organization: home-assistant/z-wave Line: 484: no users/groups matched Line: 487: incorrect codeowner user: fabaff Line: 487: no users/groups matched
Andrew Hayworth fed6625324
Refactor / update Awair integration (#34394)
* Refactor / update Awair integration

This commit does a few things, all in service of making the Awair
integration more modern and reliable. Specifically we do the following:

- Update to python_awair 0.1.1
- Begin using config entries / flow for setting up the integration.
  - YAML support is completely removed.
  - The integration now allows adding multiple Awair accounts, should a
    user wish to do so (I found it _very_ useful in development).
- Group various Awair sensors into devices, using the device registry.
- Renames various sensors and treats the "dust" sensor as a particulate sensor.
- Device update rate-limits are no longer dynamically calculated; the
  Awair API now separates rate-limits on a per-device basis.
- Supports sound pressure and illuminance sensors found on some Awair devices.
- We report the "awair index" for certain sensors as part of device_state_attributes.
  The "index" is a subjective measure of whether or not a sensor reading
  is "good" or "bad" (and to what extent). It's a component of the Awair
  score, and it is useful on its own as an input for those who wish to
  do things like "display this color if the value is 'bad'".

This is a breaking change, and requires updates to documentation and a
warning in the README. The breaking changes in detail, are:

- Support for all YAML configuration is removed, and users will need to
  re-add the integration via the UI.
- We no longer support overriding device discovery via manual
  configuration of device UUIDs. This was previously supported because
  the Awair API had severe limits on the device list endpoints; however
  those have since been removed.
- Gen 1 devices no longer show a "dust" sensor; rather we create a PM2.5
  sensor and a PM10 sensor and just keep the values in sync. This better
  reflects the sensor capabilities: it can detect particles in a range
  from 2.5 -> 10, but cannot differentiate between sizes.
- Sensors are renamed as follows:
  - "sensor.devicename_co2"   -> "sensor.devicename_carbon_dioxide"
  - "sensor.devicename_voc"   -> "sensor.devicename_volatile_organic_compounds"
  - "sensor.devicename_score" -> "sensor.devicename_air_quality_index"
  - I've chosen to call the "Awair Score" an "air quality index" sensor,
    because fundamentally the "Awair Score" and other air quality indices
    (such as CAQI) do the same thing: they calculate a value based on a
    variety of other inputs.

Under the hood, the integration has seen some improvements:

- We use the DataUpdateCoordinator class to handle updates, rather than
  rolling our own update class.
- The code no longer tracks availability based on a timestamp returned
  from the Awair service; we assert that if we have received a response
  and the response has data for our device, then we are available (and
  otherwise, not available). We don't need to test the actual Awair API
  so heavily.
- Test coverage has been expanded to handle a variety of products that
  Awair produces, not just the one I happen to own.
- Test coverage no longer concerns itself with testing behavior that is
  now handled by the DataUpdateCoordinator; nor is it concerned with
  ensuring that the overall component sets up and registers properly.
  These are assumed to be well-tested functionaity of the core and not
  things we need to re-test ourselves.

Finally - between library updates and integration updates, this
integration is well-positioned to support future updates. I have a
proof-of-concept patch for device automations, and the underlying
library now supports subclassing authentication (which clears the way
for us to use OAuth authentication for Awair).

* Wrap test fixture in mock_coro

Truthfully I'm not sure why this was passing on my local dev
environment, but I was developing with python 3.8 before. After
installing python 3.7, I was able to reproduce the CI failures and fix
them.

* Fix broken tests after #34901 and/or #34989

* Do not rename sensors so broadly

We're going to keep the sensors named as they were before, pending the
outcome of any decisions around the air_quality component and what names
should be standardized for air-quality-like devices.

If standardized names are selected (which does seem likely), then we
will update this integration to match them - at which point, it would be
a breaking change.

But for now, we'll keep names mostly identical to what users had before.

Notable in this commit is that we generate the entity_id ourselves,
rather than just allowing it to be auto-generated from the name
attribute. This allows us to provide more human friendly names, while
keeping the old format for entity ids. For example, given an Awair
device called "Living Room", we'll generate an entity id of
"sensor.living_room_voc" but show set the name of the device to "Living
Room Volatile organic compounds".

* Support import from config.yaml

We'll create a config entry from config.yaml the first time we're
loaded, and then defer to it from then on.

We ignore all keys other than the access_token, since we no longer need
to deal with per-account rate-limits (rather, everything is per-device
now).

* Add myself to CODEOWNERS

Since I wrote the initial integration, and now this re-write, it feels
appropriate for me to take care of the integration along with `danielsjf`.

* Remove name mangling

* Update homeassistant/components/awair/manifest.json

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/awair/config_flow.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/awair/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/awair/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Address some review feedback

* Set up reauth flow in a job, rather than awaiting

* Remove unnecessary title string

* Remove unnecessary config schema checking

As pointed out in review, because this comes in via import from
`configuration.yaml`, we can rely on the `PLATFORM_SCHEMA` validation instead.

* Fix tests

* Set unique_id appropriately for legacy devices

For users who have had this integration already installed (and who have
updated their home assistant installation sometime in recent history),
we want to ensure that unique_id's are set to the same thing as before,
to facilitate the upgrade process.

To do that, we add an additional property to the `SENSOR_TYPES` dict
(`ATTR_UNIQUE_ID`) which allows us to map modern sensor names from
python_awair to what older versions called them - ie: `humidity` ->
`HUMID`. We then use that value when constructing the unique ID. This
should allow users to upgrade and not lose configuration even if entity
IDs would otherwise change (because we have changed the name format that
generates entity IDs).

One note is that for the gen1 `DUST` sensor, we have to treat it
differently. This integration used to call that a "PM2.5" sensor, but
the unique_id generated would be something like `awair_12345_DUST`. So
we special-case that sensor, and do the same thing. We do not need to
special-case the PM10 sensor for gen1 devices, because we didn't create
a PM10 sensor in the past (we do now, because the "DUST" sensor is
really a hybrid PM2.5/PM10 sensor).

* Patch async_setup_entry for two tests

* Update awair config_flow to require / use an email address for unique_id

Also, only start one re-auth flow.

* Add a few more tests, try to get coverage up.

* Add another test

* Move attribution to device_state_attributes

* Don't require email

* Switch from Union[dict, None] to Optional[dict]

* Use a mock where requested

* Fix missing constant rename

* Use async_create_task

* Bump test coverage a bit for config_flow

* s/CONF_UNIQUE_ID/UNIQUE_ID/g

* Add warning about deprecated platform config

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-06-21 21:46:07 +02:00

487 lines
23 KiB
Text

# This file is generated by script/hassfest/codeowners.py
# People marked here will be automatically requested for a review
# when the code that they own is touched.
# https://github.com/blog/2392-introducing-code-owners
# Home Assistant Core
setup.py @home-assistant/core
homeassistant/*.py @home-assistant/core
homeassistant/helpers/* @home-assistant/core
homeassistant/util/* @home-assistant/core
# Other code
homeassistant/scripts/check_config.py @kellerza
# Integrations
homeassistant/components/abode/* @shred86
homeassistant/components/acmeda/* @atmurray
homeassistant/components/adguard/* @frenck
homeassistant/components/agent_dvr/* @ispysoftware
homeassistant/components/airly/* @bieniu
homeassistant/components/airvisual/* @bachya
homeassistant/components/alarmdecoder/* @ajschmidt8
homeassistant/components/alexa/* @home-assistant/cloud @ochlocracy
homeassistant/components/almond/* @gcampax @balloob
homeassistant/components/alpha_vantage/* @fabaff
homeassistant/components/amazon_polly/* @robbiet480
homeassistant/components/ambiclimate/* @danielhiversen
homeassistant/components/ambient_station/* @bachya
homeassistant/components/amcrest/* @pnbruckner
homeassistant/components/androidtv/* @JeffLIrion
homeassistant/components/apache_kafka/* @bachya
homeassistant/components/api/* @home-assistant/core
homeassistant/components/apprise/* @caronc
homeassistant/components/aprs/* @PhilRW
homeassistant/components/arcam_fmj/* @elupus
homeassistant/components/arduino/* @fabaff
homeassistant/components/arest/* @fabaff
homeassistant/components/arris_tg2492lg/* @vanbalken
homeassistant/components/asuswrt/* @kennedyshead
homeassistant/components/atag/* @MatsNL
homeassistant/components/aten_pe/* @mtdcr
homeassistant/components/atome/* @baqs
homeassistant/components/august/* @bdraco
homeassistant/components/aurora_abb_powerone/* @davet2001
homeassistant/components/auth/* @home-assistant/core
homeassistant/components/automation/* @home-assistant/core
homeassistant/components/avea/* @pattyland
homeassistant/components/avri/* @timvancann
homeassistant/components/awair/* @ahayworth @danielsjf
homeassistant/components/aws/* @awarecan @robbiet480
homeassistant/components/axis/* @Kane610
homeassistant/components/azure_event_hub/* @eavanvalkenburg
homeassistant/components/azure_service_bus/* @hfurubotten
homeassistant/components/beewi_smartclim/* @alemuro
homeassistant/components/bitcoin/* @fabaff
homeassistant/components/bizkaibus/* @UgaitzEtxebarria
homeassistant/components/blebox/* @gadgetmobile
homeassistant/components/blink/* @fronzbot
homeassistant/components/bmp280/* @belidzs
homeassistant/components/bmw_connected_drive/* @gerard33
homeassistant/components/bom/* @maddenp
homeassistant/components/braviatv/* @robbiet480 @bieniu
homeassistant/components/broadlink/* @danielhiversen @felipediel
homeassistant/components/brother/* @bieniu
homeassistant/components/brunt/* @eavanvalkenburg
homeassistant/components/bsblan/* @liudger
homeassistant/components/bt_smarthub/* @jxwolstenholme
homeassistant/components/buienradar/* @mjj4791 @ties
homeassistant/components/cast/* @emontnemery
homeassistant/components/cert_expiry/* @Cereal2nd @jjlawren
homeassistant/components/circuit/* @braam
homeassistant/components/cisco_ios/* @fbradyirl
homeassistant/components/cisco_mobility_express/* @fbradyirl
homeassistant/components/cisco_webex_teams/* @fbradyirl
homeassistant/components/cloud/* @home-assistant/cloud
homeassistant/components/cloudflare/* @ludeeus
homeassistant/components/comfoconnect/* @michaelarnauts
homeassistant/components/config/* @home-assistant/core
homeassistant/components/configurator/* @home-assistant/core
homeassistant/components/conversation/* @home-assistant/core
homeassistant/components/coolmaster/* @OnFreund
homeassistant/components/coronavirus/* @home_assistant/core
homeassistant/components/counter/* @fabaff
homeassistant/components/cover/* @home-assistant/core
homeassistant/components/cpuspeed/* @fabaff
homeassistant/components/cups/* @fabaff
homeassistant/components/daikin/* @fredrike
homeassistant/components/darksky/* @fabaff
homeassistant/components/deconz/* @Kane610
homeassistant/components/delijn/* @bollewolle @Emilv2
homeassistant/components/demo/* @home-assistant/core
homeassistant/components/denonavr/* @scarface-4711 @starkillerOG
homeassistant/components/derivative/* @afaucogney
homeassistant/components/device_automation/* @home-assistant/core
homeassistant/components/devolo_home_control/* @2Fake @Shutgun
homeassistant/components/digital_ocean/* @fabaff
homeassistant/components/directv/* @ctalkington
homeassistant/components/discogs/* @thibmaek
homeassistant/components/doorbird/* @oblogic7 @bdraco
homeassistant/components/dsmr_reader/* @depl0y
homeassistant/components/dunehd/* @bieniu
homeassistant/components/dweet/* @fabaff
homeassistant/components/dynalite/* @ziv1234
homeassistant/components/dyson/* @etheralm
homeassistant/components/ecobee/* @marthoc
homeassistant/components/ecovacs/* @OverloadUT
homeassistant/components/edl21/* @mtdcr
homeassistant/components/egardia/* @jeroenterheerdt
homeassistant/components/eight_sleep/* @mezz64
homeassistant/components/elgato/* @frenck
homeassistant/components/elkm1/* @bdraco
homeassistant/components/elv/* @majuss
homeassistant/components/emby/* @mezz64
homeassistant/components/emoncms/* @borpin
homeassistant/components/enigma2/* @fbradyirl
homeassistant/components/enocean/* @bdurrer
homeassistant/components/entur_public_transport/* @hfurubotten
homeassistant/components/environment_canada/* @michaeldavie
homeassistant/components/ephember/* @ttroy50
homeassistant/components/epsonworkforce/* @ThaStealth
homeassistant/components/eq3btsmart/* @rytilahti
homeassistant/components/esphome/* @OttoWinter
homeassistant/components/essent/* @TheLastProject
homeassistant/components/evohome/* @zxdavb
homeassistant/components/ezviz/* @baqs
homeassistant/components/fastdotcom/* @rohankapoorcom
homeassistant/components/file/* @fabaff
homeassistant/components/filter/* @dgomes
homeassistant/components/fitbit/* @robbiet480
homeassistant/components/fixer/* @fabaff
homeassistant/components/flick_electric/* @ZephireNZ
homeassistant/components/flock/* @fabaff
homeassistant/components/flume/* @ChrisMandich @bdraco
homeassistant/components/flunearyou/* @bachya
homeassistant/components/forked_daapd/* @uvjustin
homeassistant/components/fortigate/* @kifeo
homeassistant/components/fortios/* @kimfrellsen
homeassistant/components/foscam/* @skgsergio
homeassistant/components/foursquare/* @robbiet480
homeassistant/components/freebox/* @snoof85 @Quentame
homeassistant/components/fronius/* @nielstron
homeassistant/components/frontend/* @home-assistant/frontend
homeassistant/components/garmin_connect/* @cyberjunky
homeassistant/components/gdacs/* @exxamalte
homeassistant/components/geniushub/* @zxdavb
homeassistant/components/geo_rss_events/* @exxamalte
homeassistant/components/geonetnz_quakes/* @exxamalte
homeassistant/components/geonetnz_volcano/* @exxamalte
homeassistant/components/gios/* @bieniu
homeassistant/components/gitter/* @fabaff
homeassistant/components/glances/* @fabaff @engrbm87
homeassistant/components/gntp/* @robbiet480
homeassistant/components/gogogate2/* @vangorra
homeassistant/components/google_assistant/* @home-assistant/cloud
homeassistant/components/google_cloud/* @lufton
homeassistant/components/google_translate/* @awarecan
homeassistant/components/google_travel_time/* @robbiet480
homeassistant/components/gpsd/* @fabaff
homeassistant/components/greeneye_monitor/* @jkeljo
homeassistant/components/griddy/* @bdraco
homeassistant/components/group/* @home-assistant/core
homeassistant/components/growatt_server/* @indykoning
homeassistant/components/gtfs/* @robbiet480
homeassistant/components/guardian/* @bachya
homeassistant/components/harmony/* @ehendrix23 @bramkragten @bdraco
homeassistant/components/hassio/* @home-assistant/hass-io
homeassistant/components/heatmiser/* @andylockran
homeassistant/components/heos/* @andrewsayre
homeassistant/components/here_travel_time/* @eifinger
homeassistant/components/hikvision/* @mezz64
homeassistant/components/hikvisioncam/* @fbradyirl
homeassistant/components/hisense_aehw4a1/* @bannhead
homeassistant/components/history/* @home-assistant/core
homeassistant/components/hive/* @Rendili @KJonline
homeassistant/components/home_connect/* @DavidMStraub
homeassistant/components/homeassistant/* @home-assistant/core
homeassistant/components/homekit/* @bdraco
homeassistant/components/homekit_controller/* @Jc2k
homeassistant/components/homematic/* @pvizeli @danielperna84
homeassistant/components/homematicip_cloud/* @SukramJ
homeassistant/components/honeywell/* @zxdavb
homeassistant/components/html5/* @robbiet480
homeassistant/components/http/* @home-assistant/core
homeassistant/components/huawei_lte/* @scop @fphammerle
homeassistant/components/huawei_router/* @abmantis
homeassistant/components/hue/* @balloob
homeassistant/components/hunterdouglas_powerview/* @bdraco
homeassistant/components/hvv_departures/* @vigonotion
homeassistant/components/iammeter/* @lewei50
homeassistant/components/iaqualink/* @flz
homeassistant/components/icloud/* @Quentame
homeassistant/components/ign_sismologia/* @exxamalte
homeassistant/components/incomfort/* @zxdavb
homeassistant/components/influxdb/* @fabaff
homeassistant/components/input_boolean/* @home-assistant/core
homeassistant/components/input_datetime/* @home-assistant/core
homeassistant/components/input_number/* @home-assistant/core
homeassistant/components/input_select/* @home-assistant/core
homeassistant/components/input_text/* @home-assistant/core
homeassistant/components/insteon/* @teharris1
homeassistant/components/integration/* @dgomes
homeassistant/components/intent/* @home-assistant/core
homeassistant/components/intesishome/* @jnimmo
homeassistant/components/ios/* @robbiet480
homeassistant/components/iperf3/* @rohankapoorcom
homeassistant/components/ipma/* @dgomes @abmantis
homeassistant/components/ipp/* @ctalkington
homeassistant/components/iqvia/* @bachya
homeassistant/components/irish_rail_transport/* @ttroy50
homeassistant/components/islamic_prayer_times/* @engrbm87
homeassistant/components/isy994/* @bdraco @shbatm
homeassistant/components/izone/* @Swamp-Ig
homeassistant/components/jewish_calendar/* @tsvi
homeassistant/components/juicenet/* @jesserockz
homeassistant/components/kaiterra/* @Michsior14
homeassistant/components/keba/* @dannerph
homeassistant/components/keenetic_ndms2/* @foxel
homeassistant/components/kef/* @basnijholt
homeassistant/components/keyboard_remote/* @bendavid
homeassistant/components/knx/* @Julius2342
homeassistant/components/kodi/* @armills
homeassistant/components/konnected/* @heythisisnate @kit-klein
homeassistant/components/lametric/* @robbiet480
homeassistant/components/launch_library/* @ludeeus
homeassistant/components/lcn/* @alengwenus
homeassistant/components/life360/* @pnbruckner
homeassistant/components/linky/* @Quentame
homeassistant/components/linux_battery/* @fabaff
homeassistant/components/local_ip/* @issacg
homeassistant/components/logger/* @home-assistant/core
homeassistant/components/logi_circle/* @evanjd
homeassistant/components/lovelace/* @home-assistant/frontend
homeassistant/components/luci/* @fbradyirl @mzdrale
homeassistant/components/luftdaten/* @fabaff
homeassistant/components/lupusec/* @majuss
homeassistant/components/lutron/* @JonGilmore
homeassistant/components/lutron_caseta/* @swails
homeassistant/components/mastodon/* @fabaff
homeassistant/components/matrix/* @tinloaf
homeassistant/components/mcp23017/* @jardiamj
homeassistant/components/mediaroom/* @dgomes
homeassistant/components/melcloud/* @vilppuvuorinen
homeassistant/components/melissa/* @kennedyshead
homeassistant/components/met/* @danielhiversen
homeassistant/components/meteo_france/* @victorcerutti @oncleben31 @Quentame
homeassistant/components/meteoalarm/* @rolfberkenbosch
homeassistant/components/metoffice/* @MrHarcombe
homeassistant/components/miflora/* @danielhiversen @ChristianKuehnel
homeassistant/components/mikrotik/* @engrbm87
homeassistant/components/mill/* @danielhiversen
homeassistant/components/min_max/* @fabaff
homeassistant/components/minecraft_server/* @elmurato
homeassistant/components/minio/* @tkislan
homeassistant/components/mobile_app/* @robbiet480
homeassistant/components/modbus/* @adamchengtkc @janiversen
homeassistant/components/monoprice/* @etsinko @OnFreund
homeassistant/components/moon/* @fabaff
homeassistant/components/mpd/* @fabaff
homeassistant/components/mqtt/* @home-assistant/core @emontnemery
homeassistant/components/msteams/* @peroyvind
homeassistant/components/myq/* @bdraco
homeassistant/components/mysensors/* @MartinHjelmare
homeassistant/components/mystrom/* @fabaff
homeassistant/components/neato/* @dshokouhi @Santobert
homeassistant/components/nederlandse_spoorwegen/* @YarmoM
homeassistant/components/nello/* @pschmitt
homeassistant/components/ness_alarm/* @nickw444
homeassistant/components/nest/* @awarecan
homeassistant/components/netatmo/* @cgtobi
homeassistant/components/netdata/* @fabaff
homeassistant/components/nexia/* @ryannazaretian @bdraco
homeassistant/components/nextbus/* @vividboarder
homeassistant/components/nextcloud/* @meichthys
homeassistant/components/nilu/* @hfurubotten
homeassistant/components/nissan_leaf/* @filcole
homeassistant/components/nmbs/* @thibmaek
homeassistant/components/no_ip/* @fabaff
homeassistant/components/notify/* @home-assistant/core
homeassistant/components/notify_events/* @matrozov @papajojo
homeassistant/components/notion/* @bachya
homeassistant/components/nsw_fuel_station/* @nickw444
homeassistant/components/nsw_rural_fire_service_feed/* @exxamalte
homeassistant/components/nuheat/* @bdraco
homeassistant/components/nuki/* @pvizeli
homeassistant/components/numato/* @clssn
homeassistant/components/nut/* @bdraco
homeassistant/components/nws/* @MatthewFlamm
homeassistant/components/nzbget/* @chriscla
homeassistant/components/obihai/* @dshokouhi
homeassistant/components/ohmconnect/* @robbiet480
homeassistant/components/ombi/* @larssont
homeassistant/components/onboarding/* @home-assistant/core
homeassistant/components/onewire/* @garbled1
homeassistant/components/onvif/* @hunterjm
homeassistant/components/openerz/* @misialq
homeassistant/components/opengarage/* @danielhiversen
homeassistant/components/opentherm_gw/* @mvn23
homeassistant/components/openuv/* @bachya
homeassistant/components/openweathermap/* @fabaff
homeassistant/components/opnsense/* @mtreinish
homeassistant/components/orangepi_gpio/* @pascallj
homeassistant/components/oru/* @bvlaicu
homeassistant/components/ozw/* @cgarwood @marcelveldt @MartinHjelmare
homeassistant/components/panasonic_viera/* @joogps
homeassistant/components/panel_custom/* @home-assistant/frontend
homeassistant/components/panel_iframe/* @home-assistant/frontend
homeassistant/components/pcal9535a/* @Shulyaka
homeassistant/components/persistent_notification/* @home-assistant/core
homeassistant/components/philips_js/* @elupus
homeassistant/components/pi4ioe5v9xxxx/* @antonverburg
homeassistant/components/pi_hole/* @fabaff @johnluetke @shenxn
homeassistant/components/pilight/* @trekky12
homeassistant/components/plaato/* @JohNan
homeassistant/components/plant/* @ChristianKuehnel
homeassistant/components/plex/* @jjlawren
homeassistant/components/plugwise/* @CoMPaTech @bouwew
homeassistant/components/plum_lightpad/* @ColinHarrington
homeassistant/components/point/* @fredrike
homeassistant/components/powerwall/* @bdraco @jrester
homeassistant/components/prometheus/* @knyar
homeassistant/components/proxmoxve/* @k4ds3 @jhollowe
homeassistant/components/ps4/* @ktnrg45
homeassistant/components/ptvsd/* @swamp-ig
homeassistant/components/push/* @dgomes
homeassistant/components/pvoutput/* @fabaff
homeassistant/components/pvpc_hourly_pricing/* @azogue
homeassistant/components/qld_bushfire/* @exxamalte
homeassistant/components/qnap/* @colinodell
homeassistant/components/quantum_gateway/* @cisasteelersfan
homeassistant/components/qvr_pro/* @oblogic7
homeassistant/components/qwikswitch/* @kellerza
homeassistant/components/rachio/* @bdraco
homeassistant/components/rainbird/* @konikvranik
homeassistant/components/raincloud/* @vanstinator
homeassistant/components/rainforest_eagle/* @gtdiehl @jcalbert
homeassistant/components/rainmachine/* @bachya
homeassistant/components/random/* @fabaff
homeassistant/components/repetier/* @MTrab
homeassistant/components/rfxtrx/* @danielhiversen
homeassistant/components/ring/* @balloob
homeassistant/components/rmvtransport/* @cgtobi
homeassistant/components/roku/* @ctalkington
homeassistant/components/roomba/* @pschmitt @cyr-ius @shenxn
homeassistant/components/safe_mode/* @home-assistant/core
homeassistant/components/saj/* @fredericvl
homeassistant/components/salt/* @bjornorri
homeassistant/components/samsungtv/* @escoand
homeassistant/components/scene/* @home-assistant/core
homeassistant/components/schluter/* @prairieapps
homeassistant/components/scrape/* @fabaff
homeassistant/components/script/* @home-assistant/core
homeassistant/components/search/* @home-assistant/core
homeassistant/components/sense/* @kbickar
homeassistant/components/sensibo/* @andrey-git
homeassistant/components/sentry/* @dcramer
homeassistant/components/serial/* @fabaff
homeassistant/components/seven_segments/* @fabaff
homeassistant/components/seventeentrack/* @bachya
homeassistant/components/shell_command/* @home-assistant/core
homeassistant/components/shiftr/* @fabaff
homeassistant/components/shodan/* @fabaff
homeassistant/components/sighthound/* @robmarkcole
homeassistant/components/signal_messenger/* @bbernhard
homeassistant/components/simplisafe/* @bachya
homeassistant/components/sinch/* @bendikrb
homeassistant/components/sisyphus/* @jkeljo
homeassistant/components/slide/* @ualex73
homeassistant/components/sma/* @kellerza
homeassistant/components/smappee/* @bsmappee
homeassistant/components/smarthab/* @outadoc
homeassistant/components/smartthings/* @andrewsayre
homeassistant/components/smarty/* @z0mbieprocess
homeassistant/components/sms/* @ocalvo
homeassistant/components/smtp/* @fabaff
homeassistant/components/solaredge_local/* @drobtravels @scheric
homeassistant/components/solarlog/* @Ernst79
homeassistant/components/solax/* @squishykid
homeassistant/components/soma/* @ratsept
homeassistant/components/somfy/* @tetienne
homeassistant/components/sonarr/* @ctalkington
homeassistant/components/songpal/* @rytilahti @shenxn
homeassistant/components/spaceapi/* @fabaff
homeassistant/components/speedtestdotnet/* @rohankapoorcom @engrbm87
homeassistant/components/spider/* @peternijssen
homeassistant/components/spotify/* @frenck
homeassistant/components/sql/* @dgomes
homeassistant/components/squeezebox/* @rajlaud
homeassistant/components/starline/* @anonym-tsk
homeassistant/components/statistics/* @fabaff
homeassistant/components/stiebel_eltron/* @fucm
homeassistant/components/stookalert/* @fwestenberg
homeassistant/components/stream/* @hunterjm
homeassistant/components/stt/* @pvizeli
homeassistant/components/suez_water/* @ooii
homeassistant/components/sun/* @Swamp-Ig
homeassistant/components/supla/* @mwegrzynek
homeassistant/components/surepetcare/* @benleb
homeassistant/components/swiss_hydrological_data/* @fabaff
homeassistant/components/swiss_public_transport/* @fabaff
homeassistant/components/switchbot/* @danielhiversen
homeassistant/components/switcher_kis/* @tomerfi
homeassistant/components/switchmate/* @danielhiversen
homeassistant/components/syncthru/* @nielstron
homeassistant/components/synology_dsm/* @ProtoThis @Quentame
homeassistant/components/synology_srm/* @aerialls
homeassistant/components/syslog/* @fabaff
homeassistant/components/tado/* @michaelarnauts @bdraco
homeassistant/components/tahoma/* @philklei
homeassistant/components/tankerkoenig/* @guillempages
homeassistant/components/tautulli/* @ludeeus
homeassistant/components/tellduslive/* @fredrike
homeassistant/components/template/* @PhracturedBlue @tetienne
homeassistant/components/tesla/* @zabuldon @alandtse
homeassistant/components/tfiac/* @fredrike @mellado
homeassistant/components/thethingsnetwork/* @fabaff
homeassistant/components/threshold/* @fabaff
homeassistant/components/tibber/* @danielhiversen
homeassistant/components/tile/* @bachya
homeassistant/components/time_date/* @fabaff
homeassistant/components/tmb/* @alemuro
homeassistant/components/todoist/* @boralyl
homeassistant/components/toon/* @frenck
homeassistant/components/totalconnect/* @austinmroczek
homeassistant/components/tplink/* @rytilahti
homeassistant/components/traccar/* @ludeeus
homeassistant/components/tradfri/* @ggravlingen
homeassistant/components/trafikverket_train/* @endor-force
homeassistant/components/transmission/* @engrbm87 @JPHutchins
homeassistant/components/tts/* @pvizeli
homeassistant/components/tuya/* @ollo69
homeassistant/components/twentemilieu/* @frenck
homeassistant/components/twilio_call/* @robbiet480
homeassistant/components/twilio_sms/* @robbiet480
homeassistant/components/ubee/* @mzdrale
homeassistant/components/unifi/* @Kane610
homeassistant/components/unifiled/* @florisvdk
homeassistant/components/upb/* @gwww
homeassistant/components/upc_connect/* @pvizeli
homeassistant/components/upcloud/* @scop
homeassistant/components/updater/* @home-assistant/core
homeassistant/components/upnp/* @StevenLooman
homeassistant/components/uptimerobot/* @ludeeus
homeassistant/components/usgs_earthquakes_feed/* @exxamalte
homeassistant/components/utility_meter/* @dgomes
homeassistant/components/velbus/* @Cereal2nd @brefra
homeassistant/components/velux/* @Julius2342
homeassistant/components/vera/* @vangorra
homeassistant/components/versasense/* @flamm3blemuff1n
homeassistant/components/version/* @fabaff
homeassistant/components/vesync/* @markperdue @webdjoe
homeassistant/components/vicare/* @oischinger
homeassistant/components/vilfo/* @ManneW
homeassistant/components/vivotek/* @HarlemSquirrel
homeassistant/components/vizio/* @raman325
homeassistant/components/vlc_telnet/* @rodripf
homeassistant/components/waqi/* @andrey-git
homeassistant/components/watson_tts/* @rutkai
homeassistant/components/weather/* @fabaff
homeassistant/components/webostv/* @bendavid
homeassistant/components/websocket_api/* @home-assistant/core
homeassistant/components/wiffi/* @mampfes
homeassistant/components/withings/* @vangorra
homeassistant/components/wled/* @frenck
homeassistant/components/workday/* @fabaff
homeassistant/components/worldclock/* @fabaff
homeassistant/components/xbox_live/* @MartinHjelmare
homeassistant/components/xfinity/* @cisasteelersfan
homeassistant/components/xiaomi_aqara/* @danielhiversen @syssi
homeassistant/components/xiaomi_miio/* @rytilahti @syssi
homeassistant/components/xiaomi_tv/* @simse
homeassistant/components/xmpp/* @fabaff @flowolf
homeassistant/components/yamaha_musiccast/* @jalmeroth
homeassistant/components/yandex_transport/* @rishatik92
homeassistant/components/yeelight/* @rytilahti @zewelor
homeassistant/components/yeelightsunflower/* @lindsaymarkward
homeassistant/components/yessssms/* @flowolf
homeassistant/components/yi/* @bachya
homeassistant/components/yr/* @danielhiversen
homeassistant/components/zeroconf/* @robbiet480 @Kane610
homeassistant/components/zerproc/* @emlove
homeassistant/components/zha/* @dmulcahey @adminiuga
homeassistant/components/zone/* @home-assistant/core
homeassistant/components/zoneminder/* @rohankapoorcom
homeassistant/components/zwave/* @home-assistant/z-wave
# Individual files
homeassistant/components/demo/weather @fabaff