Running model.fit() multiple times on batches for DeepFM

Describe the question(问题描述)
I am using the DeepFM module and have a lot of data. I would like to run the model in batches, using the model.train function()
    history = model.fit(train_model_input
                        , train[target].values
                        , batch_size=1024
                        , epochs=1
                        , verbose=2
                        , validation_split=0.05)

This seems to work iteratively, my loss does go down, my AUC does go up, but can we confirm this please ? I have read conflicting articles about this.
Also, I am wondering about the consistency of the embedding across batches. Given that embedding representation depends on the composition of a dataset, does it makes sense/does it work, if I incrementally train the model using calls on model.train() on a sequence of files?
Please let me know. Absolutely love this library so far I must say too 👍
Operating environment(运行环境):

python version [3.5]
tensorflow version [1.4.0]
deepctr version [latest]

yes,it makes sense when training model with model.train() iteratively.

Thanks!


Proxy release files through worker

Intent
Enable private Github repos to provide Tauri's updater with the necessary update files. Right now a Github-authenticated worker can get the necessary release information, but the Tauri client can't access the files.
Security is outside the scope of this issue and depends on updates with Tauri: https://github.com/tauri-apps/tauri/issues/3896
Questions / Considerations

[x] Limitations with workers? Bandwidth, CPU etc.
As far as I can tell, there aren't any Cloudflare limits that affect this use case.

Implementation

Create a route, /latest/$filename. This route gets the latest release from the repo, requests the file, and feeds the request as the response.
Change the response to Tauri's updater request from the github file url to the proxied route. We can base this off of a defined GITHUB_SECRET for now, or add an additional flag.

Hey @ghostdevv I see Tauri added the requested feature! Does that mean this issue is no longer needed?

Probably not, however it might be good for people who don't wanna ship their gh token in their tauri app

I'm going to close this for now, but open to a new request or PRs!

Not to open up an old issue, but if any work is still being done on this I would also love to have a proxy server in here. I'd love to do it myself but cloudflare workers are not my forte. Would be super nice to have this though!

@ACPixel no worries, happy to take a look into it. Does the above describe your needs? is there anything not captured here that should be?

I think that the issue contains everything that would need to be there. Basically just a route to proxy the files, and would need to make sure the json responses contain links to the proxy instead of the release files directly.

@ACPixel @ghostdevv This is now merged and available! Proxying is enabled if a GITHUB token is set, please let me know how it works out for you!

Amazing! I'll try it out as soon as possible! Thanks again for taking and look and a huge thanks for doing that so quickly!

Alright got a chance to try it out, everything works as intended except one thing. The actual downloads don't work for private repos as it's trying to proxy the "browser_download_url" which only works via a valid github auth. Adding the auth headers and switching the url from the browser_download_url to the url on the release json fixes this issue as it then uses the release assets API to get the file.
I'm doing it like this since in my case I only need to handle the private github repo:
const getLatestAssets = async (request: Request) => {
  const fileName = request.url.split("/")?.at(-1);
  if (!fileName) {
    throw new Error("Could not get file name from download URL");
  }

  const release = await getLatestRelease(request);
  const downloadPath = release.assets.find(
    ({ name }) => name === fileName,
  )?.url;

  if (!downloadPath) {
    throw new Error("Could not get file path from download URL");
  }

  const { readable, writable } = new TransformStream();
  const headers = new Headers({
    Accept: "application/octet-stream",
    "User-Agent": request.headers.get("User-Agent") as string,
  });

  if (GITHUB_TOKEN?.length)
    headers.set("Authorization", `token ${GITHUB_TOKEN}`);
  const file_response = await fetch(downloadPath, {
    method: "GET",
    redirect: "follow",
    headers,
  });

  file_response?.body?.pipeTo(writable);
  return new Response(readable, file_response);
};

Ah that makes total sense, probably should have set up a private repo to test it fully 😃
Would you mind doing a PR with those changes? Glad you got it working!

Yeah can do. I have to clean up a couple things I put in while testing but I'll try to get one out tonight. Also had to update typescript version to get the .at() functions you used working.

@ACPixel I appreciate that, was attempting to do it pretty hastily and the repo definitely could use a little new years cleaning!

No problem! Sorry for the delay been a busy week, I'll try to get it cleaned up and ready within the next couple of days haha

Awesome! Managed to get this working today with some tweaks to the code
@ACPixel Did you manage to get some time to look at a PR? Lmk if you need any help


Clarify that Graphic UI apps open automatically

UI is too vague – after all, CLI is also a UI. What you mean here is that GUI apps open automatically inside the desktop.

Fair enough. Thanks!


Implement the ebpf_process_events table with Docker support

Do we want to keep this open or just work on the upstream version? https://github.com/osquery/osquery/pull/6571

Replaced by https://github.com/osquery/osquery/pull/6571


update powershell scripts to be more in line of others

far from perfect, but on a good way to replace our ratchet .bat scripts
It does passes much better chunk of scripts testsuite than batch scripts do.

Linux Build 1749 is now running using a merge of 0a35f301833399e865569f14dfbe6434fe870cf1

Windows Build 1313 is now running using a merge of 0a35f301833399e865569f14dfbe6434fe870cf1

Core - Full Integration Build 905 is now running using a merge of 0a35f301833399e865569f14dfbe6434fe870cf1

Windows Build 1313 outcome was SUCCESS using a merge of 0a35f301833399e865569f14dfbe6434fe870cf1
Summary: Tests passed: 3101, ignored: 66 Build time: 0:20:21

Linux Build 1749 outcome was SUCCESS using a merge of 0a35f301833399e865569f14dfbe6434fe870cf1
Summary: Tests passed: 3101, ignored: 66 Build time: 0:22:32

Core - Full Integration Build 905 outcome was SUCCESS using a merge of 0a35f301833399e865569f14dfbe6434fe870cf1
Summary: Tests passed: 2855, ignored: 373, muted: 2 Build time: 0:49:17

Please send up a separate PR to get rid of the "WildFly" stuff. Thanks for giving these some love!

will do, scripts need some more work as well, as proper domain.ps1 script is still missing


Fix bindings without property path

What does the pull request do?
This PR fixes bindings that are directly bound to a data context without any property path (e.g. {Binding}).
#13970 / v11.1 introduced a subtle change:

In v11.0, a null data context is considered unset, whether there's a binding path or not.
In v11.1, a null data context is considered unset when there's a binding path, or a valid null value if there isn't one.

While both results make sense, this is a behavioral breaking change from v11.0:

OneTime bindings when the data context isn't known yet don't work anymore.
NullTargetValue and StringFormat are being applied to the null data context.

This PR restores the 11.0 behavior.
Unit tests have been added.
For the rare cases where binding directly to a null data context is effectively expected (with a TargetNullValue set), we could add a new binding option in the future.
Fixed issues

Fixes #16618

I tried it and it works as expected. Will it be backported or will the fix be released with 11.2?


Your requirements could not be resolved to an installable set of packages

When running composer install I got met with these four problems:
-> % composer install
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for phpunit/php-code-coverage 3.0.2 -> satisfiable by phpunit/php-code-coverage[3.0.2].
    - phpunit/php-code-coverage 3.0.2 requires php >=5.6 -> your PHP version (5.5.27) or "config.platform.php" value does not satisfy that requirement.
  Problem 2
    - Installation request for phpunit/phpunit 5.1.3 -> satisfiable by phpunit/phpunit[5.1.3].
    - phpunit/phpunit 5.1.3 requires php >=5.6 -> your PHP version (5.5.27) or "config.platform.php" value does not satisfy that requirement.
  Problem 3
    - Installation request for phpunit/phpunit-mock-objects 3.0.6 -> satisfiable by phpunit/phpunit-mock-objects[3.0.6].
    - phpunit/phpunit-mock-objects 3.0.6 requires php >=5.6 -> your PHP version (5.5.27) or "config.platform.php" value does not satisfy that requirement.
  Problem 4
    - Installation request for sebastian/resource-operations 1.0.0 -> satisfiable by sebastian/resource-operations[1.0.0].
    - sebastian/resource-operations 1.0.0 requires php >=5.6.0 -> your PHP version (5.5.27) or "config.platform.php" value does not satisfy that requirement.

Update: Seems like it's only on my local machine, and not the Vagrant machine.

As the error specifies, phpunit >5.1requires php >=5.6 Yours is 5.5.27.
If you're just installing for production, try composer install --no-dev.

Strange. When I install with --no-dev I still get
...
phpunit/phpunit 5.4.2 requires php ^5.6 || ^7.0 -> your PHP version (5.5.30) does not satisfy that requirement.
....
even though the dependency to phpunit is in require-dev
Any thoughts?


Update apache-jena-libs to 4.2.0

Updates org.apache.jena:apache-jena-libs from 3.17.0 to 4.2.0.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.apache.jena", artifactId = "apache-jena-libs" } ]

labels: library-update, early-semver-major, semver-spec-major

Keep in mind, moving to Jena 4 excludes Java 8 compatibility.

Superseded by #57.


Rear Seats Heating entities no longer available

Is there an existing issue for this?

[X] I have searched both the existing open issues & recently closed issues and did not find a duplicate of this issue.

