Adaptive Lighting screwing up Brightness.

Hey,
I want to use adaptive Lighting for the sole purpose of setting the light temperature over the day, so I turned adapt brightness off.
However when I turn on my Light Group with a light card in Lovelace, somehow the light will always be set to 1% brightness.
Obviously I don't want that, I only want adaptive Lighting to set the light temp/color over the day.
Is this expected behaviour, if so, how do I turn it off ?
If it's a bug feel free to ask for any logs or additional info.
Bulbs are Philips hue white Ambiance E27 integrated with ZHA,
HA and adaptive lighting are on the newest Version.
Thanks.

I have a hue bulb thats not in AL that does the same thing. I made a script to set it to 100% when its turned on. I don't think AL is to blame here, I think its hue

I am having the same issue. Recently discovered Adaptive Lighting, but want to only control the light temperature. So I turned off the Adapt Brigthness Switch, but if call a HA turn_on command with 100% brigthness, adaptive lighting sets the brightness to an other value (like it normally would, if you leave "adapt brigthness" on).
Strangely enough, this does not happen every time i turn on a light...

Could anyone having this issue please post your config and debug logs, and the model of light you're using?

I have a hue bulb thats not in AL that does the same thing. I made a script to set it to 100% when its turned on. I don't think AL is to blame here, I think its hue

No, I have the same issue with Ikea lamps

I have a hue bulb thats not in AL that does the same thing. I made a script to set it to 100% when its turned on. I don't think AL is to blame here, I think its hue

No, I have the same issue with Ikea lamps

I also have a hue bulbs that does the same thing. My automation just calls it to 100%. It’s annoying so I just put it in my closet light

I have a hue bulb thats not in AL that does the same thing. I made a script to set it to 100% when its turned on. I don't think AL is to blame here, I think its hue

No, I have the same issue with Ikea lamps

I also have a hue bulbs that does the same thing. My automation just calls it to 100%. It’s annoying so I just put it in my closet light

As I also posted in another similar issue:

I actually have the same issue.
I at first thought it was an issue with my network and didn't thought of it could be due to the adaptive lighting.
For me this issue occurs as follows:
When setting the color to a different color then it should be according to the adaptive light integration things go wrong. For example when selecting 4000K, and it should be 2200K. Turn off the lamp. Turn on the lamp again at the highest brightness, the lamp will only go to the lowest brightness while Z2m and HA think the light is set to 100.
This was driving me crazy, I even bought a new zigbee stick since I thought it was related to incompatible hardware. I also tested it on the clean setup.
When disabling adaptive lighting for that lamp, no issue is present.
What can I do to help? What logs do you need and how do I collect them?

@jjnj023 you can enable debug logging  in home assistant, instructions are in the troubleshooting section of the readme https://github.com/basnijholt/adaptive-lighting

As I also posted in another similar issue:
@jjnj023 Can you gather all of the comments you've gathered so I can have everything together? Some of those issues are probably duplicates but they probably have other users' comments that would be useful to debug the issue.

Since you're using Z2M i'd also like your configuration.yaml, devices.yaml, and groups.yaml. See https://github.com/basnijholt/adaptive-lighting/discussions/503 for instructions

As I also posted in another similar issue:

@jjnj023 Can you gather all of the comments you've gathered so I can have everything together? Some of those issues are probably duplicates but they probably have other users' comments that would be useful for me to debug the issue.
Since you're using Z2M i'd also like your configuration.yaml, devices.yaml, and groups.yaml. See #503 for instructions
I made a word document, Im not used to github yet. In the document you can find the issues and relevant comments.

I'm not to sure how to gather the yaml files, sorry.
Brightness issues adaptive lighting.docx

When setting the color to a different color then it should be according to the adaptive light integration things go wrong. For example when selecting 4000K, and it should be 2200K. Turn off the lamp. Turn on the lamp again at the highest brightness, the lamp will only go to the lowest brightness while Z2m and HA think the light is set to 100.

this entire comment confuses me. The values you setup for the integration are not the values it will stick with all the time: they change throughout the day. You seem to be confused on how the integration is supposed to work. adaptive-lighting adapts your lights' brightness & color according to the position of the sun. This sounds like normal behavior

For example when selecting 4000K, and it should be 2200K

yes if you're setting 4000K as the max_color_temp, you'll only see this happen at midday or noon. as long as the adapt_color switch is on.
also if you're setting max_brightness to 100%, you'll only see that happen at noon too. as long as the adapt_brightness switch is on.
If hass is reporting the wrong values with the integration disabled,which I'm only guessing since you haven't posted your config, the usual problem is reporting is turned off.
See https://github.com/basnijholt/adaptive-lighting/discussions/506 for the guide I wrote on how to configure lights for Zigbee2MQTT.

I just went through your logs: everything that's happening in there looks normal.
It is a bit hard to tell because it looks like you're constantly flipping sleep/brightness/color adapt switches and turning lights on and off while its running.
If you can post logs for like 10 minutes of adaptive lighting doing its normal thing without all of that manual interference I could confirm for sure.

@jjnj023

I'm not to sure how to gather the yaml files, sorry.

I wrote a guide on how to post your config on this link: #503

Is anyone still observing this problem with 1.19.0 or later?

I have the same issue sinds the last couple of weeks before it worked fine.
When I turn the lights connected to AL ON the brightness is always 1% when I then increase the brightness manually lets say 50% and toggle the lights it is back at 1%. When I disable AL and toggle the lights it sticks at 50%.
I am using the default settings.
I already remove AL and reinstalled it trough HACS. I made sure I am running the latest homeassistent and AL it still happens

Without debugging logs I can’t help unfortunately.

Without debugging logs I can’t help unfortunately.

