Commit Graph
71 Commits
Author SHA1 Message Date
Aaron Godfrey fe2e357ae9 Upgrade attrs to 22.1.0 (#84205) 2022-12-19 12:40:30 +01:00
Paulus Schoutsen 1c0543bcd5 Drop aiohttp to 3.8.1 (#83795) 2022-12-11 21:19:02 -05:00
J. Nick Koston 9008006ac8 Restore remote discovered devices between remote scanner restarts (#83699) 2022-12-11 09:02:55 -10:00
Ville Skyttä 8f9baafac1 Tweak black config (#83230)
* Remove `--safe` from pre-commit args, it's the default

* Extend exclusions instead of overriding, improve regex
2022-12-04 17:12:37 -05:00
Franck Nijhof 4bef6ac191 Bump version to 2023.1.0dev0 (#83025) 2022-11-30 21:12:57 -05:00
Joakim Plate c576a68d33 Upgrade pytest-aiohttp (#82475)
* Upgrade pytest-aiohttp

* Make sure executors, tasks and timers are closed

Some test will trigger warnings on garbage collect, these warnings
spills over into next test.

Some test trigger tasks that raise errors on shutdown, these spill
over into next test.

This is to mimic older pytest-aiohttp and it's behaviour on test
cleanup.

Discussions on similar changes for pytest-aiohttp are here:
https://github.com/pytest-dev/pytest-asyncio/pull/309

* Replace loop with event_loop

* Make sure time is frozen for tests

* Make sure the ConditionType is not async

  /home-assistant/homeassistant/helpers/template.py:2082: RuntimeWarning: coroutine 'AsyncMockMixin._execute_mock_call' was never awaited
    def wrapper(*args, **kwargs):
  Enable tracemalloc to get traceback where the object was allocated.
  See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info.

* Increase litejet press tests with a factor 10

The times are simulated anyway, and we can't stop the normal
event from occuring.

* Use async handlers for aiohttp

tests/components/motioneye/test_camera.py::test_get_still_image_from_camera
tests/components/motioneye/test_camera.py::test_get_still_image_from_camera
tests/components/motioneye/test_camera.py::test_get_stream_from_camera
tests/components/motioneye/test_camera.py::test_get_stream_from_camera
tests/components/motioneye/test_camera.py::test_camera_option_stream_url_template
tests/components/motioneye/test_camera.py::test_camera_option_stream_url_template
  /Users/joakim/src/hass/home-assistant/venv/lib/python3.9/site-packages/aiohttp/web_urldispatcher.py:189: DeprecationWarning: Bare functions are deprecated, use async ones
    warnings.warn(

* Switch to freezegun in modbus tests

The tests allowed clock to tick in between steps

* Make sure skybell object are fully mocked

Old tests would trigger attempts to post to could services:

```
DEBUG:aioskybell:HTTP post https://cloud.myskybell.com/api/v3/login/ Request with headers: {'content-type': 'application/json', 'accept': '*/*', 'x-skybell-app-id': 'd2b542c7-a7e4-4e1e-b77d-2b76911c7c46', 'x-skybell-client-id': '1f36a3c0-6dee-4997-a6db-4e1c67338e57'}
```

* Fix sorting that broke after rebase
2022-11-29 22:36:36 +01:00
Franck Nijhof 35e81cf982 Update aiohttp to 3.8.3 (#78860) 2022-11-28 20:42:10 +01:00
uvjustin 9390359fe3 Bump httpx to 0.23.1 (#82725) 2022-11-26 10:04:22 -10:00
J. Nick Koston 4b89d087bb Bump home-assistant-bluetooth to 1.8.1 (#82222)
changelog: https://github.com/home-assistant-libs/home-assistant-bluetooth/compare/v1.8.0...v1.8.1
2022-11-16 23:08:17 +02:00
J. Nick Koston 682187541f Move BluetoothServiceInfoBleak to home_assistant_bluetooth (#82064) 2022-11-15 14:00:52 -06:00
Franck Nijhof 7556f2b84e Update cryptography to 38.0.3 (#81455) 2022-11-03 11:18:25 +01:00
Franck Nijhof cee7b788d4 Bump version to 2022.12.0dev0 (#81044) 2022-10-26 23:44:38 +02:00
Franck Nijhof d65e639f00 Update orjson to 3.8.1 (#81000) 2022-10-26 12:40:15 +02:00
Marc Mueller 8d4c32e106 Update pip constraint to 22.4 (#80383) 2022-10-16 12:01:11 +02:00
J. Nick Koston d12cbab6c4 Bump bleak to 0.19.0 (#80349) 2022-10-15 13:57:23 -04:00
Marc Mueller 647a4ac131 Update typing-extensions constraint to >=4.4.0 (#79860) 2022-10-08 18:32:46 +03:00
Franck Nijhof 99f4ce9e5a Bump version to 2022.11.0dev0 (#79224) 2022-09-28 21:51:06 +02:00
Paulus Schoutsen f41b69e19e Bump cryptography to 38 (#79067) 2022-09-25 17:39:42 -04:00
Franck Nijhof a81bb10ff9 Update yarl to 1.8.1 (#78866) 2022-09-21 13:59:42 +02:00
Franck Nijhof 774d5138ca Update PyJWT to 2.5.0 (#78776) 2022-09-20 20:17:49 +02:00
Joakim Sørensen a38d998000 Bump awesomeversion from 22.8.0 to 22.9.0 (#78525) 2022-09-15 14:05:34 +02:00
Paulus Schoutsen 8dda2389c8 2022.10.0.dev0 (#77635) 2022-09-01 07:01:10 +02:00
Joakim Sørensen 0caf998547 Bump awesomeversion from 22.6.0 to 22.8.0 (#77436) 2022-08-28 14:52:23 -04:00
Franck Nijhof b4323108b1 Update cryptography to 37.0.4 (#76853) 2022-08-17 09:41:50 +02:00
Franck Nijhof 33bf94c4b2 Update orjson to 3.7.11 (#76171) 2022-08-04 22:37:57 +03:00
Franck Nijhof 7659555ce5 Bump version to 2022.9.0dev0 (#75818) 2022-07-27 15:55:52 +02:00
Marc Mueller c0e6852077 Update pip version range to 22.3 (#75572) 2022-07-24 21:11:30 +02:00
Franck Nijhof 2db8b154c9 Update orjson to 3.7.8 (#75484) 2022-07-20 11:39:07 +02:00
J. Nick Koston ba8a530d19 Use shared bluetooth models for BluetoothServiceInfo (#75322) 2022-07-16 21:14:23 -07:00
Franck Nijhof d697bb53c5 Update lru-dict to 1.1.8 (#74932) 2022-07-11 00:11:43 +02:00
Paulus Schoutsen 010b18be34 Bump atomicwrites (#74758) 2022-07-08 14:17:56 -07:00
Franck Nijhof 4261595078 Update orjson to 3.7.7 (#74581) 2022-07-07 11:00:34 +02:00
J. Nick Koston 332cf3cd2d Resolve and caches paths for CachingStaticResource in the executor (#74474) 2022-07-06 13:49:48 -05:00
Ville SkyttäandJ. Nick Koston dd6725b80a Replace pylint-strict-informational with fail-on=I (#74311)
`fail-on` is available since pylint 2.9.0.

https://pylint.pycqa.org/en/latest/user_guide/configuration/all-options.html#fail-on
https://github.com/PyCQA/pylint/issues/3251#issuecomment-1170941337

Co-authored-by: J. Nick Koston <nick@koston.org>
2022-07-04 23:04:56 +02:00
Franck Nijhof 42533ebbb3 Update requests to 2.28.1 (#74210) 2022-06-29 20:40:58 -05:00
Franck Nijhof fe68c15a4a Bump version to 2022.8.0dev0 (#74184) 2022-06-29 21:20:57 +03:00
J. Nick Koston df357962b3 Bump orjson to 3.7.5 (#74083) 2022-06-27 21:59:08 -07:00
Joakim Sørensen a94579107c Bump awesomeversion from 22.5.2 to 22.6.0 (#74030) 2022-06-27 11:38:40 +02:00
J. Nick Koston 8b067e83f7 Initial orjson support take 3 (#73849)
* Initial orjson support take 2

Still need to work out problem building wheels

--

Redux of #72754 / #32153 Now possible since the following is solved:
ijl/orjson#220 (comment)

This implements orjson where we use our default encoder.  This does not implement orjson where `ExtendedJSONEncoder` is used as these areas tend to be called far less frequently.  If its desired, this could be done in a followup, but it seemed like a case of diminishing returns (except maybe for large diagnostics files, or traces, but those are not expected to be downloaded frequently).

Areas where this makes a perceptible difference:
- Anything that subscribes to entities (Initial subscribe_entities payload)
- Initial download of registries on first connection / restore
- History queries
- Saving states to the database
- Large logbook queries
- Anything that subscribes to events (appdaemon)

Cavets:
orjson supports serializing dataclasses natively (and much faster) which
eliminates the need to implement `as_dict` in many places
when the data is already in a dataclass. This works
well as long as all the data in the dataclass can also
be serialized. I audited all places where we have an `as_dict`
for a dataclass and found only backups needs to be adjusted (support for `Path` needed to be added for backups).  I was a little bit worried about `SensorExtraStoredData` with `Decimal` but it all seems to work out from since it converts it before it gets to the json encoding cc @dgomes

If it turns out to be a problem we can disable this
with option |= [orjson.OPT_PASSTHROUGH_DATACLASS](https://github.com/ijl/orjson#opt_passthrough_dataclass) and it
will fallback to `as_dict`

Its quite impressive for history queries
<img width="1271" alt="Screen_Shot_2022-05-30_at_23_46_30" src="https://user-images.githubusercontent.com/663432/171145699-661ad9db-d91d-4b2d-9c1a-9d7866c03a73.png">

* use for views as well

* handle UnicodeEncodeError

* tweak

* DRY

* DRY

* not needed

* fix tests

* Update tests/components/http/test_view.py

* Update tests/components/http/test_view.py

* black

* templates
2022-06-22 21:59:51 +02:00
Franck Nijhof 99db2a5afe Update requests to 2.28.0 (#73406)
* Update requests to 2.28.0

* Fix mypy warning

* Fix Facebook messenger tests
2022-06-14 12:21:32 +02:00
Marc Mueller 983a76a91c Update pylint to 2.14.0 (#73119) 2022-06-06 21:43:47 +02:00
J. Nick Koston c365454afb Revert "Initial orjson support (#72754)" (#72789)
This was causing the wheels to fail to build. We need
to workout why when we don't have release pressure

This reverts commit d9d22a9556.
2022-05-31 13:51:55 -07:00
J. Nick Koston d9d22a9556 Initial orjson support (#72754) 2022-05-31 12:18:11 -07:00
Joakim Sørensen 9fe4aef4bc Bump awesomeversion from 22.5.1 to 22.5.2 (#72624) 2022-05-27 14:37:19 -07:00
uvjustinandJ. Nick Koston 01b5f98414 Bump httpx to 0.23.0 (#72573)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-05-26 21:20:37 -10:00
Marc Mueller 1ac71455cb Move remaining metadata to pyproject (#72469) 2022-05-26 02:54:49 +02:00
Marc Mueller d0008683be Use new project metadata format [PEP 621] (#72422) 2022-05-24 19:01:27 -07: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
Marc Mueller 90dab235f7 Update pylint to 2.13.7 (#70381)
* Update pylint to 2.13.7

* Spelling

* Remove old pylint config value

* Code updates
2022-04-21 13:02:52 -07:00
Erik Montnemery 821908ca45 Include threadname and time in pytest logs (#69307)
* Include threadname and time in pytest logs

* Add failing test

* Include the name of the logger

* Revert "Add failing test"

This reverts commit 5dbc1375722909cb5a0022b3e1c021f3bb5415cb.
2022-04-05 10:10:16 +02:00