Version of the Tesla component
v3.20.3
Version of the Tesla car software
v11.1 (2024.2.7 d522c44937f7)
Model
Model 3
Current Behavior
Select Entities for rear seats heating are no longer available. From the Tesla app, the rear seats heating is still available.
Expected Behavior
Previously they were available and usable. You could do the same with them as with the front seats.
Debug logs
2024-03-18 15:14:55.056 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration localtuya which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2024-03-18 15:14:55.057 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration neerslag which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2024-03-18 15:14:55.057 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration nordpool which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2024-03-18 15:14:55.058 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration p2000 which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2024-03-18 15:14:55.058 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration openplantbook which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2024-03-18 15:14:55.058 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration spook_inverse which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2024-03-18 15:14:55.059 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration afvalinfo which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2024-03-18 15:14:55.059 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration webrtc which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2024-03-18 15:14:55.059 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration tgtg which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2024-03-18 15:14:55.060 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration buienalarm which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2024-03-18 15:14:55.060 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration ocpp which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2024-03-18 15:14:55.061 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration hacs which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2024-03-18 15:14:55.061 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration spook which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2024-03-18 15:14:55.061 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration plant which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2024-03-18 15:14:55.062 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration knmi which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2024-03-18 15:14:55.062 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration afvalwijzer which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2024-03-18 15:14:55.062 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration solcast_solar which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2024-03-18 15:14:55.063 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration tapo_control which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2024-03-18 15:14:55.064 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration home_connect_alt which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2024-03-18 15:14:55.065 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration tesla_custom which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2024-03-18 15:14:57.088 WARNING (Recorder) [homeassistant.components.recorder.util] The system could not validate that the sqlite3 database at //config/home-assistant_v2.db was shutdown cleanly
2024-03-18 15:14:57.094 WARNING (Recorder) [homeassistant.components.recorder.util] Ended unfinished session (id=956 from 2024-03-15 09:43:24.220448)
2024-03-18 15:15:01.274 WARNING (MainThread) [homeassistant.components.climate.const] CURRENT_HVAC_HEAT was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use HVACAction.HEATING instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.276 WARNING (MainThread) [homeassistant.components.climate.const] CURRENT_HVAC_IDLE was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use HVACAction.IDLE instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.278 WARNING (MainThread) [homeassistant.components.climate.const] HVAC_MODE_AUTO was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use HVACMode.AUTO instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.279 WARNING (MainThread) [homeassistant.components.climate.const] HVAC_MODE_HEAT was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use HVACMode.HEAT instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.280 WARNING (MainThread) [homeassistant.components.climate.const] HVAC_MODE_OFF was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use HVACMode.OFF instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.281 WARNING (MainThread) [homeassistant.components.climate.const] SUPPORT_PRESET_MODE was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use ClimateEntityFeature.PRESET_MODE instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.282 WARNING (MainThread) [homeassistant.components.climate.const] SUPPORT_TARGET_TEMPERATURE was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use ClimateEntityFeature.TARGET_TEMPERATURE instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.283 WARNING (MainThread) [homeassistant.components.climate.const] SUPPORT_TARGET_TEMPERATURE_RANGE was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use ClimateEntityFeature.TARGET_TEMPERATURE_RANGE instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.284 WARNING (MainThread) [homeassistant.const] TEMP_CELSIUS was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use UnitOfTemperature.CELSIUS instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.285 WARNING (MainThread) [homeassistant.const] TEMP_FAHRENHEIT was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use UnitOfTemperature.FAHRENHEIT instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.287 WARNING (MainThread) [homeassistant.components.cover] SUPPORT_CLOSE was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use CoverEntityFeature.CLOSE instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.288 WARNING (MainThread) [homeassistant.components.cover] SUPPORT_OPEN was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use CoverEntityFeature.OPEN instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.290 WARNING (MainThread) [homeassistant.components.cover] SUPPORT_SET_POSITION was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use CoverEntityFeature.SET_POSITION instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.290 WARNING (MainThread) [homeassistant.components.cover] SUPPORT_STOP was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use CoverEntityFeature.STOP instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.291 WARNING (MainThread) [homeassistant.components.cover] SUPPORT_CLOSE was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use CoverEntityFeature.CLOSE instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.292 WARNING (MainThread) [homeassistant.components.cover] SUPPORT_OPEN was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use CoverEntityFeature.OPEN instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.294 WARNING (MainThread) [homeassistant.components.cover] SUPPORT_SET_POSITION was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use CoverEntityFeature.SET_POSITION instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.295 WARNING (MainThread) [homeassistant.components.cover] SUPPORT_STOP was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use CoverEntityFeature.STOP instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.297 WARNING (MainThread) [homeassistant.components.fan] SUPPORT_DIRECTION was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use FanEntityFeature.DIRECTION instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.298 WARNING (MainThread) [homeassistant.components.fan] SUPPORT_OSCILLATE was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use FanEntityFeature.OSCILLATE instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.300 WARNING (MainThread) [homeassistant.components.fan] SUPPORT_SET_SPEED was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use FanEntityFeature.SET_SPEED instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.301 WARNING (MainThread) [homeassistant.components.fan] SUPPORT_DIRECTION was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use FanEntityFeature.DIRECTION instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.302 WARNING (MainThread) [homeassistant.components.fan] SUPPORT_OSCILLATE was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use FanEntityFeature.OSCILLATE instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:01.303 WARNING (MainThread) [homeassistant.components.fan] SUPPORT_SET_SPEED was used from localtuya, this is a deprecated constant which will be removed in HA Core 2025.1. Use FanEntityFeature.SET_SPEED instead, please create a bug report at https://github.com/rospogrigio/localtuya/issues
2024-03-18 15:15:03.360 WARNING (MainThread) [slixmpp.stringprep] Using slower stringprep, consider compiling the faster cython/libidn one.
2024-03-18 15:15:03.542 WARNING (MainThread) [homeassistant.helpers.frame] Detected that custom integration 'hacs' accesses hass.components.frontend. This is deprecated and will stop working in Home Assistant 2024.9, it should be updated to import functions used from frontend directly at custom_components/hacs/frontend.py, line 68: hass.components.frontend.async_register_built_in_panel(, please create a bug report at https://github.com/hacs/integration/issues
2024-03-18 15:15:11.434 WARNING (MainThread) [homeassistant.setup] Setup of command_line is taking over 10 seconds.
2024-03-18 15:15:34.929 WARNING (MainThread) [homeassistant.helpers.frame] Detected that custom integration 'plant' accesses hass.components.websocket_api. This is deprecated and will stop working in Home Assistant 2024.9, it should be updated to import functions used from websocket_api directly at custom_components/plant/__init__.py, line 224: hass.components.websocket_api.async_register_command(ws_get_info), please create a bug report at https://github.com/Olen/homeassistant-plant/issues
2024-03-18 15:15:39.274 WARNING (MainThread) [homeassistant.components.climate] Entity None (<class 'custom_components.tesla_custom.climate.TeslaCarClimate'>) implements HVACMode(s): heat_cool, off and therefore implicitly supports the turn_on/turn_off methods without setting the proper ClimateEntityFeature. Please create a bug report at https://github.com/alandtse/tesla/issues
2024-03-18 15:15:39.977 WARNING (MainThread) [homeassistant.helpers.template] Template variable warning: 'homeassistant.util.read_only_dict.ReadOnlyDict object' has no attribute 'description' when rendering '{{ states.binary_sensor.meteoalarm.attributes.description }}'
2024-03-18 15:15:39.977 WARNING (MainThread) [homeassistant.helpers.template] Template variable warning: 'homeassistant.util.read_only_dict.ReadOnlyDict object' has no attribute 'description' when rendering '{{ states.binary_sensor.meteoalarm.attributes.description }}'
2024-03-18 15:15:39.989 ERROR (MainThread) [homeassistant.helpers.event] Error while processing template: Template<template=({%- if ((states.sensor.lichtsensor_achtertuin_illuminance_lux.state|float(0)) > 30000) -%} {{ true }} {%- endif -%}) renders=2>
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 573, in async_render
    render_result = _render_with_context(self.template, compiled, **kwargs)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 2364, in _render_with_context
    return template.render(**kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/jinja2/environment.py", line 1301, in render
    self.environment.handle_exception()
  File "/usr/local/lib/python3.12/site-packages/jinja2/environment.py", line 936, in handle_exception
    raise rewrite_traceback_stack(source=source)
  File "<template>", line 1, in top-level template code
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 2037, in forgiving_float_filter
    return float(value)
           ^^^^^^^^^^^^
jinja2.exceptions.UndefinedError: 'None' has no attribute 'state'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 699, in async_render_to_info
    render_info._result = self.async_render(
                          ^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 575, in async_render
    raise TemplateError(err) from err
homeassistant.exceptions.TemplateError: UndefinedError: 'None' has no attribute 'state'
2024-03-18 15:15:40.006 ERROR (MainThread) [homeassistant.components.template.template_entity] TemplateError('UndefinedError: 'None' has no attribute 'state'') while processing template 'Template<template=({%- if ((states.sensor.lichtsensor_achtertuin_illuminance_lux.state|float(0)) > 30000) -%} {{ true }} {%- endif -%}) renders=4>' for attribute '_state' in entity 'binary_sensor.zonneschijn_achtertuin'
2024-03-18 15:15:40.007 ERROR (MainThread) [homeassistant.helpers.event] Error while processing template: Template<template=({%- if ((states.sensor.lichtsensor_emmy_buiten_illuminance_lux.state|float(0)) > 25000) -%} {{ true }} {%- endif -%}) renders=2>
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 573, in async_render
    render_result = _render_with_context(self.template, compiled, **kwargs)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 2364, in _render_with_context
    return template.render(**kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/jinja2/environment.py", line 1301, in render
    self.environment.handle_exception()
  File "/usr/local/lib/python3.12/site-packages/jinja2/environment.py", line 936, in handle_exception
    raise rewrite_traceback_stack(source=source)
  File "<template>", line 1, in top-level template code
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 2037, in forgiving_float_filter
    return float(value)
           ^^^^^^^^^^^^
jinja2.exceptions.UndefinedError: 'None' has no attribute 'state'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 699, in async_render_to_info
    render_info._result = self.async_render(
                          ^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 575, in async_render
    raise TemplateError(err) from err
homeassistant.exceptions.TemplateError: UndefinedError: 'None' has no attribute 'state'
2024-03-18 15:15:40.007 ERROR (MainThread) [homeassistant.components.template.template_entity] TemplateError('UndefinedError: 'None' has no attribute 'state'') while processing template 'Template<template=({%- if ((states.sensor.lichtsensor_emmy_buiten_illuminance_lux.state|float(0)) > 25000) -%} {{ true }} {%- endif -%}) renders=4>' for attribute '_state' in entity 'binary_sensor.zonneschijn_emmy'
2024-03-18 15:15:41.217 ERROR (MainThread) [homeassistant] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 1606, in async_reload
    unload_result = await self.async_unload(entry_id)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 1578, in async_unload
    raise OperationNotAllowed(
homeassistant.config_entries.OperationNotAllowed: The config entry Tablet Zolder (fully_kiosk) with entry_id 928efbe3559adbfc90ad38253ecd2674 cannot be unloaded because it is not in a recoverable state (ConfigEntryState.SETUP_IN_PROGRESS)
2024-03-18 15:15:41.222 ERROR (MainThread) [custom_components.localtuya.common] [703...3a0] Initial state update failed, giving up: TimeoutError()
2024-03-18 15:15:41.225 WARNING (MainThread) [custom_components.localtuya.common] [703...3a0] Disconnected - waiting for discovery broadcast
2024-03-18 15:16:13.389 WARNING (MainThread) [homeassistant.components.automation.licht_overloop_aan] Licht Overloop: Already running
2024-03-18 15:16:13.396 WARNING (MainThread) [homeassistant.components.automation.licht_achtertuin_aan] Licht Achtertuin: Already running
2024-03-18 15:16:13.396 WARNING (MainThread) [homeassistant.components.automation.licht_achtertuin_aan] Licht Achtertuin: Already running
2024-03-18 15:16:33.339 WARNING (MainThread) [homeassistant.components.utility_meter.sensor] Elektriciteitsmeter Verbruikt Totaal (Dagelijks) received an invalid new state from sensor.elektriciteitsmeter_verbruikt_totaal : unknown
2024-03-18 15:16:33.339 WARNING (MainThread) [homeassistant.components.utility_meter.sensor] Elektriciteitsmeter Verbruikt Totaal (Uurlijks) received an invalid new state from sensor.elektriciteitsmeter_verbruikt_totaal : unknown
2024-03-18 15:16:33.340 WARNING (MainThread) [homeassistant.components.utility_meter.sensor] Elektriciteitsmeter Verbruikt Totaal (Wekelijks) received an invalid new state from sensor.elektriciteitsmeter_verbruikt_totaal : unknown
2024-03-18 15:16:33.340 WARNING (MainThread) [homeassistant.components.utility_meter.sensor] Elektriciteitsmeter Verbruikt Totaal (Maandelijks) received an invalid new state from sensor.elektriciteitsmeter_verbruikt_totaal : unknown
2024-03-18 15:16:33.340 WARNING (MainThread) [homeassistant.components.utility_meter.sensor] Elektriciteitsmeter Geleverd Totaal (Dagelijks) received an invalid new state from sensor.elektriciteitsmeter_geleverd_totaal : unknown
2024-03-18 15:16:33.340 WARNING (MainThread) [homeassistant.components.utility_meter.sensor] Elektriciteitsmeter Geleverd Totaal (Uurlijks) received an invalid new state from sensor.elektriciteitsmeter_geleverd_totaal : unknown
2024-03-18 15:16:33.340 WARNING (MainThread) [homeassistant.components.utility_meter.sensor] Elektriciteitsmeter Geleverd Totaal (Wekelijks) received an invalid new state from sensor.elektriciteitsmeter_geleverd_totaal : unknown
2024-03-18 15:16:33.340 WARNING (MainThread) [homeassistant.components.utility_meter.sensor] Elektriciteitsmeter Geleverd Totaal (Maandelijks) received an invalid new state from sensor.elektriciteitsmeter_geleverd_totaal : unknown
2024-03-18 15:16:44.436 WARNING (MainThread) [aioesphomeapi.connection] luchtsensor-garage @ <IP_ADDRESS>: Connection error occurred: [Errno 104] Connection reset by peer
2024-03-18 15:18:23.398 WARNING (MainThread) [homeassistant.helpers.service] Referenced entities media_player.speaker_lisa are missing or not currently available
2024-03-18 15:18:23.401 WARNING (MainThread) [homeassistant.helpers.service] Referenced entities media_player.speaker_lisa are missing or not currently available
2024-03-18 15:20:10.211 WARNING (MainThread) [homeassistant.helpers.entity] Update of sensor.current_uv_index is taking over 10 seconds
2024-03-18 15:20:21.946 WARNING (MainThread) [aioesphomeapi.connection] luchtsensor-garage @ <IP_ADDRESS>: Connection error occurred: [Errno 104] Connection reset by peer
2024-03-18 15:26:17.629 ERROR (MainThread) [homeassistant.components.script] Script with alias 'speaker_announcement_test' could not be validated and has been disabled: Unknown selector type options found for dictionary value @ data['fields']['announcement_predefined']['selector']. Got {'options': ['Grandprix Radio', 'KX Radio']}
2024-03-18 15:29:00.183 ERROR (MainThread) [homeassistant.components.script] Script with alias 'speaker_announcement_test' could not be validated and has been disabled: template value should be a string for dictionary value @ data['sequence'][1]['data_template']. Got {'language': 'nl', 'message': '{{ announcement_custom announcement_predefined }}', 'entity_id': '{{ speakers }}'}
2024-03-18 15:36:40.783 WARNING (MainThread) [homeassistant.helpers.template] Template variable warning: 'announcement_custom' is undefined when rendering '{{ announcement_custom }} {{ announcement_predefined }}'
2024-03-18 15:39:24.216 WARNING (MainThread) [homeassistant.components.automation.toilet_bezet] Toilet Bezet: Already running
2024-03-18 15:40:10.212 WARNING (MainThread) [homeassistant.helpers.entity] Update of sensor.current_uv_index is taking over 10 seconds
2024-03-18 15:58:21.790 WARNING (MainThread) [aioesphomeapi.connection] luchtsensor-garage @ <IP_ADDRESS>: Connection error occurred: [Errno 104] Connection reset by peer
2024-03-18 15:58:53.778 WARNING (MainThread) [homeassistant.components.automation.tekst_naar_speakers] Speakers Algemeen: Already running
2024-03-18 15:59:46.550 WARNING (MainThread) [homeassistant.components.kodi.media_player] Unable to ping Kodi via websocket
2024-03-18 16:00:00.441 WARNING (MainThread) [homeassistant.components.automation.opladers_garage_aan] Opladers Garage: Already running
2024-03-18 16:00:00.441 WARNING (MainThread) [homeassistant.components.automation.opladers_laptops] Opladers Laptops: Already running
2024-03-18 16:00:00.441 WARNING (MainThread) [homeassistant.components.automation.opladers_tandenborstels] Opladers Tandenborstels: Already running
2024-03-18 16:00:00.441 WARNING (MainThread) [homeassistant.components.automation.opladers_telefoons_aan] Opladers Telefoons: Already running
2024-03-18 16:00:00.441 WARNING (MainThread) [homeassistant.components.automation.stekkerblok_emmy_uit] Oplader Laptop Emmy: Already running
2024-03-18 16:00:00.441 WARNING (MainThread) [homeassistant.components.automation.stekkerblok_julian_2] Oplader Laptop Julian: Already running
2024-03-18 16:00:00.441 WARNING (MainThread) [homeassistant.components.automation.stekkerblok_lisa_2] Oplader Laptop Lisa: Already running
2024-03-18 16:00:00.445 WARNING (MainThread) [homeassistant.components.automation.laadsnelheid_duckatti] Opladen Duckatti: Already running
2024-03-18 16:00:10.205 WARNING (MainThread) [homeassistant.helpers.entity] Update of sensor.current_uv_index is taking over 10 seconds
2024-03-18 16:00:31.396 WARNING (MainThread) [homeassistant.components.automation.laadsnelheid_duckatti] Opladen Duckatti: Already running
2024-03-18 16:09:17.182 WARNING (MainThread) [homeassistant.helpers.entity] Update of switch.airco_zolder_streamer is taking over 10 seconds
2024-03-18 16:09:37.182 WARNING (MainThread) [homeassistant.components.switch] Updating daikin switch took longer than the scheduled update interval 0:00:30
2024-03-18 16:10:07.183 WARNING (MainThread) [homeassistant.components.switch] Updating daikin switch took longer than the scheduled update interval 0:00:30
2024-03-18 16:16:00.081 ERROR (MainThread) [homeassistant.components.template.template_entity] TemplateError('ValueError: Template error: multiply got invalid input '1 error: 1.667 hours between start and end, where 1.75 hours are required' when rendering template '{% set sensor, hours, kwh, partial = 'sensor.tibber', 1.75, 1.25, 0.75 %} {% set start1, end1 = today_at('00:00'), today_at('06:00') %} {% set start2, end2 = today_at('06:00'), today_at('18:00') %} {% set start3, end3 = today_at('18:00'), today_at('06:00') + timedelta(days=1) %} {% set start4, end4 = today_at('06:00') + timedelta(days=1), today_at('18:00') + timedelta(days=1) %} {% if now() < end2 - timedelta(hours=(hours | multiply(partial))) %}
  {% from 'cheapest_energy_hours.jinja' import cheapest_energy_hours %}
  € {{ cheapest_energy_hours(sensor=sensor, hours=hours, start=start2, end=end2, look_ahead=true, include_tomorrow=true, mode='estimated_costs', kwh=kwh, precision=0) | multiply(0.01) | replace('.', ',') }}
{% else %}
  n.v.t.
{% endif %}' but no default was specified') while processing template 'Template<template=({% set sensor, hours, kwh, partial = 'sensor.tibber', 1.75, 1.25, 0.75 %} {% set start1, end1 = today_at('00:00'), today_at('06:00') %} {% set start2, end2 = today_at('06:00'), today_at('18:00') %} {% set start3, end3 = today_at('18:00'), today_at('06:00') + timedelta(days=1) %} {% set start4, end4 = today_at('06:00') + timedelta(days=1), today_at('18:00') + timedelta(days=1) %} {% if now() < end2 - timedelta(hours=(hours | multiply(partial))) %}
  {% from 'cheapest_energy_hours.jinja' import cheapest_energy_hours %}
  € {{ cheapest_energy_hours(sensor=sensor, hours=hours, start=start2, end=end2, look_ahead=true, include_tomorrow=true, mode='estimated_costs', kwh=kwh, precision=0) | multiply(0.01) | replace('.', ',') }}
{% else %}
  n.v.t.
{% endif %}) renders=128>' for attribute 'price_today' in entity 'binary_sensor.goedkoopste_starttijd_droogtrommel'
2024-03-18 16:20:10.204 WARNING (MainThread) [homeassistant.helpers.entity] Update of sensor.current_uv_index is taking over 10 seconds
2024-03-18 16:22:59.355 ERROR (MainThread) [homeassistant.components.template.template_entity] TemplateError('ValueError: Template error: float got invalid input 'unavailable' when rendering template '{%- set sensor = 'sensor.tibber' -%} {% set end1 = today_at('06:00') %} {% set end2 = today_at('06:00') + timedelta(days=1) %} {% if now() < end1 %}
  {% set end = end1 %}
{% else %}
  {% set end = end2 %}
{% endif %} {%- set percent = ((states.number.duckatti_charge_limit.state |float) - (states.sensor.duckatti_battery.state |float)) |round(0, default) -%} {% if percent > 0 %}
  {%- set hours = ( percent / 20 + 0.5) |round(1, "ceil", default) -%}
  {% from 'cheapest_energy_hours.jinja' import cheapest_energy_hours %}
  {{ cheapest_energy_hours(sensor=sensor, hours=hours, start=now(), end=end, look_ahead=true, include_tomorrow=true, split=true, mode='is_now') }}
{% endif %}' but no default was specified') while processing template 'Template<template=({%- set sensor = 'sensor.tibber' -%} {% set end1 = today_at('06:00') %} {% set end2 = today_at('06:00') + timedelta(days=1) %} {% if now() < end1 %}
  {% set end = end1 %}
{% else %}
  {% set end = end2 %}
{% endif %} {%- set percent = ((states.number.duckatti_charge_limit.state |float) - (states.sensor.duckatti_battery.state |float)) |round(0, default) -%} {% if percent > 0 %}
  {%- set hours = ( percent / 20 + 0.5) |round(1, "ceil", default) -%}
  {% from 'cheapest_energy_hours.jinja' import cheapest_energy_hours %}
  {{ cheapest_energy_hours(sensor=sensor, hours=hours, start=now(), end=end, look_ahead=true, include_tomorrow=true, split=true, mode='is_now') }}
{% endif %}) renders=144>' for attribute '_state' in entity 'binary_sensor.goedkoopste_starttijd_duckatti'
2024-03-18 16:22:59.355 ERROR (MainThread) [homeassistant.components.template.template_entity] TemplateError('ValueError: Template error: float got invalid input 'unavailable' when rendering template '{% if states.binary_sensor.goedkoopste_starttijd_duckatti.state == 'on' %}
  Nu
{% else %}
  {%- set sensor = 'sensor.tibber' -%}
  {% set end1 = today_at('06:00') %}
  {% set end2 = today_at('06:00') + timedelta(days=1) %}
  {% if now() < end1 %}
    {% set end = end1 %}
  {% else %}
    {% set end = end2 %}
  {% endif %}
  {%- set percent = ((states.number.duckatti_charge_limit.state |float) - (states.sensor.duckatti_battery.state |float)) |round(0, default) -%}
  {% if percent > 0 %}
    {%- set hours = ( percent / 20 + 0.5) |round(1, "ceil", default) -%}
    {% from 'cheapest_energy_hours.jinja' import cheapest_energy_hours %}
    {{ cheapest_energy_hours(sensor=sensor, hours=hours, start=now(), end=end, look_ahead=true, include_tomorrow=true, split=true) }}
  {% else %}
    n.v.t.
  {% endif %}
{% endif %}' but no default was specified') while processing template 'Template<template=({% if states.binary_sensor.goedkoopste_starttijd_duckatti.state == 'on' %}
  Nu
{% else %}
  {%- set sensor = 'sensor.tibber' -%}
  {% set end1 = today_at('06:00') %}
  {% set end2 = today_at('06:00') + timedelta(days=1) %}
  {% if now() < end1 %}
    {% set end = end1 %}
  {% else %}
    {% set end = end2 %}
  {% endif %}
  {%- set percent = ((states.number.duckatti_charge_limit.state |float) - (states.sensor.duckatti_battery.state |float)) |round(0, default) -%}
  {% if percent > 0 %}
    {%- set hours = ( percent / 20 + 0.5) |round(1, "ceil", default) -%}
    {% from 'cheapest_energy_hours.jinja' import cheapest_energy_hours %}
    {{ cheapest_energy_hours(sensor=sensor, hours=hours, start=now(), end=end, look_ahead=true, include_tomorrow=true, split=true) }}
  {% else %}
    n.v.t.
  {% endif %}
{% endif %}) renders=74>' for attribute 'start_time' in entity 'binary_sensor.goedkoopste_starttijd_duckatti'
2024-03-18 16:22:59.355 ERROR (MainThread) [homeassistant.components.template.template_entity] TemplateError('ValueError: Template error: float got invalid input 'unavailable' when rendering template '{%- set sensor = 'sensor.tibber' -%} {% set end1 = today_at('06:00') %} {% set end2 = today_at('06:00') + timedelta(days=1) %} {% if now() < end1 %}
  {% set end = end1 %}
{% else %}
  {% set end = end2 %}
{% endif %} {%- set percent = ((states.number.duckatti_charge_limit.state |float) - (states.sensor.duckatti_battery.state |float)) |round(0, default) -%} {% if percent > 0 %}
  {%- set hours = ( percent / 20 + 0.5) |round(1, "ceil", default) -%}
  {%- set kwh = ((states.number.duckatti_charge_limit.state |float) - (states.sensor.duckatti_battery.state |float)) | multiply(0.55) -%}
  {% from 'cheapest_energy_hours.jinja' import cheapest_energy_hours %}
  € {{ cheapest_energy_hours(sensor=sensor, hours=hours, start=now(), end=end, look_ahead=true, include_tomorrow=true, mode='estimated_costs', kwh=kwh, precision=0) | multiply(0.01) | round(2,default) | replace(".",",") }}
{% else %}
  n.v.t.
{% endif %}' but no default was specified') while processing template 'Template<template=({%- set sensor = 'sensor.tibber' -%} {% set end1 = today_at('06:00') %} {% set end2 = today_at('06:00') + timedelta(days=1) %} {% if now() < end1 %}
  {% set end = end1 %}
{% else %}
  {% set end = end2 %}
{% endif %} {%- set percent = ((states.number.duckatti_charge_limit.state |float) - (states.sensor.duckatti_battery.state |float)) |round(0, default) -%} {% if percent > 0 %}
  {%- set hours = ( percent / 20 + 0.5) |round(1, "ceil", default) -%}
  {%- set kwh = ((states.number.duckatti_charge_limit.state |float) - (states.sensor.duckatti_battery.state |float)) | multiply(0.55) -%}
  {% from 'cheapest_energy_hours.jinja' import cheapest_energy_hours %}
  € {{ cheapest_energy_hours(sensor=sensor, hours=hours, start=now(), end=end, look_ahead=true, include_tomorrow=true, mode='estimated_costs', kwh=kwh, precision=0) | multiply(0.01) | round(2,default) | replace(".",",") }}
{% else %}
  n.v.t.
{% endif %}) renders=144>' for attribute 'price' in entity 'binary_sensor.goedkoopste_starttijd_duckatti'
2024-03-18 16:22:59.355 ERROR (MainThread) [homeassistant.components.template.template_entity] TemplateError('ValueError: Template error: float got invalid input 'unavailable' when rendering template '{%- set percent = ((states.number.duckatti_charge_limit.state |float) - (states.sensor.duckatti_battery.state |float)) |round(0, default) -%} {% if percent > 0 %}
  {{ percent }} %
{% else %}
  n.v.t.
{% endif %}' but no default was specified') while processing template 'Template<template=({%- set percent = ((states.number.duckatti_charge_limit.state |float) - (states.sensor.duckatti_battery.state |float)) |round(0, default) -%} {% if percent > 0 %}
  {{ percent }} %
{% else %}
  n.v.t.
{% endif %}) renders=8>' for attribute 'percent' in entity 'binary_sensor.goedkoopste_starttijd_duckatti'
2024-03-18 16:22:59.355 ERROR (MainThread) [homeassistant.components.template.template_entity] TemplateError('ValueError: Template error: float got invalid input 'unavailable' when rendering template '{%- set percent = ((states.number.duckatti_charge_limit.state |float) - (states.sensor.duckatti_battery.state |float)) |round(0, default) -%} {% if percent > 0 %}
  {%- set hours = ( percent / 20 + 0.5) |round(1, "ceil", default) -%}
  {{ hours | multiply(3600) | timestamp_custom("%H:%M", 0) }}
{% else %}
  n.v.t.
{% endif %}' but no default was specified') while processing template 'Template<template=({%- set percent = ((states.number.duckatti_charge_limit.state |float) - (states.sensor.duckatti_battery.state |float)) |round(0, default) -%} {% if percent > 0 %}
  {%- set hours = ( percent / 20 + 0.5) |round(1, "ceil", default) -%}
  {{ hours | multiply(3600) | timestamp_custom("%H:%M", 0) }}
{% else %}
  n.v.t.
{% endif %}) renders=8>' for attribute 'hours' in entity 'binary_sensor.goedkoopste_starttijd_duckatti'
2024-03-18 16:22:59.367 WARNING (MainThread) [homeassistant.components.automation.laadsnelheid_duckatti] Opladen Duckatti: Already running
2024-03-18 16:22:59.370 WARNING (MainThread) [homeassistant.helpers.service] Referenced entities button.duckatti_force_data_update are missing or not currently available
2024-03-18 16:22:59.371 DEBUG (MainThread) [teslajsonpy.controller] Disconnecting controller.
2024-03-18 16:22:59.371 DEBUG (MainThread) [teslajsonpy.connection] Connection closed.
2024-03-18 16:22:59.371 INFO (MainThread) [custom_components.tesla_custom.teslamate] Un-subbing from all MQTT Topics.
2024-03-18 16:22:59.371 INFO (MainThread) [custom_components.tesla_custom.teslamate] Un-subbed from all MQTT Topics.
2024-03-18 16:22:59.371 DEBUG (MainThread) [custom_components.tesla_custom] Unloaded entry for
2024-03-18 16:22:59.381 DEBUG (MainThread) [teslajsonpy.connection] Connecting with existing access token
2024-03-18 16:22:59.382 DEBUG (MainThread) [teslajsonpy.controller] 552 endpoints loaded
2024-03-18 16:22:59.382 DEBUG (MainThread) [teslajsonpy.connection] Token expiration in 7:03:40
2024-03-18 16:22:59.382 DEBUG (MainThread) [teslajsonpy.connection] get: https://owner-api.teslamotors.com/api/1/products {}
2024-03-18 16:22:59.578 DEBUG (MainThread) [teslajsonpy.connection] 200: {"response":[{"id":1492932030558316,"user_id":1762356,"vehicle_id":936045421,"vin":"5YJ3E7EA8LF767481","color":null,"access_type":"DRIVER","display_name":"Duckatti","option_codes":"AD15,AF00,APFB,APH4,AU3D,BC3B,BT35,RNG0,CDM0,CH06,CONL,DRLH,DV2W,FC01,FG3B,FM3S,GLFR,HL31,HM30,ID3A,IL31,LTPW,MDL3,MR30,PPSW,PC30,REEU,RF3G,RS3H,S3PW,SA3P,SC04,STCP,SU3C,T3MS,TM00,TW00,UT3P,W38B,WR00,ZINV,MI01,PL30,SLR0,ST30,BG30,I36M,OSSB,AUF2,RSF0,ILF0,FGF0,CPF1,HP30,PT00,RL31","cached_data":"EicKAgoAEgISABoCIgAqAhIAOgwIyvTfrwYQgPjFqQLABgHQBgDgBgEatgEKAhIA+gEGCJDunZAGmgICGgDiAgwIyvTfrwYQgPjFqQLqAgIKAPICAgoA8gkICgIKABIAGgDABlrIBlDQBjLYBmToBgDwBgD9BkGoIEOFB+CY/EKNB0GoIEOQB0qYB0mlBzES80CtBwAACkK1BwAACkK4BwLABxDIBwDQBwDoBwDwBwD4BwCQCACoCAHACADICBDQCBCYCegCoAkAqAkQuAnYBMAJAMgJANAJAOUJAAAAAPgJACKLAfIBAgoAigIMCMr0368GEID4xakCmgICCgCtBgAAqEG1BgAAOEG9BgAAqEHFBgAAqEHIBgDQBgDYBgDgBgDoBgDwBgD9BgAAcEGFBwAA4EGIBwCQBwCYBwCgBwCoBwDQBwDwBwD4BwCACACICADACADICADQCADoCADwCAH4CACACQCQCQOwCQC4CQAqADKzArICEgoCCgDABowVyAYA0AYB2gYBILoCA6gGAdoCDAjK9N+vBhDA/IKqAvICAgoA+gICEgC6Awj/9//eD//wCtIDDAiz9N+vBhDA/IKqAtoDDAiz9N+vBhDA/IKqAuIDDAiz9N+vBhDA/IKqAuoDDAiz9N+vBhDA/IKqAsIEAKgGSeIGI3YxMS4xIOKBpigyMDI0LjIuNyBkNTIyYzQ0OTM3Zjcp4oGpsgcIRHVja2F0dGnABwHIBwHQBwHoCADwCACACQCICQCgCQGoCQCwCQe9CWdmPkDFCTMzO0DNCZqZQUDVCZqZQUDgCQDoCQCQCgCYCgCgCgCoCgCwCgC4CgDACgDICgDVCjMzQ0DdCmZmRkDYBADgBADoBADwBAD4BACABQCIBQCQBQC4BQDIBQDwBQA6lwIKAgoAEgPKAQA6AiIAQgIKAEoCKgBaAgoAYgISAGoCSgCCAQISAIoBAgoAkgECKgCaAQIKALoBAiIA2gEMCMr0368GEMD8gqoC4gECKgDqAQIqAPIBAiIAggICIgCKAgIKAJoCAhoAuAYBwAYAyAYA0AYB8AYAkAcAmAcAwAcByAcB0AcB4AcB6AcC8AcBsAgAwAgAyAgB0AgA2AgA6AgA8AgB+AgAgAmgOIgJAJgJAaAJAJIJFDIzNiwyMzUsMjM1LDAuNywwLjA0qgkGQ2hyb21lsAkA0AkD2AkA4AkB6AkB8AkA+AkAggoRNVlKM0U3RUE4TEY3Njc0ODGQCgGYCgGgCgHoAwCwCgG4CgHACgHICgHQCgBCAEpjegIKAJoBAhIAsgEYuAYAwAYA1QYAAPBC3QYAAEhC5QZ0O4JCgn0MCMr0368GEID4xakCqAYAsAYAuAYAwAYAyAYA0AYA2AYA4AYA6AYA8AYAiAcBkAcAoAcAqAcAsAcBwAcBWlMIBRIxKVoE7qGn4Ues4f/YMQtT5c/W0mOeI30j+ckiRybIYZayhnYjB4/Gh8mJVOQGbsuKlxocwMD2c1906ewerBO+XGCpuyoWIibG0nac3xbzJlqKAQgIEmioEXtSmZCSAu45IvtZ6jXdBnC2VPqqPCxJIvAkr8NIAYVteXjsnsNEkrm+/SvhmYZCMNYuWQLh9NrgrtqovIhP2NBSJSOKnnrTRHr99VCM3lEg0IA1SNsel8hRVnzdYg91m2LigWBLeRocZolmSEONs4I9+fgVt2aVvhLmbsz9kZXMZ6CUm1pmCLgvEkP/5zL93WG/ML/uLk7s/F+EKDq7ar4+AcJxUxuxFt01a9Tet7FewzpIIaaAJ9GzGWDUgPMTlEWtk//KT9iVxazAR+PsGhzeEIFvVPVuLu9Gi/JGrC60/4V80KpevLsUAWJqYgZMb2NrZWSiOJ4EEoAESNBZoWV8RXpcjlosPTBzvIFmHCWjTayDkLzvkkdqzRZFxs6ThXULmqGdZPEsaaFW3R8q7iv0oT+l1OzKmCaJMPv7CgVbUT1HNKAVm12nzqfuPWNF5N6dphZnEM9IqaZA8rcJHIsFZwFgZX+CunushN99ko1kVLo6fvvnIBdGZg7YwhL50RD0P5iyyBo5CkVlTICBYsnMUrosgSYF1gUtPUFcg3Bi1aGDHHQUyKi/eFg0/P8G4xAN5lJO6mC/1rDsdzSyAoor2yf1VTRBt5mmfe8TwEbC2BxojlmTwVDjecmlystKm8kMp/LsDolVSE05UzJLOv1TY//pqmow1eLImPTg09CrBNy32ZLuA/St7BajVpYx2ICv1FkxzUIRmjQcs79Xmy0nIeRqR9O8fm/N38956IQnqU6e1Vlvxf+OVPjBhzr3KUvg/zbe1KuZlxhncExO3ZzG4gZ0syzVcNoVxyJfe97qbTmMH6vlOlORuwPN2lBj4JmHi/lI1JnUaSgYLKM+4h9g8alaPXYcEch8ATlNdbIiCmf1XkEIcHeZLz8yGhjSTaGrdkgDxzjoAujzMoe/S6+uh4NUbfA0LMaeuvKX91WqKw7Eue3Z+9lZBEBwz6kvOsoCoM6Sw7NFjbEeAbQVtOb6tK3cCLJgRvyd80FsgGbnzBrLcCC7AAzQJgwaCwiH8fWvBhDAnLNUIgwI/4OtrgYQgJX+pAG4PgE=","granular_access":{"hide_private":false,"training_wheels":false},"tokens":["f043a1dea4d1f0ff","5ed53d8093648684"],"state":"online","in_service":false,"id_s":"1492932030558316","calendar_enabled":true,"api_version":73,"backseat_token":null,"backseat_token_updated_at":null,"ble_autopair_enrolled":false,"command_signing":"required","release_notes_supported":true}],"count":1}
2024-03-18 16:22:59.578 DEBUG (MainThread) [teslajsonpy.controller] 67481: Changing car_online from {} to True
2024-03-18 16:22:59.578 DEBUG (MainThread) [teslajsonpy.controller] 67481: Resetting last_wake_up_time to:<PHONE_NUMBER>
2024-03-18 16:22:59.578 DEBUG (MainThread) [teslajsonpy.controller] 67481: Resetting last_parked_timestamp to:<PHONE_NUMBER> shift_state None
2024-03-18 16:22:59.579 DEBUG (MainThread) [teslajsonpy.connection] Token expiration in 7:03:40
2024-03-18 16:22:59.579 DEBUG (MainThread) [teslajsonpy.connection] get: https://owner-api.teslamotors.com/api/1/vehicles/5YJ3E7EA8LF767481/vehicle_data?endpoints=charge_state%3Bclimate_state%3Bdrive_state%3Bgui_settings%3Bvehicle_config%3Bvehicle_state%3Blocation_data {}
2024-03-18 16:22:59.852 DEBUG (MainThread) [teslajsonpy.connection] 200: {"response":{"id":1492932030558316,"user_id":1762356,"vehicle_id":936045421,"vin":"5YJ3E7EA8LF767481","color":null,"access_type":"DRIVER","granular_access":{"hide_private":false,"training_wheels":false},"tokens":["f043a1dea4d1f0ff","5ed53d8093648684"],"state":"online","in_service":false,"id_s":"1492932030558316","calendar_enabled":true,"api_version":73,"backseat_token":null,"backseat_token_updated_at":null,"ble_autopair_enrolled":false,"charge_state":{"battery_heater_on":false,"battery_level":70,"battery_range":153.51,"charge_amps":0,"charge_current_request":0,"charge_current_request_max":16,"charge_enable_request":true,"charge_energy_added":7.6,"charge_limit_soc":90,"charge_limit_soc_max":100,"charge_limit_soc_min":50,"charge_limit_soc_std":80,"charge_miles_added_ideal":34.5,"charge_miles_added_rated":34.5,"charge_port_cold_weather_mode":false,"charge_port_color":"\u003cinvalid\u003e","charge_port_door_open":false,"charge_port_latch":"Engaged","charge_rate":0.0,"charger_actual_current":0,"charger_phases":null,"charger_pilot_current":16,"charger_power":0,"charger_voltage":2,"charging_state":"Disconnected","conn_charge_cable":"\u003cinvalid\u003e","est_battery_range":120.68,"fast_charger_brand":"\u003cinvalid\u003e","fast_charger_present":false,"fast_charger_type":"\u003cinvalid\u003e","ideal_battery_range":153.51,"max_range_charge_counter":0,"minutes_to_full_charge":0,"not_enough_power_to_heat":null,"off_peak_charging_enabled":false,"off_peak_charging_times":"all_week","off_peak_hours_end_time":360,"preconditioning_enabled":false,"preconditioning_times":"all_week","scheduled_charging_mode":"Off","scheduled_charging_pending":false,"scheduled_charging_start_time":null,"scheduled_charging_start_time_app":0,"scheduled_departure_time":1644656400,"scheduled_departure_time_minutes":600,"supercharger_session_trip_planner":false,"time_to_full_charge":0.0,"timestamp":1710775379790,"trip_charging":false,"usable_battery_level":70,"user_charge_enable_request":null},"climate_state":{"allow_cabin_overheat_protection":false,"auto_seat_climate_left":false,"auto_seat_climate_right":false,"battery_heater":false,"battery_heater_no_power":null,"cabin_overheat_protection":"Off","cabin_overheat_protection_actively_cooling":false,"climate_keeper_mode":"off","cop_activation_temperature":"High","defrost_mode":0,"driver_temp_setting":21.0,"fan_status":0,"hvac_auto_request":"On","inside_temp":20.5,"is_auto_conditioning_on":false,"is_climate_on":false,"is_front_defroster_on":false,"is_preconditioning":false,"is_rear_defroster_on":false,"left_temp_direction":0,"max_avail_temp":28.0,"min_avail_temp":15.0,"outside_temp":14.0,"passenger_temp_setting":21.0,"remote_heater_control_enabled":false,"right_temp_direction":0,"seat_heater_left":0,"seat_heater_rear_center":0,"seat_heater_rear_left":0,"seat_heater_rear_right":0,"seat_heater_right":0,"side_mirror_heaters":false,"supports_fan_only_cabin_overheat_protection":true,"timestamp":1710775379790,"wiper_blade_heater":false},"drive_state":{"active_route_latitude":52.06107,"active_route_longitude":5.2048,"active_route_traffic_minutes_delay":0.0,"gps_as_of":1710775377,"heading":51,"latitude":51.853801,"longitude":4.395856,"native_latitude":51.853801,"native_location_supported":1,"native_longitude":4.395856,"native_type":"wgs","power":0,"shift_state":null,"speed":null,"timestamp":1710775379790},"gui_settings":{"gui_24_hour_time":true,"gui_charge_rate_units":"kW","gui_distance_units":"km/hr","gui_range_display":"Rated","gui_temperature_units":"C","gui_tirepressure_units":"Bar","show_range_units":false,"timestamp":1710775379790},"vehicle_config":{"aux_park_lamps":"None","badge_version":0,"can_accept_navigation_requests":true,"can_actuate_trunks":true,"car_special_type":"base","car_type":"model3","charge_port_type":"CCS","cop_user_set_temp_supported":true,"dashcam_clip_save_supported":true,"default_charge_to_max":false,"driver_assist":"TeslaAP3","ece_restrictions":true,"efficiency_package":"Default","eu_vehicle":true,"exterior_color":"PearlWhite","exterior_trim":"Chrome","exterior_trim_override":"Chrome","has_air_suspension":false,"has_ludicrous_mode":false,"has_seat_cooling":false,"headlamp_type":"Premium","interior_trim_type":"White","key_version":2,"motorized_charge_port":true,"paint_color_override":"236,235,235,0.7,0.04","performance_package":"BasePlus","plg":false,"pws":false,"rear_drive_unit":"PM216MOSFET","rear_seat_heaters":1,"rear_seat_type":0,"rhd":false,"roof_color":"RoofColorGlass","seat_type":null,"spoiler_type":"None","sun_roof_installed":null,"supports_qr_pairing":false,"third_row_seats":"None","timestamp":1710775379791,"trim_badging":"50","use_range_badging":true,"utc_offset":3600,"webcam_selfie_supported":true,"webcam_supported":false,"wheel_type":"Pinwheel18"},"vehicle_state":{"api_version":73,"autopark_state_v2":"unavailable","calendar_supported":true,"car_version":"2024.2.7 d522c44937f7","center_display_state":0,"dashcam_clip_save_available":false,"dashcam_state":"Paused","df":0,"dr":0,"fd_window":0,"feature_bitmask":"fbdffbff,2b87f","fp_window":0,"ft":0,"is_user_present":false,"locked":true,"media_info":{"a2dp_source_name":"PieterPeen","audio_volume":0.3333,"audio_volume_increment":0.333333,"audio_volume_max":10.333333,"media_playback_status":"Playing","now_playing_album":"","now_playing_artist":"","now_playing_duration":0,"now_playing_elapsed":0,"now_playing_source":"13","now_playing_station":"DAB 538 NONSTOP","now_playing_title":"RADIO = 538"},"media_state":{"remote_control_enabled":true},"notifications_supported":true,"odometer":25866.369761,"parsed_calendar_supported":true,"pf":0,"pr":0,"rd_window":0,"remote_start":false,"remote_start_enabled":true,"remote_start_supported":true,"rp_window":0,"rt":0,"santa_mode":0,"sentry_mode":true,"sentry_mode_available":true,"service_mode":false,"service_mode_plus":false,"software_update":{"download_perc":0,"expected_duration_sec":2700,"install_perc":1,"status":"","version":" "},"speed_limit_mode":{"active":false,"current_limit_mph":65.116122,"max_limit_mph":120,"min_limit_mph":50.0,"pin_code_set":false},"timestamp":1710775379790,"tpms_hard_warning_fl":false,"tpms_hard_warning_fr":false,"tpms_hard_warning_rl":false,"tpms_hard_warning_rr":false,"tpms_last_seen_pressure_time_fl":1710750259,"tpms_last_seen_pressure_time_fr":1710750259,"tpms_last_seen_pressure_time_rl":1710750259,"tpms_last_seen_pressure_time_rr":1710750259,"tpms_pressure_fl":2.975,"tpms_pressure_fr":2.925,"tpms_pressure_rl":3.025,"tpms_pressure_rr":3.025,"tpms_rcp_front_value":3.05,"tpms_rcp_rear_value":3.1,"tpms_soft_warning_fl":false,"tpms_soft_warning_fr":false,"tpms_soft_warning_rl":false,"tpms_soft_warning_rr":false,"valet_mode":false,"valet_pin_needed":true,"vehicle_name":"Duckatti","vehicle_self_test_progress":0,"vehicle_self_test_requested":false,"webcam_available":false}}}
2024-03-18 16:22:59.853 INFO (MainThread) [custom_components.tesla_custom.teslamate] Un-subbing from all MQTT Topics.
2024-03-18 16:22:59.853 INFO (MainThread) [custom_components.tesla_custom.teslamate] Un-subbed from all MQTT Topics.
2024-03-18 16:22:59.853 DEBUG (MainThread) [custom_components.tesla_custom] Connected to the Tesla API
2024-03-18 16:22:59.867 WARNING (MainThread) [homeassistant.components.climate] Entity None (<class 'custom_components.tesla_custom.climate.TeslaCarClimate'>) implements HVACMode(s): heat_cool, off and therefore implicitly supports the turn_on/turn_off methods without setting the proper ClimateEntityFeature. Please create a bug report at https://github.com/alandtse/tesla/issues
2024-03-18 16:22:59.876 DEBUG (MainThread) [custom_components.tesla_custom] Running controller.update()
2024-03-18 16:22:59.876 DEBUG (MainThread) [teslajsonpy.controller] Get vehicles. Force: False Time: 1 Interval 60
2024-03-18 16:22:59.876 DEBUG (MainThread) [teslajsonpy.controller] 67481: online. Polling policy: normal. Update state: normal. Since last park: 1. Since last wake up: 0. Idle interval: 600. shift_state: None sentry: True climate: False, charging: Disconnected
2024-03-18 16:22:59.876 DEBUG (MainThread) [teslajsonpy.controller] 67481: Updating VEHICLE_DATA
2024-03-18 16:22:59.876 DEBUG (MainThread) [teslajsonpy.connection] Token expiration in 7:03:40
2024-03-18 16:22:59.876 DEBUG (MainThread) [teslajsonpy.connection] get: https://owner-api.teslamotors.com/api/1/vehicles/5YJ3E7EA8LF767481/vehicle_data?endpoints=charge_state%3Bclimate_state%3Bdrive_state%3Bgui_settings%3Bvehicle_config%3Bvehicle_state%3Blocation_data {}
2024-03-18 16:22:59.878 WARNING (MainThread) [homeassistant.components.automation.airco_duckatti] Airco Duckatti: Already running
2024-03-18 16:22:59.879 WARNING (MainThread) [homeassistant.components.automation.maxrange_duckatti] MaxRange Duckatti: Already running
2024-03-18 16:22:59.879 WARNING (MainThread) [homeassistant.components.automation.laadsnelheid_duckatti] Opladen Duckatti: Already running
2024-03-18 16:22:59.884 DEBUG (MainThread) [custom_components.tesla_custom.teslamate] Got car ID. VIN:5YJ3E7EA8LF767481 TeslamateID: None
2024-03-18 16:23:00.019 DEBUG (MainThread) [teslajsonpy.connection] 200: {"response":{"id":1492932030558316,"user_id":1762356,"vehicle_id":936045421,"vin":"5YJ3E7EA8LF767481","color":null,"access_type":"DRIVER","granular_access":{"hide_private":false,"training_wheels":false},"tokens":["f043a1dea4d1f0ff","5ed53d8093648684"],"state":"online","in_service":false,"id_s":"1492932030558316","calendar_enabled":true,"api_version":73,"backseat_token":null,"backseat_token_updated_at":null,"ble_autopair_enrolled":false,"charge_state":{"battery_heater_on":false,"battery_level":70,"battery_range":153.51,"charge_amps":0,"charge_current_request":0,"charge_current_request_max":16,"charge_enable_request":true,"charge_energy_added":7.6,"charge_limit_soc":90,"charge_limit_soc_max":100,"charge_limit_soc_min":50,"charge_limit_soc_std":80,"charge_miles_added_ideal":34.5,"charge_miles_added_rated":34.5,"charge_port_cold_weather_mode":false,"charge_port_color":"\u003cinvalid\u003e","charge_port_door_open":false,"charge_port_latch":"Engaged","charge_rate":0.0,"charger_actual_current":0,"charger_phases":null,"charger_pilot_current":16,"charger_power":0,"charger_voltage":2,"charging_state":"Disconnected","conn_charge_cable":"\u003cinvalid\u003e","est_battery_range":120.68,"fast_charger_brand":"\u003cinvalid\u003e","fast_charger_present":false,"fast_charger_type":"\u003cinvalid\u003e","ideal_battery_range":153.51,"max_range_charge_counter":0,"minutes_to_full_charge":0,"not_enough_power_to_heat":null,"off_peak_charging_enabled":false,"off_peak_charging_times":"all_week","off_peak_hours_end_time":360,"preconditioning_enabled":false,"preconditioning_times":"all_week","scheduled_charging_mode":"Off","scheduled_charging_pending":false,"scheduled_charging_start_time":null,"scheduled_charging_start_time_app":0,"scheduled_departure_time":1644656400,"scheduled_departure_time_minutes":600,"supercharger_session_trip_planner":false,"time_to_full_charge":0.0,"timestamp":1710775379978,"trip_charging":false,"usable_battery_level":70,"user_charge_enable_request":null},"climate_state":{"allow_cabin_overheat_protection":false,"auto_seat_climate_left":false,"auto_seat_climate_right":false,"battery_heater":false,"battery_heater_no_power":null,"cabin_overheat_protection":"Off","cabin_overheat_protection_actively_cooling":false,"climate_keeper_mode":"off","cop_activation_temperature":"High","defrost_mode":0,"driver_temp_setting":21.0,"fan_status":0,"hvac_auto_request":"On","inside_temp":20.5,"is_auto_conditioning_on":false,"is_climate_on":false,"is_front_defroster_on":false,"is_preconditioning":false,"is_rear_defroster_on":false,"left_temp_direction":0,"max_avail_temp":28.0,"min_avail_temp":15.0,"outside_temp":14.0,"passenger_temp_setting":21.0,"remote_heater_control_enabled":false,"right_temp_direction":0,"seat_heater_left":0,"seat_heater_rear_center":0,"seat_heater_rear_left":0,"seat_heater_rear_right":0,"seat_heater_right":0,"side_mirror_heaters":false,"supports_fan_only_cabin_overheat_protection":true,"timestamp":1710775379978,"wiper_blade_heater":false},"drive_state":{"active_route_latitude":52.06107,"active_route_longitude":5.2048,"active_route_traffic_minutes_delay":0.0,"gps_as_of":1710775377,"heading":51,"latitude":51.853801,"longitude":4.395856,"native_latitude":51.853801,"native_location_supported":1,"native_longitude":4.395856,"native_type":"wgs","power":0,"shift_state":null,"speed":null,"timestamp":1710775379978},"gui_settings":{"gui_24_hour_time":true,"gui_charge_rate_units":"kW","gui_distance_units":"km/hr","gui_range_display":"Rated","gui_temperature_units":"C","gui_tirepressure_units":"Bar","show_range_units":false,"timestamp":1710775379978},"vehicle_config":{"aux_park_lamps":"None","badge_version":0,"can_accept_navigation_requests":true,"can_actuate_trunks":true,"car_special_type":"base","car_type":"model3","charge_port_type":"CCS","cop_user_set_temp_supported":true,"dashcam_clip_save_supported":true,"default_charge_to_max":false,"driver_assist":"TeslaAP3","ece_restrictions":true,"efficiency_package":"Default","eu_vehicle":true,"exterior_color":"PearlWhite","exterior_trim":"Chrome","exterior_trim_override":"Chrome","has_air_suspension":false,"has_ludicrous_mode":false,"has_seat_cooling":false,"headlamp_type":"Premium","interior_trim_type":"White","key_version":2,"motorized_charge_port":true,"paint_color_override":"236,235,235,0.7,0.04","performance_package":"BasePlus","plg":false,"pws":false,"rear_drive_unit":"PM216MOSFET","rear_seat_heaters":1,"rear_seat_type":0,"rhd":false,"roof_color":"RoofColorGlass","seat_type":null,"spoiler_type":"None","sun_roof_installed":null,"supports_qr_pairing":false,"third_row_seats":"None","timestamp":1710775379978,"trim_badging":"50","use_range_badging":true,"utc_offset":3600,"webcam_selfie_supported":true,"webcam_supported":false,"wheel_type":"Pinwheel18"},"vehicle_state":{"api_version":73,"autopark_state_v2":"unavailable","calendar_supported":true,"car_version":"2024.2.7 d522c44937f7","center_display_state":0,"dashcam_clip_save_available":false,"dashcam_state":"Paused","df":0,"dr":0,"fd_window":0,"feature_bitmask":"fbdffbff,2b87f","fp_window":0,"ft":0,"is_user_present":false,"locked":true,"media_info":{"a2dp_source_name":"PieterPeen","audio_volume":0.3333,"audio_volume_increment":0.333333,"audio_volume_max":10.333333,"media_playback_status":"Playing","now_playing_album":"","now_playing_artist":"","now_playing_duration":0,"now_playing_elapsed":0,"now_playing_source":"13","now_playing_station":"DAB 538 NONSTOP","now_playing_title":"RADIO = 538"},"media_state":{"remote_control_enabled":true},"notifications_supported":true,"odometer":25866.369761,"parsed_calendar_supported":true,"pf":0,"pr":0,"rd_window":0,"remote_start":false,"remote_start_enabled":true,"remote_start_supported":true,"rp_window":0,"rt":0,"santa_mode":0,"sentry_mode":true,"sentry_mode_available":true,"service_mode":false,"service_mode_plus":false,"software_update":{"download_perc":0,"expected_duration_sec":2700,"install_perc":1,"status":"","version":" "},"speed_limit_mode":{"active":false,"current_limit_mph":65.116122,"max_limit_mph":120,"min_limit_mph":50.0,"pin_code_set":false},"timestamp":1710775379978,"tpms_hard_warning_fl":false,"tpms_hard_warning_fr":false,"tpms_hard_warning_rl":false,"tpms_hard_warning_rr":false,"tpms_last_seen_pressure_time_fl":1710750259,"tpms_last_seen_pressure_time_fr":1710750259,"tpms_last_seen_pressure_time_rl":1710750259,"tpms_last_seen_pressure_time_rr":1710750259,"tpms_pressure_fl":2.975,"tpms_pressure_fr":2.925,"tpms_pressure_rl":3.025,"tpms_pressure_rr":3.025,"tpms_rcp_front_value":3.05,"tpms_rcp_rear_value":3.1,"tpms_soft_warning_fl":false,"tpms_soft_warning_fr":false,"tpms_soft_warning_rl":false,"tpms_soft_warning_rr":false,"valet_mode":false,"valet_pin_needed":true,"vehicle_name":"Duckatti","vehicle_self_test_progress":0,"vehicle_self_test_requested":false,"webcam_available":false}}}
2024-03-18 16:23:00.020 DEBUG (MainThread) [custom_components.tesla_custom] Finished fetching tesla_custom data in 0.144 seconds (success: True)
2024-03-18 16:23:00.048 WARNING (MainThread) [homeassistant.components.automation.laadsnelheid_duckatti] Opladen Duckatti: Already running
2024-03-18 16:23:00.086 WARNING (MainThread) [homeassistant.components.automation.laadsnelheid_duckatti] Opladen Duckatti: Already running