Hi Bas thanks for replying. I followed your instructions. After that restarted HA and turned the lights ON/OFF from my dashboard. Please let me know if there is anything I unclear or I forgot.
2023-09-25 09:17:29.953 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
2023-09-25 09:17:29.954 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration adaptive_lighting 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
2023-09-25 09:17:37.466 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Setting up AdaptiveLighting with data: {'dec72e6d01a21f519b17d8b139c8b28a': {'undo_update_listener': <function ConfigEntry.add_update_listener.<locals>.<lambda> at 0x7f34dc1cf600>}} and config_entry <homeassistant.config_entries.ConfigEntry object at 0x7f3501704fb0>
2023-09-25 09:17:37.468 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Woonkamer: Set switch settings for lights '['light.alle_lampen']'. now using data: '{'lights': ['light.alle_lampen'], 'interval': datetime.timedelta(seconds=90), 'transition': 45.0, 'initial_transition': 1.0, 'min_brightness': 10, 'max_brightness': 85, 'min_color_temp': 2000, 'max_color_temp': 5500, 'prefer_rgb_color': False, 'sleep_brightness': 1, 'sleep_rgb_or_color_temp': 'color_temp', 'sleep_color_temp': 1000, 'sleep_rgb_color': [255, 56, 0], 'sleep_transition': 1.0, 'transition_until_sleep': False, 'sunrise_time': None, 'min_sunrise_time': None, 'max_sunrise_time': None, 'sunrise_offset': datetime.timedelta(0), 'sunset_time': None, 'min_sunset_time': None, 'max_sunset_time': None, 'sunset_offset': datetime.timedelta(0), 'brightness_mode': 'default', 'brightness_mode_time_dark': datetime.timedelta(seconds=900), 'brightness_mode_time_light': datetime.timedelta(seconds=3600), 'take_over_control': True, 'detect_non_ha_changes': False, 'autoreset_control_seconds': 0, 'only_once': False, 'adapt_only_on_bare_turn_on': False, 'separate_turn_on_commands': False, 'send_split_delay': 0, 'adapt_delay': 0.0, 'skip_redundant_commands': False, 'intercept': True, 'multi_light_intercept': True, 'include_config_in_attributes': False, 'name': 'Woonkamer'}'
2023-09-25 09:17:37.468 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Woonkamer: Setting up with '['light.alle_lampen']', config_entry.data: '{'name': 'Woonkamer'}', config_entry.options: '{'lights': ['light.alle_lampen'], 'interval': 90, 'transition': 45.0, 'initial_transition': 1.0, 'min_brightness': 10, 'max_brightness': 85, 'min_color_temp': 2000, 'max_color_temp': 5500, 'prefer_rgb_color': False, 'sleep_brightness': 1, 'sleep_rgb_or_color_temp': 'color_temp', 'sleep_color_temp': 1000, 'sleep_rgb_color': [255, 56, 0], 'sleep_transition': 1.0, 'transition_until_sleep': False, 'sunrise_time': 'None', 'min_sunrise_time': 'None', 'max_sunrise_time': 'None', 'sunrise_offset': 0, 'sunset_time': 'None', 'min_sunset_time': 'None', 'max_sunset_time': 'None', 'sunset_offset': 0, 'brightness_mode': 'default', 'brightness_mode_time_dark': 900, 'brightness_mode_time_light': 3600, 'take_over_control': True, 'detect_non_ha_changes': False, 'autoreset_control_seconds': 0, 'only_once': False, 'adapt_only_on_bare_turn_on': False, 'separate_turn_on_commands': False, 'send_split_delay': 0, 'adapt_delay': 0.0, 'skip_redundant_commands': False, 'intercept': True, 'multi_light_intercept': True, 'include_config_in_attributes': False}', converted to '{'lights': ['light.alle_lampen'], 'interval': datetime.timedelta(seconds=90), 'transition': 45.0, 'initial_transition': 1.0, 'min_brightness': 10, 'max_brightness': 85, 'min_color_temp': 2000, 'max_color_temp': 5500, 'prefer_rgb_color': False, 'sleep_brightness': 1, 'sleep_rgb_or_color_temp': 'color_temp', 'sleep_color_temp': 1000, 'sleep_rgb_color': [255, 56, 0], 'sleep_transition': 1.0, 'transition_until_sleep': False, 'sunrise_time': None, 'min_sunrise_time': None, 'max_sunrise_time': None, 'sunrise_offset': datetime.timedelta(0), 'sunset_time': None, 'min_sunset_time': None, 'max_sunset_time': None, 'sunset_offset': datetime.timedelta(0), 'brightness_mode': 'default', 'brightness_mode_time_dark': datetime.timedelta(seconds=900), 'brightness_mode_time_light': datetime.timedelta(seconds=3600), 'take_over_control': True, 'detect_non_ha_changes': False, 'autoreset_control_seconds': 0, 'only_once': False, 'adapt_only_on_bare_turn_on': False, 'separate_turn_on_commands': False, 'send_split_delay': 0, 'adapt_delay': 0.0, 'skip_redundant_commands': False, 'intercept': True, 'multi_light_intercept': True, 'include_config_in_attributes': False, 'name': 'Woonkamer'}'.
2023-09-25 09:17:37.473 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Adaptive Lighting Sleep Mode: Woonkamer: last state is <state switch.adaptive_lighting_sleep_mode_woonkamer=on; icon=mdi:sleep, friendly_name=Adaptive Lighting Sleep Mode: Woonkamer @ 2023-09-25T09:14:19.231190+02:00>
2023-09-25 09:17:37.473 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Adaptive Lighting Sleep Mode: Woonkamer: Turning on
2023-09-25 09:17:37.474 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Adaptive Lighting Adapt Color: Woonkamer: last state is <state switch.adaptive_lighting_adapt_color_woonkamer=on; icon=mdi:sun-thermometer, friendly_name=Adaptive Lighting Adapt Color: Woonkamer @ 2023-09-25T09:14:19.231675+02:00>
2023-09-25 09:17:37.474 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Adaptive Lighting Adapt Color: Woonkamer: Turning on
2023-09-25 09:17:37.474 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Adaptive Lighting Adapt Brightness: Woonkamer: last state is <state switch.adaptive_lighting_adapt_brightness_woonkamer=on; icon=mdi:brightness-4, friendly_name=Adaptive Lighting Adapt Brightness: Woonkamer @ 2023-09-25T09:14:19.232111+02:00>
2023-09-25 09:17:37.474 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Adaptive Lighting Adapt Brightness: Woonkamer: Turning on
2023-09-25 09:17:37.474 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Woonkamer: Called 'async_turn_on', current state is 'None'
2023-09-25 09:17:37.474 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Woonkamer: Called '_setup_listeners'
2023-09-25 09:17:37.474 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Woonkamer: Cancelled '_setup_listeners'
2023-09-25 09:17:37.475 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Woonkamer: '_update_attrs_and_maybe_adapt_lights' called with context.id='01HB5K6S22:al:K5XW:trn_:00' lights: 'None', transition: '1.0', force: 'True'
2023-09-25 09:17:37.475 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Woonkamer: filtered_lights: '[]'
2023-09-25 09:17:37.621 ERROR (MainThread) [homeassistant.components.sensor] Error adding entities for domain sensor with platform dsmr_reader
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 507, in async_add_entities
    await asyncio.gather(*tasks)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 752, in _async_add_entity
    await entity.add_to_platform_finish()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1001, in add_to_platform_finish
    await self.async_added_to_hass()
  File "/usr/src/homeassistant/homeassistant/components/dsmr_reader/sensor.py", line 55, in async_added_to_hass
    await mqtt.async_subscribe(
  File "/usr/src/homeassistant/homeassistant/components/mqtt/client.py", line 176, in async_subscribe
    raise HomeAssistantError(
homeassistant.exceptions.HomeAssistantError: Cannot subscribe to topic 'dsmr/reading/electricity_delivered_1', MQTT is not enabled
2023-09-25 09:17:37.629 ERROR (MainThread) [homeassistant.components.sensor] Error while setting up dsmr_reader platform for sensor
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 367, in _async_setup_platform
    await asyncio.gather(*pending)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 507, in async_add_entities
    await asyncio.gather(*tasks)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 752, in _async_add_entity
    await entity.add_to_platform_finish()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1001, in add_to_platform_finish
    await self.async_added_to_hass()
  File "/usr/src/homeassistant/homeassistant/components/dsmr_reader/sensor.py", line 55, in async_added_to_hass
    await mqtt.async_subscribe(
  File "/usr/src/homeassistant/homeassistant/components/mqtt/client.py", line 176, in async_subscribe
    raise HomeAssistantError(
homeassistant.exceptions.HomeAssistantError: Cannot subscribe to topic 'dsmr/reading/electricity_delivered_1', MQTT is not enabled
2023-09-25 09:17:46.719 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Woonkamer: Called '_setup_listeners'
2023-09-25 09:17:46.720 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Expanded light.alle_lampen to ['light.keuken_aanrecht', 'light.keuken_kookplaat', 'light.woonkamer_tv', 'light.woonkamer_kamertafel', 'light.woonkamer_bank', 'light.woonkamer_eettafel', 'light.slaapkamer_nachtkastje']
2023-09-25 09:18:33.157 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] (0) _service_interceptor_turn_on_handler: call.context.id='01HB5K8FE4C4JFCNY2E8DQ03V2', is_skipped_hash='False'
2023-09-25 09:18:33.157 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] (1) _service_interceptor_turn_on_handler: call='<ServiceCall light.turn_on (c:01HB5K8FE4C4JFCNY2E8DQ03V2): entity_id=['light.keuken_aanrecht', 'light.keuken_kookplaat', 'light.slaapkamer_nachtkastje', 'light.woonkamer_bank', 'light.woonkamer_eettafel', 'light.woonkamer_kamertafel', 'light.woonkamer_tv'], params=>', service_data='{'entity_id': ['light.keuken_aanrecht', 'light.keuken_kookplaat', 'light.slaapkamer_nachtkastje', 'light.woonkamer_bank', 'light.woonkamer_eettafel', 'light.woonkamer_kamertafel', 'light.woonkamer_tv'], 'params': {}}'
2023-09-25 09:18:33.158 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] (2) _service_interceptor_turn_on_handler: switch_to_eids='{'Adaptive Lighting: Woonkamer': ['light.keuken_aanrecht', 'light.keuken_kookplaat', 'light.slaapkamer_nachtkastje', 'light.woonkamer_bank', 'light.woonkamer_eettafel', 'light.woonkamer_kamertafel', 'light.woonkamer_tv']}', skipped='[]'
2023-09-25 09:18:33.159 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] (3) _service_interceptor_turn_on_handler: intercepting entity_ids='['light.keuken_aanrecht', 'light.keuken_kookplaat', 'light.slaapkamer_nachtkastje', 'light.woonkamer_bank', 'light.woonkamer_eettafel', 'light.woonkamer_kamertafel', 'light.woonkamer_tv']'
2023-09-25 09:18:33.159 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Intercepted TURN_ON call with data {'params': {}, 'entity_id': ['light.keuken_aanrecht', 'light.keuken_kookplaat', 'light.slaapkamer_nachtkastje', 'light.woonkamer_bank', 'light.woonkamer_eettafel', 'light.woonkamer_kamertafel', 'light.woonkamer_tv']} (01HB5K8FE4C4JFCNY2E8DQ03V2)
2023-09-25 09:18:33.164 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Woonkamer: Setting color_temp of light light.woonkamer_tv
2023-09-25 09:18:33.164 DEBUG (MainThread) [custom_components.adaptive_lighting.adaptation_utils] Preparing adaptation data for light.woonkamer_tv with service data {'entity_id': 'light.woonkamer_tv', 'transition': 1.0, 'brightness': 3, 'color_temp_kelvin': 2000}
2023-09-25 09:18:33.165 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected an 'light.turn_on('['light.keuken_aanrecht', 'light.keuken_kookplaat', 'light.slaapkamer_nachtkastje', 'light.woonkamer_bank', 'light.woonkamer_eettafel', 'light.woonkamer_kamertafel', 'light.woonkamer_tv']')' event with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.165 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Woonkamer: execute_cancellable_adaptation_calls with data: AdaptationData(entity_id=light.woonkamer_tv, context_id=01HB5K8FEC:al:K5XW:dpt_:01, sleep_time=1.0, force=False, max_length=1, which=both, initial_sleep=True)
2023-09-25 09:18:33.365 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected a 'light.woonkamer_eettafel' 'state_changed' event: '{'supported_color_modes': [<ColorMode.BRIGHTNESS: 'brightness'>], 'color_mode': <ColorMode.BRIGHTNESS: 'brightness'>, 'brightness': 3, 'off_with_transition': False, 'off_brightness': None, 'icon': 'hue:bulb-filament-hung', 'friendly_name': 'Eettafel Light', 'supported_features': <LightEntityFeature.FLASH|TRANSITION: 40>}' with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.366 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected an 'off' → 'on' event for 'light.woonkamer_eettafel' with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.366 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] is_proactively_adapting_context='True', context_id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.366 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Skipping responding to 'off' → 'on' event for 'light.woonkamer_eettafel' with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2' because we are already proactively adapting
2023-09-25 09:18:33.462 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected a 'light.slaapkamer_nachtkastje' 'state_changed' event: '{'min_color_temp_kelvin': 2000, 'max_color_temp_kelvin': 6535, 'min_mireds': 153, 'max_mireds': 500, 'effect_list': ['colorloop'], 'supported_color_modes': [<ColorMode.COLOR_TEMP: 'color_temp'>, <ColorMode.XY: 'xy'>], 'color_mode': <ColorMode.COLOR_TEMP: 'color_temp'>, 'brightness': 3, 'color_temp_kelvin': 2000, 'color_temp': 500, 'hs_color': (30.601, 94.547), 'rgb_color': (255, 136, 13), 'xy_color': (0.599, 0.382), 'off_with_transition': False, 'off_brightness': None, 'icon': 'hue:bulb-sultan', 'friendly_name': 'Nachtkastje Light', 'supported_features': <LightEntityFeature.EFFECT|FLASH|TRANSITION: 44>}' with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.462 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected an 'off' → 'on' event for 'light.slaapkamer_nachtkastje' with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.462 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] is_proactively_adapting_context='True', context_id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.462 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Skipping responding to 'off' → 'on' event for 'light.slaapkamer_nachtkastje' with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2' because we are already proactively adapting
2023-09-25 09:18:33.478 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected a 'light.woonkamer_bank' 'state_changed' event: '{'min_color_temp_kelvin': 2000, 'max_color_temp_kelvin': 6535, 'min_mireds': 153, 'max_mireds': 500, 'effect_list': ['colorloop'], 'supported_color_modes': [<ColorMode.COLOR_TEMP: 'color_temp'>, <ColorMode.XY: 'xy'>], 'color_mode': <ColorMode.COLOR_TEMP: 'color_temp'>, 'brightness': 3, 'color_temp_kelvin': 2000, 'color_temp': 500, 'hs_color': (30.601, 94.547), 'rgb_color': (255, 136, 13), 'xy_color': (0.599, 0.382), 'off_with_transition': False, 'off_brightness': None, 'icon': 'hue:bulb-spot', 'friendly_name': 'Bank Light', 'supported_features': <LightEntityFeature.EFFECT|FLASH|TRANSITION: 44>}' with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.479 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected an 'off' → 'on' event for 'light.woonkamer_bank' with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.479 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] is_proactively_adapting_context='True', context_id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.479 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Skipping responding to 'off' → 'on' event for 'light.woonkamer_bank' with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2' because we are already proactively adapting
2023-09-25 09:18:33.508 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected a 'light.woonkamer_kamertafel' 'state_changed' event: '{'min_color_temp_kelvin': 2000, 'max_color_temp_kelvin': 6535, 'min_mireds': 153, 'max_mireds': 500, 'effect_list': ['colorloop'], 'supported_color_modes': [<ColorMode.COLOR_TEMP: 'color_temp'>, <ColorMode.XY: 'xy'>], 'color_mode': <ColorMode.COLOR_TEMP: 'color_temp'>, 'brightness': 3, 'color_temp_kelvin': 2000, 'color_temp': 500, 'hs_color': (30.601, 94.547), 'rgb_color': (255, 136, 13), 'xy_color': (0.599, 0.382), 'off_with_transition': False, 'off_brightness': None, 'icon': 'hue:bulb-sultan-hung', 'friendly_name': 'Kamertafel Light', 'supported_features': <LightEntityFeature.EFFECT|FLASH|TRANSITION: 44>}' with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.508 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected an 'off' → 'on' event for 'light.woonkamer_kamertafel' with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.508 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] is_proactively_adapting_context='True', context_id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.509 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Skipping responding to 'off' → 'on' event for 'light.woonkamer_kamertafel' with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2' because we are already proactively adapting
2023-09-25 09:18:33.519 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected a 'light.keuken_kookplaat' 'state_changed' event: '{'min_color_temp_kelvin': 2000, 'max_color_temp_kelvin': 6535, 'min_mireds': 153, 'max_mireds': 500, 'effect_list': ['colorloop'], 'supported_color_modes': [<ColorMode.COLOR_TEMP: 'color_temp'>, <ColorMode.XY: 'xy'>], 'color_mode': <ColorMode.COLOR_TEMP: 'color_temp'>, 'brightness': 3, 'color_temp_kelvin': 2000, 'color_temp': 500, 'hs_color': (30.601, 94.547), 'rgb_color': (255, 136, 13), 'xy_color': (0.599, 0.382), 'off_with_transition': False, 'off_brightness': None, 'icon': 'hue:double-spot', 'friendly_name': 'kookplaat Light', 'supported_features': <LightEntityFeature.EFFECT|FLASH|TRANSITION: 44>}' with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.519 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected an 'off' → 'on' event for 'light.keuken_kookplaat' with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.519 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] is_proactively_adapting_context='True', context_id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.519 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Skipping responding to 'off' → 'on' event for 'light.keuken_kookplaat' with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2' because we are already proactively adapting
2023-09-25 09:18:33.530 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected a 'light.woonkamer_tv' 'state_changed' event: '{'min_color_temp_kelvin': 2000, 'max_color_temp_kelvin': 6535, 'min_mireds': 153, 'max_mireds': 500, 'effect_list': ['colorloop'], 'supported_color_modes': [<ColorMode.COLOR_TEMP: 'color_temp'>, <ColorMode.XY: 'xy'>], 'color_mode': <ColorMode.COLOR_TEMP: 'color_temp'>, 'brightness': 3, 'color_temp_kelvin': 2000, 'color_temp': 500, 'hs_color': (30.601, 94.547), 'rgb_color': (255, 136, 13), 'xy_color': (0.599, 0.382), 'off_with_transition': False, 'off_brightness': None, 'icon': 'hue:bulb-sultan', 'friendly_name': 'TV Light', 'supported_features': <LightEntityFeature.EFFECT|FLASH|TRANSITION: 44>}' with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.530 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected an 'off' → 'on' event for 'light.woonkamer_tv' with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.530 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] is_proactively_adapting_context='True', context_id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.530 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Skipping responding to 'off' → 'on' event for 'light.woonkamer_tv' with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2' because we are already proactively adapting
2023-09-25 09:18:33.574 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected a 'light.keuken_aanrecht' 'state_changed' event: '{'min_color_temp_kelvin': 2000, 'max_color_temp_kelvin': 6535, 'min_mireds': 153, 'max_mireds': 500, 'effect_list': ['colorloop'], 'supported_color_modes': [<ColorMode.COLOR_TEMP: 'color_temp'>, <ColorMode.XY: 'xy'>], 'color_mode': <ColorMode.COLOR_TEMP: 'color_temp'>, 'brightness': 3, 'color_temp_kelvin': 2000, 'color_temp': 500, 'hs_color': (30.601, 94.547), 'rgb_color': (255, 136, 13), 'xy_color': (0.599, 0.382), 'off_with_transition': False, 'off_brightness': None, 'icon': 'hue:double-spot', 'friendly_name': 'Aanrecht Light', 'supported_features': <LightEntityFeature.EFFECT|FLASH|TRANSITION: 44>}' with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.574 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected an 'off' → 'on' event for 'light.keuken_aanrecht' with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.574 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] is_proactively_adapting_context='True', context_id='01HB5K8FE4C4JFCNY2E8DQ03V2'
2023-09-25 09:18:33.575 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Skipping responding to 'off' → 'on' event for 'light.keuken_aanrecht' with context.id='01HB5K8FE4C4JFCNY2E8DQ03V2' because we are already proactively adapting
2023-09-25 09:18:37.347 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected an 'light.turn_off('['light.keuken_aanrecht', 'light.keuken_kookplaat', 'light.slaapkamer_nachtkastje', 'light.woonkamer_bank', 'light.woonkamer_eettafel', 'light.woonkamer_kamertafel', 'light.woonkamer_tv']', transition=None)' event with context.id='01HB5K8KH1M287P5P7RQ9FJ5NW'
2023-09-25 09:18:37.468 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected an 'on' → 'off' event for 'light.woonkamer_bank' with context.id='01HB5K8KH1M287P5P7RQ9FJ5NW'
2023-09-25 09:18:37.477 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected an 'on' → 'off' event for 'light.slaapkamer_nachtkastje' with context.id='01HB5K8KH1M287P5P7RQ9FJ5NW'
2023-09-25 09:18:37.497 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected an 'on' → 'off' event for 'light.keuken_kookplaat' with context.id='01HB5K8KH1M287P5P7RQ9FJ5NW'
2023-09-25 09:18:37.530 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected an 'on' → 'off' event for 'light.woonkamer_kamertafel' with context.id='01HB5K8KH1M287P5P7RQ9FJ5NW'
2023-09-25 09:18:37.550 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected an 'on' → 'off' event for 'light.woonkamer_eettafel' with context.id='01HB5K8KH1M287P5P7RQ9FJ5NW'
2023-09-25 09:18:37.560 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected an 'on' → 'off' event for 'light.woonkamer_tv' with context.id='01HB5K8KH1M287P5P7RQ9FJ5NW'
2023-09-25 09:18:37.576 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Detected an 'on' → 'off' event for 'light.keuken_aanrecht' with context.id='01HB5K8KH1M287P5P7RQ9FJ5NW'
2023-09-25 09:19:17.222 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Woonkamer: '_update_attrs_and_maybe_adapt_lights' called with context.id='01HB5K9TF5:al:K5XW:ntrv:02' lights: 'None', transition: '45.0', force: 'False'
2023-09-25 09:19:17.224 DEBUG (MainThread) [custom_components.adaptive_lighting.switch] Woonkamer: filtered_lights: '[]'

