J. Nick Koston
439e2d76b1
tweak for chrome since it works great in firefox but chrome cannot handle it
2024-05-25 13:16:44 -10:00
J. Nick Koston
f3d2003dca
tweak
2024-05-25 13:04:17 -10:00
J. Nick Koston
a414099b3c
wait to send if the queue is building rapidly
2024-05-25 12:56:10 -10:00
J. Nick Koston
5b31109d1d
delay more if the backlog gets large
2024-05-25 12:33:04 -10:00
J. Nick Koston
1abb1ec8aa
coalesce more
2024-05-25 12:11:03 -10:00
Sid
2cc916db6d
Replace pylint broad-except with Ruff BLE001 ( #116250 )
2024-05-07 14:00:27 +02:00
Sid
b456d97e65
Replace pylint protected-access with Ruff SLF001 ( #115735 )
2024-05-06 20:33:26 +02:00
J. Nick Koston
ca5ed274cb
Deprecate calling async_listen and async_listen_once with run_immediately ( #115169 )
2024-04-08 10:07:54 -10:00
J. Nick Koston
9be5f3531f
Run websocket shutdown listener with run_immediately ( #113727 )
2024-03-18 11:59:44 -10:00
Marc Mueller
c773d57d39
Add empty line after module docstring [w-z] ( #112706 )
2024-03-08 10:35:45 -05:00
Marc Mueller
8ca127df2a
Use KEY_HASS [h-z] ( #112610 )
2024-03-07 18:03:44 +01:00
J. Nick Koston
ebdfff4037
Reduce latency to connect websocket writer ( #111559 )
...
Reduce latancy to connect websocket writer
Use an eager start task to start the writer
2024-02-26 20:52:53 -05:00
Marc Mueller
8b0c9d3d18
Use builtin TimeoutError [t-z] ( #109683 )
2024-02-05 12:20:36 +01:00
J. Nick Koston
dbb5645e63
Significantly reduce websocket api connection auth phase latency ( #108564 )
...
* Significantly reduce websocket api connection auth phase latancy
Since the auth phase has exclusive control over the websocket
until ActiveConnection is created, we can bypass the queue and
send messages right away. This reduces the latancy and reconnect
time since we do not have to wait for the background processing
of the queue to send the auth ok message.
* only start the writer queue after auth is successful
2024-01-21 22:33:31 -05:00
J. Nick Koston
b4b041d4bf
Small cleanups to the websocket api handler ( #108274 )
2024-01-18 08:39:49 +01:00
J. Nick Koston
60ab360fe7
Avoid bytes to string to bytes conversion in websocket api ( #108139 )
2024-01-16 21:37:34 +01:00
J. Nick Koston
5648dc6cd1
Reduce string copy needed to subscribe to entities ( #102870 )
2023-10-28 09:18:25 -05:00
Marc Mueller
a9ade1f84d
Use asyncio.timeout [core] ( #98447 )
2023-08-15 08:36:05 -05:00
J. Nick Koston
d242eaa375
Remove the ability to defer websocket message construction ( #96734 )
...
This was added in #71364 but all use cases of it were refactored
away so it can now be removed
2023-07-17 08:41:39 +02:00
J. Nick Koston
2aff138b92
Small improvements to websocket api performance ( #95693 )
2023-07-02 12:33:25 -05:00
J. Nick Koston
3f18f515e7
Improve websocket api coverage and typing ( #94891 )
2023-06-20 15:21:24 +01:00
J. Nick Koston
1206f2c1da
Fix memory leaks in websocket api ( #94780 )
...
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-06-19 18:27:22 -05:00
J. Nick Koston
b993fe1c9d
Cache generation of the service descriptions ( #93131 )
2023-05-16 21:42:37 -05:00
J. Nick Koston
2848f8648d
Log last message when websocket reaches peak limit ( #93038 )
...
When we hit the absolute limit, we would log the last messages as
it was key to finding out the source. We now do the same when
we hit the peak limit
2023-05-14 12:22:19 -04:00
J. Nick Koston
8711735ec0
Improve websocket throughput and reduce latency ( #92967 )
2023-05-13 00:13:57 +09:00
Paulus Schoutsen
0ca6723378
Allow passing binary to the WS connection ( #89882 )
...
* Allow passing binary to the WS connection
* Expand test coverage
* Test non-existing handler
* Allow signaling end of stream using empty payloads
* Store handlers in a list
* Handle binary handlers raising exceptions
2023-03-22 08:36:36 -04:00
J. Nick Koston
a8e95684fa
Fix websocket back pressure bottleneck ( #89905 )
2023-03-20 21:51:39 -10:00
epenet
ba23816a0c
Inverse json import logic ( #88099 )
...
* Fix helpers and util
* Adjust components
* Move back errors
* Add report
* mypy
* mypy
* Assert deprecation messages
* Move test_json_loads_object
* Adjust tests
* Fix rebase
* Adjust pylint plugin
* Fix plugin
* Adjust references
* Adjust backup tests
2023-02-16 11:37:57 +01:00
J. Nick Koston
0f4b17755e
Improve logging and handling when websocket gets behind ( #86854 )
...
fixes undefined
2023-01-29 10:49:27 -10:00
Franck Nijhof
5102d1a5f3
Drop Python 3.9 support ( #85456 )
2023-01-22 20:40:33 +01:00
Franck Nijhof
8819634b61
String formatting and max line length - Part 6 ( #84525 )
2022-12-24 13:19:51 +01:00
Joakim Sørensen
0dfc0af08c
Add CLOSED as an expected type ( #83180 )
2022-12-03 10:19:16 -05:00
Paulus Schoutsen
2ef14d60f3
Update pending message error ( #80763 )
2022-10-21 22:47:25 -04:00
J. Nick Koston
f6a03625ba
Implement websocket message coalescing ( #77238 )
...
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-08-24 22:50:48 -05:00
Franck Nijhof
c8f700c803
Clean up accessing dispatcher helpers via hass ( #72014 )
...
Clean up accessing ditpatcher helpers via hass
2022-05-17 18:41:36 +02:00
J. Nick Koston
d612b9e0b4
Reduce event loop overhead for listeners that already queue ( #71364 )
...
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-05-05 23:09:10 -04:00
Marc Mueller
9b9b553521
Disable no-self-use [pylint] ( #70641 )
...
* Disable no-self-use
* Remove disable comments
2022-04-25 07:41:01 -07:00
J. Nick Koston
10d6247fee
Bump to aiohttp 3.8.0 ( #58974 )
2021-11-04 10:07:50 -05:00
Marc Mueller
a48ddcadd4
Use assignment expressions 31 ( #58715 )
2021-10-30 16:29:07 +02:00
Paulus Schoutsen
6d0da631bf
Handle prepare timeout in websocket API ( #55989 )
2021-10-08 22:12:06 -07:00
David Boslee
7f966613bd
Disconnect websockets after token is revoked ( #57091 )
...
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-10-08 09:38:22 -07:00
Paulus Schoutsen
677abcd484
Allow confirming local push notifications ( #54947 )
...
* Allow confirming local push notifications
* Fix from Zac
* Add tests
2021-09-22 23:17:04 +02:00
Marc Mueller
48bada5a18
Update pylint to 2.11.1 ( #56364 )
2021-09-18 13:52:59 +02:00
Ruslan Sayfutdinov
42ff687c32
Add missing type hints to websocket_api ( #50915 )
2021-05-21 09:39:18 -07:00
J. Nick Koston
11a56df2cb
Serialize websocket messages before placing them in the queue ( #49582 )
2021-04-28 08:55:18 -07:00
Erik Montnemery
703c073e53
Improve websocket debug log
2021-03-19 13:30:16 +01:00
Marc Mueller
dcca29ef68
Update typing 14 ( #48078 )
2021-03-18 15:08:35 +01:00
J. Nick Koston
3c84c7ccf0
Fix memory leak in websocket_api ( #42894 )
...
* Fix memory leak in websocket_api
Each named logger lives forever
* tweak
2020-11-06 09:27:41 +01:00
SigmaPic
51f847c4b8
Catch unhandled exception in websocket_api ( #42693 )
...
Co-authored-by: springstan <46536646+springstan@users.noreply.github.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-11-03 10:35:45 +01:00
J. Nick Koston
35cfc80dd7
Log the remote ip address for incoming websocket connections when debug is on ( #40581 )
2020-09-26 09:32:50 +02:00