Anything else?
No response

It's not clear to me what problem you're having exactly.  The rear seat heaters appear in the API response and I don't see any errors, each response is a 200.  Your log does not show any POST commands.  Can you describe the symptom again, and post a log with only the relevant section during the time when the problem happens?

Hi. Thanks. I'll try to explain better.
The Select Entities for the rear seats heating show as "unavailable" (and greyed-out) in Home Assistant. I'll also attach some screenshots.

Front seat heating is fine, as you can see in these screenshots.

So, if the rear seat heating shows as correctly retrieved from the API, why are the entities "unavailable"?

Also, I just updated the integration to v3.20.4 and restarted HA. The issue remains.

Isn't it the same as this one:
https://github.com/alandtse/tesla/issues/857

Oh ok, I understand now. Looks like a duplicate of #857.

Hmm possibly, sorry. I did seach for "rear seats", but it must have not shown it because the subject is "second/third row seats" :-)

Going to close as duplicate of #857


Fix team colors bug

Can't construct class names dynamically in TailwindCSS per this documentation. Oops.
Should be fixed now!

lgtm, yea TailwindCSS doesnt do dynamic class name


Linear interpolation option only works well for non replicated data

The current interpolation only works for single observations per dose because it is filling in between adjacent data points. However, this can lead to weird distortions of the interpolated estimate when the adjacent data points are the upper or lower points in both cases.
https://github.com/kusterlab/curve_curator/blob/01b22bce6366ffd581630f6629c03c69a8b417d5/curve_curator/quantification.py#L274-L282
Todo:

Make it a function
Make it compatible with aggregations per dose such that the linear interpolation estimate is relative to the means (robust)
Unit test it
Think about weights again and how to construct them (if possible).
Warn users that when they have weights, they are not in action when interpolation is activated.

Old behaviour clearly indicates the arbitrary selection of a reference point by the interpolation function.

intended behaviour uses the mean oder median per replicated dose in the combined analysis for the interpolation points.

default dict outperforms pandas groupby:


Material Button spacing issue when aligning text on Android (vue)

Whenever I add a class e.g. text-left or a css style text-align: left, the vertical spacing of the text inside the button is way off:

The spacing is only good when no text-alignment is used. (even text-center class breaks the vertical spacing).
This happens only on Android (various phones and simulator) and can be reproduced in the vue-demo.
Also attaching the .zip with code: https://we.tl/t-DdxyWKsDYC

For those facing the same issue, I've found that if you use the CSS rule vertical-text-alignment: middle; (on MDButton) or MDButton attribute verticalTextAlignment="middle" then the vertical alignment issue is fixed.
Even though this will fix the issue I think that vertical text alignment on Android should be middle by default and not to be set manually. So keeping this issue open.


Initial State object modified by React

When directly mutating an array in the react state instance the intialState object is also mutated. While I know updating the state this way is not the correct way, I see no React Warning to help people see that this is an issue and they should make state updates immutable.
Also I think the intialState object should not be modified under any circumstances by React, since it could be used to reset the state at some point.
Code Sandbox demonstrating the issue:
https://codesandbox.io/s/peaceful-khayyam-duq8f