[Copy pasting this message in a few recent open issues]
I just wanted to take a moment to express my heartfelt thanks to everyone that is active in this repo. Your contributions, from answering questions to addressing issues, have been invaluable. It's amazing to see how supportive and helpful our community is!
Adaptive Lighting is all about enhancing your living spaces with smart, sunlight-responsive lighting. We've had quite a few discussions and open issues recently, and I see this as a positive sign of our community's engagement and growth. If you come across anything in the documentation that's unclear or if you have suggestions for improvement, please don't hesitate to share!. Your feedback is crucial for making Adaptive Lighting better for everyone.
On a personal note, I've recently welcomed twin boys into my family, which has been an incredible and life-changing experience. As you can imagine, my time is now more limited, and while I'm doing my best to keep up with the project, there may be delays in my responses. I appreciate your understanding and patience during this time.
Rest assured, I'm fully committed to addressing any bugs, especially those related to new Home Assistant updates, as swiftly as possible. I understand that many issues may stem from hardware limitations or misunderstandings about things like Zigbee groups. Your continued support and collaboration in helping each other out not only strengthen our community but also enhance the Adaptive Lighting experience for all.
Thank you once again for your understanding, patience, and support. Let's keep our houses well lit and adaptive for maximal enjoyment of life! 🌞🏠🌙


Update app-templates.md

Docs Build status updates of commit d0c2d6f:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/samples/app-templates.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Skittle popup

Request 2: Any chance to add functionality to it that displays a popup when hovering over the "ticks remaining" skittle that shows the info for that building specifically? Example when hovering over the "0" skittle for the BWF to my northwest:

might be done with a local overview popup, related to #70


Loosing pagehide on mobile browsers

pagehide is not reliable, especially on mobile. For example, the pagehide event is not fired at all in the following scenario:
A mobile user visits your page.
The user then switches to a different app.
Later, the user closes the browser from the app manager.
Instead we can use visibilitychange. and where visibilitychange is not supported pagehide is next-best alternative

based on findings this will be implemented in https://github.com/blotoutio/sdk-js/issues/13


How to compare the embeddings?

Hi
The original DeepInsight implementation in the MXNet first preprocesses the image (Face detection, cropping and preprocessing), then extracts its embeddings and finally normalizes it so that when we want to compare two features the code would be like this:
dist = np.sum(np.square(embedding1 - embedding2))
print("Distance => %s" % dist)
sim = np.dot(embedding1, embedding2.T)
print("Similarity => %s" % sim)

When I checked your example.py file I didn't see any of the mentioned preprocessings. The code simply reads an image, resizes it to (112,112) (without detecting the face) and then proceeds to extract its features.
Shouldn't we first detect the face and then the extract the embeddings?
I went ahead and did some tests with this code and the Similarities are off the charts and plain wrong (even with different dropout rates):
model = base_server.BaseServer(model_fp=configs.face_describer_model_fp,
                               input_tensor_names=configs.face_describer_input_tensor_names,
                               output_tensor_names=configs.face_describer_output_tensor_names,
                               device=configs.face_describer_device)

