40 Commits
Author SHA1 Message Date
Franck Nijhof ca101cc7d1 Update Pillow to 9.5.0 (#91218) 2023-04-11 17:01:56 +02:00
J. Nick Koston 03eea7bd3f Avoid subprocess memory copy when c library supports posix_spawn (#87958)
* use posix spawn on alpine

* Avoid subprocess memory copy when c library supports posix_spawn

By default python 3.10 will use the fork() which has to
copy all the memory of the parent process (in our case
this can be huge since Home Assistant core can use
hundreds of megabytes of RAM). By using posix_spawn
this is avoided.

In python 3.11 vfork will also be available
https://github.com/python/cpython/issues/80004#issuecomment-1093810689
https://github.com/python/cpython/pull/11671 but we won't
always be able to use it and posix_spawn is considered safer
https://bugzilla.kernel.org/show_bug.cgi?id=215813#c14

The subprocess library doesn't know about musl though
even though it supports posix_spawn https://git.musl-libc.org/cgit/musl/log/src/process/posix_spawn.c
so we have to teach it since it only has checks for glibc
https://github.com/python/cpython/blob/1b736838e6ae1b4ef42cdd27c2708face908f92c/Lib/subprocess.py#L745

The constant is documented as being able to be flipped here:
https://docs.python.org/3/library/subprocess.html#disabling-use-of-vfork-or-posix-spawn

* Avoid subprocess memory copy when c library supports posix_spawn

By default python 3.10 will use the fork() which has to
copy memory of the parent process (in our case
this can be huge since Home Assistant core can use
hundreds of megabytes of RAM). By using posix_spawn
this is avoided and subprocess creation does not
get discernibly slow the larger the Home Assistant
python process grows.

In python 3.11 vfork will also be available
https://github.com/python/cpython/issues/80004#issuecomment-1093810689
https://github.com/python/cpython/pull/11671 but we won't
always be able to use it and posix_spawn is considered safer
https://bugzilla.kernel.org/show_bug.cgi?id=215813#c14

The subprocess library doesn't know about musl though
even though it supports posix_spawn https://git.musl-libc.org/cgit/musl/log/src/process/posix_spawn.c
so we have to teach it since it only has checks for glibc
https://github.com/python/cpython/blob/1b736838e6ae1b4ef42cdd27c2708face908f92c/Lib/subprocess.py#L745

The constant is documented as being able to be flipped here:
https://docs.python.org/3/library/subprocess.html#disabling-use-of-vfork-or-posix-spawn

* missed some

* adjust more tests

* coverage
2023-02-13 09:02:51 -05:00
Erik Montnemery 23fa500406 Sort manifests 9 (#87030) 2023-02-08 20:22:30 +01:00
Franck Nijhof 2371a6cc72 Update Pillow to 9.4.0 (#84974) 2023-01-02 14:43:41 +01:00
Franck Nijhof e22f69ea8c Update Pillow to 9.3.0 (#81343) 2022-11-01 11:34:44 +02:00
Marc Mueller 50e732d00f Add image_processing device_class StrEnum (#79124) 2022-09-26 20:37:04 -04:00
Franck Nijhof b5387ed769 Update Pillow to 9.2.0 (#74371) 2022-07-04 13:16:01 +02:00
Franck Nijhof 53d7eaa1a6 Update Pillow to 9.1.1 (#72376) 2022-05-23 20:50:39 +02:00
Franck Nijhof 0969e50553 Update Pillow to 9.1.0 (#70273) 2022-04-19 12:49:43 +02:00
Franck Nijhof 58409d0895 Update Pillow to 9.0.1 (#65779) 2022-02-05 14:19:24 +01:00
Franck Nijhof 1c29260a31 Update Pillow to 9.0.0 (#63894) 2022-01-11 14:28:48 +01:00
Marc Mueller dfa94d6ce1 Import image_processing constants from const (#63461) 2022-01-05 14:58:00 +01:00
epenetandepenet ca366e6f87 Add image_processing setup type hints (#63290)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 15:14:57 +01:00
Martin Hjelmareandepenet a818afdad1 Revert pillow 8.3.2 (#61793)
* Revert "Bump pillow from 8.2.0 to 8.3.2 (#61661)"

This reverts commit 3635946211.

* Add comment

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Fix comment

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2021-12-15 03:10:06 +01:00
Sebastian Nohnanddependabot[bot] 3635946211 Bump pillow from 8.2.0 to 8.3.2 (#61661)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-13 14:14:05 +01:00
Joakim Sørensen c59540cfc7 Revert "Bump pillow to 8.3.2 (#55970)" (#56048)
This reverts commit ee7202d10a.
2021-09-10 17:01:51 +02:00
Paulus Schoutsen ee7202d10a Bump pillow to 8.3.2 (#55970) 2021-09-08 12:06:30 -07:00
Franck Nijhof 37af42e470 Upgrade pillow to 8.2.0 (#51897) 2021-06-15 19:14:57 +02:00
Marc Mueller f1d48ddfe3 Update pylint to 2.8.0 (#49637) 2021-04-24 14:39:24 -10:00
Franck Nijhof 055cdc64c0 Add support for IoT class in manifest (#46935) 2021-04-15 10:21:38 +02:00
Marc Mueller 8e2b5b36b5 Bump pyupgrade to 2.12.0 (#48943) 2021-04-09 09:58:27 -07:00
Franck Nijhof 197687399d Upgrade pillow to 8.1.2 (#47619) 2021-03-08 14:26:52 +01:00
Franck Nijhof 1926941d8e Upgrade pillow to 8.1.1 (#47223) 2021-03-02 13:02:41 -08:00
Franck Nijhof 52c56fdac7 Upgrade pillow to 8.1.0 (#45574) 2021-01-26 18:12:02 +01:00
Paulus Schoutsen 24a16ff8fe Add image integration (#38969) 2020-08-19 11:33:04 +02:00
Franck Nijhof b6292d7c77 Upgrade pillow to 7.1.2 (#34733) 2020-04-26 13:53:02 -07:00
Fabian AffolterandFranck Nijhof d5f73378f0 Upgrade pillow to 7.1.1 (#34025)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2020-04-11 17:00:12 +02:00
Fabian Affolter 9aa0e76d65 Update codeowners for seven_segments (#34027) 2020-04-11 15:27:28 +02:00
Franck Nijhof 39336d3ea3 Add prettier (in pre-commit and CI) (#33693)
* Add prettier (in pre-commit and CI)

* Make all file prettier

* Change order

* Add to Azure Pipelines

* Fix a YAML file prettier caught as invalid

* Remove flow mapping using curly braces from all YAML service files
2020-04-05 17:27:16 +02:00
Franck Nijhof e8a0abd107 String formatting improvements (#33635)
* String formatting improvements

* Found another one
2020-04-04 18:21:14 +02:00
Paulus Schoutsen f1d3c0d19b Remove unused manifest fields (#33595) 2020-04-03 12:58:19 -07:00
Robin e38522c612 Bump pillow to 7.0 (#31847) 2020-02-15 11:59:41 +01:00
Franck Nijhof 22760a0bee Correct names in manifests (Q-S) (#30543) 2020-01-07 08:19:44 -05:00
Paulus Schoutsen 32aae7017e Remove requirement from entity integration (#30113) 2019-12-22 10:32:42 +01:00
Diefferson Koderer Môro f440259edc Move imports in seven_segments component (#28096) 2019-10-21 22:32:53 -07:00
Franck Nijhof c7da781efc Update documentation link URL for integrations in all manifests (#27114) 2019-10-02 09:25:44 -07:00
Paulus Schoutsen 4de97abc3a Black 2019-07-31 12:25:30 -07:00
Paulus Schoutsen cfe4cf30ad Add manifests (#22699)
* Add manifests

* Update auto name

* Update codeowners

* Add requirements from platforms

* Minor cleanup

* Incorporate changes from awarecan PR
2019-04-03 21:14:45 -07:00
Tobias Sauerwein 048b100eea Clean up docstrings (#22679)
* Clean up docstrings

* Fix long lines

* Fix more docstrings

* Fix more docstrings

* Fix more docstrings
2019-04-03 17:40:03 +02:00
Paulus Schoutsen f5076188ef Consolidate all platforms that have no tests (#22096)
* Consolidate

* Fix tests

* Update imports

* Fix import

* Use importlib because integration and package share name

* Fix more tests

* Update .coveragerc and CODEOWNERS
2019-03-16 20:44:05 -07:00