just realized I opened this issue in the wrong repo, opened it on the main react repo instead:
https://github.com/facebook/react/issues/16940


change much  231023_0017

👷 Deploy Preview for yzm0518 processing.

Name
Link

🔨 Latest commit
f83683fabd9c03adca4b09cfdf8f7703ffced2b9

🔍 Latest deploy log
https://app.netlify.com/sites/yzm0518/deploys/65354b4d3232f8000824fb60


Update for sem 2 required

Update the scheduler for the next sem.

Fixed in https://github.com/arpit-saxena/schedule-maker/commit/0b8c4325342a92f5c9bb1d747c0f48c86e31226c


[Bug] When Android as a host/server, it can not list all files that are not media

When using Android device as a terminal for hosting server, some files (not media) (such as apk, pdf) can not be hosted and visible from Client app.
Affected/Tested device: Samsung Galaxy Tab A7 Lite, Android 13

This is caused by Directory.list() when hosting file from _getFilesHandler() (implementation level):
https://github.com/huynguyennovem/netshare/blob/302eb69a02f4c49993e9beb89dbcdb4d88e56414/lib/ui/server/server_widget.dart#L414-L421

Digging dive into this, it's related to Android permission, see https://github.com/dart-lang/sdk/issues/44848#issuecomment-898996395.