# Define input tensors feed to session graph
dropout_rate = 0.1

first_image = cv2.imread('./Images/1.jpg')
first_image = cv2.resize(first_image, (112, 112))
input_data = [np.expand_dims(first_image, axis=0), dropout_rate]
face_descriptor1 = model.inference(data=input_data)
embedding1 = preprocessing.normalize(face_descriptor1[0])

second_image = cv2.imread('./Images/4.jpg')
second_image = cv2.resize(second_image, (112, 112))
input_data = [np.expand_dims(second_image, axis=0), dropout_rate]
face_descriptor2 = model.inference(data=input_data)
embedding2 = preprocessing.normalize(face_descriptor2[0])

dist = np.sum(np.square(embedding1 - embedding2))
print("Distance => %s" % dist)

sim = np.dot(embedding1, embedding2.T)
print("Similarity => %s" % sim)

Am I doing something wrong?
Thanks

Dropout should be 1.0

@Neltherion  i want compare two embeding
did you find any solution?

i found this solution
when you want compare two embeding you should use this lib:
https://github.com/AIInAi/tf-insightface/blob/master/services/face_services.py


List parse error

Hello, i found problems when using (un)ordered lists. Parser is rendering weird characters when using special characters like č ž ť. When i remove list, text is rendered correctly. Here is screenshot, input is on the left half of picture and result is on the right. I found that this issue is related with substr_replace. I changed code in vendor/erusev/parsedown/Parsedown.php on line 1461 to $markup = substr($markup, 0, $position - strlen($markup)); and now, everything is working. Also this problem happens only when server is having set mbstring.func_overload = 7
test text:
* test
* hocičo
* assasasss
* lorem ipsum
* kúsky čriev
* hocičo

screenshot:

can u reproduce this on http://parsedown.org/demo

it is working correctly in demo, this bug only happens when server has mbstring.func_overload set to 7.

i'm not familiar with that server configuration

mbstring.func_overload can cause issues:
http://stackoverflow.com/questions/222630/should-i-use-multi-byte-overloading-mbstring-func-overload

Several security libraries have had problems with this, as strlen suddenly would not work as a binary counter anymore. The fix is relatively easy and if you know what functions are causing the problem in ParseDown those could easily be patched.
See this patch on the password_compat library: #40 diff line 220.

Actually, this is a duplicate of #378 and the final comment features the same fix as mine.


update to latest stable CoreOS AMIs

High-level description
Update Core OS AMIs to latest stable version.
Corresponding DC/OS tickets (required)

D2IQ-ID JIRA title / short description.

Related tickets (optional)

D2IQ-ID JIRA title / short description.

Checklist for component/package updates:
If you are changing components or packages in DC/OS (e.g. you are bumping the sha or ref of anything underneath packages), then in addition to the above please also include:

[ ] Change log from the last version integrated (this should be a link to commits for easy verification and review): example
[ ] Included a test which will fail if code is reverted but test is not. If there is no test please explain.
[ ] Test Results: [link to CI job test results for component]
[ ] Code Coverage (if available): [link to code coverage report]

@mesosphere-mergebot label Ready For Review

This seems worthy of a CHANGES.md message.

@mesosphere-mergebot request-review  @fatz @jongiddy

@mesosphere-mergebot sync


Update scala-library to 2.13.5

Updates org.scala-lang:scala-library from 2.11.12 to 2.13.5.
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!

Files still referring to the old version number
The following files still refer to the old version number (2.11.12).
You might want to review and update them manually.
.travis.yml

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

labels: library-update, semver-minor, old-version-remains

@scala-steward That doesn't make sense. That's on purpose we want to build and publish for multiple major versions of Scala - 2.11, 2.12, and 2.13. Not sure what's the background behind you suggesting to drop 2.11 support.
Also a 2.13 version is already on a list, but an older one.
Wouldn't it make more sense if you suggested 2.13.3 -> 2.13.5 upgrade instead?

@mccartney That was a bug that has already been fixed: https://github.com/scala-steward-org/scala-steward/issues/129


Fix #463

Use regular functions instead of arrow functions to preserve IE 11 compatibility.

tx, eventually I will I plan to go back to arrow but with webpack / babel to generate es5 compatible js file


ISR Image hydration bug(?)

Environment

Operating System: Windows_NT
Node Version:     v18.18.2
Nuxt Version:     3.8.0
CLI Version:      3.9.1
Nitro Version:    2.7.2
Package Manager<EMAIL_ADDRESS>Builder:          -
User Config:      devtools, ssr, alias, build, ui, imports, tailwindcss, modules, viewport, routeRules
Runtime Modules<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>Build Modules:    -

Reproduction
Using "ISR" build the website with nuxt build and deploy it, change any image tag's src on like an admin page or inside DB manually (as an example from image1.png -> image2.png). Refresh the page and should be no hydration occuring.
Describe the bug
Unsure if it's intended or bug but worth the mention. Basically I deploy a site with products that are got images they are fetched from server. If I change product's name hydration occurs and 1-2 seconds later it will change so it works as intended however with image whenever I try to change the hydration only occurs if I rebuild the site or ISR recaching itself.
Additional context
Im using Meteor.js for backend with MongoDB.
EDIT: I've tried both with NuxtImg and without NuxtImg using "img"
Logs
No response

I did more research in my problem even tried to made a sandbox reproduction to give you but with using "fetch" it worked perfectly but using Meteor's websocket calls doesnt work even for a simple string return. I'm trying to make a reproduction for Meteor.js specifically in sandbox and see what happens

@sptBlack Do you still experience this issue?

@madebyfabian Ill check once home (most likely tomorrow)


Incorrect mappint in test runs

When I open logs from within automation report on Zafira, system provides me with logs for incorrect test and may give an incorrect link to test case from TestRails automation report. See the attached videos
Links for anyone at Qaprosoft:
https://drive.google.com/file/d/1edNPS_bwdieipI-VBOSFAm57ieB0ccxz/view?usp=sharing
https://drive.google.com/file/d/1FRXMm9hN5GUaDF7ujLDtah7SkRgdFA4D/view?usp=sharing

not repro


Code alternating between formatted and unformatted on subsequent writes

