Internal Server Error when adding the {fac_name} and {fac_rank} format tags.

Issue Description.

Expected result: Rank formats work as they intend to, '&7[&l&6Newcomer&r&7] &6[{fac_name}][{fac_rank}] &7{display_name} &7>> {msg}' or at least making sure {fac_name} and {fac_rank} work.

Actual result: When reloading or joining the server, it gives off an Internal Server error, even if all the virions and the pr-15 purechat was added (except libPiggyEconomy cuz it was outdated and didn't register)

Steps to Reproduce the Issue

Try and download the PiggyFactions latest release, download all the virions and the purechat pr-15 release;
in purechat config, set default-factions-plugin to PiggyFactions;
set the Guest group to:
Guest:
chat: '&7[&l&6Newcomer&r&7] &6[{fac_name}][{fac_rank}] &7{display_name} &7>> {msg}'
nametag: '&7[&l&6Newcomer&r&7] &6[{fac_name}][{fac_rank}] &7{display_name}'
(Or anything just make sure to add {fac_name} and/or {fac_rank};
reload/restart the server.

OS and Versions

PocketMine-MP: 3.15.0 (protocol version 408)
PiggyFactions: 1.1.1
PHP: PHP 7.3 (i believe)
Server OS: CentOS 64-Bit Linux (i think. im hosting on apexminecrafthosting)

Whenever i set the default-factions-plugin to PiggyFactions it gives the player an ''Internal Server Error'' every time they type something in the chat, or when any player joins it instantly shows up with an ''Internal Server Error''.
If theres anything else, please ask, ill try to provide with as much information to my knowladge.
heres a hastebin with the error too
https://hastebin.com/gipifarube.bash

https://github.com/DaPigGuy/PiggyFactions#purechat-tags
Update your version of PureChat


[C#] Update guide to verify trophy

Describe the Issue
I found that the trophy verification step will fail if a user has their Microsoft Learn profile set to private.
To reproduce:

Go to https://learn.microsoft.com/en-us/users/me/settings#privacy-prefs-form
Enable Private Mode
Go to a freeCodeCamp trophy page, e.g: https://forum.freecodecamp.org/t/verify-your-trophy-from-microsoft-solution/633660
Link the Microsoft Learn account and click "Verify Trophy"

Result:
The action will fail with "Something went wrong trying to verify your trophy. Please check and try again.".
Suggested fix:
I think we should update the description of the trophy challenges to mention that the user's Microsoft Learn must be public. And the forum guide should be updated as well: https://forum.freecodecamp.org/t/verify-your-trophy-from-microsoft-solution/633660.
Affected Page
https://www.freecodecamp.org/learn/foundational-c-sharp-with-microsoft/write-your-first-code-using-c-sharp/trophy-write-your-first-code-using-c-sharp
Your code
N/A
Expected behavior
N/A
Screenshots
No response
System
N/A
Additional context
No response

May  I know how can I edit the guide page. I have understood the problem, but I am not getting an option to edit the page.

Please assign me this issue I would like to work on it

The raised pr has the changes made in description. Please have a look at it.

I would add it to the forum post for sure. I'm not sure if we need to add it to the challenges - mainly cause it doesn't feel like it fits in the instructions anywhere. I'm guessing it's a rare issue and we can help on the forum when needed - that's what I think I would do anyway.

I gave it a quick check, I think we can infer if it's private.
You can't create a transcript link on Microsoft without having at least one item complete (one badge earned). You need the transcript link to link your MS and fCC accounts before you can verify a trophy. So anyone trying to verify a trophy, should have already linked their account, created a transcript link, and earned at least one badge.
When we verify a trophy, we check an array of the users achievements to see if the trophy is there. If a profile is private, that array is empty. It's also empty if they haven't earned any achievements (badges) yet - but since we know they've earned at least one (needed to create the transcript link) - we can infer that it's private if the array is empty. I think this should work. What do you think @huyenltnguyen?


feat(apps/prod/tekton/configs): add task in GA release flow to create github releases

Signed-off-by: wuhuizuo<EMAIL_ADDRESS>

/approve


HIVE-26079: Upgrade Protobuf to 3.21.1

Tags for the Reproducible builds

What changes were proposed in this pull request?

Why are the changes needed?

Does this PR introduce any user-facing change?

How was this patch tested?

Got it sorted here: 3498
Not moving above 3.7.1 to keep it sync with Hadoop

ok - that was previously my work here #3309

reason to use [3.21.1 and not previous is only becouse previous version dont have feature to use protoc on macos m1.

3.19.2 should also allow I feel:
https://repo1.maven.org/maven2/com/google/protobuf/protoc/3.19.2/
I wanted to stay with Hadoop for now. OSX won't be used for actual deployments though, but yes for dev env for sure.(I am myself on OSX)
These google dependencies are very good with breaking backward compat, As of now I think I just had 2 HBase failures, which I got fixed, Hopefully won't have any other. But I can check with folks like what issues can it have if we move above hadoop, earlier both hadoop & hive were on 2.5.0

no, anything bellow 3.21.0-rc-2  was wrong.. I've been testing builds on Hive ;-)
https://github.com/protocolbuffers/protobuf/issues/9973


Auto add resource keys

Description of Proposed Changes:

Eliminates the need to manually add ResourceKeys by automatically creating them via the key supplied in the ModelMap
Backwards-compatible, though, since ResourceKeys can still be manually added and also take precedence

also bumps package version to 0.4.4


await asyncio.shield(run.async_run())
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 246, in async_run
    await self._async_step(log_exceptions=False)
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 254, in _async_step
    await getattr(
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 464, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1455, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1490, in _execute_service
    await handler.job.target(service_call)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 204, in handle_service
    await self.hass.helpers.service.entity_service_call(
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 595, in entity_service_call
    future.result()  # pop exception if have
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 664, in async_request_call
    await coro
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 632, in _handle_entity_call
    await result
  File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", line 544, in async_service_temperature_set
    await entity.async_set_temperature(**kwargs)
  File "/config/custom_components/tion/climate.py", line 378, in async_set_temperature
    await self._async_set_state(heater_temp=temperature)
  File "/config/custom_components/tion/climate.py", line 425, in _async_set_state
    await self._tion_entry.set(**kwargs)
  File "/config/custom_components/tion/__init__.py", line 203, in set
    self.__tion.set(kwargs)
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 252, in set
    self.connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 539, in connect
    self._connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 325, in _connect
    raise e
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 306, in _connect
    self._btle.connect(self.mac, btle.ADDR_TYPE_RANDOM)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 445, in connect
    self._connect(addr, addrType, iface)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 439, in _connect
    raise BTLEDisconnectError("Failed to connect to peripheral %s, addr type: %s" % (addr, addrType), rsp)
bluepy.btle.BTLEDisconnectError: Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
2021-02-22 21:37:22 ERROR (SyncWorker_3) [custom_components.ready4sky] unable to connect to device
2021-02-22 21:37:22 DEBUG (MainThread) [custom_components.tion] Tion instance updated at 2021-02-22 18:37:22.789738+00:00
2021-02-22 21:37:22 DEBUG (MainThread) [custom_components.tion] Update fired force = False. Keep connection is False
2021-02-22 21:37:22 DEBUG (MainThread) [custom_components.tion] Now is 2021-02-22 18:37:22.789738+00:00
2021-02-22 21:37:22 ERROR (SyncWorker_3) [custom_components.ready4sky] unable to connect to device
2021-02-22 21:37:22 WARNING (MainThread) [tion_btle.tion] Got BTLEDisconnectError:Failed to connect to peripheral D8:2C:C6:F3:3B:AA, addr type: random
2021-02-22 21:37:23 ERROR (SyncWorker_3) [custom_components.ready4sky] unable to connect to device
2021-02-22 21:37:23 ERROR (SyncWorker_3) [custom_components.ready4sky] unable to connect to device
2021-02-22 21:37:23 ERROR (SyncWorker_3) [custom_components.ready4sky] unable to connect to device
2021-02-22 21:37:23 WARNING (SyncWorker_3) [custom_components.ready4sky] five attempts of modeUpdate failed
2021-02-22 21:37:25 WARNING (MainThread) [tion_btle.tion] Got BTLEDisconnectError:Failed to connect to peripheral D8:2C:C6:F3:3B:AA, addr type: random
2021-02-22 21:37:25 CRITICAL (MainThread) [custom_components.tion] Got exception Failed to connect to peripheral D8:2C:C6:F3:3B:AA, addr type: random
2021-02-22 21:37:25 CRITICAL (MainThread) [custom_components.tion] Will delay next check
2021-02-22 21:37:25 DEBUG (MainThread) [custom_components.tion] Tion instance updated at 2021-02-22 18:37:22.790420+00:00
2021-02-22 21:37:25 DEBUG (MainThread) [custom_components.tion] Update fired force = False. Keep connection is False
2021-02-22 21:37:25 DEBUG (MainThread) [custom_components.tion] Now is 2021-02-22 18:37:22.790420+00:00
2021-02-22 21:37:35 INFO (MainThread) [custom_components.tion] Need to set: heater_temp=20.0
2021-02-22 21:37:35 WARNING (MainThread) [tion_btle.tion] Got BTLEDisconnectError:Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
2021-02-22 21:37:35 ERROR (MainThread) [homeassistant.components.automation.tion_temp_children_repeat] tion_temp_children_repeat: Error executing script. Unexpected error for call_service at pos 2: Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 254, in _async_step
    await getattr(
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 464, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1455, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1490, in _execute_service
    await handler.job.target(service_call)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 204, in handle_service
    await self.hass.helpers.service.entity_service_call(
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 595, in entity_service_call
    future.result()  # pop exception if have
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 664, in async_request_call
    await coro
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 632, in _handle_entity_call
    await result
  File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", line 544, in async_service_temperature_set
    await entity.async_set_temperature(**kwargs)
  File "/config/custom_components/tion/climate.py", line 378, in async_set_temperature
    await self._async_set_state(heater_temp=temperature)
  File "/config/custom_components/tion/climate.py", line 425, in _async_set_state
    await self._tion_entry.set(**kwargs)
  File "/config/custom_components/tion/__init__.py", line 203, in set
    self.__tion.set(kwargs)
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 252, in set
    self.connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 539, in connect
    self._connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 325, in _connect
    raise e
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 306, in _connect
    self._btle.connect(self.mac, btle.ADDR_TYPE_RANDOM)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 445, in connect
    self._connect(addr, addrType, iface)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 439, in _connect
    raise BTLEDisconnectError("Failed to connect to peripheral %s, addr type: %s" % (addr, addrType), rsp)
bluepy.btle.BTLEDisconnectError: Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
2021-02-22 21:37:35 ERROR (MainThread) [homeassistant.components.automation.tion_temp_children_repeat] While executing automation automation.tion_temp_children_repeat
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/automation/__init__.py", line 404, in async_trigger
    await self.action_script.async_run(
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1033, in async_run
    await asyncio.shield(run.async_run())
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 246, in async_run
    await self._async_step(log_exceptions=False)
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 254, in _async_step
    await getattr(
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 464, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1455, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1490, in _execute_service
    await handler.job.target(service_call)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 204, in handle_service
    await self.hass.helpers.service.entity_service_call(
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 595, in entity_service_call
    future.result()  # pop exception if have
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 664, in async_request_call
    await coro
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 632, in _handle_entity_call
    await result
  File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", line 544, in async_service_temperature_set
    await entity.async_set_temperature(**kwargs)
  File "/config/custom_components/tion/climate.py", line 378, in async_set_temperature
    await self._async_set_state(heater_temp=temperature)
  File "/config/custom_components/tion/climate.py", line 425, in _async_set_state
    await self._tion_entry.set(**kwargs)
  File "/config/custom_components/tion/__init__.py", line 203, in set
    self.__tion.set(kwargs)
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 252, in set
    self.connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 539, in connect
    self._connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 325, in _connect
    raise e
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 306, in _connect
    self._btle.connect(self.mac, btle.ADDR_TYPE_RANDOM)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 445, in connect
    self._connect(addr, addrType, iface)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 439, in _connect
    raise BTLEDisconnectError("Failed to connect to peripheral %s, addr type: %s" % (addr, addrType), rsp)
bluepy.btle.BTLEDisconnectError: Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
2021-02-22 21:37:50 INFO (MainThread) [custom_components.tion] Need to set: heater_temp=20.0
2021-02-22 21:37:50 WARNING (MainThread) [tion_btle.tion] Got BTLEDisconnectError:Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
2021-02-22 21:37:50 ERROR (MainThread) [homeassistant.components.automation.tion_temp_children_repeat] tion_temp_children_repeat: Error executing script. Unexpected error for call_service at pos 2: Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 254, in _async_step
    await getattr(
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 464, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1455, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1490, in _execute_service
    await handler.job.target(service_call)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 204, in handle_service
    await self.hass.helpers.service.entity_service_call(
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 595, in entity_service_call
    future.result()  # pop exception if have
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 664, in async_request_call
    await coro
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 632, in _handle_entity_call
    await result
  File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", line 544, in async_service_temperature_set
    await entity.async_set_temperature(**kwargs)
  File "/config/custom_components/tion/climate.py", line 378, in async_set_temperature
    await self._async_set_state(heater_temp=temperature)
  File "/config/custom_components/tion/climate.py", line 425, in _async_set_state
    await self._tion_entry.set(**kwargs)
  File "/config/custom_components/tion/__init__.py", line 203, in set
    self.__tion.set(kwargs)
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 252, in set
    self.connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 539, in connect
    self._connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 325, in _connect
    raise e
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 306, in _connect
    self._btle.connect(self.mac, btle.ADDR_TYPE_RANDOM)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 445, in connect
    self._connect(addr, addrType, iface)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 439, in _connect
    raise BTLEDisconnectError("Failed to connect to peripheral %s, addr type: %s" % (addr, addrType), rsp)
bluepy.btle.BTLEDisconnectError: Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
2021-02-22 21:37:50 ERROR (MainThread) [homeassistant.components.automation.tion_temp_children_repeat] While executing automation automation.tion_temp_children_repeat
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/automation/__init__.py", line 404, in async_trigger
    await self.action_script.async_run(
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1033, in async_run
    await asyncio.shield(run.async_run())
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 246, in async_run
    await self._async_step(log_exceptions=False)
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 254, in _async_step
    await getattr(
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 464, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1455, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1490, in _execute_service
    await handler.job.target(service_call)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 204, in handle_service
    await self.hass.helpers.service.entity_service_call(
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 595, in entity_service_call
    future.result()  # pop exception if have
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 664, in async_request_call
    await coro
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 632, in _handle_entity_call
    await result
  File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", line 544, in async_service_temperature_set
    await entity.async_set_temperature(**kwargs)
  File "/config/custom_components/tion/climate.py", line 378, in async_set_temperature
    await self._async_set_state(heater_temp=temperature)
  File "/config/custom_components/tion/climate.py", line 425, in _async_set_state
    await self._tion_entry.set(**kwargs)
  File "/config/custom_components/tion/__init__.py", line 203, in set
    self.__tion.set(kwargs)
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 252, in set
    self.connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 539, in connect
    self._connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 325, in _connect
    raise e
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 306, in _connect
    self._btle.connect(self.mac, btle.ADDR_TYPE_RANDOM)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 445, in connect
    self._connect(addr, addrType, iface)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 439, in _connect
    raise BTLEDisconnectError("Failed to connect to peripheral %s, addr type: %s" % (addr, addrType), rsp)
bluepy.btle.BTLEDisconnectError: Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
2021-02-22 21:38:05 INFO (MainThread) [custom_components.tion] Need to set: heater_temp=20.0
2021-02-22 21:38:05 WARNING (MainThread) [tion_btle.tion] Got BTLEDisconnectError:Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
2021-02-22 21:38:05 ERROR (MainThread) [homeassistant.components.automation.tion_temp_children_repeat] tion_temp_children_repeat: Error executing script. Unexpected error for call_service at pos 2: Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 254, in _async_step
    await getattr(
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 464, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1455, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1490, in _execute_service
    await handler.job.target(service_call)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 204, in handle_service
    await self.hass.helpers.service.entity_service_call(
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 595, in entity_service_call
    future.result()  # pop exception if have
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 664, in async_request_call
    await coro
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 632, in _handle_entity_call
    await result
  File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", line 544, in async_service_temperature_set
    await entity.async_set_temperature(**kwargs)
  File "/config/custom_components/tion/climate.py", line 378, in async_set_temperature
    await self._async_set_state(heater_temp=temperature)
  File "/config/custom_components/tion/climate.py", line 425, in _async_set_state
    await self._tion_entry.set(**kwargs)
  File "/config/custom_components/tion/__init__.py", line 203, in set
    self.__tion.set(kwargs)
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 252, in set
    self.connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 539, in connect
    self._connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 325, in _connect
    raise e
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 306, in _connect
    self._btle.connect(self.mac, btle.ADDR_TYPE_RANDOM)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 445, in connect
    self._connect(addr, addrType, iface)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 439, in _connect
    raise BTLEDisconnectError("Failed to connect to peripheral %s, addr type: %s" % (addr, addrType), rsp)
bluepy.btle.BTLEDisconnectError: Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
2021-02-22 21:38:05 ERROR (MainThread) [homeassistant.components.automation.tion_temp_children_repeat] While executing automation automation.tion_temp_children_repeat
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/automation/__init__.py", line 404, in async_trigger
    await self.action_script.async_run(
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1033, in async_run
    await asyncio.shield(run.async_run())
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 246, in async_run
    await self._async_step(log_exceptions=False)
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 254, in _async_step
    await getattr(
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 464, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1455, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1490, in _execute_service
    await handler.job.target(service_call)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 204, in handle_service
    await self.hass.helpers.service.entity_service_call(
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 595, in entity_service_call
    future.result()  # pop exception if have
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 664, in async_request_call
    await coro
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 632, in _handle_entity_call
    await result
  File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", line 544, in async_service_temperature_set
    await entity.async_set_temperature(**kwargs)
  File "/config/custom_components/tion/climate.py", line 378, in async_set_temperature
    await self._async_set_state(heater_temp=temperature)
  File "/config/custom_components/tion/climate.py", line 425, in _async_set_state
    await self._tion_entry.set(**kwargs)
  File "/config/custom_components/tion/__init__.py", line 203, in set
    self.__tion.set(kwargs)
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 252, in set
    self.connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 539, in connect
    self._connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 325, in _connect
    raise e
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 306, in _connect
    self._btle.connect(self.mac, btle.ADDR_TYPE_RANDOM)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 445, in connect
    self._connect(addr, addrType, iface)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 439, in _connect
    raise BTLEDisconnectError("Failed to connect to peripheral %s, addr type: %s" % (addr, addrType), rsp)
bluepy.btle.BTLEDisconnectError: Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
2021-02-22 21:38:20 INFO (MainThread) [custom_components.tion] Need to set: heater_temp=20.0
2021-02-22 21:38:20 WARNING (MainThread) [tion_btle.tion] Got BTLEDisconnectError:Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
2021-02-22 21:38:20 ERROR (MainThread) [homeassistant.components.automation.tion_temp_children_repeat] tion_temp_children_repeat: Error executing script. Unexpected error for call_service at pos 2: Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 254, in _async_step
    await getattr(
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 464, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1455, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1490, in _execute_service
    await handler.job.target(service_call)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 204, in handle_service
    await self.hass.helpers.service.entity_service_call(
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 595, in entity_service_call
    future.result()  # pop exception if have
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 664, in async_request_call
    await coro
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 632, in _handle_entity_call
    await result
  File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", line 544, in async_service_temperature_set
    await entity.async_set_temperature(**kwargs)
  File "/config/custom_components/tion/climate.py", line 378, in async_set_temperature
    await self._async_set_state(heater_temp=temperature)
  File "/config/custom_components/tion/climate.py", line 425, in _async_set_state
    await self._tion_entry.set(**kwargs)
  File "/config/custom_components/tion/__init__.py", line 203, in set
    self.__tion.set(kwargs)
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 252, in set
    self.connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 539, in connect
    self._connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 325, in _connect
    raise e
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 306, in _connect
    self._btle.connect(self.mac, btle.ADDR_TYPE_RANDOM)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 445, in connect
    self._connect(addr, addrType, iface)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 439, in _connect
    raise BTLEDisconnectError("Failed to connect to peripheral %s, addr type: %s" % (addr, addrType), rsp)
bluepy.btle.BTLEDisconnectError: Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
2021-02-22 21:38:20 ERROR (MainThread) [homeassistant.components.automation.tion_temp_children_repeat] While executing automation automation.tion_temp_children_repeat
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/automation/__init__.py", line 404, in async_trigger
    await self.action_script.async_run(
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1033, in async_run
    await asyncio.shield(run.async_run())
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 246, in async_run
    await self._async_step(log_exceptions=False)
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 254, in _async_step
    await getattr(
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 464, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1455, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1490, in _execute_service
    await handler.job.target(service_call)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 204, in handle_service
    await self.hass.helpers.service.entity_service_call(
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 595, in entity_service_call
    future.result()  # pop exception if have
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 664, in async_request_call
    await coro
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 632, in _handle_entity_call
    await result
  File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", line 544, in async_service_temperature_set
    await entity.async_set_temperature(**kwargs)
  File "/config/custom_components/tion/climate.py", line 378, in async_set_temperature
    await self._async_set_state(heater_temp=temperature)
  File "/config/custom_components/tion/climate.py", line 425, in _async_set_state
    await self._tion_entry.set(**kwargs)
  File "/config/custom_components/tion/__init__.py", line 203, in set
    self.__tion.set(kwargs)
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 252, in set
    self.connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 539, in connect
    self._connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 325, in _connect
    raise e
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 306, in _connect
    self._btle.connect(self.mac, btle.ADDR_TYPE_RANDOM)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 445, in connect
    self._connect(addr, addrType, iface)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 439, in _connect
    raise BTLEDisconnectError("Failed to connect to peripheral %s, addr type: %s" % (addr, addrType), rsp)
bluepy.btle.BTLEDisconnectError: Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
2021-02-22 21:38:22 DEBUG (MainThread) [custom_components.tion] Tion instance updated at 2021-02-22 18:38:22.790841+00:00
2021-02-22 21:38:22 DEBUG (MainThread) [custom_components.tion] Update fired force = False. Keep connection is False
2021-02-22 21:38:22 DEBUG (MainThread) [custom_components.tion] Now is 2021-02-22 18:38:22.790841+00:00
2021-02-22 21:38:25 DEBUG (MainThread) [custom_components.tion] Tion instance updated at 2021-02-22 18:38:25.014240+00:00
2021-02-22 21:38:25 DEBUG (MainThread) [custom_components.tion] Update fired force = False. Keep connection is False
2021-02-22 21:38:25 DEBUG (MainThread) [custom_components.tion] Now is 2021-02-22 18:38:25.014240+00:00
2021-02-22 21:38:35 INFO (MainThread) [custom_components.tion] Need to set: heater_temp=20.0
2021-02-22 21:38:35 WARNING (MainThread) [tion_btle.tion] Got BTLEDisconnectError:Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
2021-02-22 21:38:35 ERROR (MainThread) [homeassistant.components.automation.tion_temp_children_repeat] tion_temp_children_repeat: Error executing script. Unexpected error for call_service at pos 2: Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 254, in _async_step
    await getattr(
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 464, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1455, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1490, in _execute_service
    await handler.job.target(service_call)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 204, in handle_service
    await self.hass.helpers.service.entity_service_call(
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 595, in entity_service_call
    future.result()  # pop exception if have
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 664, in async_request_call
    await coro
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 632, in _handle_entity_call
    await result
  File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", line 544, in async_service_temperature_set
    await entity.async_set_temperature(**kwargs)
  File "/config/custom_components/tion/climate.py", line 378, in async_set_temperature
    await self._async_set_state(heater_temp=temperature)
  File "/config/custom_components/tion/climate.py", line 425, in _async_set_state
    await self._tion_entry.set(**kwargs)
  File "/config/custom_components/tion/__init__.py", line 203, in set
    self.__tion.set(kwargs)
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 252, in set
    self.connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 539, in connect
    self._connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 325, in _connect
    raise e
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 306, in _connect
    self._btle.connect(self.mac, btle.ADDR_TYPE_RANDOM)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 445, in connect
    self._connect(addr, addrType, iface)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 439, in _connect
    raise BTLEDisconnectError("Failed to connect to peripheral %s, addr type: %s" % (addr, addrType), rsp)
bluepy.btle.BTLEDisconnectError: Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
2021-02-22 21:38:35 ERROR (MainThread) [homeassistant.components.automation.tion_temp_children_repeat] While executing automation automation.tion_temp_children_repeat
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/automation/__init__.py", line 404, in async_trigger
    await self.action_script.async_run(
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1033, in async_run
    await asyncio.shield(run.async_run())
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 246, in async_run
    await self._async_step(log_exceptions=False)
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 254, in _async_step
    await getattr(
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 464, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1455, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1490, in _execute_service
    await handler.job.target(service_call)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 204, in handle_service
    await self.hass.helpers.service.entity_service_call(
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 595, in entity_service_call
    future.result()  # pop exception if have
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 664, in async_request_call
    await coro
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 632, in _handle_entity_call
    await result
  File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", line 544, in async_service_temperature_set
    await entity.async_set_temperature(**kwargs)
  File "/config/custom_components/tion/climate.py", line 378, in async_set_temperature
    await self._async_set_state(heater_temp=temperature)
  File "/config/custom_components/tion/climate.py", line 425, in _async_set_state
    await self._tion_entry.set(**kwargs)
  File "/config/custom_components/tion/__init__.py", line 203, in set
    self.__tion.set(kwargs)
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 252, in set
    self.connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 539, in connect
    self._connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 325, in _connect
    raise e
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 306, in _connect
    self._btle.connect(self.mac, btle.ADDR_TYPE_RANDOM)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 445, in connect
    self._connect(addr, addrType, iface)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 439, in _connect
    raise BTLEDisconnectError("Failed to connect to peripheral %s, addr type: %s" % (addr, addrType), rsp)
bluepy.btle.BTLEDisconnectError: Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
2021-02-22 21:38:46 WARNING (MainThread) [homeassistant.components.automation.svet_spalnia] свет спальня: Already running
2021-02-22 21:38:50 INFO (MainThread) [custom_components.tion] Need to set: heater_temp=20.0
2021-02-22 21:38:50 WARNING (MainThread) [tion_btle.tion] Got BTLEDisconnectError:Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
2021-02-22 21:38:50 ERROR (MainThread) [homeassistant.components.automation.tion_temp_children_repeat] tion_temp_children_repeat: Error executing script. Unexpected error for call_service at pos 2: Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 254, in _async_step
    await getattr(
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 464, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1455, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1490, in _execute_service
    await handler.job.target(service_call)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 204, in handle_service
    await self.hass.helpers.service.entity_service_call(
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 595, in entity_service_call
    future.result()  # pop exception if have
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 664, in async_request_call
    await coro
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 632, in _handle_entity_call
    await result
  File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", line 544, in async_service_temperature_set
    await entity.async_set_temperature(**kwargs)
  File "/config/custom_components/tion/climate.py", line 378, in async_set_temperature
    await self._async_set_state(heater_temp=temperature)
  File "/config/custom_components/tion/climate.py", line 425, in _async_set_state
    await self._tion_entry.set(**kwargs)
  File "/config/custom_components/tion/__init__.py", line 203, in set
    self.__tion.set(kwargs)
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 252, in set
    self.connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 539, in connect
    self._connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 325, in _connect
    raise e
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 306, in _connect
    self._btle.connect(self.mac, btle.ADDR_TYPE_RANDOM)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 445, in connect
    self._connect(addr, addrType, iface)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 439, in _connect
    raise BTLEDisconnectError("Failed to connect to peripheral %s, addr type: %s" % (addr, addrType), rsp)
bluepy.btle.BTLEDisconnectError: Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random
2021-02-22 21:38:50 ERROR (MainThread) [homeassistant.components.automation.tion_temp_children_repeat] While executing automation automation.tion_temp_children_repeat
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/automation/__init__.py", line 404, in async_trigger
    await self.action_script.async_run(
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 1033, in async_run
    await asyncio.shield(run.async_run())
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 246, in async_run
    await self._async_step(log_exceptions=False)
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 254, in _async_step
    await getattr(
  File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 464, in _async_call_service_step
    await service_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1455, in async_call
    task.result()
  File "/usr/src/homeassistant/homeassistant/core.py", line 1490, in _execute_service
    await handler.job.target(service_call)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 204, in handle_service
    await self.hass.helpers.service.entity_service_call(
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 595, in entity_service_call
    future.result()  # pop exception if have
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 664, in async_request_call
    await coro
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 632, in _handle_entity_call
    await result
  File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", line 544, in async_service_temperature_set
    await entity.async_set_temperature(**kwargs)
  File "/config/custom_components/tion/climate.py", line 378, in async_set_temperature
    await self._async_set_state(heater_temp=temperature)
  File "/config/custom_components/tion/climate.py", line 425, in _async_set_state
    await self._tion_entry.set(**kwargs)
  File "/config/custom_components/tion/__init__.py", line 203, in set
    self.__tion.set(kwargs)
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 252, in set
    self.connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 539, in connect
    self._connect()
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 325, in _connect
    raise e
  File "/usr/local/lib/python3.8/site-packages/tion_btle/tion.py", line 306, in _connect
    self._btle.connect(self.mac, btle.ADDR_TYPE_RANDOM)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 445, in connect
    self._connect(addr, addrType, iface)
  File "/usr/local/lib/python3.8/site-packages/bluepy/btle.py", line 439, in _connect
    raise BTLEDisconnectError("Failed to connect to peripheral %s, addr type: %s" % (addr, addrType), rsp)
bluepy.btle.BTLEDisconnectError: Failed to connect to peripheral FB:17:6F:12:42:DD, addr type: random

Помогло отключение/включение блютуза на малине и переспаривание бризеров. пока снова работают.

@MihVS выполненное заново сопряжение не может влиять на работу BT.
Работа с BT здесь синхронная, через bluepy, перевести на асинхронный bleak возможности нет (не поддерживает его Home Assistant). Это означает что если компонент пытается подключиться, а бризер на это никак не раеагирует система будет ждать когда же что-нибудь случится (ситуация полностью аналогочика считыванию с floppy/CDб если вы застали те времена, когда попытка прочитать невставленную дискету/CD подвешивала систему до тех пор пока он не узнавала что привод пустой).
Вторая часть пробелмы растет из того что у вас используется 2 бризера: HA асинхронный и запросы посылает тогда, когда хочет. Они стекаются за синхронный компонент управляющий BТ.
Попробуйте оставить управление только одним бризером.

Понятно. Смысла нет мне один оставлять, уже привык к автоматизации)) Буду тогда придумывать через какую нибудь прослойку пользовать, что бы если даже повисло то без одноплатника, а то это напрягает, весь умный дом вешается.

У мнея, кстати, стало легче когда я отключил BT device tracker в HA: меньше желающих воспользоваться BT -- лучше работа с бризером.

HA асинхронный и запросы посылает тогда, когда хочет. Они стекаются за синхронный компонент управляющий BТ.

А нельзя ли тогда каким-то образом развести 2 тиона по времени, по крайней мере для проверки статуса Тиона?

Я пытался организовать работу с очередями, но ничего хорошего из этого не вышло: на имеющейся базе реализовать не получается, нужно сильно переделывать модуль, а на это, пока, время не особо есть.


Write tests for automated testing

📇 User story
As a developer, I want to have tests for the important sections of the website, so that I can see if they break if new features or releases are deployed.
✅ Definition of Done

[ ] Identify 3-5 tests that are feasible and valuable

📜 Acceptance criteria

[ ] 3-5 tests have been identified
[ ] Identified tests have been written and implemented

📝 More info

Unsure if its a fit for Sprint 8, might reconsider agains bigger priorities on closing small tickets


Using shared context on Windows fails in PlatformWGL::makeCurrent() and question about createSwapChain()

As I'm trying to get shared contexts to work on Windows, especially with GLFW and Filament (but any other windowing lib will probably have similar issues) I've read up on OpenGL context creation on Windows to figure out what is causing the issue described in below.  As I've mostly used GLFW I'm probably still lacking some know-how about this. Please bare with me when I'm talking sh**t here :-)
The problem I have, is that PlatformWGL::makeCurrent() triggers the error reason: wglMakeCurrent() failed. hdc =<PHONE_NUMBER>010D59 Windows error code: 2000. (null). In this code:
void PlatformWGL::makeCurrent(Platform::SwapChain* drawSwapChain,
                              Platform::SwapChain* readSwapChain) noexcept {
    ASSERT_PRECONDITION_NON_FATAL(drawSwapChain == readSwapChain,
                                  "PlatformWGL does not support distinct draw/read swap chains.");
    HDC hdc = (HDC)(drawSwapChain);
    if (hdc != NULL) {
        BOOL success = wglMakeCurrent(hdc, mContext);
        if (!ASSERT_POSTCONDITION_NON_FATAL(success, "wglMakeCurrent() failed. hdc = %p", hdc)) {
            reportLastWindowsError();
            wglMakeCurrent(0, NULL);
        }
    }
}

It's unclear what is causing this error, but while looking into this I ran into a couple of questions which someone can hopefully clarify. The call to PlatformWGL::createDriver() is executed form a different thread then the main thread which is important to understand the code there. Because when the code was executed on the same thread as where the sharedGLContext was created (when given), one could have created a new context by making that context current, retrieving wglCreateContextAttribsARB() and create a new one (we would have to find a way to get a HDC   for the curent window because we need this to pass this into the wglCreateContextAttribsARB() function, but Windows provides several solutions for this).
Because we are creating a context in a different thread, we have to create a dummy window, use that to create a context and retrieve a pointer to wglCreateContextAttribsARB().  Once we have access to wglCreateContextAttribsARB() we can create the GL 4.1 context.  This is basically my understanding of what's going on in PlatformWGL::createDriver().
But when it comes to the pixel format it's a bit unclear to me. From my understanding, the pixel format is used when creating the OpenGL context and might have influence on the compatibility between different contexts. Someone told me this is not the case and as long as the resulting GL_VENDOR and GL_RENDERER are the same as the shared context and the created one, they are compatible and things can be shared.
As a test I tried to create a context that uses the same pixel format as the shared context to see if that solved the issue as described above. Currently I'm querying the current window that was created by GLFW, retrieving the HWND, the HDC and then the pixel format index using GetPixelFormat(). Then I fill a pixel format descriptor using the found pixel format index and set this found pixel format on the dummy context.  This seems to solve the error that is triggered in PlatformWGL::makeCurrent().  Maybe the pixel formats do have an effect on the compatibility between contexts (?).
Another question I have while looking into PlatformWGL is what the purpose of createSwapChain() is? Why are we setting the pixel format on the given nativeWindow ? Is this function supposed to be used as a helper function for the users of Filament, to make sure that the nativeWindow shares the same pixel format?  and if so why?
In any case, my understanding is that you are only allowed to call SetPixelFormat() just once for a hdc as described in the documentation: Setting the pixel format of a window more than once can lead to significant complications for the Window Manager and for multithread applications, so it is not allowed.

The format of both contexts have to be compatible. The GL spec is very light on what this means but in practice your best bet is to match bit depth for color and depth/stencil. We recently added a depth buffer to our main buffer.

Is it allowed to create a context with a shared context as argument to wglCreateContextAttribsARB() where the shared context has been created in another thread?  I've done a couple of experiments which makes me wonder if that might be the cause of the failure where wglCreateContextAttribsARB() returns NULL.
I wrote an experiment that creates another context that is shared with my GLFW based one; both created on the main thread. Then I pass over this context to PlatformWGL::createDriver() and use that as mContext instead. This seems to be working well. I do need to test this more thoroughly but if it's not allowed to call wglCreateContextAttribsARB() with a shared context that was created in another thread that might clear up a lot.

The point of shared contexts is to be able to have multiple threads so I hope both contexts don't have to be created on the same thread. It's probably a compatibility issue with the attributs/pixel format.

@romainguy yeah I have the same thoughts but if it's an issue with the attributes/pixelformat then I would expect that the code that I wrote that creates a GL context would either both fail or succeeed independently from where it was executed (main thread or partly main / partly filaments thread).  The code works fine when executed in the main thread but fails when it's executed in the thead where PlatformWGL::createDriver() is executed.
I've  used GetPixelFormat() in PlatformWGL::createDriver() to retrieve the identical pixelformat that is used by the HDC that GLFW creates. Then I used that pixel format with ChoosePixelFormat() to fill a PIXELFORMATDESCRIPTOR struct and use SetPixelFormat() with the same pixel format to make sure they were identical.  I'll revisit that code tomorrow, but if I recall correctly this also resulted int the same error.

@romainguy, @bejado I created this repository with some tests that create GL contexts using the (what I've read) the preferred steps. These tests confirm what I found earlier and it seems like it's not possible to create a context in a thread that shares with one that was created in another thread. As long as the contexts are created on the same thread things are fine (and you can use them in any thread). I know this sounds wierd and counter-intuitive and I would be happy if I made a mistake somewhere 😊.
But I might be wrong as I could have overlooked something as there are quite some things that can screw up the GL context creation process.  But if you can't find anything wrong with the tests then we can maybe have a chat about how to properly fix this in PlatformWGL.cpp

Any thoughts on this @bejado or @romainguy?  I've been in touch with several people who told me that you should indeed create the contexts that you want to share on the same thread. After creating them you can share them freely.
In created a feature branch where I added a Backend::Config struct which gets passed as void* instead of the sharedGLContext.  In general it would be a better approach to pass a struct that gives us the opportunity to make changes/update without the need to alter the API.  But more importantly, this approach works.

How does the new struct address the threading problem?

What I'm proposing, is that instead of letting Filament create the context we allow the user to create the context him/herself. This is only necessary when you want to use a shared context. To allow the driver to use bluegl::bind()  it has to make the context current (as is the case now). Maybe we can skip this call but I don't think so.  If we don't have to make the given context current we don't need a new struct (although I think having an struct prepares us for the future and therefore would be better).
To make the context current, we need a HDC handle. Because atm, we can only pass the sharedGLContext we don't have a HDC. This is fixed by this new struct.
A bit related: why do we need bluegl? Is this to make the GL symbols available when we build a static lib?

bluegl is our OpenGL loader library. I took a look at your repo, and seems like there is indeed an issue with sharing contexts created on separate threads. Thanks for the thorough research efforts. I haven't been able to find any Microsoft documentation on this, which is unfortunate. I'm not opposed to your workaround of requiring the user to create the context if they want to share it, though this would be an API-breaking change and I need to think through the implications.

@bejado thanks for looking into this!  Yep, it's an API-breaking change, but a good one and I think it nicely fits into the current code where we use Builders to construct instances. As a fix I created this BackendConfig, but we could also create a Builder{SomeName} that sets up the driver/backend.
I asked around about the GL issue which seems to be Windows specific and might be related to Windows thread affinity. I haven't researched this in detail.
I would recommend removing the bluegl  loader. Because of the proxies/stubs that are created it results in some linker issues (replaced symbols; I can dive into this more but I would need to understand more about bluegl first).  In my opinion it's a better approach to allow the user to load the GL functions.  See this article from the Handmade Network, especially the paragraph Don’t load OpenGL in the library if you depend on it.

https://github.com/baldurk pointed me to what seems to be the causse of the issue. See https://github.com/roxlu/windows-opengl-context#solution- for a possible solution regarding the error I got when creating the shared context.  I still have to test this with Filament. Even though this might solve the issue, I still think that the suggestions regarding bluegl and BackendConfig above need to be considered.

I just realised what is causing the issue although I haven't found any specs/documentation that describes why this fails (although it kinda makes sense now). The issue here is with the way you create swapchain and use a shared GL context.
There are two approaches to create a swapchain. One where we pass a native window handle and another one where we pass the width, height and some flags. The latter is called a headless swapchain in Filament.
When you want to create your own GL context and share resources with the GL context that Filament creates, you have to make sure to create a headless swapchain. When you don''t create a headless swapchain, Filament will use the Device Context (on Windows) when it makes its own GL context current. When you make your GL context current using the same Device Context things go wrong it seems.
I've created a test repository which shows how to use GLFW + Filament using a shared GL context. It also demonstrates the use of my feature-get-texture-id branch to get the native texture ID from a filament::Texture to be able to use the shared resource in with your own GL context; which is kind of the point of creating shared contexts.
You can find the repository I created here: https://github.com/roxlu/filament-with-glfw

When you make your GL context current using the same Device Context things go wrong it seems.

I think its stated somewhere that there can be only one current HGLRC to one HDC.


Editor complains about cyclic dependency even when none exists as of 3.1 beta 3

Godot version:

Godot v3.1 beta 3
OS/device including version:

Any
Issue description:

It seems like there have been improvements to typed GDScript that now allows a script to use its given class_name for type hints in its own script without causing a cyclic dependency error. (Addressing part of my previous issue)
However, if you then reference that class in another script file, the editor will complain that there is a cyclic dependency issue. If you run the project, however, no errors occur.
Steps to reproduce:

Attached is a minimal reproduction project. Open main.gd in the code editor and observe an error being raised.
Run the project
Observe the program run and exit successfully without any errors, printing "Hello" to the output

Minimal reproduction project:

ClassNameIssuev3.1beta3.zip
I suspect this is just the editor not being informed of the changes. I'm making an issue just in case nobody has noticed this yet. Thanks for all your hard work!

@vnen It is now illegal to call load() on a resource while it's being loaded. This may be a problem with optional typing so please give it a check.

I dont see the error myself, though

Kicking this for later, since itś not obvious how to best deal with this for now.

Cannot observe this in Godot 197b65f on Arch Linux
(one needs to comment out _process otherwise it doesn't have enough time to print hello it seems).

Tested and it's working fine, no error reported. The Hello message is being printed for me.


dataset preparation

I would like to train on the custom dataset. so to prepare the data, Is it ok if I use labelme  https://github.com/wkentaro/labelme .

@SreenijaK you can use any tool, as long as you get the binary masks


Check UK Visa: Estonia Latvia Content Changes Continued

Continued from #2973
Trello card
Description .
This PR has been raised to continue work from #2973 Estonia/Latvia Check UK Visa branch
This consists of a couple of small changes need to be made to some of the outcomes following fact check (see Zendesk tickets #1178141 and #1376534).
This PR has been created seperate from #2973, because it needs to be review in isolation by UKVI and when it's ready the Permanent Secretary will ultimately decide if it can be published or not.
Factcheck
Preview link 2973
Preview link 3070
GOVUK
Expected changes

Content updates to:

OUTCOME 9a : Marriage visit - NVN or UKOT
OUTCOME 9b: Marriage visit - Visa national or DATV
OUTCOME 9c: Marriage visit - Kuwait, Oman, Quatar or UAE
OUTCOME 9d: Marriage visit - Taiwan
OUTCOME 1

Before PR 2973

After PR 3070

Affected outcomes

OUTCOME 1

https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/andorra/study/six_months_or_less
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/andorra/transit/channel_islands_or_isle_of_man/study/six_months_or_less
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/anguilla/study/six_months_or_less
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/anguilla/transit/channel_islands_or_isle_of_man/study/six_months_or_less
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/israel/full-passport/study/six_months_or_less
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/israel/full-passport/transit/channel_islands_or_isle_of_man/study/six_months_or_less

OUTCOMES 9a,9b,9c & 9d

https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/afghanistan/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/afghanistan/transit/channel_islands_or_isle_of_man/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/andorra/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/andorra/transit/channel_islands_or_isle_of_man/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/anguilla/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/anguilla/transit/channel_islands_or_isle_of_man/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/china/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/china/transit/channel_islands_or_isle_of_man/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/democratic-republic-of-the-congo/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/democratic-republic-of-the-congo/transit/channel_islands_or_isle_of_man/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/estonia/alien/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/estonia/alien/transit/channel_islands_or_isle_of_man/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/israel/full-passport/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/israel/full-passport/transit/channel_islands_or_isle_of_man/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/israel/provisional-passport/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/israel/provisional-passport/transit/channel_islands_or_isle_of_man/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/kuwait/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/kuwait/transit/channel_islands_or_isle_of_man/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/latvia/alien/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/latvia/alien/transit/channel_islands_or_isle_of_man/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/oman/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/oman/transit/channel_islands_or_isle_of_man/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/stateless-or-refugee/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/stateless-or-refugee/transit/channel_islands_or_isle_of_man/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/syria/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/syria/transit/channel_islands_or_isle_of_man/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/taiwan/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/taiwan/transit/channel_islands_or_isle_of_man/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/turkey/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/turkey/transit/channel_islands_or_isle_of_man/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/venezuela/marriage
https://smart-answers-pr-3070.herokuapp.com/check-uk-visa/y/venezuela/transit/channel_islands_or_isle_of_man/marriage

@ikennaokpala :+1:


[DEVOPS-1112] Staging application version

Description
Update the applicationVersion for the staging installers, but revert the part which changes the lastKnownBlockVersion for the staging cluster. This must be 0.2.0 not 0.1.0.
Linked issue
https://iohk.myjetbrains.com/youtrack/issue/DEVOPS-1112

the test that fails:
Failures:

  test/unit/Test/Spec/GetTransactions.hs:475:29:
  1) Wallet unit tests, GetTransactions, newTransaction and getTransactions return the same result
       Falsifiable (after 3 tests):
       expected: [Transaction {txId = AbstractHash 96b6abd8fa47c007e622612d04896b6e8a63a29999b47ebe55811e26c4641c77, txConfirmations = 0, txAmount = Coin {getCoin = 180223}, txInputs = PaymentDistribution {pdAddress = Address {addrRoot = AbstractHash 9f4e8abc67d2a2b1a98ebf0d86de4ec9fd87616a25ae3368189d496c, addrAttributes = Attributes { data: AddrAttributes {aaPkDerivationPath = Just (HDAddressPayload {getHDAddressPayload = "\b\163vSp!}\204U7)\204\240\172`~\238\b\246\225\166\175\137\139\DC16RL"}), aaStakeDistribution = BootstrapEraDistr, aaNetworkMagic = NetworkMainOrStage} }, addrType = ATPubKey}, pdAmount = Coin {getCoin = 1288}} :| [PaymentDistribution {pdAddress = Address {addrRoot = AbstractHash bafed403e7b5e2dc8bbe696b0817bd2c204d8774d71e12fc07e525d5, addrAttributes = Attributes { data: AddrAttributes {aaPkDerivationPath = Just (HDAddressPayload {getHDAddressPayload = "\b\163vSp!}\201K\183`\204\&8)\SI\SI0i\NUL[\140|\185\229\223\243\134\223"}), aaStakeDistribution = BootstrapEraDistr, aaNetworkMagic = NetworkMainOrStage} }, addrType = ATPubKey}, pdAmount = Coin {getCoin = 940606611}}], txOutputs = PaymentDistribution {pdAddress = Address {addrRoot = AbstractHash e99446d3281e133e3e655d3e4600ed28c785c3cb9eda795939e201fd, addrAttributes = Attributes { data: AddrAttributes {aaPkDerivationPath = Just (HDAddressPayload {getHDAddressPayload = "\b\163vSp!}\138Y2\ETB\204\155\232\&6\195FT\212`\134\243\ACKr\217\154*\181"}), aaStakeDistribution = BootstrapEraDistr, aaNetworkMagic = NetworkMainOrStage} }, addrType = ATPubKey}, pdAmount = Coin {getCoin = 940427676}} :| [PaymentDistribution {pdAddress = Address {addrRoot = AbstractHash b95e6f10e7a123b42cace1783b52c808effd4af0caa06648fc2f7635, addrAttributes = Attributes { data: AddrAttributes {aaPkDerivationPath = Just (HDAddressPayload {getHDAddressPayload = ""}), aaStakeDistribution = UnsafeMultiKeyDistr (fromList [(AbstractHash 0d4c5eaf1d203d4ba09fef4dc36813c8ec87262415a6aec6d5ca810b,CoinPortion {getCoinPortion =<PHONE_NUMBER>99864}),(AbstractHash 0ddf16c504f57834bfffa861a16625ec864febdeab3e834c0952f7c7,CoinPortion {getCoinPortion =<PHONE_NUMBER>89827}),(AbstractHash 1ad384a87b555a86b31daddfa7472eb876741c7a716b2b62383bb2e4,CoinPortion {getCoinPortion =<PHONE_NUMBER>10309})]), aaNetworkMagic = NetworkMainOrStage} }, addrType = ATPubKey}, pdAmount = Coin {getCoin = 100}}], txType = ForeignTransaction, txDirection = OutgoingTransaction, txCreationTime = 12340000, txStatus = Applying}]
        but got: [Transaction {txId = AbstractHash 96b6abd8fa47c007e622612d04896b6e8a63a29999b47ebe55811e26c4641c77, txConfirmations = 0, txAmount = Coin {getCoin = 180223}, txInputs = PaymentDistribution {pdAddress = Address {addrRoot = AbstractHash bafed403e7b5e2dc8bbe696b0817bd2c204d8774d71e12fc07e525d5, addrAttributes = Attributes { data: AddrAttributes {aaPkDerivationPath = Just (HDAddressPayload {getHDAddressPayload = "\b\163vSp!}\201K\183`\204\&8)\SI\SI0i\NUL[\140|\185\229\223\243\134\223"}), aaStakeDistribution = BootstrapEraDistr, aaNetworkMagic = NetworkMainOrStage} }, addrType = ATPubKey}, pdAmount = Coin {getCoin = 940606611}} :| [PaymentDistribution {pdAddress = Address {addrRoot = AbstractHash 9f4e8abc67d2a2b1a98ebf0d86de4ec9fd87616a25ae3368189d496c, addrAttributes = Attributes { data: AddrAttributes {aaPkDerivationPath = Just (HDAddressPayload {getHDAddressPayload = "\b\163vSp!}\204U7)\204\240\172`~\238\b\246\225\166\175\137\139\DC16RL"}), aaStakeDistribution = BootstrapEraDistr, aaNetworkMagic = NetworkMainOrStage} }, addrType = ATPubKey}, pdAmount = Coin {getCoin = 1288}}], txOutputs = PaymentDistribution {pdAddress = Address {addrRoot = AbstractHash e99446d3281e133e3e655d3e4600ed28c785c3cb9eda795939e201fd, addrAttributes = Attributes { data: AddrAttributes {aaPkDerivationPath = Just (HDAddressPayload {getHDAddressPayload = "\b\163vSp!}\138Y2\ETB\204\155\232\&6\195FT\212`\134\243\ACKr\217\154*\181"}), aaStakeDistribution = BootstrapEraDistr, aaNetworkMagic = NetworkMainOrStage} }, addrType = ATPubKey}, pdAmount = Coin {getCoin = 940427676}} :| [PaymentDistribution {pdAddress = Address {addrRoot = AbstractHash b95e6f10e7a123b42cace1783b52c808effd4af0caa06648fc2f7635, addrAttributes = Attributes { data: AddrAttributes {aaPkDerivationPath = Just (HDAddressPayload {getHDAddressPayload = ""}), aaStakeDistribution = UnsafeMultiKeyDistr (fromList [(AbstractHash 0d4c5eaf1d203d4ba09fef4dc36813c8ec87262415a6aec6d5ca810b,CoinPortion {getCoinPortion =<PHONE_NUMBER>99864}),(AbstractHash 0ddf16c504f57834bfffa861a16625ec864febdeab3e834c0952f7c7,CoinPortion {getCoinPortion =<PHONE_NUMBER>89827}),(AbstractHash 1ad384a87b555a86b31daddfa7472eb876741c7a716b2b62383bb2e4,CoinPortion {getCoinPortion =<PHONE_NUMBER>10309})]), aaNetworkMagic = NetworkMainOrStage} }, addrType = ATPubKey}, pdAmount = Coin {getCoin = 100}}], txType = ForeignTransaction, txDirection = OutgoingTransaction, txCreationTime = 12340000, txStatus = Applying}]

Randomized with seed 313132966

bors r+


fix(cli) stop redirecting output when not starting as a daemon

redirecting the nginx start command to temp files will slowly
fill the disk when the process is not started as a daemon.
Initial attempt. Please review carefully, I might not have gotten potential side effects completely covered.
Reference code: pl.utils.execute() and pl.utils.executeex()
Issues resolved
Fix https://discuss.konghq.com/t/stdout-stderr-being-redirected-to-tmp/505

@thibaultcha so adding the test proved to be a painful process. @hishamhm provided some help to figure out exactly how to test it.
Additional info on the underlying problem: it only happens when the nginx log output is directed to stdout/stderr, in which case the full log output is swallowed by the tempfiles created by the kong start command when it starts the underlying nginx.
Please have a look, and let me know any issues.

Manually merged with the updated test and more descriptive commit message. Thanks!

hmmm... too quick imo.
I don't like this part:
    local cmd = string.format("KONG_PROXY_ACCESS_LOG=/dev/stdout "    ..
                              "KONG_NGINX_DAEMON=off %s start -c %s " ..
                              ">%s 2>/dev/null &", helpers.bin_path,
                              helpers.test_conf_path, stdout_path)

since it bypasses the recent changes that allow to unset existing enviornment variables etc. to make the tests more reliable.
Let's leave it for now, we can always fix it if it turns out to be a problem later.


Problem in readonly mode

Setting twinColGrid to isReadOnly(false) results in 2 Checkboxes inside Items Column and Selected Column.
Screenshot:

Hi! ... tried to reproduce this in the Demo, and it's working as expected:


Add persistent information about last integration test

Closes #3607
Code Changes
Added a component to the integrations tab which will display timestamp and result of last test.
Steps to Confirm

Run Fides test env
Login to admin UI
Add a system
Add an integration to the system
Click "Test connection"

Pre-Merge Checklist

[ ] All CI Pipelines Succeeded
Documentation:

[ ] documentation complete, PR opened in fidesdocs
[ ] documentation issue created in fidesdocs

[ ] Issue Requirements are Met
[ ] Relevant Follow-Up Issues Created
[ ] Update CHANGELOG.md
[ ] For API changes, the Postman collection has been updated

@Kelsey-Ethyca or @rsilvery , can we get a 👍 if this looks okay? afaik, there wasn't an official design

This is great @jpople! Could I request left aligning the last tested message and adding some padding between the buttons and the message?
There are some updated designs in the works. Here is a screenshot. It doesn't need to be pixel perfect for this sprint


Standardize README shield badges

We want to update the README for all Dapr repos so they all include shield badges for YouTube, Discord, X/Twitter and ensure they are all in the same style. See: https://github.com/dapr/community/issues/355
These are the shield badges for the go-sdk repo.

Snippet to include in the README:
![GitHub go.mod Go version](https://img.shields.io/github/go-mod/go-version/dapr/go-sdk?style=flat) [![Go Report Card](https://goreportcard.com/badge/github.com/dapr/go-sdk)](https://goreportcard.com/report/github.com/dapr/go-sdk) [![Release](https://github.com/dapr/go-sdk/workflows/Release/badge.svg)](https://github.com/dapr/go-sdk/actions/workflows/release-on-tag.yaml) [![codecov](https://codecov.io/gh/dapr/go-sdk/branch/main/graph/badge.svg)](https://codecov.io/gh/dapr/go-sdk) [![GitHub License](https://img.shields.io/github/license/dapr/go-sdk?style=flat&label=License&logo=github)](https://github.com/dapr/go-sdk/blob/main/LICENSE) [![FOSSA Status](https://app.fossa.com/api/projects/custom%2B162%2Fgithub.com%2Fdapr%2Fgo-sdk.svg?type=shield&issueType=license)](https://app.fossa.com/projects/custom%2B162%2Fgithub.com%2Fdapr%2Fgo-sdk?ref=badge_shield&issueType=license) [![GitHub issue custom search in repo](https://img.shields.io/github/issues-search/dapr/go-sdk?query=type%3Aissue%20is%3Aopen%20label%3A%22good%20first%20issue%22&label=Good%20first%20issues&style=flat&logo=github)](https://github.com/dapr/go-sdk/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) [![Discord](https://img.shields.io/discord/778680217417809931?label=Discord&style=flat&logo=discord)](http://bit.ly/dapr-discord) [![YouTube Channel Views](https://img.shields.io/youtube/channel/views/UCtpSQ9BLB_3EXdWAUQYwnRA?style=flat&label=YouTube%20views&logo=youtube)](https://youtube.com/@daprdev) [![X (formerly Twitter) Follow](https://img.shields.io/twitter/follow/daprdev?logo=x&style=flat)](https://twitter.com/daprdev)

Contributing

Comment /assign on this issue if you want to self-assign this issue and update the README.
Don't forget to sign off your commit, for more details see Developer Certificate of Origin (DCO) in the docs.

@ maintainers: Please label this as good first issue.

/assign

/assign


feat(web/applications): create applicant form pages(boas-148)

Describe your changes

controllers and basic templates for every step in the applicant section of the form
applicant info type page that saves in the session the types of applicant info that's going to be saved
guard that prevents not allowed steps to be provided
a service returning all the info types
a service returning prev and next allowed page path

Issue ticket number and link
https://pins-ds.atlassian.net/browse/BOAS-148
Type of change 🧩

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation update
[ ] Other (please explain in the description section above)

Checklist before requesting a review

[ ] I have performed a self-review of my own code
[ ] I have double checked this work does not include any hardcoded secrets or passwords
[ ] I have made corresponding changes to the documentation
[ ] I have provided details on how I have tested my code
[ ] I have referenced the ticket number above
[ ] I have provided a description of the ticket
[ ] I have included unit tests to cover any testable code changes

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Minor refactoring

Uniformed the code with 1 line spacing.

I am new to open source contributions and I thought of starting with some trivial task, hope that is ok.

I am new to open source contributions and I thought of starting with some trivial task, hope that is ok.

Hi, we generally avoid pure formatting PRs as they just make it harder to read the commit history. There is also no standard for formatting in place right now, so every new PR could break it again, making it pointless. If we ever enforce a formatting standard it will most likely be through rustfmt, see #290 and #172 for reference. But for now it has been regarded as too invasive.

Hi, we generally avoid pure formatting PRs as they just make it harder to read the commit history. There is also no standard for formatting in place right now, so every new PR could break it again, making it pointless. If we ever enforce a formatting standard it will most likely be through rustfmt, see #290 and #172 for reference. But for now it has been regarded as too invasive.

@sgeisler I see, thanks for your feedback.

@sgeisler I see, thanks for your feedback.

I think we should welcome small changes(file by file) that enforce rustfmt.
See: https://github.com/rust-bitcoin/rust-bitcoin/issues/172#issuecomment-756312998

I think we should welcome small changes(file by file) that enforce rustfmt.
See: https://github.com/rust-bitcoin/rust-bitcoin/issues/172#issuecomment-756312998

Only if it's enforced by CI first, otherwise it's an entirely pointless exercise. There is no official agreement so far afaik, neither on if it should happen nor on how. But I'd be happy to push this forward in #172.

Only if it's enforced by CI first, otherwise it's an entirely pointless exercise. There is no official agreement so far afaik, neither on if it should happen nor on how. But I'd be happy to push this forward in #172.


Error out with hilarious message if attempting to use python2.6

Maxime,
Shouldn't we simply deprecate Python 2.6 ?
The documentation as it stands states:

Note that Airflow is only tested under Python 2.7.* as many of our dependencies don’t support python3 (as of 2015-06).

A perhaps more direct comment would be the software requires Python 2.7.* and has experimental support for Python 3. Python 2.6 present in systems like RHEL6 and derivatives is not supported.
Otherwise we will be expecting users to quickly find: https://groups.google.com/d/msg/airbnb_airflow/eOW-JV9HKXs/EE4KRbq2CgAJ

Python 3 is supported as far as I can tell, some operators that have 2.7 dependencies won't work though.
We run the CI on both 2.7 and 3.4.
I'll edit the docs.


QA of Catalyst "Proposer ada payment address" Section

QA of Catalyst "Proposer ada payment address" Section

No Issues found / Merged with Issue : https://github.com/Quality-Assurance-DAO/F5-Developer-ecosystem-Proposal/issues/17 (QA of Ideascale Platform General Issues)


Signup Bug

There is some bugs when you try to signup.

@piyush-gangrade Please give a chance to fix this issue.

@piyush-gangrade assigned.hope u will  solve this bug..

@piyush-gangrade assigned

@Muskansahuincredible, thank you for assigning.
Please add 'GSSoC' and 'level' labels

assigned this issue to me because i have already worked on this project


parsec section not showing up in deforum

hey there, I did every step with installing this parseq script but it doesn't show up below in keyframes by deforum.
after doing the steps I have closed the webui multiple times

Hi! So the parseq python script is deprecated, you don't need to do anything with that. It was basically an inferior equivalent of deforum and I've stopped working on it.
What you need to do is make sure that the deforum extension code you've put in the A1111 extensions directory is the correct branch. Until the parseq integration functionality is merged into the main repo, you'll need to run this in your A1111 extensions directory (after removing any prior deforum extension).
git clone https://github.com/rewbs/deforum-for-automatic1111-webui.git deforum
cd deforum
git checkout parseq-integration

Missing step on the front page documentation:
% git clone https://github.com/rewbs/deforum-for-automatic1111-webui.git
git checkout parseq-integration
Cloning into 'deforum-for-automatic1111-webui'...
remote: Enumerating objects: 3246, done.
remote: Counting objects: 100% (808/808), done.
remote: Compressing objects: 100% (150/150), done.
remote: Total 3246 (delta 711), reused 735 (delta 658), pack-reused 2438
Receiving objects: 100% (3246/3246), 71.97 MiB | 10.82 MiB/s, done.
Resolving deltas: 100% (1925/1925), done.
error: pathspec 'parseq-integration' did not match any file(s) known to git

As of yesterday, you no longer need to use my branch of the Deforum extension for automatic1111. You can just install the latest version of the official extension and the parseq input field will be available. I have updated the README accordingly.
I'm closing this issue, please let me know if you still have any concerns.


Navigation environments from config

Description
The ability to create the navigation environments from a config dictionary.
Motivation and Context
Addressing the feature request #98.
The feature is required to create custom environments for the navigation tasks. The PR is built with the intent to make minimal changes in the main branch and here are the main changes in the base implementation:

Deeper update of the kwargs in the make method. This is done so that the config is not replaced, but updated.
Changes in the _parse method to parse the goal, hazard, vases etc.

[x] I have raised an issue to propose this change (required for new features and bug fixes)

Types of changes
What types of changes does your code introduce? Put an x in all the boxes that apply:

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds core functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Documentation (update in the documentation)

Checklist
Go over all the following points, and put an x in all the boxes that apply.
If you are unsure about any of these, don't hesitate to ask. We are here to help!

[x] I have read the CONTRIBUTION guide. (required)
[x] My change requires a change to the documentation.
[x] I have updated the tests accordingly. (required for a bug fix or a new feature)
[ ] I have updated the documentation accordingly.
[x] I have reformatted the code using make format. (required)
[x] I have checked the code using make lint. (required)
[x] I have ensured make test pass. (required)

Thank you for your contribution! I appreciate the overall logic of these changes. I will conduct some additional tests to ensure that the modifications do not alter the correctness of the code's outcomes. Once that's confirmed, I'll merge these changes into the main branch.

Any update on this pull request? This seems like a very useful feature I'd like to utilize.

Any update on this pull request? This seems like a very useful feature I'd like to utilize.

Based on our current roadmap, this PR is slated for testing and potential integration in the June-July timeframe. I truly appreciate this valuable contribution from the community and am eager to merge this with another PR. However, as I am currently the sole maintainer of this project, my resources are quite limited, which regrettably necessitates some delays. Your understanding and patience in this matter are greatly appreciated.

No worries! I can use the branch which contains the changes until the official integration. I did notice one limitation of the current implementation is that it seems to only allow for official assets to be passed in the config. It could be useful to somehow allow custom assets (implemented outside the official repo) to be passed to this config as well. I have some ideas for how to adapt the existing implementation but wanted to see what others thoughts were. Apologies if this is outside the scope of this pull request.

Thank you very much for your understanding!

I did notice one limitation of the current implementation is that it seems to only allow for official assets to be passed in the config. It could be useful to somehow allow custom assets (implemented outside the official repo) to be passed to this config as well.

Regarding the issue you've raised, could you please provide some specific examples or refer to certain files? This would help me to confirm the exact context of our discussion.

I have some ideas for how to adapt the existing implementation but wanted to see what others thoughts were. Apologies if this is outside the scope of this pull request.

Initially, our design was primarily object-oriented to maintain a reasonable program structure and readability. However, customization requires installation from source and direct modification of the source code. We acknowledge this is a limitation and are very keen on making improvements in this area. We highly value any recommendations and code contributions that could better serve the research community. We welcome you to discuss this issue in more detail in a new discussion or a new issue.


Application pool

jenkins test luminous-ansible2.4-centos7_cluster

jenkins test luminous-ansible2.4-docker_cluster


Fixed typo (Atributes)

Docs Build status updates of commit 0ccd1e4:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

en/Security/SecKey.xml
: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.


CIF-1134 - Unified configuration of site settings

Description
This is quite a big PR due to the fact that it contains both the UI implementation and the updates to the connector code.
Changes in the connector code:

the GraphqlResourceProviderFactory now reads the configuration using the Sling Context-Aware Configuration API (falls back to reading the configuration from the root resource if the cq:conf property is not found)
the CatalogDataResourceProviderManagerImpl now reads the configuration using the Sling Context-Aware Configuration API. It also listens to specific property changes in /conf to update the data roots

The configuration UI:

a whole new console available at http://localhost:4502/libs/commerce/gui/content/configuration.html/conf through which the user has to create the configuration
The product binding wizard has been reduced to just three fields: Name, Title and the path to the context configuration.

Related Issue
CIF-1201 - Implement the configuration wizard
CIF-1204 - Update the connector to use context-aware configurations
Motivation and Context
Unify configuration of the CIF Connector and CIF Core Components
How Has This Been Tested?
Intensive functional testing.
Unit tests for the Sling Models are WIP
Screenshots (if appropriate):
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[X] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[X] I have signed the Adobe Open Source CLA.
[X] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[X] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes and the overall coverage did not decrease.
[X] All unit tests pass on CircleCi.
[X] I ran all tests locally and they pass.

@dplaton Please also add some documentation of all the changes. Like how do new customers configure the service and how do existing customers migrate.


IJCK R2C23

Page 10, line 29-30: “A user might want to load the informationI” Avoid the term ‘might’. It’s
one of the main goals of using ChemKED and its associated Python-package PyKED to load
the information necessary for simulating the experiment.

I'm working on revising this.


Error scanning images from private registries using imagePullSecrets

What steps did you take and what happened:
I have a specific namespace, for example neuvector, it has imagepullSecret: regsecret, which contains credentials from the private registry.
Starboard cannot scan it and gives an error about an empty namespace
Please tell me what I'm doing wrong?
2021-11-30T06:55:52.109Z ERROR controller.replicaset Reconciler error {"reconciler group": "apps", "reconciler kind": "ReplicaSet", "name": "neuvector-controller-pod-87dc9bbdc", "namespace": "neuvector", "error": "creating secret: an empty namespace may not be set during creation"}
Starboard 0.13.0
Kubernetes version 1.19
OS RHEL 7

:wave: @avgkoster I can reproduce this error in my environment. It's a regression. We'll try to fix it and release in v0.13.1 . Thank you for reporting and really sorry for inconvenience

@avgkoster The fix has been released in https://github.com/aquasecurity/starboard/releases/tag/v0.13.1


magento recipe missing generated files

Deployer version: 7.3.1
Deployment OS: linux

namespace Deployer;

require 'recipe/magento2.php';

// Config

set('repository', 'test');

add('shared_files', []);
add('shared_dirs', []);
add('writable_dirs', []);

set('static_content_locales', 'en_US nl_NL');

// Hosts
host('staging')
    ->set('hostname', 'xxx.xxx.xxx.xxx')
    ->set('branch', 'test')
    ->set('remote_user', 'test')
    ->set('deploy_path', '/var/www/test');

after('deploy:failed', 'deploy:unlock');

this is my deployer for my new project running the latest magento 2.
but during the deploy in the step setup:di:compile i get the error
Warning: include(/var/www/test/releases/16/vendor/composer/../../generated/code/Magento/Framework/App/ResourceConnection/Proxy.php): Failed to open stream: No such file or directory in /var/www/test/releases/16/vendor/composer/ClassLoader.php on line 571
i see that in the step before this one "deploy:clear_paths" the directory "rm -rf /var/www/test/releases/16/./generated/*; " is removed.

i think this was my own fault. Turns out it was a permission error, i usually do not use www-data.
fixed that, runs good now !

i think this was my own fault. Turns out it was a permission error, i usually do not use www-data.
fixed that, runs good now !


Corrected errors noted by /GJ

The ComputeMinWork function changed back to original code, amplitude filter removed from the DIGI function, and the protocol version changed back to 70002, as noted by /GJ in IRC.

Squashed these commits locally, will be pushed to the repo soon.
Thanks! :+1:


Go to File... preview of currently highlighted file in drawer

Feature request: this is a helpful feature of Sublime Text currently missing in VS Code.
When the 'Go to File' tool drawer is open, preview the file that is currently highlighted in the drawer in the editor pane (or the pane that has focus, if using split editor) behind the file selection drawer.
Allows easy previewing and selection of correct file before opening; especially useful where files have similar names and / or paths.

This issue has already been reported. Please use the search function next time before reporting an issue and/or this time if you are curious about the progress of the issue.

Had searched, am still unable to find duplicate. Sorry for the inconvenience.

@narkowicz I have the same request and I believe this is the original issue https://github.com/Microsoft/vscode/issues/8939
Took me a while to find, the title could use some work


deduplicate splint in FITPACK wrappers; take 3

Reference issue

A third alternative to gh-16871 and gh-16932. See https://github.com/scipy/scipy/issues/16729 for context.
What does this implement/fix?

This continues @AtsushiSakai 's removal of splint from the handwritten _fitpack extentsion : this is one of the routines which has two sets of wrappers: handwritten in _fitpack and f2py-generated in dfitpack. Over at gh-16932 @rgommers suggested to push array size checking from python to f2py layer, which this PR does at an expense of a minor Fortran surgery.
Additional information

I do not insist on that this approach being the right one; only one of gh-16971, gh-16932 and this one would go in (or none if we decide to just leave it be).
WDYT @AtsushiSakai @rgommers, others?

Not sure if confident and f2py  fit well into the same sentence :-). That said, I do believe the current state of this patch is right to the best of my knowledge and understanding. If there's a problem, I don't see anything that can't be fixed or reverted.
Thanks for taking a look @AtsushiSakai and @rgommers , and special thank you to @AtsushiSakai for the bulk of the work in these three PRs!