There are two options to handle this:

Granting MANAGE_EXTERNAL_STORAGE permission for this OS limitation.
Using privacy-friendly APIs, such as Storage Access Framework or Media Store API (see this).

Adding specific OS because it seems to be related to Android 11 and higher's manage storage (see https://developer.android.com/training/data-storage/manage-all-files#all-files-access-google-play) (limit broad access to shared storage)

Adding tech debt because:
In the near future, there is currently no plan to publish any version to the Play Store, so the 1st solution will be preferred.


Integrations with JS Framework

continuing discussion from: https://github.com/jeromeetienne/AR.js/issues/537

Hi, has anyone already found a way to integrate ar.js with vue?

I'm currently trying this as well.
I could not achieve it yet, but here is what I tried/observed so far:

AR.js appends the video directly to the body and changes its height and width. This breaks the Vue Applicaiton (In my case using the Vuetify Components Library) and affects all routes. An ID we can provide to append the video to would be great.
Reloading the route adds another video to the body element. We probably need to check for existing videos with the "arjs-video" ID
Disabling a running AR.js Application (when changing the route) is not possible (probably due to the global import via a

Is there a chance this fix is included in the official release?


Add CTRL+SHIFT+MINUS as a shortcut for zooming out

I confirm (by marking "x" in the [ ] below):

[X] This is not a feature idea. Feature ideas go here: http://www.mattermost.org/feature-ideas/
[X] This is not a troubleshooting question. Troubleshooting questions go here: http://www.mattermost.org/troubleshoot/
[X] This is a product defect issue that can be reproduced using the steps listed below.
[X] I have read CONTRIBUTING.md.

Summary
These are standard shorcuts that should work in any app. Original issue posted here.
Zoom in:

CTRL+= [implemented]
CTRL+SHIFT+= [implemented]

Zoom out:

CTRL+MINUS [implemented]
CTRL+SHIFT+MINUS

^Mac-equivalent shortcuts replaces CTRL with CMD.
If someone is familiar uses CTRL+SHIFT on the browser, then the experience appears broken on the desktop app since CTRL+SHIFT+MINUS doesn't work.

I'm taking this one. I will submit a PR within 24 hours.

Thanks @kytwb  for your interest! Highly appreciated!

@jasonblais From what I read from other issues and guess from the implemented "Zoom In", the shortcut with SHIFT can't work with every keyboard layout, can it?

I'm not sure but I see no change here. CMD+PLUS and CMD+MINUS work, and CMD+SHIFT+MINUS too, but CMD+SHIFT+PLUS is currently not working on OSX
Also this worked as decribed above already the same way before.
So what exactly should be the expected behaviour here on OSX?

Closed by #344


[WIP] Update Apply or UCAS page to provide more clarity about which service to use

Context
We want to make it easier for the candidate to choose between Apply and UCAS.
Changes proposed in this pull request
This PR updates the content on the Apply or UCAS page and adds radio buttons to choose between Apply and UCAS.
Before

After

Guidance to review

Needs refactoring, currently there's duplication in the ApplyFromFindController.
There's some spooky injection of HTML for the hint text for the radio buttons. Not sure how else to do this with GOVUKDesignSystemFormBuilder::FormBuilder.
The redirect to UCAS isn't tested. I was hoping to do just check the content of the page for UCAS stuff but that doesn't work because it's not part of the site.

Any ideas about the above?
Link to Trello card
https://trello.com/c/Ig9Gco50
Things to check

[x] This code doesn't rely on migrations in the same Pull Request
[x] If this code includes a migration adding or changing columns, it also backfills existing records for consistency
[x] API release notes have been updated if necessary
[x] New environment variables have been added to the Azure config

Oops... Forgot to click draft instead.


New git welcome missing guide

This PR applies the new git.missing welcome views from #136408.
The new UI is behind an experiment setting, so we can test its impact and also explore other installations like terminal-based flows.

I think it's misleading to start with the sentence "Source control depends on Git being installed." and only in the final paragraph mention that other providers exist.
I suggest starting with "Source control tracks code changes to look back and revert."
Next: "Git is the most popular... ...easy to learn and use."
Next: "This built-in source control depends on Git being installed on your workstation."
Next, the download button and the reload instruction.
Finally: "Other source control providers exist and can be installed from the Marketplace."

Thank you for the feedback! I see how the explainer-first flow can be a good alternative. I preferred to keep the action first to avoid burying the lede.

I think it's misleading to start with the sentence "Source control depends on Git being installed." and only in the final paragraph mention that other providers exist.

The current view for "missing git" starts in a similar fashion, focused on git:

A valid git installation was not detected, more details can be found in the [git output]
Please [install git], or learn more about how to use git and source control in VS Code …

The main reason for git focus is that we have more users on git vs the much smaller portion on the other providers. As this view also targets SCM beginners, users that are on other providers presumably don't need the additional onboarding that this view provides.

Personally I'd try to trim down the text to something that's easier to read and has links to documentation that can help users get started:

No source control providers found.
You can install [Git], a popular source control system, which helps you track code changes and syncs with the cloud. Follow our [getting started with Git guide] for more information.
[Download Git for macOS]
Additional source control providers can be installed from the Marketplace.

+1 for the shorter text that has been suggested by @misolori.


Increase timeout for service deployment.

This showed up in the nightly testing.
Bug: http://b/226103092
Test: N/A

We chatted offline - probably this is not an issue with the duration of the timeout. The action in question should complete in milliseconds.


11 write up shapley approximation algorithm

Here's what I could get working for the approximation algorithm. I updated the docs with the specific equations and steps that are taken for the derivation. We basically take the distance matrix we have set up, convert it into a "shared distance" matrix (distance shared between locations i and j with respect to starting location). We then make a Shared Contribution (equation included in docs) between each shared distance a given location k has with other locations, and subtract it from k's shared location with itself.

will review this tmrw morn

Can you move this from the main function into the core rideshare object? And maybe add some check to see if we are doing approximations or the standard algo?

Sure thing! I'm going to just put in a temporary condition to choose if we approximate (I'll just do n>=10 for now). I'm planning to figure out when would be best for the exact switch based on performance in ticket 3: "Decide when to send the API to the approximation #3"