This is an interesting one that I've been observing for as long as I can remember, and was the reason for me taking time away for coc to try alternatives, but I'm determined to get to the bottom of it.
My neovim (v0.5.0) is setup with coc alongside other plugins (that don't interact with code formatting). Within coc I make use of both Prettier and ESLint through the coc-prettier and coc-eslint respectively.
When I write to a file in neovim, for the first time I get formatting correctly. However, if I then don't make any changes and proceed to write again, I observe that the formatting gets removed and the code looks like a mess.
I have seen worse instances where it seemingly breaks code completely, through formatting alone. Which is a real problem when in the flow of working.
I have also observed instances where adding a new line to an existing file that is formatted correctly (the new line isn't), and then calling write, the new file gets formatted correctly but the rest of the file gets unformatted. This then alternates (like above) on subsequent writes. I have to close the file and open it again to get correct formatting.
Happy to go through some troubleshooting to get to the bottom of this, since this is the premier Prettier plugin for coc, and the ecosystem itself is too good to give up!
Thanks in advance

Seems duplicate issue of #134

I believe this is also resolved now https://github.com/neoclide/coc-prettier/issues/134 is fixed


replace get_random_point with bws_get_random_point from Bitcoin-Wildlife-Sanctuary/stwo

per discussion, this PR replaces the current point sampling algorithm (referring the Lemma 1 of #Circle STARKs) into one that doesn’t use rejection sampling, with some security loss subject to the bias of sampling a secure field element from the channel.
PS: this PR comes from Bitcoin-Wildlife-Sanctuary

This change is

Reviewed 1 of 1 files at r1, all commit messages.
Reviewable status: all files reviewed, 1 unresolved discussion (waiting on @PayneJoe)

crates/prover/src/core/circle.rs line 155 at r1 (raw file):

        let t = channel.draw_felt();

        let one_plus_tsquared_inv = t.square().add(SecureField::one()).inverse();

Extract to a variable.
Suggestion:
let t_squared = t.square();

thanks Alon, it's done

coverage failed, trigger once more?

@alonh5 I think a possible reason why the coverage is failing is because this PR is from an external repo? If that is the case, maybe we can either copy-paste this branch into starkware-libs/stwo (which would allow us to keep a record of the coverage) or merge ignoring that failing test.


Fix minor broken doc links and add missing feature flag

minor things when browsing runtime with just doc. fairly insignificant.

Nice!
A quick TIOLI:
noticed we don't say anything about sharing events in the reflector() docs. I added a small paragraph towards the end. Posting the patch in case it's helpful.
diff --git a/kube-runtime/src/reflector/mod.rs b/kube-runtime/src/reflector/mod.rs
index 2c6048ba..da7da986 100644
--- a/kube-runtime/src/reflector/mod.rs
+++ b/kube-runtime/src/reflector/mod.rs
@@ -98,6 +98,21 @@ pub use store::{store, Store};
 /// Additionally, only `labels`, `annotations` and `managed_fields` are safe to drop from `ObjectMeta`.
 ///
 /// For more information check out: <https://kube.rs/controllers/optimization/> for graphs and techniques.
+///
+/// ## Stream sharing
+///
+/// `reflector()` as an interface may optionally create a stream that can be
+/// shared with other components to help with resource usage.
+///
+/// To share a stream, the `Writer<K>` consumed by `reflector()` must be
+/// created through an interface that allows a store to be subscribed on, such
+/// as [`store_shared()`]. When the store supports being subscribed on, it will
+/// broadcast an event to all active listeners after caching any object
+/// contained in the event.
+///
+/// Creating subscribers requires an
+/// [`unstable`](https://github.com/kube-rs/kube/blob/main/kube-runtime/Cargo.toml#L17-L21)
+/// feature
 pub fn reflector<K, W>(mut writer: store::Writer<K>, stream: W) -> impl Stream<Item = W::Item>
 where
     K: Lookup + Clone,


Allows setting initial heading for round trips via GHRequest.

Implements suggestions in #786.
For now both using a request hint and using the GHRequest API is supported to set the initial heading for roundtrips. Setting it via GHRequest takes precedence.

Shall we remove/deprecate/undocument the possibility to set the heading via a request hint ?

Thanks! Yeah I think we might remove RoundTrip.HEADING and related or what do you think @devemux86 ?

I think we might remove RoundTrip.HEADING and related or what do you think @devemux86 ?

Probably yes, unless support backwards compatibility or allow both API and hints for convenience.

Ok, I removed RoundTrip.HEADING in the last commit. Within Java one now needs to use favoredHeadings instead of the HintsMap to set the initial heading of a round trip.
However, the server API is basically unchanged: Setting a heading is done by passing e.g. heading=123 as request parameter. In GraphHopperServlet#doGet the heading is added to favoredHeadings of the GHRequest, which is now used by RoundTripRoutingTemplate. Before this PR this was the same except that RoundTripRoutingTemplate did not take the heading from favoredHeadings but parsed the request parameters again looking for the 'heading' request parameter. Consequently the documentation in api-doc.md does not need to be changed.

This is awesome & cleaner - thanks!

Cool, thanks!


Collapse: Remove toggle option

https://github.com/twbs/bootstrap/blob/d9254c64fa10f465a671a47ce40779807f092f5a/js/src/collapse.js#L95-L97
Option toggle can be removed, as we handle it calling the method show

would we not still want to keep the option, as the point is that this allows passing on an initial state at instantiation without needing to call any explicit method?

@patrickhlauke It doesn't make sense as an option. The element's initial state can be set with CSS classes (.collapse if it's to be hidden, .collapse.show if it should be visible initially).
new bootstrap.Collapse("#myCollapse") should simply create and return the collapse instance. The trade-off for intuitiveness of having to subsequently call myCollapse.show() is more than acceptable, in my opinion.

@patrickhlauke It doesn't make sense as an option. The element's initial state can be set with CSS classes (.collapse if it's to be hidden, .collapse.show if it should be visible initially).

but you then also need to make sure to set initial aria-expanded state. a lot of "the author will just take care of it themselves"

but you then also need to make sure to set initial aria-expanded state.

Good point. Could the new bootstrap.Collapse("#myCollapse") method return the collapse instance and set the aria-expanded attribute's value according to the element's current state? If the element has only the class .collapse then add aria-expanded="false". If it has .collapse.show then add aria-expanded="true".


DP-107 Use messaging abstractions for AWS integration (WIP)

Signed-off-by: Steffan Westcott<EMAIL_ADDRESS>

First pass done. I think there might be too much abstraction between a SNS Topic (which is the AWS implementation of a messaging exchange) and "Exchange" and also between SQS Queue and "Queue" via intermediatary objects SnsExchange and SqsMessageQueue

Rename SqsQueue -> SqsResource
Rename SnsTopic -> SnsResource

The suggested renames may be a little vague. How about instead:
SqsQueue becomes SqsQueueResource
SnsTopic becomes SnsTopicResource

OK with suggested names.

@clicktravel-basharat I've renamed the classes as discussed. I've also fixed a bug found on recent inspection. Ready for second review.

More naming changes.

@clicktravel-basharat Renaming done, ready for review.

All good.


git node v8 minor is broken

9:30:59 ~/Documents/projects/forks/node main $ git node v8 minor
⠋ Update local V8 clone
◼ Minor V8 update
◼ Commit V8 update
node:events:492
      throw er; // Unhandled 'error' event
      ^

Error: spawn git ENOENT
    at ChildProcess._handle.onexit (node:internal/child_process:286:19)
    at onErrorNT (node:internal/child_process:484:16)
    at process.processTicksAndRejections (node:internal/process/task_queues:82:21)
Emitted 'error' event on ChildProcess instance at:
    at ChildProcess._handle.onexit (node:internal/child_process:292:12)
    at onErrorNT (node:internal/child_process:484:16)
    at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
  errno: -2,
  code: 'ENOENT',
  syscall: 'spawn git',
  path: 'git',
  spawnargs: [ 'fetch', 'origin' ]
}

Node.js v20.9.0

woops, it was my setup that broke it


[Question] How does 'Hashing' work? (Recheck of downloaded files)?  It appears my re-hash of 40GB finished rather quickly

Hello!
I was working with and testing out the TorrentManager File Hasher.
I ran a hashcheck, and this was the sequence of events:

I have a torrent which is approximately 40GB in size and has been downloaded to my local computer.
The manager.PieceLength showed me: 16777216 total pieces
I started the hash check
The hash check seemed to be rather 'slow', after a few minutes it had only checked up to the piece index of 3,400 / 16777216
I minimized the screen
At the timestamp of 13 minutes and 7 seconds the Hash Check was complete without errors.

This seems rather fast to me, I am wondering if my understanding of how a 'Hash Check' works is correct.
Questions

Will the Hashcheck check all 16777216 pieces?

I attempted to create a progress bar, and 3400 out of 16777216 pieces is very small, so it showed 0.00% (this is expected), It is surprising that it finished so quickly. What could have happened?

Is there anyway to 'speed up' the hashcheck? I think not because it is limited to how fast the machine can has a MD5 Hash.

Thanks all!!

Hey!
Thanks for the questions. Hopefully this will help!

At the timestamp of 13 minutes and 7 seconds the Hash Check was complete without errors.

This seems rather fast to me, I am wondering if my understanding of how a 'Hash Check' works is correct.

Hashing 40GB in 13 minutes is about... 50MB/sec. That's a reasonable lower-bound for how fast things should be on 'modern' hardware. My own (somewhat slow) laptop averages about 100MB/sec, which would hash 40GB in approx.

Questions

Will the Hashcheck check all 16777216 pieces?
If all the data is available on disk, then yes!

I attempted to create a progress bar, and 3400 out of 16777216 pieces is very small, so it showed 0.00% (this is expected), It is surprising that it finished so quickly. What could have happened?

If any data is not available on disk, you could hit the fast path. For example, if there's a 10GB file in the torrent and only the first piece has been downloaded, monotorrent can tell that the file is too short and will not actually try to read/hash the data which does not exist. This makes hashing incomplete files significantly faster.

Is there anyway to 'speed up' the hashcheck? I think not because it is limited to how fast the machine can has a MD5 Hash.

I suspect the limiting factor here is that the process is less parallel than it could be. There's probably some improvements there which could improve the throughput when doing large sequential reads.
At the least, DiskManager.GetHashAsync could be changed so that it can perform reads in parallel with invoking incrementalHash.AppendData. A double-buffer system could be used so that buffer0 is filled with data first, then you enter a loop and do:
await ReadAsync (first_block, buffer0);

while (data_remaining) {
    // read the next block of data asynchronously
    var readingTask = await ReadAsync (next_piece, buffer1);

    // hash this while we're waiting for the other data to read.
    incrementalHash.AppendData (buffer0);

    // wait for the read task to complete
    await readingTask;

    // swap the buffers so we can continue
    (buffer0, buffer1) = (buffer1, buffer0);
}

// probably need to append the final buffer now.
incrementalHash.AppendData (buffer0);

If you're interested in trying that change to see if it helps, it should be pretty reasonable to code it up! There may be some other tricks which can make this faster, but I'd probably want to see some comparisons between bittorrent clients before trying to optimise this too much.

There's one other option too.
At the moment FileStream objects are always created using FileOptions.RandomAccess. It's possible that there'd be a performance boost if FileOptions.SequentialScan were used during a full hashcheck. To make this work we'd have to hint to the DiskManager that a full hash is about to happen so it can (re-)open the underlying filestream with the new hint.

@alanmcgovern -- Big thanks for getting back to me on this! I have just seen your replies, I will review them and comment back!
BTW - I have reviewed may Torrent Clients, and bittorrent Libs in C# and other languages (I am a C# only dev), and by far MonoTorrent is the best! Excellent work!! <3

I'll assume everything is OK for now!


Added tilde to reference TOC.md

[!INCLUDEpreview-notice]

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

SunnyTestingTildeLink
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

SunnyTestingTildeLink
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


[Update] Sample Viewer split view

Description
This PR improves the main UI of the Sample Viewer by updating the split view in a few ways:

Use 3 columns instead of 2.
Show sidebar by default when the app opens.
Persist the current category selection.
Move the search bar/view into an "All" category (more intuitive to use and gets rid of a few bugs).

Linked Issue(s)

swift/issues/5184

How To Test

Test the main UI on all platforms in different rotation modes.

Screenshots

Before
After

To Discuss

I tried to refactor as little as possible, so I added an AllSamplesView instead of moving the searchable modifier into the SamplesSearchView. Let me know if you think I should instead refactor the SamplesSearchView.

On iPad landscape, it is not possible to hide the category column, is that correct? I tried the Mails app on iPad and it behaves the same, so I think it is OK.

Currently, yes, but I think that is intended behavior, which was also present in the Sample Viewer before these changes. If you wanted to hide the category column we could:

Use the prominentDetail navigation split view style, which would overlay the column over the SampleDetailView like it does in portrait mode but doing so would prevent using the side-by-side mode and would do the same on Mac Catatlyst.
Implement a custom button to hide the category column.

Thank you for your feedback @yo1995 and @philium.


hasAny*** condition error

Affected module
Policies setting
Describe the bug
Error occurred when creating hasanyrole, hasanyteam of Condition
To Reproduce

Expected behavior
normal operation of condition
Version:

OS: Windows 11
Python version: -
OpenMetadata version: 1.0.0
OpenMetadata Ingestion package version: -just wep console-

Additional context
none

Hello @harshach @sureshms, I have checked from UI side we are just making an API request, it seems like a backend issue to me.


Google Wallet Generic Pass Removing Card Title and Custom Font Color

Prerequisites
I am working on the dotnet implementation of the Generic Pass and as per our need I don't want to display the Card Title and I also want to display a custom font color for the text on the front side of the Generic Pass. But when the card title field is set to null the card is not added in the wallet rather it displays Something went wrong message in Google Wallet.
Expected Behavior

When I set the card title to null in the GenericObject the title should be set to null or empty string, and it should not be displayed when the card is added to Google Wallet via Google Pay API link.
The card should be added successfully to the wallet regardless of the CardTitle added or not in the JWT Payload

Current Behavior

The card is not added in the Google Wallet and instead the message Something went wrong appears.

Steps to Reproduce

Remove the CardTitle field from the GenericObject or set the field to string.Empty or " " or null
Convert the model to JwtObject and create the payload
Create the JWT token add/concat it to the Google Pay API link
Use the link to add the card to the Google Wallet

Context

Operating System: Windows 10
Browser: Microsoft Edge
Android Version: 13
Google Apis Version: 1.62.0

Screenshots

Prerequisites
I am working on the dotnet implementation of the Generic Pass and as per our need I don't want to display the Card Title and I also want to display a custom font color for the text on the front side of the Generic Pass. But when the card title field is set to null the card is not added in the wallet rather it displays Something went wrong message in Google Wallet.
Expected Behavior

When I set the card title to null in the GenericObject the title should be set to null or empty string, and it should not be displayed when the card is added to Google Wallet via Google Pay API link.
The card should be added successfully to the wallet regardless of the CardTitle added or not in the JWT Payload

Current Behavior

The card is not added in the Google Wallet and instead the message Something went wrong appears.

Steps to Reproduce

Remove the CardTitle field from the GenericObject or set the field to string.Empty or " " or null
Convert the model to JwtObject and create the payload
Create the JWT token add/concat it to the Google Pay API link
Use the link to add the card to the Google Wallet

Context

Operating System: Windows 10
Browser: Microsoft Edge
Android Version: 13
Google Apis Version: 1.62.0

Screenshots

https://github.com/google-wallet/rest-samples/issues/99#issue-2007898824


Bump linode docker machine driver to 0.1.11

How can I test it? I couldn't find a way to get data.json for building the docker image.
I feel it would be nicer if we can have a doc of instructions of building the docker image.

I found the way to download data.json but after building the rancher container, it keep saying this in the logs and in restarting status.
rancher: /lib64/libc.so.6: version `GLIBC_2.34' not found (required by rancher)
rancher: /lib64/libc.so.6: version `GLIBC_2.32' not found (required by rancher)
rancher: /lib64/libc.so.6: version `GLIBC_2.34' not found (required by rancher)
rancher: /lib64/libc.so.6: version `GLIBC_2.32' not found (required by rancher)
rancher: /lib64/libc.so.6: version `GLIBC_2.34' not found (required by rancher)
rancher: /lib64/libc.so.6: version `GLIBC_2.32' not found (required by rancher)
rancher: /lib64/libc.so.6: version `GLIBC_2.34' not found (required by rancher)
rancher: /lib64/libc.so.6: version `GLIBC_2.32' not found (required by rancher)
rancher: /lib64/libc.so.6: version `GLIBC_2.34' not found (required by rancher)
rancher: /lib64/libc.so.6: version `GLIBC_2.32' not found (required by rancher)
rancher: /lib64/libc.so.6: version `GLIBC_2.34' not found (required by rancher)
rancher: /lib64/libc.so.6: version `GLIBC_2.32' not found (required by rancher)
rancher: /lib64/libc.so.6: version `GLIBC_2.34' not found (required by rancher)
rancher: /lib64/libc.so.6: version `GLIBC_2.32' not found (required by rancher)
rancher: /lib64/libc.so.6: version `GLIBC_2.34' not found (required by rancher)
rancher: /lib64/libc.so.6: version `GLIBC_2.32' not found (required by rancher)
rancher: /lib64/libc.so.6: version `GLIBC_2.34' not found (required by rancher)
rancher: /lib64/libc.so.6: version `GLIBC_2.32' not found (required by rancher)
rancher: /lib64/libc.so.6: version `GLIBC_2.34' not found (required by rancher)
rancher: /lib64/libc.so.6: version `GLIBC_2.32' not found (required by rancher)


Captured Zombie Villagers do not retain trades

When capturing a Zombie Villager, the villager is reset to Novice and loses any trades it previously had.

Sounds like a feature for me. A cheaper way to reset the villager's job than one from Slimefun Core.
This is no different than just kill and repopulate. Very vanilla, required time and food.

The current API does not provide a way to retrieve the trades.


Running client and server separately

Hello, is there a way currently to run the client and server as separate processes over a network? If not, is it easy to do that?

Yes, you can instantiate hintless_pir::hintless_simplepir::Server and hintless_pir::hintless_simplepir::Client in separate processes. The interface of these two are fairly simple, and for communication the client would just need to send HintlessPirRequest to the server, and the server would send HintlessPirResponse back to the client.

Do I have to handle serialization and deserialization myself?


rendering child when parent removed from view (react-native, but not RNW)

After I ported my react-native-web app to react-native, child components continue to render one last time after the parent removes it.
I'm providing state via context similar to one of your examples:
import React, { createContext, useContext } from 'react'
import { AppRegistry } from 'react-native'
import { proxy, useSnapshot } from 'valtio'

// context

const MyContext = createContext()

const MyProvider = ({ state, children }) => {
  return <MyContext.Provider value={state}>{children}</MyContext.Provider>
}

// index.js

const state = proxy({ user: { firstName: 'Sam' } }) // in my case, proxy must be created outside of render tree

AppRegistry.registerComponent(appName, () => () => {
  return (
    <MyProvider state={state}>
      <Parent />
    </MyProvider>
  )
})

// component tree

const Parent = () => {
  const state = useContext(MyContext)
  const snap = useSnapshot(state)

  console.log('RENDER PARENT')

  if (!snap.user) return null

  return (
    <>
      <Child />
      <Button onClick={() => state.user = null}>logout</Button>
    </>
  )
}

const Child = () => {
  const state = useContext(MyContext)
  const snap = useSnapshot(state)

  console.log('RENDER CHILD')

  return <>{snap.user.firstName}</> // ERROR! -- cannot read property 'firstName" of undefined
}

The logs are in this order on native:

RENDER CHILD
RENDER PARENT

But on web, it correctly just renders the parent:

RENDER PARENT

So the valtio subscription is reaching the child first essentially, but only on React Native.
Is there something I can do to control the order of subscription notification?
I've designed my app so parent components short-circuit rendering when a given state is no longer available, so children don't have to do snap.user?.foo.
They can just do snap.user.foo and always assume they have a user object if they rendered in the first place.
Any options?
ps. it seems like the classic "zombie" component issue from redux.

ps. it seems like the classic "zombie" component issue from redux.

In that case, React 18 automatic batching solves it in RNW, so I guess RN doesn't use React 18 yet?

react-native 0.70.2 uses 18.1.0.
Is it possible that it still needs to be enabled somewhere?


Implement es Map class

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map
Guide: https://microsoft.github.io/devicescript/contributing#add-core-javascript-apis

I have an interest in taking this on.

You are on!

PR opened https://github.com/microsoft/devicescript/pull/538


Make cirrus status determination "any passed" instead of last one passed

If two instances of a task are created and one times out, it will always finish after the passing task. This marks the devicelab red, but really it should just be considered passing.

Obsolete. Cirrus tests were removed from postsubmit.


Jest throwing error at react-native core files's flow code.

Do you want to request a feature or report a bug?
Bug
What is the current behavior?
Jest is throwing error at react-native core files, maybe because flow code isn't transpiled, When I run npm test it throws an error like this:

What is the expected behavior?
Jest shouldn't throw error at react-native core files.
Please provide your exact Jest configuration
"jest": {
    "preset": "react-native",
    "transform": {
      "^.+\\.jsx?$": "<rootDir>/node_modules/babel-jest",
      "^.+\\.tsx?$": "<rootDir>/node_modules/ts-jest/preprocessor.js"
    },
    "testRegex": "(/__tests__/.*|(\\.|/)(test|spec))\\.(jsx?|tsx?)$",
    "moduleFileExtensions": [
      "ts",
      "tsx",
      "js",
      "jsx",
      "json",
      "node"
    ],
    "testPathIgnorePatterns": [
      "\\.snap$",
      "<rootDir>/node_modules/",
      "<rootDir>/lib/"
    ],
    "transformIgnorePatterns": [
      "/node_modules/(?!react-native-firebase)"
    ],
    "globals": {
      "ts-jest": {
        "useBabelrc": true
      }
    }
  }

Run npx envinfo --preset jest in your project directory and paste the
results here
Environment:
  OS: macOS Sierra 10.12.6
  Node: 8.10.0
  Yarn: 0.24.6
  npm: 5.6.0
  Watchman: 4.7.0
  Xcode: Xcode 9.2 Build version 9C40b
  Android Studio: Not Found

Seems weird that there's untranspiled code there at all. @cpojer is this an issue for jest at all? Seems more like an error with either react native or its preset

react-native preset sets an extensive list of transformIgnorePatterns, including react-native codebase itself.
@shubhnik you need to copy-paste this config value to your config and adjust to your usecase (add another library to the |-separated list, or actually even deleting the config at all, because react-native* patterns are transpiled by default, see https://github.com/facebook/react-native/blob/master/jest-preset.json#L20)

@thymikee I tried removing the transformIgnorePatterns key, then it throws this error:

So I changed transformIgnorePatterns to this:
"transformIgnorePatterns": [
      "/node_modules/(?!react-native-firebase)",
      "node_modules/(?!(jest-)?react-native|react-clone-referenced-element)"
    ],

But again its throwing the same error as in the first comment.


ZIO Mock used as not a test dependency

I run into a problem where I got two conflicting zio-test version in my project. And root cause was that
"dev.zio" %% "zio-aws-sqs" requiring the zio-mock as a non test dependency:
libraryDependencies += "dev.zio" %% "zio-mock" % zioMockLibraryVersion.value,
Could this be replaced with:
libraryDependencies += "dev.zio" %% "zio-mock" % zioMockLibraryVersion.value % Test,

It is not using it for testing, it provides zio-mock definitions for the generated services so it cannot be a test dependency.
I believe the right thing to do would be to expose the mocks in a separate artifact (like zio-aws-s3 without depending on zio-mock and zio-aws-s3-mocks with the generated mocks).
Originally I did not do this because zio-aws is already publishing about 1000 artifacts in one run (~350 aws services, 3 scala versions) and this would double that.


Multiple classes, incorrect _construct called

Cloned and build the current master.
It seems from the moment that I add classes that have the same method names, the last that has been defined is always called. This is also the case while having 2 classes that have a  _construct method defined.
Take the following example
...
class classA : public Php::Base
{
  public:
    classA() {}

    void __construct()
    {
      Php::out << "classA constructor" << std::endl;
    }
};

class classB : public Php::Base
{
  public:
    classB() {}

    void __construct()
    {
      Php::out << "classB constructor" << std::endl;
    }
};

...

  PHPCPP_EXPORT void *get_module()
    {
        static Php::Extension extension("weird", "1.0");

        Php::Class<classA> classA("ClassA");
        classA.method("__construct", &classA::__construct);
        extension.add(std::move(classA));

        Php::Class<classB> classB("ClassB");
        classB.method("__construct", &classB::__construct);
        extension.add(std::move(classB));

        // return the extension
        return extension;
    }

When I compile/load this extension and write the following PHP script
<?php

  $classA = new ClassA();
  $classB = new ClassB();

?>

it will print classB constructor twice. Maybe I'm missing something but that doesn't seem right.

This was fixed in commit 4f90a71f406d5ffe6aa0fc5f3f4aaaf27d0cea14


News for iOS

@kaminskyelina Please provide information where can I get news?

News page is here zpl.io/bJ7PRer
Will add link to it on main wallet page soon and update that screen too

Won't do


Spell check feature on source control

VS Code v1.32.3
macOS Mojave
On the Source Control tab, there is a textfield for the commit message. This textfield doesn't keep UX of the OS to automatically check spell. It'd be fantastic if this feature/UX can be implemented/kept.

#35571


Add DIRECTION attribute for frame definitions

On our current hardware, all frames have a direction, either "tx" (transmit) or "rx" (receive). This is tracked internally by Pidgin and other software; here I add it is an explicit part of a Quilt frame definition.

LGTM. It's a little fuzzy on whether we need a direction for a frame but it's nice to distinguish for sequencers that do both TX and RX.


[WIP] Update Windows build script to support qt5

@jcfr This is a work in progress to update qt-easy-build with support for qt5.
My branch 5.8.0 is designed to include support for qt5 (5.8.0) and qt4 (4.8.7) instead of creating a separate branch for just qt5 build code. This is done with a new argument being included in the powershell command that specifies qtVersion 4 or 5.
Unknowns:

Pick a new version of OpenSSL to use because 1.0.1 is out of support.
From OpenSSL:

The latest stable version is the 1.1.0 series of releases. Also available is the 1.0.2 series. This is also our Long Term Support (LTS) version (support will be provided until 31st December 2019). The 0.9.8, 1.0.0 and 1.0.1 versions are now out of support and should not be used.

Or support multiple versions of OpenSSL and transition qt4 builds to 1.0.2 series & qt5 builds to 1.1.0 series.
Best choice of argument flags when configuring qt5 since they are different than qt4 flags

Missing:

links to precompiled packages of openssl by Kitware

Other Notes
Support for msvc2017 was included because qt5.8.0 src includes
..\qtbase\mkspecs\win32-msvc2017\qmake.conf

Outstanding :+1:

1.0.2 series

For now, I guess we could use this version for both Qt4 and Qt5 (assuming it is supported by Qt5)

links to precompiled packages of openssl by Kitware

Here is the script allowing to build OpenSSL package, it would have to be updated to support build of OpenSSL  (1.0.2 and/or 1.1.0) . See https://gist.github.com/jcfr/6030240#gistcomment-1541144

xref #15

Moving forward, I suggest we create the branch 4.8.7-5.8.0

I updated the script allowing to build OpenSSL package to support the build of 1.0.2k. See https://gist.github.com/jamesobutler/f29a8edfe70cbdf7c3d94d25c20e1dce
@jcfr The script appears to run correctly and connects to midas for upload. However, I don't see any new items uploaded on the server. Is there an approval process for uploading?

Since I don't have VS 2010 or 2008, I did not precompile openssl 1.0.2k with those platforms.  I commented out support for 2010 and 2008 so Qt4 can be built with VS2015/13/12 and Qt5 can be built with VS2017/15/13.
@jcfr Is it ok to drop support for VS 2010 and 2008? Otherwise, as far as I can tell the windows building part of this repo is complete and ready for the new branch 4.8.7-5.8.0

Thanks @jamesobutler , I will have a look later this week and integrate :+1:

Is there an approval process for uploading?

Since we currently do not allow third party to upload binaries into packages.kitware.com, I will look into re-generating the binaries using the updated script.

Is it ok to drop support for VS 2010 and 2008?

For Qt5 it definitively makes sense to drop them.
For Qt4, we still some older project relying on VS2008 ... that said, I will take care of regenerating them if needs to be

@jamesobutler Thanks again for moving this forward. :+1:  We will soon push this forward and use it as a base to build Slicer proper. See https://www.slicer.org/wiki/Documentation/Labs/Qt5

@jamesobutler Should we close this one? Or is there anything we should bring into the current master ?

This is quite out-of-date, so it can be closed. What this has that 5.15.1 doesn't have is some build support on Windows. There is some auto-download of build dependencies that might be a little too overbearing such as downloading Python temporarily to use during the process. Not sure if the development is worth it.  In the context of Slicer, downloading Qt binaries has been working fine. Also Qt 6 is a CMake based build system so this build script would only be of use for those still using Qt 5.

Makes sense. Thanks for the feedback
I guess we could probably completely remove the windows build support and add a note to the README ?

Yes, I would agree those changes would improve the understanding about the current status of build support for Windows.

Superseded by https://github.com/jcfr/qt-easy-build/pull/45


NUMBERS-132: Perform gcd algorithm on negative numbers in ArithmeticUtils.gcd(int, int)

Coverage increased (+0.05%) to 94.3% when pulling c704066797e41d117c3e0723d71d8e98b394e78a on Schamschi:NUMBERS-132 into 3eb540507a559b4c37a802c489b8c9218cf6bc9c on apache:master.


Zero copy Cord::Append(string_view)?

Cord::Append(string_view) copies the buffer into the cord. Can there be an api to append string_view without copy, like MakeCordFromExternal(string_view, optional releaser)? I'm currently using std::deque<string_view> instead.

cord.Append(absl::MakeCordFromExternal(sv, [](){})) is zero copy.
(In most cases. I think there are some cases where the implementation decides the memory is short enough that copying is more efficient, but I'd have to look to be sure).
Is this what you are looking for, or are you looking for something more convenient? I don't think we intend to provide anything else.

Thanks. This is what I'm looking for. It's not easy to come up with after reading the header. Could this be documented?


Why was privateDNSZone Property ManagedClusterAPIServerAccessProfile custom removed

Hi guys,
https://learn.microsoft.com/en-us/azure/templates/microsoft.containerservice/managedclusters?pivots=deployment-language-bicep
I see in the change log 2020-11-01 that ManagedClusterAPIServerAccessProfile privateDNSZone property now restricts to allowed values only 'system' and 'none', therefore a custom resource id string can longer be defined for the private zone.
This is still currently available with az cli 2.48.1
--private-dns-zone                            : Private dns zone mode for private cluster.
Allowed values are "system", "none" or custom private dns zone resource id. If not set,
defaults to type system. Requires --enable-private-cluster to be used.
What are the options for defining this with the latest Bicep API?
Thanks
Dan

Great thanks @brwilkinson. I've tweaked the CARML module I was using https://github.com/Azure/ResourceModules/tree/main/modules/Microsoft.ContainerService/managedClusters with my solution, tested and worked fine.

Tracking in issue linked by @brwilkinson as team has responded there.


Aligned dependencies version according to CVEs list

Updated dependencies following CVE scans

Outdated.
New PR will be created with up to date dependencies vulnerabilities fix


Failed unit tests in VMCS all have [99] as line number

@connojd While working on the MSR changes, I ran into some of the VMCS unit tests failing, and they all have the same line number of [99] which makes is pretty hard to track down which function / line is belongs to the test that is failing.

As I mentioned in #209, since the tests run in a loop, you can trace the error back to a member of vmcs_ut, but then there are several possibilities for the test within the loop which is causing the failure. So any failures within the loop will be reported on the same line.
I think the easiest fix for this is to print the "what" from the caught exception vs the expecting exception in the expect functions so that the tester can search for that string in the test file and instantly know which path caused the error.

agreed

Fixed in #339

@connojd is this still and issue?

No but I can't close it


Update Axios

Update Axios to version 1.6.x
Monika still using 0.27.0, a few generations old vs the current 1.6.x version
Target

Update axios to leverage all the new security patches (see references)
Include all the released bug fixes (see reference below)

References:

SNYK-JS-AXIOS-6032459
CVE 2023 45857
Official Axios release page

I've already mentioned that in #1034 that if you upgrade Axios, it will break because of pkg. So, might want to rethink about this (or just replace axios for something else)

Sure. Might worth another look and move forward.

maybe closing this ticket in favor of native fetch from ticket #1227


[BUG] Out-of-memory in from_dir() when importing segmentation data

Instructions
System information

OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Ubuntu 18.04
Python version (python --version): Python 3.9.16
FiftyOne version (fiftyone --version): FiftyOne v0.21.6, Voxel51, Inc.
FiftyOne installed from (pip or source): pip

Commands to reproduce
isaid_root = Path('/home/data/iSAID/')
ds_name = 'val'
dataset = fo.Dataset.from_dir(
    name="iSAID-seg-val",
    overwrite=True,
    dataset_type=fo.types.COCODetectionDataset,
    data_path=isaid_root / ds_name / 'images',
    labels_path=isaid_root / ds_name / 'Annotations' / f'iSAID_{ds_name}.json',
    label_types=['segmentations'],
    num_workers=10,    # reported as not used
)

Describe the problem
I am trying to import the iSAID image segmentation dataset. It consists of images from DOTA v1.5, plus the annotation files on iSAID website.
I'm starting with the validation dataset, as it contains only 458 images. However, these images have 116649 annotations. When loading the dataset as shown above (from_dir()), the program runs out of memory and gets killed by the system. I have 58 Gb of RAM available on this box.
Code to reproduce issue
See above, it is really simple, just calling from_dir() with the right directory. If you'd like some code to download the dataset, it is tough to produce as the dataset is downloaded from the author's Google Drive, which is difficult to script (wget does not work). But I can indicate which files to get.
Other info/logs
In order to understand the problem, I ran a debugger on the code. It seems the problem is coming from _coco_objects_to_detections():
https://github.com/voxel51/fiftyone/blob/71714f20aef5490e978b026e2c2dc4dfeec707c0/fiftyone/utils/coco.py#L2046-L2067
I stopped the debugger there, and used Pympler to assess the memory usage of objects:
(in the debugger window)
from pympler import asizeof

asizeof.asizeof(detection)
# 11726016 - bytes, one detection

asizeof.asizeof(detection) // 2**20
# 11 - MB, one detection

asizeof.asizeof(detections) // 2**20
# 23947 - MB, all detections so far, 2142 of them

asizeof.asizeof(detections) // 2**30
# 23 - GB

Screenshot of VSCode with debugger and above code
This is in accordance to what I see in htop memory usage (my highlight in red)

What areas of FiftyOne does this bug affect?

[x] App: FiftyOne application issue
[ ] Core: Core Python library issue
[ ] Server: FiftyOne server issue

Willingness to contribute
The FiftyOne Community encourages bug fix contributions. Would you or another member of your organization be willing to contribute a fix for this bug to the FiftyOne codebase?

[ ] Yes. I can contribute a fix for this bug independently
[x] Yes. I would be willing to contribute a fix for this bug with guidance from the FiftyOne community
[ ] No. I cannot contribute a bug fix at this time

At this point, I'm not sure what the fix could be. It seems a big change is needed in order to commit each detection to the database, rather than build the whole list in memory.

By default, FiftyOne's COCO importer represents each instance segmentation as a bounding box together with a boolean numpy array whose pixel count is proportional to the box's area wrt the entire image. Here's the COCO mask conversion code:
https://github.com/voxel51/fiftyone/blob/71714f20aef5490e978b026e2c2dc4dfeec707c0/fiftyone/utils/coco.py#L2154
The _coco_objects_to_detections() function assumes that it can fit all instance segmentations for one image in memory, but it seems like this dataset contains one image with at least 2142 instance segmentations? Which takes >23GB to represent in FiftyOne's Detections format.
from_dir() processes all the images using map():
https://github.com/voxel51/fiftyone/blob/71714f20aef5490e978b026e2c2dc4dfeec707c0/fiftyone/utils/data/importers.py#L140-L146
which should be smart enough to garbage collect between samples, since the COCO importer only calls
_coco_objects_to_detections() on one image at a time:
https://github.com/voxel51/fiftyone/blob/71714f20aef5490e978b026e2c2dc4dfeec707c0/fiftyone/utils/coco.py#L427
So the number of images in the dataset should not matter; only the max size of one image's annotations.
Even if you had enough RAM to store the Detections for this 2142 instance image in-memory, FiftyOne has a 16MB limit for each Sample object stored in the database. So the Detections label type wouldn't work for this dataset.

Perhaps you can try passing use_polylines=True?
dataset = fo.Dataset.from_dir(
    ...,
    dataset_type=fo.types.COCODetectionDataset,
    use_polylines=True,
    ...,
)

This will store the instance segmentations as polylines (lists of vertex coordinates) instead. Perhaps in this representation each sample will be <= 16MB?

Thank you for the quick response and detailed explanation !
Indeed, that image had more than 2100 objects. And I later realised it was another image that was crashing the kernel. One that is 6635 x 6508 px, and has more than 3000 objects. I had stopped the kernel just before eating all the 60 Gb of RAM, and it had only processed 1272 out of 3200 objects, for a total of 53 Gb of memory.
But yes, I am glad to report that use_polylines=True has solved the problem. I imported the whole dataset, and it never used more than 3 GB or RAM.
Thanks a lot!


Sample to read all WorkItemLinks

Could you please point to any sample to retrieve WorkItems and WorkItemsLinks?

This is Microsoft. They create many software components but not maintain it or document it.


Update Air Quality app to add widget support and configurable display type

Updates the Air Quality app to add widget support (disables animation) and introduces a configurable display type.
The user can now select between the original forecast view and the new pollutants view where it's possible to see the value of a specific pollutant (eg: pm2.5).
Preview:

Build is failing because of the secrets module.
If you need an API key to validate locally I can provide one.

Fixed handling of API Keys so it does not break the CI anymore.


can not hide "Editing,viewing" menu

I'm currently using DocumentEditor version 1.5.1
and i'm using this config, that defined in https://api.onlyoffice.com/editors/config/document/permissions:
 <DocumentEditor
            id="docxEditor"
            config={{
              document: {
               ...
                permissions: {
                  edit: false,
                },
              }
                ...
/>

The example on document page's works well, but on my project, the  select box for "editing,viewing" mode on the viewer is not hidden.
My onlyoffice server using version 8.1.3.

is there any issue with  DocumentEditor ?

Hello,
The PDF editor has an in-built viewing and editing mode that is not affected by the editor initialization config. Do you have the same issue with the other formats (DOCX, PPTX, XLSX) ?


App + Library conversion to Kotlin

#407 continued
Did the Kotlin conversion on the app only and did some manual testing. No issues found so far.

@lucianocheng @burhanrashid52 please check this and do your testing.

Left some initial comments.
Ran some tests, the images aren't saving for me on the Android Version 30 emulator. Freezes at "Saving" with the spinner.

@lucianocheng can you post the logcat of the error, so we can investigate with more details?

Left some initial comments.
Ran some tests, the images aren't saving for me on the Android Version 30 emulator. Freezes at "Saving" with the spinner.

@lucianocheng can you post the logcat of the error, so we can investigate with more details?

So it's interesting, there wasn't a logcat error it just froze up. Tried it twice with Android 30 on the emulator.
I think it's a wait lock or a for loop or something. Could you see if you can replicate? Does exporting work for you with one sticker added?

Left some initial comments.
Ran some tests, the images aren't saving for me on the Android Version 30 emulator. Freezes at "Saving" with the spinner.

@lucianocheng can you post the logcat of the error, so we can investigate with more details?

So it's interesting, there wasn't a logcat error it just froze up. Tried it twice with Android 30 on the emulator.
I think it's a wait lock or a for loop or something. Could you see if you can replicate? Does exporting work for you with one sticker added?

Maybe it didn't "FREEZE" as an error, it just never reached the hideLoading function, that gets the Dialog out of the way.
Can you tell me the exact details of the emulator so I can replicate here?
Also... In your place I'd distribute several Log.d inside FileSaveHelper, and try to understand exactly what it is doing and what it is not, to get some good idea on what is the problematic line.

Can you tell me the exact details of the emulator so I can replicate here?

Pixel 4, API 30, Android 11

Also... In your place I'd distribute several Log.d inside FileSaveHelper, and try to understand exactly what it is doing and what it is not, to get some good idea on what is the problematic line.

If you can replicate it, I would recommend you put some stop points in FileSaveHelper and look at it with the debugger. If you can't let me know and I'll try again.

Can you tell me the exact details of the emulator so I can replicate here?

Pixel 4, API 30, Android 11

Also... In your place I'd distribute several Log.d inside FileSaveHelper, and try to understand exactly what it is doing and what it is not, to get some good idea on what is the problematic line.

If you can replicate it, I would recommend you put some stop points in FileSaveHelper and look at it with the debugger. If you can't let me know and I'll try again.

I've debugged it and the situation is:
In the new code,

Can you tell me the exact details of the emulator so I can replicate here?

Pixel 4, API 30, Android 11

Also... In your place I'd distribute several Log.d inside FileSaveHelper, and try to understand exactly what it is doing and what it is not, to get some good idea on what is the problematic line.

If you can replicate it, I would recommend you put some stop points in FileSaveHelper and look at it with the debugger. If you can't let me know and I'll try again.

I've did my homework and the situation is: with the new Kotlin code, writing files locally requires that the ActivityCompat.checkSelfPermission(applicationContext, Manifest.permission.WRITE_EXTERNAL_STORAGE) is GRANTED (around 12th line of saveImage() method in EditImageActivity.kt)
It even put a TODO there, exactly because when the permission is NOT granted, it needs to be asked to the user, or a specific exception has to be raised (to handle informing the user that the action was not possible)
I'll try to implement this permission-asking or create a Toast telling him that it lacks permissions.

I'll try to implement this permission-asking or create a Toast telling him that it lacks permissions.

👍
Also the code tests on Github Actions aren't being executed (see the Kotlin conversion PR for an example #417).
@burhanrashid52 do we need to do something special to trigger the tests on the PR? Or should they run automatically?

I'm illiterate in "Github Actions", don't have a clue about them

There, @lucianocheng , I adjusted it
It happens that the old code already took care of only asking explicit disk permissions on API Level lesser than 28, but the IDE didn't detect it and at the moment of the Kotlin conversion I accepted the suggestion of the IDE to ask for the permission, which now I see is unecessary.
So I removed the useless extra-check and now everything works here in Saving, be it in API Level < 28 ou >= 28
ps: the endless Saving was no error or crash, just the lack of a hideLoading() as I suspected before

@lucianocheng Thanks for pointing it out. I've fixed it in github yml.
@anderbytes You just need to push a new commit to trigger the GitHub workflow.

@lucianocheng Thanks for pointing it out. I've fixed it in github yml. @anderbytes You just need to push a new commit to trigger the GitHub workflow.

Actually, I'll change every

@lucianocheng Thanks for pointing it out. I've fixed it in github yml. @anderbytes You just need to push a new commit to trigger the GitHub workflow.

Actually, I'll change every != null to a better-written  .let  of Kotlin
this will be today's cleaning

@anderbytes I think push commit is not triggering the action :(. You need to recreate a new PR.

@anderbytes I think pushing commit is not triggering the GitHub action workflow:(. You need to recreate a new PR.

@burhanrashid52 wow I'm kind of shocked that Github expects you to create a new PR for running updated actions configuration. Is there another option? Can @anderbytes pull from master to pull in the yml changes?

@anderbytes I think pushing commit is not triggering the GitHub action workflow:(. You need to recreate a new PR.

@burhanrashid52 wow I'm kind of shocked that Github expects you to create a new PR for running updated actions configuration. Is there another option? Can @anderbytes pull from master to pull in the yml changes?

Actually, it's working correctly. I added a PR trigger after the PR was created hence it is not able to catch the event.

I can't create a new pull request for the same commits/branch because Github detects there's this one active with the same changes.
I'll find some time today morning to stash all my changes locally, remove my branch then recreate it... maybe then I'll be able to ask for a new pull.


Create annotation for custom value generator

Because there is possibility to choose the custom class provider, custom instance matcher, it will be possible also the use annotation @CustomValueGenerator(Class)

Added annotation for custom value generator.


Adding Paged Attention (e.g. from vLLM)

Feature request
Adding Paged Attention, as used in the vLLM repository would be quite useful!
It boosts the inference speed of LLaMa by up to 24x compared to basic inference on Huggingface transformers!

Blog: https://vllm.ai/
Motivation
There is the potential to significantly boost the inference speed of LLMs here.
Your contribution
I can submit a PR, but I also have a lot of items on my open-source to-do list...

Maybe this is better suited for Huggingface's Text Generation Inference repository.


[Addon] Upgrade flink-kubernetes-operator version

Currently, the latest version of flink-kubernetes-operator is 1.3.1. And the official has removed the download URL for 1.3.0.

It has been fixed via PR #621 . Close it.


Automated cherry pick of #8231: add interface freeze virtual resource

Cherry pick of #8231 on release/3.4.
#8231: add interface freeze virtual resource

/lgtm
/approve