That sounds good to me. Ill approve the pr when that change is pushed Josh Zwiebel From: Connor SweetSent: March 9, 2023 1:35 PMTo: joshzwiebel/Shapley-RoutingCc: Josh Zwiebel; Review requestedSubject: Re: [joshzwiebel/Shapley-Routing] 11 write up shapley approximation algorithm (PR #19) Sure thing! I'm going to just put in a temporary condition to choose if we approximate (I'll just do n>=10 for now). I'm planning to figure out when would be best for the exact switch based on performance in ticket 3: "Decide when to send the API to the approximation #3"—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because your review was requested.Message ID<EMAIL_ADDRESS>
Sure sounds good. Ill approve when that change is made. Thanks for the good work!

Change is made!


Joss revisions

A first round of edits based on preliminary responses to DavidPagnon's feedback. Larger issues will get their own issues and branches to sort out...

Largely changes to text, not code


Fix Youtube Previews

No content

Issue created by BlueBubbles Bot in the BlueBubbles commnity on behalf of @zach in #nightly-bugs.

Dupe. CLosed.


Error: spawn tail ENOENT on Windows 7 and Windows 8

I got the following error on Windows 8 and Windows 7 with Node v4.4.5:
C:\>frontail okp.log
events.js:141
      throw er; // Unhandled 'error' event
      ^

Error: spawn tail ENOENT
    at exports._errnoException (util.js:870:11)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:178:32)
    at onErrorNT (internal/child_process.js:344:16)
    at nextTickCallbackWith2Args (node.js:442:9)
    at process._tickCallback (node.js:356:17)
    at Function.Module.runMain (module.js:443:11)
    at startup (node.js:139:18)
    at node.js:968:3

However it works perfectly fine on Windows when I run the frontail through Git Bash. Is there something OS specific in the implementation that might cause the error?

Hey @danielpacak, frontail requires tail command available in OS. It's not present in Windows.
I guess that "Git Bash" is some kind of linux shell emulation, isn't it?

Ah, my bad. I thought that you're watching log files programmatically with the fs package, streams and stuff instead of spawning a child tail process. Indeed Git Bash provides a shell emulator with some useful linux commands including tail, hence it works. Anyways the error message speaks for itself.


When saving incorrect configuration, I get "Configuration file updated." instead of the error

Describe the bug
When saving incorrect configuration, I get "Configuration file updated." instead of the error
Affected Component(s)

[X] Back-End (Node.js, Next.js)
[X] Front-End (React.js)
[ ] Theming (CSS, React theme)
[ ] Build System
[ ] Docs

To Reproduce
Steps to reproduce the behavior:
Try to save an incorrect configuration (e.g., with a simple yaml error)
Expected behavior
The error should be displayed instead of updating the file (you can see that the backend service is reporting it by docker-compose logs -f configuration)
Screenshots

System (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

What should be happening is what we did in the old frontend:


Create property that switches Road Names visibility

What
Add support for showRoadNameLabels on Mapbox
How
Create a new parameter for showRoadNameLabels
Add the parameter to the webcomponent.js
Handle the parameter and check if it's a boolean
Default to undefined if it's not a boolean - then road name labels will disappear as soon as MapsIndoors data is shown

@ammapspeople @matbmapspeople I would suggest simplifying the name to something like showRoadNames instead of showRoadNameLabels. It's already pretty difficult for people to remember longer props and in this case the word labels is not necessarily intuitive. What do you think?

Besides updating release date. It is ready for re-review @ammapspeople and @andreeaceachir142

@matbmapspeople This one is a feature request, so it's okay to have it as a minor. It's not a bug for it to be a patch.

The code has been approved ✅ please make sure to write the test cases on the ticket so I can test the implementation. @matbmapspeople


Database doesnt get created on fresh install

Describe the bug
After cloning the Vulcan Next repo using the devel branch and setting env vars to a local db or docker db. Any attempt to login or signup throws this error.
MongooseError: Operation `vulcanusers.findOne()` buffering timed out after 10000ms

If I first navigate to http://localhost:3000/api/graphql then the database is created and seeded then everything works
Expected behavior
For the db to get created and seeded without first navigating to http://localhost:3000/api/graphql
Desktop (if applicable):

OS: IOS
Browser Chrome

with remote atlas db run dev.
event - compiled successfully
MongooseError: Operation `vulcanusers.findOne()` buffering timed out after 10000ms
    at Timeout.<anonymous> (/Applications/MAMP/htdocs/PROJECTS2021/vulcan-next/node_modules/mongoose/lib/drivers/node-mongodb-native/collection.js:185:20)
    at listOnTimeout (internal/timers.js:554:17)
    at processTimers (internal/timers.js:497:7)
MongooseError: Operation `vulcanusers.findOne()` buffering timed out after 10000ms
    at Timeout.<anonymous> (/Applications/MAMP/htdocs/PROJECTS2021/vulcan-next/node_modules/mongoose/lib/drivers/node-mongodb-native/collection.js:185:20)
    at listOnTimeout (internal/timers.js:554:17)
    at processTimers (internal/timers.js:497:7)
event - build page: /api/graphql
wait  - compiling...
event - compiled successfully
API resolved without sending a response for /, this may result in stalled requests.
(node:97119) DeprecationWarning: collection.count is deprecated, and will be removed in a future version. Use Collection.countDocuments or Collection.estimatedDocumentCount instead
(Use `node --trace-deprecation ...` to show where the warning was created)
No admin user found, seeding admin
API resolved without sending a response for /, this may result in stalled requests.

had to navigate first to /api/graphql

If i shut down dev and run dev again it doesnt connect to remote db in env
event - build page: /api/user
wait  - compiling...
event - compiled successfully
MongooseError: Operation `vulcanusers.findOne()` buffering timed out after 10000ms
    at Timeout.<anonymous> (/Applications/MAMP/htdocs/PROJECTS2021/vulcan-next/node_modules/mongoose/lib/drivers/node-mongodb-native/collection.js:185:20)
    at listOnTimeout (internal/timers.js:554:17)
    at processTimers (internal/timers.js:497:7)
MongooseError: Operation `vulcanusers.findOne()` buffering timed out after 10000ms
    at Timeout.<anonymous> (/Applications/MAMP/htdocs/PROJECTS2021/vulcan-next/node_modules/mongoose/lib/drivers/node-mongodb-native/collection.js:185:20)
    at listOnTimeout (internal/timers.js:554:17)
    at processTimers (internal/timers.js:497:7)
MongooseError: Operation `vulcanusers.findOne()` buffering timed out after 10000ms
    at Timeout.<anonymous> (/Applications/MAMP/htdocs/PROJECTS2021/vulcan-next/node_modules/mongoose/lib/drivers/node-mongodb-native/collection.js:185:20)
    at listOnTimeout (internal/timers.js:554:17)
    at processTimers (internal/timers.js:497:7)

have to hit /api/graphql first again

That's weird because opening /api/graphql is the same as sending a request to it, that doesn't matter if you open it in the browser or not.
It's impossible to seed without first querying this endpoint. And that makes sense, since you shouldn't need to seed if you don't hit it.
Next is based on serverless patterns, I provide seeding as a convenience but that should'nt even live in the framework, seed should happen before the Next app even starts up.
I will probably improve that in the future.

Fixed on devel, with a slightly better unit test for mongoConnection testing.


consider removing Google Services section from _config.yml

Instead of using google-analytics-id to generate the tracking snippet, the docs should just tell people to copy the code provided by their analytics into "_includes/head/analytics.html". With the need for "accept" tracking banners, more people will need to use a custom snippet rather than our pre-made version.
Google custom search using google-cse-id seems rarely used. Google search seems increasingly to great, and custom search engine a sort of ignored/forgotten product. Remove google-cse-id, "pages/google-search.md", and link from "search.md". We could add an article about how to add it if anyone is interested.

everyone agrees!


[HOLD] Add CancelTask action

Held on https://github.com/Expensify/App/pull/18806
Details
Adds action for cancelling a task
Fixed Issues
$ https://github.com/Expensify/App/issues/16857
Tests

Create a task w
In the task report, Three-dot menu > Cancel
Verify the task report appears archived
Navigate to the chat report with the user
Verify there's a "Canceled task" message
Click the Canceled task message
Verify it navigates to the canceled task report

Offline tests
Same as Tests but go offline after Step 1
QA Steps
Same as tests

[ ] Verify that no errors appear in the JS console

PR Author Checklist

[ ] I linked the correct issue in the ### Fixed Issues section above
[ ] I wrote clear testing steps that cover the changes made in this PR

[ ] I added steps for local testing in the Tests section
[ ] I added steps for the expected offline behavior in the Offline steps section
[ ] I added steps for Staging and/or Production testing in the QA steps section
[ ] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[ ] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[ ] I included screenshots or videos for tests on all platforms
[ ] I ran the tests on all platforms & verified they passed on:

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[ ] MacOS / Chrome / Safari
[ ] MacOS / Desktop

[ ] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[ ] I followed proper code patterns (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[ ] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[ ] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[ ] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[ ] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[ ] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I followed the guidelines as stated in the Review Guidelines
[ ] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] I verified that if a function's arguments changed that all usages have also been updated correctly
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[ ] If any new file was added I verified that:

[ ] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[ ] If a new CSS style is added I verified that:

[ ] A similar style doesn't already exist
[ ] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[ ] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[ ] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[ ] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[ ] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Web

Mobile Web - Chrome

Mobile Web - Safari

Desktop

iOS

Android

Suggestions look good though I'm gonna wait for your PR to get finalized before putting them in just so that I don't have to resolve conflicts over and over. Ping me when that's ready!

Thanks for the review I'm taking these questions to slack internally to get some answers (convo)

Looks like we're failing a lint but should be ready to test after that is fixed

Oh, also https://github.com/Expensify/App/pull/18747#discussion_r1194506166 as well - let us know when it's ready

Ready for another review!

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to production by https://github.com/yuwenmemon in version: 1.3.15-12 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