Attribute Error

I am using TM1py 1.11.1, and I am getting the below error message.
Traceback (most recent call last):
File "D:/Projects/PCC/file_transfer_v2.py", line 139, in copy_to_data_folder
tm1_inst.file.update_or_create(file, file_content=file_to_transfer.read())
AttributeError: 'TM1Service' object has no attribute 'file'
This is the line of code, which is causing the error
def copy_to_data_folder(file, file_path, target, tm1_inst):
with open(file_path, "rb") as file_to_transfer:
tm1_inst.file.update_or_create(file, file_content=file_to_transfer.read())
logging.info(f"file: {file} has been copied to target instance {target}")

I think it should say tm1.files instead of tm1.file
Get Outlook for Androidhttps://aka.ms/AAb9ysg

From: gdbanks @.>
Sent: Thursday, March 28, 2024 5:59:03 PM
To: cubewise-code/tm1py @.>
Cc: Subscribed @.***>
Subject: [cubewise-code/tm1py] Attribute Error (Issue #1082)
CAUTION: This email originated from outside the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
I am using TM1py 1.11.1, and I am getting the below error message.
Traceback (most recent call last):
File "D:/Projects/PCC/file_transfer_v2.py", line 139, in copy_to_data_folder
tm1_inst.file.update_or_create(file, file_content=file_to_transfer.read())
AttributeError: 'TM1Service' object has no attribute 'file'
This is the line of code, which is causing the error
def copy_to_data_folder(file, file_path, target, tm1_inst):
with open(file_path, "rb") as file_to_transfer:
tm1_inst.file.update_or_create(file, file_content=file_to_transfer.read())
logging.info(f"file: {file} has been copied to target instance {target}")
—
Reply to this email directly, view it on GitHubhttps://github.com/cubewise-code/tm1py/issues/1082, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AHLDPJAWUFVKYPOZBAH54DLY2RD5PAVCNFSM6AAAAABFNEUSHKVHI2DSMVQWIX3LMV43ASLTON2WKOZSGIYTGNZQGY3TKMI.
You are receiving this because you are subscribed to this thread.Message ID: @.***>

Marius,
I get the same error message when I change it to 'Files'.
Traceback (most recent call last):
File "D:\Projects\PCC\file_transfer_v2.py", line 158, in
main()
File "D:\Projects\PCC\file_transfer_v2.py", line 126, in main
copy_to_data_folder(file, file_path, target, tar_tm1)
File "D:\Projects\PCC\file_transfer_v2.py", line 139, in copy_to_data_folder
tm1_inst.files.update_or_create(file, file_content=file_to_transfer.read())
AttributeError: 'TM1Service' object has no attribute 'files'
Glen Banks
714-255-5447
[cid:fd7e10b8-9c8f-46c7-8f38-35ec55c389a7]

From: Marius Wirtz @.>
Sent: Thursday, March 28, 2024 10:47 AM
To: cubewise-code/tm1py @.>
Cc: Glen Banks @.>; Author @.>
Subject: Re: [cubewise-code/tm1py] Attribute Error (Issue #1082)
External eMail: Do not open attachments or click on links unless you expected to receive them from a trusted sender.
I think it should say tm1.files instead of tm1.file
Get Outlook for Androidhttps://aka.ms/AAb9ysghttps://urldefense.com/v3/__https://aka.ms/AAb9ysg*3E__;JQ!!Fat92My4sJ5u0kQe!x-n8bmiubYiOdnoObYrJ4vJCRrkZpgcV3uMiCU_nILijkCcglJ5QGwS9a2vVNvZE7-5es2HNqmAmaCYivJb0jI-LDTG9Xw$

From: gdbanks @.>
Sent: Thursday, March 28, 2024 5:59:03 PM
To: cubewise-code/tm1py @.>
Cc: Subscribed @.***>
Subject: [cubewise-code/tm1py] Attribute Error (Issue #1082)
CAUTION: This email originated from outside the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
I am using TM1py 1.11.1, and I am getting the below error message.
Traceback (most recent call last):
File "D:/Projects/PCC/file_transfer_v2.py", line 139, in copy_to_data_folder
tm1_inst.file.update_or_create(file, file_content=file_to_transfer.read())
AttributeError: 'TM1Service' object has no attribute 'file'
This is the line of code, which is causing the error
def copy_to_data_folder(file, file_path, target, tm1_inst):
with open(file_path, "rb") as file_to_transfer:
tm1_inst.file.update_or_create(file, file_content=file_to_transfer.read())
logging.info(f"file: {file} has been copied to target instance {target}")
—
Reply to this email directly, view it on GitHubhttps://github.com/cubewise-code/tm1py/issues/1082https://urldefense.com/v3/__https://github.com/cubewise-code/tm1py/issues/1082*3E__;JQ!!Fat92My4sJ5u0kQe!x-n8bmiubYiOdnoObYrJ4vJCRrkZpgcV3uMiCU_nILijkCcglJ5QGwS9a2vVNvZE7-5es2HNqmAmaCYivJb0jI8rKD0Q4g$, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AHLDPJAWUFVKYPOZBAH54DLY2RD5PAVCNFSM6AAAAABFNEUSHKVHI2DSMVQWIX3LMV43ASLTON2WKOZSGIYTGNZQGY3TKMIhttps://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AHLDPJAWUFVKYPOZBAH54DLY2RD5PAVCNFSM6AAAAABFNEUSHKVHI2DSMVQWIX3LMV43ASLTON2WKOZSGIYTGNZQGY3TKMI*3E__;JQ!!Fat92My4sJ5u0kQe!x-n8bmiubYiOdnoObYrJ4vJCRrkZpgcV3uMiCU_nILijkCcglJ5QGwS9a2vVNvZE7-5es2HNqmAmaCYivJb0jI_Odzb7yA$.
You are receiving this because you are subscribed to this thread.Message ID: @.***>
—
Reply to this email directly, view it on GitHubhttps://urldefense.com/v3/__https://github.com/cubewise-code/tm1py/issues/1082*issuecomment-2025785397__;Iw!!Fat92My4sJ5u0kQe!x-n8bmiubYiOdnoObYrJ4vJCRrkZpgcV3uMiCU_nILijkCcglJ5QGwS9a2vVNvZE7-5es2HNqmAmaCYivJb0jI_KJfM0vQ$, or unsubscribehttps://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AVAUYXVBTBFTV6RHRY3ZBMDY2RJR7AVCNFSM6AAAAABFNEUSHKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMRVG44DKMZZG4__;!!Fat92My4sJ5u0kQe!x-n8bmiubYiOdnoObYrJ4vJCRrkZpgcV3uMiCU_nILijkCcglJ5QGwS9a2vVNvZE7-5es2HNqmAmaCYivJb0jI_nDcPgBg$.
You are receiving this because you authored the thread.Message ID: @.***>

This e-mail message, including any attachments, is for the sole use of the intended recipient, and may contain material that is privileged or confidential and legally protected from disclosure. If you are not the intended recipient or have received this message in error, you are not authorized to copy, distribute, or otherwise use this message or its attachments. Please notify the sender immediately by return e-mail and permanently delete this message and any attachments.

Please try to upgrade TM1py
pip install TM1py --upgrade
Get Outlook for Androidhttps://aka.ms/AAb9ysg

From: gdbanks @.>
Sent: Thursday, March 28, 2024 10:03:12 PM
To: cubewise-code/tm1py @.>
Cc: Marius Wirtz @.>; Comment @.>
Subject: Re: [cubewise-code/tm1py] Attribute Error (Issue #1082)
CAUTION: This email originated from outside the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
Marius,
I get the same error message when I change it to 'Files'.
Traceback (most recent call last):
File "D:\Projects\PCC\file_transfer_v2.py", line 158, in
main()
File "D:\Projects\PCC\file_transfer_v2.py", line 126, in main
copy_to_data_folder(file, file_path, target, tar_tm1)
File "D:\Projects\PCC\file_transfer_v2.py", line 139, in copy_to_data_folder
tm1_inst.files.update_or_create(file, file_content=file_to_transfer.read())
AttributeError: 'TM1Service' object has no attribute 'files'
Glen Banks
714-255-5447
[cid:fd7e10b8-9c8f-46c7-8f38-35ec55c389a7]

From: Marius Wirtz @.>
Sent: Thursday, March 28, 2024 10:47 AM
To: cubewise-code/tm1py @.>
Cc: Glen Banks @.>; Author @.>
Subject: Re: [cubewise-code/tm1py] Attribute Error (Issue #1082)
External eMail: Do not open attachments or click on links unless you expected to receive them from a trusted sender.
I think it should say tm1.files instead of tm1.file
Get Outlook for Androidhttps://aka.ms/AAb9ysghttps://urldefense.com/v3/__https://aka.ms/AAb9ysg*3E__;JQ!!Fat92My4sJ5u0kQe!x-n8bmiubYiOdnoObYrJ4vJCRrkZpgcV3uMiCU_nILijkCcglJ5QGwS9a2vVNvZE7-5es2HNqmAmaCYivJb0jI-LDTG9Xw$

From: gdbanks @.>
Sent: Thursday, March 28, 2024 5:59:03 PM
To: cubewise-code/tm1py @.>
Cc: Subscribed @.***>
Subject: [cubewise-code/tm1py] Attribute Error (Issue #1082)
CAUTION: This email originated from outside the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
I am using TM1py 1.11.1, and I am getting the below error message.
Traceback (most recent call last):
File "D:/Projects/PCC/file_transfer_v2.py", line 139, in copy_to_data_folder
tm1_inst.file.update_or_create(file, file_content=file_to_transfer.read())
AttributeError: 'TM1Service' object has no attribute 'file'
This is the line of code, which is causing the error
def copy_to_data_folder(file, file_path, target, tm1_inst):
with open(file_path, "rb") as file_to_transfer:
tm1_inst.file.update_or_create(file, file_content=file_to_transfer.read())
logging.info(f"file: {file} has been copied to target instance {target}")
—
Reply to this email directly, view it on GitHubhttps://github.com/cubewise-code/tm1py/issues/1082https://urldefense.com/v3/__https://github.com/cubewise-code/tm1py/issues/1082*3E__;JQ!!Fat92My4sJ5u0kQe!x-n8bmiubYiOdnoObYrJ4vJCRrkZpgcV3uMiCU_nILijkCcglJ5QGwS9a2vVNvZE7-5es2HNqmAmaCYivJb0jI8rKD0Q4g$, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AHLDPJAWUFVKYPOZBAH54DLY2RD5PAVCNFSM6AAAAABFNEUSHKVHI2DSMVQWIX3LMV43ASLTON2WKOZSGIYTGNZQGY3TKMIhttps://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AHLDPJAWUFVKYPOZBAH54DLY2RD5PAVCNFSM6AAAAABFNEUSHKVHI2DSMVQWIX3LMV43ASLTON2WKOZSGIYTGNZQGY3TKMI*3E__;JQ!!Fat92My4sJ5u0kQe!x-n8bmiubYiOdnoObYrJ4vJCRrkZpgcV3uMiCU_nILijkCcglJ5QGwS9a2vVNvZE7-5es2HNqmAmaCYivJb0jI_Odzb7yA$.
You are receiving this because you are subscribed to this thread.Message ID: @.***>
—
Reply to this email directly, view it on GitHubhttps://urldefense.com/v3/__https://github.com/cubewise-code/tm1py/issues/1082*issuecomment-2025785397__;Iw!!Fat92My4sJ5u0kQe!x-n8bmiubYiOdnoObYrJ4vJCRrkZpgcV3uMiCU_nILijkCcglJ5QGwS9a2vVNvZE7-5es2HNqmAmaCYivJb0jI_KJfM0vQ$, or unsubscribehttps://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AVAUYXVBTBFTV6RHRY3ZBMDY2RJR7AVCNFSM6AAAAABFNEUSHKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMRVG44DKMZZG4__;!!Fat92My4sJ5u0kQe!x-n8bmiubYiOdnoObYrJ4vJCRrkZpgcV3uMiCU_nILijkCcglJ5QGwS9a2vVNvZE7-5es2HNqmAmaCYivJb0jI_nDcPgBg$.
You are receiving this because you authored the thread.Message ID: @.***>

This e-mail message, including any attachments, is for the sole use of the intended recipient, and may contain material that is privileged or confidential and legally protected from disclosure. If you are not the intended recipient or have received this message in error, you are not authorized to copy, distribute, or otherwise use this message or its attachments. Please notify the sender immediately by return e-mail and permanently delete this message and any attachments.
—
Reply to this email directly, view it on GitHubhttps://github.com/cubewise-code/tm1py/issues/1082#issuecomment-2026112969, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AHLDPJFFPHMBDW6QMET5MN3Y2SARBAVCNFSM6AAAAABFNEUSHKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMRWGEYTEOJWHE.
You are receiving this because you commented.Message ID: @.***>

Marius,
I got the following error message when attempting to upgrade TM1py.
C:\Users\GBanks>pip install TM1py --upgrade
Requirement already satisfied: TM1py in d:\python39\lib\site-packages (1.9.1)
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProtocolError('Connection aborted.', ConnectionResetError(10054, 'An existing connection was forcibly closed by the remote host', None, 10054, None))': /simple/tm1py/
WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProtocolError('Connection aborted.', ConnectionResetError(10054, 'An existing connection was forcibly closed by the remote host', None, 10054, None))': /simple/tm1py/
WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProtocolError('Connection aborted.', ConnectionResetError(10054, 'An existing connection was forcibly closed by the remote host', None, 10054, None))': /simple/tm1py/
WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProtocolError('Connection aborted.', ConnectionResetError(10054, 'An existing connection was forcibly closed by the remote host', None, 10054, None))': /simple/tm1py/
WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProtocolError('Connection aborted.', ConnectionResetError(10054, 'An existing connection was forcibly closed by the remote host', None, 10054, None))': /simple/tm1py/
Requirement already satisfied: ijson in d:\python39\lib\site-packages (from TM1py) (3.1.4)
Requirement already satisfied: requests in d:\python39\lib\site-packages (from TM1py) (2.28.1)
Requirement already satisfied: pytz in d:\python39\lib\site-packages (from TM1py) (2022.1)
Requirement already satisfied: mdxpy in d:\python39\lib\site-packages (from TM1py) (0.3)
Requirement already satisfied: requests_negotiate_sspi in d:\python39\lib\site-packages (from TM1py) (0.5.2)
Requirement already satisfied: charset-normalizer<3,>=2 in d:\python39\lib\site-packages (from requests->TM1py) (2.1.0)
Requirement already satisfied: idna<4,>=2.5 in d:\python39\lib\site-packages (from requests->TM1py) (3.3)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in d:\python39\lib\site-packages (from requests->TM1py) (1.26.10)
Requirement already satisfied: certifi>=2017.4.17 in d:\python39\lib\site-packages (from requests->TM1py) (2022.6.15)
Requirement already satisfied: pypiwin32>=223 in d:\python39\lib\site-packages (from requests_negotiate_sspi->TM1py) (223)
Requirement already satisfied: pywin32>=223 in d:\python39\lib\site-packages (from pypiwin32>=223->requests_negotiate_sspi->TM1py) (304)
Glen Banks
714-255-5447
[cid:66a3e402-a11c-422c-82d3-1d25221fbc88]

From: Marius Wirtz @.>
Sent: Thursday, March 28, 2024 2:16 PM
To: cubewise-code/tm1py @.>
Cc: Glen Banks @.>; Author @.>
Subject: Re: [cubewise-code/tm1py] Attribute Error (Issue #1082)
External eMail: Do not open attachments or click on links unless you expected to receive them from a trusted sender.
Please try to upgrade TM1py
pip install TM1py --upgrade
Get Outlook for Androidhttps://aka.ms/AAb9ysghttps://urldefense.com/v3/__https://aka.ms/AAb9ysg*3E__;JQ!!Fat92My4sJ5u0kQe!x9iO-TU49AivCSmedbDanp-3yV4f1EykXOsqHFXSptautA4TJjq-qU7HlF_L-0c3LQNBoRevMJrAIn5Yy0ArUvBPKQfq8A$

From: gdbanks @.>
Sent: Thursday, March 28, 2024 10:03:12 PM
To: cubewise-code/tm1py @.>
Cc: Marius Wirtz @.>; Comment @.>
Subject: Re: [cubewise-code/tm1py] Attribute Error (Issue #1082)
CAUTION: This email originated from outside the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
Marius,
I get the same error message when I change it to 'Files'.
Traceback (most recent call last):
File "D:\Projects\PCC\file_transfer_v2.py", line 158, in
main()
File "D:\Projects\PCC\file_transfer_v2.py", line 126, in main
copy_to_data_folder(file, file_path, target, tar_tm1)
File "D:\Projects\PCC\file_transfer_v2.py", line 139, in copy_to_data_folder
tm1_inst.files.update_or_create(file, file_content=file_to_transfer.read())
AttributeError: 'TM1Service' object has no attribute 'files'
Glen Banks
714-255-5447
[cid:fd7e10b8-9c8f-46c7-8f38-35ec55c389a7]

From: Marius Wirtz @.>
Sent: Thursday, March 28, 2024 10:47 AM
To: cubewise-code/tm1py @.>
Cc: Glen Banks @.>; Author @.>
Subject: Re: [cubewise-code/tm1py] Attribute Error (Issue #1082)
External eMail: Do not open attachments or click on links unless you expected to receive them from a trusted sender.
I think it should say tm1.files instead of tm1.file
Get Outlook for Androidhttps://aka.ms/AAb9ysghttps://urldefense.com/v3/__https://aka.ms/AAb9ysg*3E__;JQ!!Fat92My4sJ5u0kQe!x-n8bmiubYiOdnoObYrJ4vJCRrkZpgcV3uMiCU_nILijkCcglJ5QGwS9a2vVNvZE7-5es2HNqmAmaCYivJb0jI-LDTG9Xw$https://urldefense.com/v3/__https://aka.ms/AAb9ysg*3E*3Chttps:/*urldefense.com/v3/__https:/*aka.ms/AAb9ysg*3E__;JQ!!Fat92My4sJ5u0kQe!x-n8bmiubYiOdnoObYrJ4vJCRrkZpgcV3uMiCU_nILijkCcglJ5QGwS9a2vVNvZE7-5es2HNqmAmaCYivJb0jI-LDTG9Xw$*3E__;JSUvLyol!!Fat92My4sJ5u0kQe!x9iO-TU49AivCSmedbDanp-3yV4f1EykXOsqHFXSptautA4TJjq-qU7HlF_L-0c3LQNBoRevMJrAIn5Yy0ArUvCFVe7qFQ$

From: gdbanks @.>
Sent: Thursday, March 28, 2024 5:59:03 PM
To: cubewise-code/tm1py @.>
Cc: Subscribed @.***>
Subject: [cubewise-code/tm1py] Attribute Error (Issue #1082)
CAUTION: This email originated from outside the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
I am using TM1py 1.11.1, and I am getting the below error message.
Traceback (most recent call last):
File "D:/Projects/PCC/file_transfer_v2.py", line 139, in copy_to_data_folder
tm1_inst.file.update_or_create(file, file_content=file_to_transfer.read())
AttributeError: 'TM1Service' object has no attribute 'file'
This is the line of code, which is causing the error
def copy_to_data_folder(file, file_path, target, tm1_inst):
with open(file_path, "rb") as file_to_transfer:
tm1_inst.file.update_or_create(file, file_content=file_to_transfer.read())
logging.info(f"file: {file} has been copied to target instance {target}")
—
Reply to this email directly, view it on GitHubhttps://github.com/cubewise-code/tm1py/issues/1082https://urldefense.com/v3/__https://github.com/cubewise-code/tm1py/issues/1082*3E__;JQ!!Fat92My4sJ5u0kQe!x-n8bmiubYiOdnoObYrJ4vJCRrkZpgcV3uMiCU_nILijkCcglJ5QGwS9a2vVNvZE7-5es2HNqmAmaCYivJb0jI8rKD0Q4g$https://urldefense.com/v3/__https://github.com/cubewise-code/tm1py/issues/1082*3E*3Chttps:/*urldefense.com/v3/__https:/*github.com/cubewise-code/tm1py/issues/1082*3E__;JQ!!Fat92My4sJ5u0kQe!x-n8bmiubYiOdnoObYrJ4vJCRrkZpgcV3uMiCU_nILijkCcglJ5QGwS9a2vVNvZE7-5es2HNqmAmaCYivJb0jI8rKD0Q4g$*3E__;JSUvLyol!!Fat92My4sJ5u0kQe!x9iO-TU49AivCSmedbDanp-3yV4f1EykXOsqHFXSptautA4TJjq-qU7HlF_L-0c3LQNBoRevMJrAIn5Yy0ArUvDNsKfhWQ$, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AHLDPJAWUFVKYPOZBAH54DLY2RD5PAVCNFSM6AAAAABFNEUSHKVHI2DSMVQWIX3LMV43ASLTON2WKOZSGIYTGNZQGY3TKMIhttps://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AHLDPJAWUFVKYPOZBAH54DLY2RD5PAVCNFSM6AAAAABFNEUSHKVHI2DSMVQWIX3LMV43ASLTON2WKOZSGIYTGNZQGY3TKMI*3E__;JQ!!Fat92My4sJ5u0kQe!x-n8bmiubYiOdnoObYrJ4vJCRrkZpgcV3uMiCU_nILijkCcglJ5QGwS9a2vVNvZE7-5es2HNqmAmaCYivJb0jI_Odzb7yA$https://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AHLDPJAWUFVKYPOZBAH54DLY2RD5PAVCNFSM6AAAAABFNEUSHKVHI2DSMVQWIX3LMV43ASLTON2WKOZSGIYTGNZQGY3TKMI*3E*3Chttps:/*urldefense.com/v3/__https:/*github.com/notifications/unsubscribe-auth/AHLDPJAWUFVKYPOZBAH54DLY2RD5PAVCNFSM6AAAAABFNEUSHKVHI2DSMVQWIX3LMV43ASLTON2WKOZSGIYTGNZQGY3TKMI*3E__;JQ!!Fat92My4sJ5u0kQe!x-n8bmiubYiOdnoObYrJ4vJCRrkZpgcV3uMiCU_nILijkCcglJ5QGwS9a2vVNvZE7-5es2HNqmAmaCYivJb0jI_Odzb7yA$*3E__;JSUvLyol!!Fat92My4sJ5u0kQe!x9iO-TU49AivCSmedbDanp-3yV4f1EykXOsqHFXSptautA4TJjq-qU7HlF_L-0c3LQNBoRevMJrAIn5Yy0ArUvC2m4hPOA$.
You are receiving this because you are subscribed to this thread.Message ID: @.***>
—
Reply to this email directly, view it on GitHub<https://urldefense.com/v3/__https://github.com/cubewise-code/tm1py/issues/1082*issuecomment-2025785397__;Iw!!Fat92My4sJ5u0kQe!x-n8bmiubYiOdnoObYrJ4vJCRrkZpgcV3uMiCU_nILijkCcglJ5QGwS9a2vVNvZE7-5es2HNqmAmaCYivJb0jI_KJfM0vQ$>, or unsubscribe<https://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AVAUYXVBTBFTV6RHRY3ZBMDY2RJR7AVCNFSM6AAAAABFNEUSHKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMRVG44DKMZZG4__;!!Fat92My4sJ5u0kQe!x-n8bmiubYiOdnoObYrJ4vJCRrkZpgcV3uMiCU_nILijkCcglJ5QGwS9a2vVNvZE7-5es2HNqmAmaCYivJb0jI_nDcPgBg$>.
You are receiving this because you authored the thread.Message ID: @.***>

This e-mail message, including any attachments, is for the sole use of the intended recipient, and may contain material that is privileged or confidential and legally protected from disclosure. If you are not the intended recipient or have received this message in error, you are not authorized to copy, distribute, or otherwise use this message or its attachments. Please notify the sender immediately by return e-mail and permanently delete this message and any attachments.
—
Reply to this email directly, view it on GitHubhttps://github.com/cubewise-code/tm1py/issues/1082#issuecomment-2026112969https://urldefense.com/v3/__https://github.com/cubewise-code/tm1py/issues/1082*issuecomment-2026112969*3E__;IyU!!Fat92My4sJ5u0kQe!x9iO-TU49AivCSmedbDanp-3yV4f1EykXOsqHFXSptautA4TJjq-qU7HlF_L-0c3LQNBoRevMJrAIn5Yy0ArUvCD_D9geQ$, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AHLDPJFFPHMBDW6QMET5MN3Y2SARBAVCNFSM6AAAAABFNEUSHKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMRWGEYTEOJWHEhttps://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AHLDPJFFPHMBDW6QMET5MN3Y2SARBAVCNFSM6AAAAABFNEUSHKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMRWGEYTEOJWHE*3E__;JQ!!Fat92My4sJ5u0kQe!x9iO-TU49AivCSmedbDanp-3yV4f1EykXOsqHFXSptautA4TJjq-qU7HlF_L-0c3LQNBoRevMJrAIn5Yy0ArUvAymNrSdw$.
You are receiving this because you commented.Message ID: @.***>
—
Reply to this email directly, view it on GitHubhttps://urldefense.com/v3/__https://github.com/cubewise-code/tm1py/issues/1082*issuecomment-2026141964__;Iw!!Fat92My4sJ5u0kQe!x9iO-TU49AivCSmedbDanp-3yV4f1EykXOsqHFXSptautA4TJjq-qU7HlF_L-0c3LQNBoRevMJrAIn5Yy0ArUvDRQZtECg$, or unsubscribehttps://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AVAUYXU6LZCPFGNFGLMJTLLY2SCBTAVCNFSM6AAAAABFNEUSHKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMRWGE2DCOJWGQ__;!!Fat92My4sJ5u0kQe!x9iO-TU49AivCSmedbDanp-3yV4f1EykXOsqHFXSptautA4TJjq-qU7HlF_L-0c3LQNBoRevMJrAIn5Yy0ArUvAm9kYxhg$.
You are receiving this because you authored the thread.Message ID: @.***>

@gdbanks, were you able to resolve this?

Marius,
Not yet.  I am working with our IT to resolve the issue with installing the upgrade.
Glen Banks
714-255-5447
[cid:50afaa39-7e49-44e5-965a-5a9a616e84e3]

From: Marius Wirtz @.>
Sent: Thursday, April 4, 2024 9:12 AM
To: cubewise-code/tm1py @.>
Cc: Glen Banks @.>; Mention @.>
Subject: Re: [cubewise-code/tm1py] Attribute Error (Issue #1082)
External eMail: Do not open attachments or click on links unless you expected to receive them from a trusted sender.
@gdbankshttps://urldefense.com/v3/__https://github.com/gdbanks__;!!Fat92My4sJ5u0kQe!yb_E213JKXtCO1DzBTQo61K3GOiaZ3vUd0X2NBLiZ7EjNs80bqWq7GNL7QoD3613WMkqn8NBDnY6OJae2vDYAqbSh39VAQ$, were you able to resolve this?
—
Reply to this email directly, view it on GitHubhttps://urldefense.com/v3/__https://github.com/cubewise-code/tm1py/issues/1082*issuecomment-2037634808__;Iw!!Fat92My4sJ5u0kQe!yb_E213JKXtCO1DzBTQo61K3GOiaZ3vUd0X2NBLiZ7EjNs80bqWq7GNL7QoD3613WMkqn8NBDnY6OJae2vDYAqbW6UV6Mw$, or unsubscribehttps://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AVAUYXS7KILY5KQHDWA7STLY3V3XPAVCNFSM6AAAAABFNEUSHKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMZXGYZTIOBQHA__;!!Fat92My4sJ5u0kQe!yb_E213JKXtCO1DzBTQo61K3GOiaZ3vUd0X2NBLiZ7EjNs80bqWq7GNL7QoD3613WMkqn8NBDnY6OJae2vDYAqbTa60Y3A$.
You are receiving this because you were mentioned.Message ID: @.***>

This e-mail message, including any attachments, is for the sole use of the intended recipient, and may contain material that is privileged or confidential and legally protected from disclosure. If you are not the intended recipient or have received this message in error, you are not authorized to copy, distribute, or otherwise use this message or its attachments. Please notify the sender immediately by return e-mail and permanently delete this message and any attachments.

Marius,
IT has been able to resolve the installation issue.  Also, I do not know why it is looking  at python39 instead of python 311.
C:\Users\GBanks>pip install tm1py --upgrade
Requirement already satisfied: tm1py in d:\python39\lib\site-packages (1.9.1)
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProtocolError('Connection aborted.', ConnectionResetError(10054, 'An existing connection was forcibly closed by the remote host', None, 10054, None))': /simple/tm1py/
WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProtocolError('Connection aborted.', ConnectionResetError(10054, 'An existing connection was forcibly closed by the remote host', None, 10054, None))': /simple/tm1py/
WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProtocolError('Connection aborted.', ConnectionResetError(10054, 'An existing connection was forcibly closed by the remote host', None, 10054, None))': /simple/tm1py/
WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProtocolError('Connection aborted.', ConnectionResetError(10054, 'An existing connection was forcibly closed by the remote host', None, 10054, None))': /simple/tm1py/
WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProtocolError('Connection aborted.', ConnectionResetError(10054, 'An existing connection was forcibly closed by the remote host', None, 10054, None))': /simple/tm1py/
Requirement already satisfied: ijson in d:\python39\lib\site-packages (from tm1py) (3.1.4)
Requirement already satisfied: requests in d:\python39\lib\site-packages (from tm1py) (2.28.1)
Requirement already satisfied: pytz in d:\python39\lib\site-packages (from tm1py) (2022.1)
Requirement already satisfied: mdxpy in d:\python39\lib\site-packages (from tm1py) (0.3)
Requirement already satisfied: requests_negotiate_sspi in d:\python39\lib\site-packages (from tm1py) (0.5.2)
Requirement already satisfied: charset-normalizer<3,>=2 in d:\python39\lib\site-packages (from requests->tm1py) (2.1.0)
Requirement already satisfied: idna<4,>=2.5 in d:\python39\lib\site-packages (from requests->tm1py) (3.3)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in d:\python39\lib\site-packages (from requests->tm1py) (1.26.10)
Requirement already satisfied: certifi>=2017.4.17 in d:\python39\lib\site-packages (from requests->tm1py) (2022.6.15)
Requirement already satisfied: pypiwin32>=223 in d:\python39\lib\site-packages (from requests_negotiate_sspi->tm1py) (223)
Requirement already satisfied: pywin32>=223 in d:\python39\lib\site-packages (from pypiwin32>=223->requests_negotiate_sspi->tm1py) (304)
Glen Banks
714-255-5447
[cid:ac78e025-9155-41fb-8a03-66f4e1b82da3]

From: Glen Banks @.>
Sent: Thursday, April 4, 2024 9:13 AM
To: cubewise-code/tm1py @.>; cubewise-code/tm1py @.>
Cc: Mention @.>
Subject: Re: [cubewise-code/tm1py] Attribute Error (Issue #1082)
Marius,
Not yet.  I am working with our IT to resolve the issue with installing the upgrade.
Glen Banks
714-255-5447
[cid:50afaa39-7e49-44e5-965a-5a9a616e84e3]

From: Marius Wirtz @.>
Sent: Thursday, April 4, 2024 9:12 AM
To: cubewise-code/tm1py @.>
Cc: Glen Banks @.>; Mention @.>
Subject: Re: [cubewise-code/tm1py] Attribute Error (Issue #1082)
External eMail: Do not open attachments or click on links unless you expected to receive them from a trusted sender.
@gdbankshttps://urldefense.com/v3/__https://github.com/gdbanks__;!!Fat92My4sJ5u0kQe!yb_E213JKXtCO1DzBTQo61K3GOiaZ3vUd0X2NBLiZ7EjNs80bqWq7GNL7QoD3613WMkqn8NBDnY6OJae2vDYAqbSh39VAQ$, were you able to resolve this?
—
Reply to this email directly, view it on GitHubhttps://urldefense.com/v3/__https://github.com/cubewise-code/tm1py/issues/1082*issuecomment-2037634808__;Iw!!Fat92My4sJ5u0kQe!yb_E213JKXtCO1DzBTQo61K3GOiaZ3vUd0X2NBLiZ7EjNs80bqWq7GNL7QoD3613WMkqn8NBDnY6OJae2vDYAqbW6UV6Mw$, or unsubscribehttps://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AVAUYXS7KILY5KQHDWA7STLY3V3XPAVCNFSM6AAAAABFNEUSHKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMZXGYZTIOBQHA__;!!Fat92My4sJ5u0kQe!yb_E213JKXtCO1DzBTQo61K3GOiaZ3vUd0X2NBLiZ7EjNs80bqWq7GNL7QoD3613WMkqn8NBDnY6OJae2vDYAqbTa60Y3A$.
You are receiving this because you were mentioned.Message ID: @.***>

This e-mail message, including any attachments, is for the sole use of the intended recipient, and may contain material that is privileged or confidential and legally protected from disclosure. If you are not the intended recipient or have received this message in error, you are not authorized to copy, distribute, or otherwise use this message or its attachments. Please notify the sender immediately by return e-mail and permanently delete this message and any attachments.

Marius,
I am sorry, I meant to say IT was unable to resolve the issue.  The error message below is what I am seeing now.
How do I install the upgrade without running a pip command?
Glen Banks
714-255-5447
[cid:195c79a2-6af9-4848-bd5b-a462b488baca]

From: Marius Wirtz @.>
Sent: Friday, April 5, 2024 12:44 AM
To: cubewise-code/tm1py @.>
Cc: Glen Banks @.>; Mention @.>
Subject: Re: [cubewise-code/tm1py] Attribute Error (Issue #1082)
External eMail: Do not open attachments or click on links unless you expected to receive them from a trusted sender.
Closed #1082https://urldefense.com/v3/__https://github.com/cubewise-code/tm1py/issues/1082__;!!Fat92My4sJ5u0kQe!yfvgUT9oEgfGaLrnZBx0MVV5SqfhTMU66kKk35WB36maI-c_3L_U93zGt3y8xFh7PTatKHZnqIo9i1-2cUgWffqUjVFboQ$ as completed.
—
Reply to this email directly, view it on GitHubhttps://urldefense.com/v3/__https://github.com/cubewise-code/tm1py/issues/1082*event-12369446941__;Iw!!Fat92My4sJ5u0kQe!yfvgUT9oEgfGaLrnZBx0MVV5SqfhTMU66kKk35WB36maI-c_3L_U93zGt3y8xFh7PTatKHZnqIo9i1-2cUgWffqi0tUrsg$, or unsubscribehttps://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AVAUYXR3NSZIIAXHUUPVY2DY3ZI5NAVCNFSM6AAAAABFNEUSHKVHI2DSMVQWIX3LMV45UABCJFZXG5LFIV3GK3TUJZXXI2LGNFRWC5DJN5XDWMJSGM3DSNBUGY4TIMI__;!!Fat92My4sJ5u0kQe!yfvgUT9oEgfGaLrnZBx0MVV5SqfhTMU66kKk35WB36maI-c_3L_U93zGt3y8xFh7PTatKHZnqIo9i1-2cUgWffrW1z_ytg$.
You are receiving this because you were mentioned.Message ID: @.***>

This e-mail message, including any attachments, is for the sole use of the intended recipient, and may contain material that is privileged or confidential and legally protected from disclosure. If you are not the intended recipient or have received this message in error, you are not authorized to copy, distribute, or otherwise use this message or its attachments. Please notify the sender immediately by return e-mail and permanently delete this message and any attachments.

MArius,
I upgraded to tm1py, but I am still seeing the error message below.  I have attached the python script.
D:\Python39\python.exe D:/Projects/PCC/file_transfer_v2.py
Starting File Transfer from Directory...
Connected to the PythonControlCenter instance
Looking for files in ..{('1002',): ['FinancialReporting', 'D:\Projects\PCC\file_transfer\financialreporting']} directories
target is FinancialReporting instance
connecting to target instance FinancialReporting
Traceback (most recent call last):
File "D:\Projects\PCC\file_transfer_v2.py", line 158, in
main()
File "D:\Projects\PCC\file_transfer_v2.py", line 126, in main
copy_to_data_folder(file, file_path, target, tar_tm1)
File "D:\Projects\PCC\file_transfer_v2.py", line 139, in copy_to_data_folder
tm1_inst.file.update_or_create(file, file_content=file_to_transfer.read())
AttributeError: 'TM1Service' object has no attribute 'file'
Process finished with exit code 1
Glen Banks
714-255-5447
[cid:601dacae-0316-4fcb-b571-233e97895e0e]

From: Glen Banks @.>
Sent: Friday, April 5, 2024 7:28 AM
To: cubewise-code/tm1py @.>; cubewise-code/tm1py @.>
Cc: Mention @.>
Subject: Re: [cubewise-code/tm1py] Attribute Error (Issue #1082)
Marius,
I am sorry, I meant to say IT was unable to resolve the issue.  The error message below is what I am seeing now.
How do I install the upgrade without running a pip command?
Glen Banks
714-255-5447
[cid:195c79a2-6af9-4848-bd5b-a462b488baca]

From: Marius Wirtz @.>
Sent: Friday, April 5, 2024 12:44 AM
To: cubewise-code/tm1py @.>
Cc: Glen Banks @.>; Mention @.>
Subject: Re: [cubewise-code/tm1py] Attribute Error (Issue #1082)
External eMail: Do not open attachments or click on links unless you expected to receive them from a trusted sender.
Closed #1082https://urldefense.com/v3/__https://github.com/cubewise-code/tm1py/issues/1082__;!!Fat92My4sJ5u0kQe!yfvgUT9oEgfGaLrnZBx0MVV5SqfhTMU66kKk35WB36maI-c_3L_U93zGt3y8xFh7PTatKHZnqIo9i1-2cUgWffqUjVFboQ$ as completed.
—
Reply to this email directly, view it on GitHubhttps://urldefense.com/v3/__https://github.com/cubewise-code/tm1py/issues/1082*event-12369446941__;Iw!!Fat92My4sJ5u0kQe!yfvgUT9oEgfGaLrnZBx0MVV5SqfhTMU66kKk35WB36maI-c_3L_U93zGt3y8xFh7PTatKHZnqIo9i1-2cUgWffqi0tUrsg$, or unsubscribehttps://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AVAUYXR3NSZIIAXHUUPVY2DY3ZI5NAVCNFSM6AAAAABFNEUSHKVHI2DSMVQWIX3LMV45UABCJFZXG5LFIV3GK3TUJZXXI2LGNFRWC5DJN5XDWMJSGM3DSNBUGY4TIMI__;!!Fat92My4sJ5u0kQe!yfvgUT9oEgfGaLrnZBx0MVV5SqfhTMU66kKk35WB36maI-c_3L_U93zGt3y8xFh7PTatKHZnqIo9i1-2cUgWffrW1z_ytg$.
You are receiving this because you were mentioned.Message ID: @.***>

This e-mail message, including any attachments, is for the sole use of the intended recipient, and may contain material that is privileged or confidential and legally protected from disclosure. If you are not the intended recipient or have received this message in error, you are not authorized to copy, distribute, or otherwise use this message or its attachments. Please notify the sender immediately by return e-mail and permanently delete this message and any attachments.

Marius,
The ticket can be closed.  I found out that I was using the wrong Python interpreter, once I changed it from python39 to python311 the code ran without issue.
Glen Banks
714-255-5447
[cid:cf5ecbe2-2450-4f28-9a08-c31e209701ae]

From: Glen Banks @.>
Sent: Friday, April 5, 2024 10:38 AM
To: cubewise-code/tm1py @.>; cubewise-code/tm1py @.>
Cc: Mention @.>
Subject: Re: [cubewise-code/tm1py] Attribute Error (Issue #1082)
MArius,
I upgraded to tm1py, but I am still seeing the error message below.  I have attached the python script.
D:\Python39\python.exe D:/Projects/PCC/file_transfer_v2.py
Starting File Transfer from Directory...
Connected to the PythonControlCenter instance
Looking for files in ..{('1002',): ['FinancialReporting', 'D:\Projects\PCC\file_transfer\financialreporting']} directories
target is FinancialReporting instance
connecting to target instance FinancialReporting
Traceback (most recent call last):
File "D:\Projects\PCC\file_transfer_v2.py", line 158, in
main()
File "D:\Projects\PCC\file_transfer_v2.py", line 126, in main
copy_to_data_folder(file, file_path, target, tar_tm1)
File "D:\Projects\PCC\file_transfer_v2.py", line 139, in copy_to_data_folder
tm1_inst.file.update_or_create(file, file_content=file_to_transfer.read())
AttributeError: 'TM1Service' object has no attribute 'file'
Process finished with exit code 1
Glen Banks
714-255-5447
[cid:601dacae-0316-4fcb-b571-233e97895e0e]

From: Glen Banks @.>
Sent: Friday, April 5, 2024 7:28 AM
To: cubewise-code/tm1py @.>; cubewise-code/tm1py @.>
Cc: Mention @.>
Subject: Re: [cubewise-code/tm1py] Attribute Error (Issue #1082)
Marius,
I am sorry, I meant to say IT was unable to resolve the issue.  The error message below is what I am seeing now.
How do I install the upgrade without running a pip command?
Glen Banks
714-255-5447
[cid:195c79a2-6af9-4848-bd5b-a462b488baca]

From: Marius Wirtz @.>
Sent: Friday, April 5, 2024 12:44 AM
To: cubewise-code/tm1py @.>
Cc: Glen Banks @.>; Mention @.>
Subject: Re: [cubewise-code/tm1py] Attribute Error (Issue #1082)
External eMail: Do not open attachments or click on links unless you expected to receive them from a trusted sender.
Closed #1082https://urldefense.com/v3/__https://github.com/cubewise-code/tm1py/issues/1082__;!!Fat92My4sJ5u0kQe!yfvgUT9oEgfGaLrnZBx0MVV5SqfhTMU66kKk35WB36maI-c_3L_U93zGt3y8xFh7PTatKHZnqIo9i1-2cUgWffqUjVFboQ$ as completed.
—
Reply to this email directly, view it on GitHubhttps://urldefense.com/v3/__https://github.com/cubewise-code/tm1py/issues/1082*event-12369446941__;Iw!!Fat92My4sJ5u0kQe!yfvgUT9oEgfGaLrnZBx0MVV5SqfhTMU66kKk35WB36maI-c_3L_U93zGt3y8xFh7PTatKHZnqIo9i1-2cUgWffqi0tUrsg$, or unsubscribehttps://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AVAUYXR3NSZIIAXHUUPVY2DY3ZI5NAVCNFSM6AAAAABFNEUSHKVHI2DSMVQWIX3LMV45UABCJFZXG5LFIV3GK3TUJZXXI2LGNFRWC5DJN5XDWMJSGM3DSNBUGY4TIMI__;!!Fat92My4sJ5u0kQe!yfvgUT9oEgfGaLrnZBx0MVV5SqfhTMU66kKk35WB36maI-c_3L_U93zGt3y8xFh7PTatKHZnqIo9i1-2cUgWffrW1z_ytg$.
You are receiving this because you were mentioned.Message ID: @.***>

This e-mail message, including any attachments, is for the sole use of the intended recipient, and may contain material that is privileged or confidential and legally protected from disclosure. If you are not the intended recipient or have received this message in error, you are not authorized to copy, distribute, or otherwise use this message or its attachments. Please notify the sender immediately by return e-mail and permanently delete this message and any attachments.


Type-specific column operations

We need a way to define type-specific operations in DataFrame and Series. A good example is various String operations, such as split that can create multiple Series from a single Series<String>.
The most obvious way to implement this is to follow the existing design of primitive Series, by providing StringSeries, LocalDateTimeSeries, etc. This still leaves a few challenges:

DataFrame columns need to be converted to a specific type before those operations are available.
What is the least verbose way to reference a specific type within a DataFrame?

So perhaps there's a (performant) way to implement operations on a generic Series without casts or full Series conversion?  Something around map(..)? (also need syntax for map that produces multiple columns)

Closing this for now. We have type-specific expressions already.


Fix text only tooltips for emotes and badges

Pull request checklist:

[x] CHANGELOG.md was updated, if applicable

Description
fixes #4500
PR fixes display of text only tooltips for emotes and badges, according to "Show info on hover" user setting.
other changes:

flattened one if and removed unnecessary tooltipWidget->clearEntries()
moved emotesTooltipPreview setting next to other emote settings

Confirmed this fixes the bug, thanks!


Player can collide with entity at spawn

Players can sometimes spawn at the same location as a rock or tree, preventing them from moving. Find a non-colliding position to teleport them to instead.

Fixed in 0.6.5


ENH: random_state using scipy.stats.qmc engines

This is a follow up of discussions in #10844.
Describe the solution you'd like
All sampling methods in scipy.stats are using random_state which is a np.random.Generator (for new code). But this numpy generator is not aware of dimensions. Also, the new scipy.stats.qmc allow to generate samples efficiently in n-dimensions. It would be nice to bridge the gap between the two.
Currently there is a qmc.MultivariateNormalQMC. Instead of duplicating this for other distributions, a solution could be to make the QMC engines inherit from np.random.BitGenerator. We could then use the new QMC engines with all the existing distributions.
Describe alternatives you've considered

Solution using a BitGenerator: Seemingly, it must be done in Cython. Otherwise I saw that there was a wrapper around BitGenerator, but this is not available in numpy... https://bashtage.github.io/randomgen/bit_generators/userbitgenerator.html from @bashtage. This is working but the underlying numpy code is not aware of dimensions (https://github.com/numpy/numpy/blob/e4feb7027e397925d220a10dd58b581b87ca1fec/numpy/random/_generator.pyx#L3562-L3568).

from numpy.random import Generator
from randomgen import UserBitGenerator

class SobolNP:
    def __init__(self, state):
        self._next_64 = None
        self.engine = Sobol(d=1, scramble=False, seed=state)

    def random_raw(self):
        """Generate the next "raw" value, which is 64 bits"""
        return int(self.engine.random() * 2**64)  # although Sobol uses 30 bits...

    @property
    def next_64(self):
        def _next_64(void_p):
            return self.random_raw()

        self._next_64 = _next_64
        return _next_64

# examples
prng = SobolNP(1234)
sobol_bit_generator = UserBitGenerator(prng.next_64, 64)
gen = Generator(sobol_bit_generator)
gen.random(8)

Another solution would be to mock np.random.Generator: I am using __getattr__ to mock calls to the distributions. So calls like random_state.uniform(...). Seems to be working and n-dimensions is ok too.

from numpy.random import Generator
import scipy.stats as stats
from functools import partial

class ScipyGenerator:

    @property
    def __class__(self):
        return Generator

    def __init__(self, d):
        self.qrng = stats.qmc.Sobol(d=d, scramble=False)

    def rvs(self, *args, dist, **kwargs):
        args = list(args)
        size = kwargs.pop('size', None)
        if size is None:
            size = args.pop(0)
        sample = self.qrng.random(size)
        return dist(*args, **kwargs).ppf(sample)

    def __getattr__(self, attr):
        try:
            dist = getattr(stats, attr)
            return partial(self.rvs, dist=dist)
        except AttributeError as err_np:
            raise err_np

# examples
random_state = ScipyGenerator(d=2)
isinstance(random_state, Generator)
random_state.uniform(8)
random_state.gamma(2, size=8)

I don't believe that implementing a QMC-based BitGenerator will work properly. Most of the non-uniform distribution algorithms in Generator really require a PRNG, not a QRNG, underneath. Inversion algorithms (e.g. exponential) work fine, but most are not of that form. Similar algorithms do exist for QRNGs, but they are different and would need to be derived separately.
Implementing a class that has (at least) a subset of Generator's methods with appropriate algorithms in each might be useful, but I wouldn't do the __class__ type-punning. I get that you want it to survive a check_random_state(), but it's usually not a good idea fake the type hierarchy like that. Note that the names of the Generator methods are often not the same as the scipy.stats distributions, so I recommend just writing explicit methods.

I don't believe that implementing a QMC-based BitGenerator will work properly. Most of the non-uniform distribution algorithms in Generator really require a PRNG, not a QRNG, underneath. Inversion algorithms (e.g. exponential) work fine, but most are not of that form. Similar algorithms do exist for QRNGs, but they are different and would need to be derived separately.
Implementing a class that has (at least) a subset of Generator's methods with appropriate algorithms in each might be useful, but I wouldn't do the __class__ type-punning. I get that you want it to survive a check_random_state(), but it's usually not a good idea fake the type hierarchy like that. Note that the names of the Generator methods are often not the same as the scipy.stats distributions, so I recommend just writing explicit methods.

I don't believe that implementing a QMC-based BitGenerator will work properly. Most of the non-uniform distribution algorithms in Generator really require a PRNG, not a QRNG, underneath. Inversion algorithms (e.g. exponential) work fine, but most are not of that form. Similar algorithms do exist for QRNGs, but they are different and would need to be derived separately.

I am not sure I understand why we could not sample any distribution using QMC sampling.

Implementing a class that has (at least) a subset of Generator's methods with appropriate algorithms in each might be useful, but I wouldn't do the __class__ type-punning. I get that you want it to survive a check_random_state(), but it's usually not a good idea fake the type hierarchy like that. Note that the names of the Generator methods are often not the same as the scipy.stats distributions, so I recommend just writing explicit methods.

Indeed I did this for the check_random_state, but if I would propose a PR I would propose to add this class to the acceptable options of check_random_state. As for the names of the method, the rational behind was to avoid declaring all the distributions which would duplicate lot of code.
If you feel that what I propose here is ok, I could prepare a PR (well we still need to merge qmc... so right after).

I don't believe that implementing a QMC-based BitGenerator will work properly. Most of the non-uniform distribution algorithms in Generator really require a PRNG, not a QRNG, underneath. Inversion algorithms (e.g. exponential) work fine, but most are not of that form. Similar algorithms do exist for QRNGs, but they are different and would need to be derived separately.

I am not sure I understand why we could not sample any distribution using QMC sampling.

Implementing a class that has (at least) a subset of Generator's methods with appropriate algorithms in each might be useful, but I wouldn't do the __class__ type-punning. I get that you want it to survive a check_random_state(), but it's usually not a good idea fake the type hierarchy like that. Note that the names of the Generator methods are often not the same as the scipy.stats distributions, so I recommend just writing explicit methods.

Indeed I did this for the check_random_state, but if I would propose a PR I would propose to add this class to the acceptable options of check_random_state. As for the names of the method, the rational behind was to avoid declaring all the distributions which would duplicate lot of code.
If you feel that what I propose here is ok, I could prepare a PR (well we still need to merge qmc... so right after).

I am not sure I understand why we could not sample any distribution using QMC sampling.

You can, but not using rejection samplers which are the dominant method used in Generator.

I am not sure I understand why we could not sample any distribution using QMC sampling.

You can, but not using rejection samplers which are the dominant method used in Generator.

I am not sure I understand why we could not sample any distribution using QMC sampling.

You can, but not using rejection samplers which are the dominant method used in Generator.

Ah ok thanks. I thought only inverse CDF was used.

I am not sure I understand why we could not sample any distribution using QMC sampling.

You can, but not using rejection samplers which are the dominant method used in Generator.

Ah ok thanks. I thought only inverse CDF was used.

I am not sure I understand why we could not sample any distribution using QMC sampling.

There are algorithms that work with QMC sampling; they just aren't the algorithms implemented in Generator, for the most part. The paper I linked has the mathematical details about why QMC doesn't work for those algorithms out-of-box and how they can be modified to work.
I would not modify check_random_state() per se. There are two code contributions coming soon that really rely on a real Generator with a real BitGenerator underneath.

As for the names of the method, the rational behind was to avoid declaring all the distributions which would duplicate lot of code.

Sure, but that doesn't get you the Generator interface. Not only are there differences in names, the arguments often differ. If the idea is simply to provide easy access to all of the scipy.stats distributions with the QMC engines, then I'd just use the rvs() method as you've written it and pass in the distributions explicitly. You could even move this method to Sobol and friends.

I am not sure I understand why we could not sample any distribution using QMC sampling.

There are algorithms that work with QMC sampling; they just aren't the algorithms implemented in Generator, for the most part. The paper I linked has the mathematical details about why QMC doesn't work for those algorithms out-of-box and how they can be modified to work.
I would not modify check_random_state() per se. There are two code contributions coming soon that really rely on a real Generator with a real BitGenerator underneath.

As for the names of the method, the rational behind was to avoid declaring all the distributions which would duplicate lot of code.

Sure, but that doesn't get you the Generator interface. Not only are there differences in names, the arguments often differ. If the idea is simply to provide easy access to all of the scipy.stats distributions with the QMC engines, then I'd just use the rvs() method as you've written it and pass in the distributions explicitly. You could even move this method to Sobol and friends.

As for the names of the method, the rational behind was to avoid declaring all the distributions which would duplicate lot of code.

Sure, but that doesn't get you the Generator interface. Not only are there differences in names, the arguments often differ. If the idea is simply to provide easy access to all of the scipy.stats distributions with the QMC engines, then I'd just use the rvs() method as you've written it and pass in the distributions explicitly. You could even move this method to Sobol and friends.

True for the arguments and that's why I added the small logic with the args,kwargs.
The idea was to give a user a simple way to use the QMC engines all over the place by just substituting the seed in their code.
I agree that, regardless of this, rvs could be in present in QMCEngine. But then this function would be very general as converting a uniform sample to another distribution. This actually relate to what I propose in #13343

As for the names of the method, the rational behind was to avoid declaring all the distributions which would duplicate lot of code.

Sure, but that doesn't get you the Generator interface. Not only are there differences in names, the arguments often differ. If the idea is simply to provide easy access to all of the scipy.stats distributions with the QMC engines, then I'd just use the rvs() method as you've written it and pass in the distributions explicitly. You could even move this method to Sobol and friends.

True for the arguments and that's why I added the small logic with the args,kwargs.
The idea was to give a user a simple way to use the QMC engines all over the place by just substituting the seed in their code.
I agree that, regardless of this, rvs could be in present in QMCEngine. But then this function would be very general as converting a uniform sample to another distribution. This actually relate to what I propose in #13343

True for the arguments and that's why I added the small logic with the args,kwargs.

That's not the issue I'm pointing out. Compare the arguments to Generator.triangular and scipy.stats.triang, for instance.

The idea was to give a user a simple way to use the QMC engines all over the place by just substituting the seed in their code.

It's a nice thought, but I don't think it ultimately works often enough to allow check_random_state() to pass through one of these. For instance scipy.stats.geninvgauss.rvs() implements a rejection algorithm. This is not one of the Generator methods, so people writing QMC-agnostic code would be calling geninvgauss.rvs(..., random_state=something) not something.geninvgauss(...).

True for the arguments and that's why I added the small logic with the args,kwargs.

That's not the issue I'm pointing out. Compare the arguments to Generator.triangular and scipy.stats.triang, for instance.

The idea was to give a user a simple way to use the QMC engines all over the place by just substituting the seed in their code.

It's a nice thought, but I don't think it ultimately works often enough to allow check_random_state() to pass through one of these. For instance scipy.stats.geninvgauss.rvs() implements a rejection algorithm. This is not one of the Generator methods, so people writing QMC-agnostic code would be calling geninvgauss.rvs(..., random_state=something) not something.geninvgauss(...).

@rkern do you, somehow, see a future for this or shall I close it?

I don't think this strategy is profitable to explore. Code written for PRNGs are assuming things about the BitGenerator that don't hold for QRNGs.
I think there's significant room to write some tools that help people sample from scipy.stats distributions using the QMC algorithms, but I don't think it would take the form of threading the QMC algorithms through as BitGenerators.

Thanks for the discussions here. I will close it then.

I think there's significant room to write some tools that help people sample from scipy.stats distributions using the QMC algorithms, but I don't think it would take the form of threading the QMC algorithms through as BitGenerators.

Do you have other ideas I should explore instead?

The first most obvious thing would be to provide a function that takes a QMCEngine and a scipy.stats distribution object and apply the inversion method to sample from that distribution.
There also are variants of the acceptance-rejection method for QMC that you can implement with the same kind of interface. Some of the algorithms in UNU.RAN for automatically creating efficient acceptance-rejection algorithms for PRNGs will be useful for QMC, too (such as automatically deriving good proposal distributions, which are used in both the PRNG and QMC forms of AR). As the effort ramps up to integrate the UNU.RAN functionality, you might want to take a look and make sure that the algorithms are exposed in such a way that they will be useful both for PRNG sampling and QMC sampling.

The first most obvious thing would be to provide a function that takes a QMCEngine and a scipy.stats distribution object and apply the inversion method to sample from that distribution.

OK I was afraid this was too simple and would not be accepted. I could make a PR for that. Not sure about the interface and names here. But is the following what you mean?
class SampleDist:

    def __init__(self, qrng, dist):
        self.qrng = qrng

    def rvs(self):
        sample = self.qrng.random(size)
        return dist.ppf(sample)

There also are variants of the acceptance-rejection method for QMC that you can implement with the same kind of interface. Some of the algorithms in UNU.RAN for automatically creating efficient acceptance-rejection algorithms for PRNGs will be useful for QMC, too (such as automatically deriving good proposal distributions, which are used in both the PRNG and QMC forms of AR). As the effort ramps up to integrate the UNU.RAN functionality, you might want to take a look and make sure that the algorithms are exposed in such a way that they will be useful both for PRNG sampling and QMC sampling.

I will keep an eye open during this integration work. Although MCMC and such are more the territory of PyMC for now.

I was thinking more of a function rather than an object, but yes. It's possible that it falls under the category of "not every one-liner needs to be a function", but then again, not everyone knows that trick for getting QMC variates from non-uniform distributions.
UNU.RAN is not an MCMC library. The stuff for MCMC in UNU.RAN is just applying the main algorithms of UNU.RAN to MCMC problems because automatically deriving fast samplers for new continuous distributions solves a particular problem with Gibbs sampling MCMC algorithms. That's not the main focus of the library or the planned integration.

I've read the discussion above. For univariate distributions, ay no least, could we not we still pass a QMCEngine as the random_state of the rvs method? It does not need to inherit from BitGenerstor for that. The rvs method could check the type of random_state and do inverse transform sampling if it gets a QMCEngine.

rvs() could grow a different keyword argument to allow you to pass in a QMCEngine explicitly, but I would not repurpose random_state like that.

But having explicit functions is more flexible, especially as the UNU.RAN algorithms become available. Inverting using the ppf() is probably the last thing you'll want to do if any other method is available (even just spline-interpolated approximation of inversion).

even just spline-interpolated approximation of inversion

Speaking of which, @rkern, should I keep gh-13319 open? Do you think the interface/testing might be of value even if all the internals get replaced?

I doubt we'll bother replacing the internals with the UNU.RAN implementation, unless if you think that's the best way to address the remaining todos.
Want to add a qmc_engine=None keyword argument to FastNumericalInverse.rvs() and see how that feels?

Done! Let's continue this discussion in gh-13319.

Now that we have UNU.RAN and NumericalInverseHermite, I think we are missing a nice wrapper or some integration with our distributions.
Right now, a user would need to be aware of these details in order to find/use these. IMHO this is not a trivial assumption to make. So what about if we would add a method parameter in rv_continuous, rv_discrete? It could use the distribution's defined method by default and otherwise we could use UNU.RAN or NumericalInverseHermite.

It seems that we have two big ideas for stats maintenance these days:

Overhaul of the distribution superclasses
Overhaul of (almost) everything else (other than the major new enhancements: QMC and fast RVS)

After a year of pretty intense work on scipy.stats, I've become interested in both, but I've prioritized #2. The resampling method PRs (bootstrap, permutation test, and Monte Carlo tests) and gh-13312 have actually all been part of that effort. Besides applying the _axis_nan_policy decorator to existing functions and providing the resampling methods to expand the functionality of the statistics and tests we already have, my plan has been to create a class that makes writing a typical hypothesis test as simple as implementing a 1D statistic (and, if the null hypothesis is not that of independence, possibly defining the distribution of the statistic under the null hypothesis). All this other functionality (nan_policy, vectorization, one- and two-sided p-values, confidence intervals, etc.) can be inherited - or overridden if desired. The goal is for the interfaces and capabilities of most tests to be pretty consistent without requiring contributors to re-invent the wheel in every PR.  rv_continuous and rv_discrete are not perfect, but think what it would be like if everyone had to implement distributions from scratch! A lot of distributions would be missing a lot of methods, there would be different names for the same methods and parameters, there would be varying behaviors in case of invalid inputs (maybe output NaN, maybe raise this or that error), and who knows what support for vectorization would look like. But this is exactly what we have in the case of the hypothesis tests and correlation functions now! I think that's why I have prioritized it.
There has also been some effort toward #1. @tirthasheshpatel and I have been talking in recent PRs about overhauling the test suite of distributions so that we can find all the obvious bugs where distribution methods are not living up to their public signatures.
I don't know that we should work on all aspects of these projects simultaneously. So, in the case of working on overhaul of rv_continuous/discrete, I think it would be better if this were to wait a bit. I really would like to be a part of it, but I don't think I can do it in parallel with all the rest. Also, I think it would help to have a more thorough test suite to help us characterize the shortcomings of rv_continuous and rv_discrete before we rewrite the distribution classes (or factory functions). And personally, I'd prefer to get a little further along toward the other stuff - item 2 - before digging deeply into those test suite improvements.
So maybe I'd suggest this order of high-level maintenance operations:
1a. Get gh-14651 rolling. (It will take a long time to complete but once it gets rolling, each new PR will be pretty quick and easy, as has been the case with the alternative effort in gh-12506. I think we'll know when we get there, and at that point, we can move on.)
1b. A base class (or factory function) for hypothesis tests, with the first example being the z-test (gh-13662).
2a. Overhaul the test suite of the distributions
2b. Look into what comes after rv_continuous and rv_discrete
I like some variety, but I'm not really efficient when I'm bouncing between dozen of PRs, waiting a few months at a time between updates and having to re-learn everything when I come back to it. I imagine that if a few of us were able to tag-team as authors and reviewers toward a common goal, we could get a lot done pretty quickly. What do you think?

This action plan sounds reasonable 👍 The overhaul of the distribution is a massive undertaking for sure and we would need to be sure to have a few maintainers on board to first avoid late discussions and second to do the hard work. This should not be a 1-2 man only project.
As usual, feel free to ping me if you feel I could help 😃


Changed js version in tsconfig.json

Great thanks for the repository!
When I tried to build the babylon-vrm-loader, I got error messages.
[tsl] ERROR in /<home>/vrm_loader/babylon-vrm-loader/src/vrm-manager.ts(177,40)
      TS2339: Property 'find' does not exist on type 'AbstractMesh[]'.
[tsl] ERROR in /<home>/vrm_loader/babylon-vrm-loader/src/vrm-manager.ts(177,46)
      TS7006: Parameter 'm' implicitly has an 'any' type.
[tsl] ERROR in /<home>/vrm_loader/babylon-vrm-loader/src/vrm-manager.ts(177,49)
      TS7006: Parameter 'index' implicitly has an 'any' type.
[tsl] ERROR in /<home>/vrm_loader/babylon-vrm-loader/src/vrm-manager.ts(183,23)
      TS2339: Property 'startsWith' does not exist on type 'string'.
[tsl] ERROR in /<home>/vrm_loader/babylon-vrm-loader/src/test/index.ts(107,22)
      TS2339: Property 'includes' does not exist on type 'string'.
[tsl] ERROR in /<home>/vrm_loader/babylon-vrm-loader/src/test/index.ts(108,22)
      TS2339: Property 'includes' does not exist on type 'string'.

With the change from "es5 " to "es7" in tsconfig.json, "yarn build" passed.

:tada: This PR is included in version 1.2.0 :tada:
The release is available on:

GitHub release
npm package (@latest dist-tag)

Your semantic-release bot :package::rocket:


Update README and CONTRIBUTUING guides

Update README and CONTRIBUTUING guides

Codecov Report

Merging #40 (3ee4bd3) into main (7fe8d90) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #40   +/-   ##
=======================================
  Coverage   95.98%   95.98%
=======================================
  Files           8        8
  Lines         722      722
=======================================
  Hits          693      693
  Misses         29       29

:mega: Codecov can now indicate which changes are the most critical in Pull Requests. Learn more


how to hide selectAll checkbox if there is no data

I get the feeling  like If there is no data available, no need to show select All checkbox .How we can implement ? @CuppaLabs  help me,Thanks in advance.

fixed. fix available in v2.10.0


Q: does the recording video support orientation ?

does the recording video record all videos in portrait or just the problem when i read it with the AVplayer it does not know if the video portrait or landscape ??

For the time being, all video is portrait to replicate Snapchat. I am looking into adding landscape but it would be in the near future
Andrew

Ok Thanks


add html

We can just wait to merge this file until the other file are pushed. So we can still synchronize the srcpath. In the other word we can always modify this index.html.

I changed the HTML file in my branch (the way how it should be). Just copy-paste what I wrote or merge the file.
Now you need to focus on each listener and handler and import the listeners in the init.js file.
The HTML file should works directly if everything is done correctly. fingers crossed!


feat: Disable BizCharts telemetry

Prevents the loading of a pixel for diagnostics.
As mentioned on the forum: https://safenetforum.org/t/crust-test-nat-traversal-join-the-live-test/25799/122?u=bzee
And as an issue on BizCharts: https://github.com/alibaba/BizCharts/issues/143
Not sure if the solution is in the right place.

Thanks @b-zee. We have fixed the same at our end too.


Accordion tweaks

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Timo Laak seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

:tada: This PR is included in version 3.1.6 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


RFE: Add support for OpenTelemetry metrics and tracing

Description
This RFE (Request for Enhancement) is to add the ability for codecarbon to allow collection of OpenTelemetry traces and correlation with codecarbon metrics. See
https://opentelemetry.io/docs/specs/otel/metrics/
This will allow existing codecarbon users to view codecarbon metrics alongside their regular observability tools such as Jaeger, Honeycomb etc. (thanks to the OpenTelemetry standard). This allows per-trace carbon tracking with additional context in addition to trend analysis.
Proposed Implementation
The proposed implementation is to follow a similar pattern to the Prometheus feature:

Add save_metrics_to_otel and save_traces_to_otel flags to the track_emissions decorator. These flags will govern if full traces are collected along with metrics and persisted in the OpenTelemetry collector.
Allow configuration of OTel Collector

I will add a more detailed technical proposal and MR if you agree this is a feature worth implementing. I'm very open to discussion and ideas, and look forward to contributing in this space.

Thanks, that's a good idea, I wasn't aware of OpenTelemetry. Feel free to propose a MR, we will be glad to help you.
For Prometheus we work in push mode, could it be the same for OpenTelemetry ?

Hello! A lot of work have been done to integrate into logfire, by building some prometheus / otel-like metrics. We still didn't added the push mode, however it should be easier now.
Are you still interested into this feature ?


AX6000 not working

I have a TP-link AX6000 and tried to use this integration, but it isn`t working.
I got this error:
Logger: homeassistant.config_entries
Source: config_entries.py:406
First occurred: 15:24:05 (1 occurrences)
Last logged: 15:24:05
Error setting up entry http://<IP_ADDRESS> for tplink_router
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 406, in async_setup
result = await component.async_setup_entry(hass, self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/tplink_router/init.py", line 34, in async_setup_entry
username = config_entry.data[CONF_USERNAME]
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^
KeyError: 'username'

@diogo-madeira Please, dont forget to give a star to the repo :)


Update boilerplate submodule

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/do-doc-build


fix: changeset minor version

closes #2977
looks like changeset has some weird logic for resolving peer dependencies: https://github.com/changesets/changesets/issues/1279
we can work around this by:

enabling experimental peer dep flag in changeset
specifying a wider version range for workspace peer deps

I would be happy to make a repro for the changeset repo but I am not convinced it'll ever get addressed given the git history/activity, so going to punt on this effort for now


Add grpc management server

Purpose

Create GRPC server to receive adapter messages.

Creating a new PR for this, hence closing this one.


double-beep: Watch +972-54-4809343

double-beep requests the watch of the watch_number +972-54-4809343. See the MS search here and the Stack Exchange search here.

Approved by tripleee in Charcoal HQ


Docs edits (GSoD)

Revised punctuation, resolved minor stylistic issues, and rewrote certain sentences to ensure consistency in the docs.

Reference issue

What does this implement/fix?
Punctuation, stylistic issues, several convoluted sentences.
Additional information

thanks @mkg33!
You probably shouldn't go back and do older release notes, because those were published in various avenues as an announcement and are now more a historical record. So we don't really want to go back in time and fix them, except things like broken links.

Had a quick scan, mostly looks good and useful. One suggestion: please reflow lines of text to <80 characters if there's major changes in line length. We try to keep it that way because diffs are nicer to read when the text is changed again, and because it fits better in editor windows without scrolling or wrapping. Note, if it goes from, e.g., 79 char to 84 char then don't worry about it. But I see lines that are 100+ chars.

Thanks for the feedback @rgommers: I thought that revising the release notes was pushing it a little but then decided to have a look at them because they were included in the reference guide. I'll stick to the characters convention and format the lines accordingly.

@mkg33 it's probably not necessary to push every commit separately. If you bunch them up a little and push at once, then CI only runs on the last commit. That way it doesn't block CI resources for other PRs.
Also, we can review and merge at any point that makes sense to you, and then do more in a separate PR.


[Q]: Change enumeration

If I recall correct;y, kaobook loads the paralist package. However, I cannot change enumeration in an enumerate environment. In  particular, \begin{enumerate}[(i)] ... \end{enumerate} returns an error. Thus, I would be grateful if you could tell me on which file need to look for in order to change the enumeration style

Problem solved. On the kao.sty you load the enumitem package, so I made the analogous adjustments


Make swift functions public

I may have accidentally submitted a previous merge request.  Ignore that one.
This set of changes modifies files in version3/swift to make it more consistent about which functions are public.  This change makes all init(), toString, toRawString, toBytes, fromBytes and the MODULUS variable public in all files.  When this library is compiled as a framework in XCode, it needs these functions to be public in order to access them.
There are probably other fns that should be public.  For example, add, mul, and div should probably always be public.

This PR seems to break Travis...

Fixed the runtime issues.

Not entirely happy with making so many functions public. But I guess it can't do any harm. However I will be adding this new section to the manual:-
\section{Creating your own API}
Although the AMCL distribution contains some example APIs (for ECDH/ECCSI/ECDSA, MPIN and BLS signature), for your own project you will want to create your own bespoke API. The BLS API provides a short simple model (see for example {\tt bls.cpp}, or {\tt BLS.java}). Basically you need to decide on the set of functions required to implement your API. Data is passed in and out of these functions using simple generic language-independent data types (like integers and strings), and byte arrays for the larger structures. For C and C++ an octet type is provided which provides a much safer way to communicate byte arrays than via primitive char'' strings. A benefit is that there will be no endianess'' issues for the end-user to worry about. This mechanism shields the internal AMCL functions from accidental misuse, and means that most AMCL functions can remain private'', with only the API functions providing public'' access. It is strongly recommended that users follow this model.


Expose voter state

In progress work for implementing #55 and supports https://github.com/paritytech/substrate/issues/4921

It looks like @octol hasn't signed our Contributor License Agreement, yet.

The purpose of a CLA is to ensure that the guardian of a project's outputs has the necessary ownership or grants of rights over all contributions to allow them to distribute under the chosen licence.
Wikipedia

You can read and sign our full Contributor License Agreement at the following URL: https://cla.parity.io
Once you've signed, please reply to this thread with [clabot:check] to prove it.
Many thanks,
Parity Technologies CLA Bot

[clabot:check]

I updated the tests in https://github.com/paritytech/substrate/pull/5375 so that now the check for background_rounds should be reliable


Reaching consensus on coloring choice

Let's discuss below each of our ideas and suggestions on how to choose colors for the statuses of nodes and links.
There are three colors needed: disconnected, true and false.

In my view, red is something "bad, false, error", green is "all good, true, signal" and black (grey) is "inactive, not connected"
With this in mind I propose the following: green for true, red for false, black for no signal

Why not just do color for signal, and no color (grey) when no signal

I support Máté's idea. We could do just 1 color as well, as Andrey suggested, but providing as much feedback as possible through simple shapes and colours are always handy in my opinion. Furthermore all the required code is done for supporting 3 colours.

I am not sure, if marking no signal with red is a good idea. Returning to Mate's comment, red is "bad", but no signal is not bad

In my view, red is something "bad, false, error", green is "all good, true, signal" and black (grey) is "inactive, not connected"
With this in mind I propose the following: green for true, red for false, black for no signal

In signals True is 1, False is 0. There is no third option

I think of it more like 1=True=green, 0=False=red, null=no signal=grey

The implementation has three options so we're not going to fuse "no value" with "false", it just wouldn't make sense. A port not connected does not equal a false evaluation.

I think of it more like 1=True=green, 0=False=red, null=no signal=grey

But signal is binary. If the node is False, then there is no signal.
Then again, False is not necessarily "bad" , and True is not necessarily "good". Using red and green may give a wrong message to the user. It would be better to do simple signal and no signal (blue and grey for example)

@AMIOL7 I do agree with the red and green analogy you say, but can you please understand that the model is NOT a boolean! It is an Optional(boolean), and it is implemented in the model that way. A missing value is neither true nor false.

If we decided to simply use boolean in the model, you'd be right, but we're not using that.

@AMIOL7 I do agree with the red and green analogy you say, but can you please understand that in the model the value is NOT a boolean! It is an Optional(boolean), and it is implemented in the model that way. A missing value is neither true nor false.

The model is Boolean. Optional is just used to handle missing value, but from the point of view of user and in the circuits, missing value is 0 as well as no signal
We don't have to represent everything we have in the model

@AMIOL7 I do agree with the red and green analogy you say, but can you please understand that in the model the value is NOT a boolean! It is an Optional(boolean), and it is implemented in the model that way. A missing value is neither true nor false.

The model is Boolean. Optional is just used to handle missing value, but from the point of view of user and in the circuits, missing value is 0 as well as no signal
We don't have to represent everything we have in the model

What are you talking about? If there is a node that can't be evaluated because one of the ports aren't connected, it carries over to every consecutive node. For example, an OR node with one connected input with true value, and one disconnected input should evaluate to true, but it doesn't! Try it for yourself!

@AMIOL7 I do agree with the red and green analogy you say, but can you please understand that in the model the value is NOT a boolean! It is an Optional(boolean), and it is implemented in the model that way. A missing value is neither true nor false.

The model is Boolean. Optional is just used to handle missing value, but from the point of view of user and in the circuits, missing value is 0 as well as no signal

We don't have to represent everything we have in the model

What are you talking about? If there is a node that can't be evaluated because one of the ports aren't connected, it carries over to every consecutive node. For example, an OR node with one connected input with true value, and one disconnected input should evaluate to true by your logic, but it doesn't! Try it for yourself!

In such case our simulation is incorrect, because OR should evaluate to true with one input

Yes. The problem is that we do not allow any input ports to be left out. That's why it gives false, even though IRL it should be true. But i think this just makes our claim more reasonable. Let alone being more user-friendly.  I don't think Andrey's idea is bad though. It pretty much is just about keeping it real vs being user-friendly.

@vismate you are the one who knows the most about our evaluation. Do you think we can fix it until the deadline?

Sure, its just the matter of changing one method, plus the eval logic of built in nodes. Though, I would not get rid of Optional right now, because all other code uses it. It could be removed later.

So whats our final decision about colors?  I'll implement the behavioral changes by tomorrow morning and I'd like the new colors be implemented by tomorrow night, as I'd like to start working on the documentation with screenshots.

I am sorry @AMIOL7 but I am taking the liberty of vetoing the changing of the implementation to only use two colors, unless someone else takes it upon themselves to refactor the view. I believe it is too late for us to be changing behavior like this, and with the time I have left that I can work on this project I can't guarantee that I can finish the change, and I don't want a large amount of unused code to be just hanging around. And anyways, the others have better things to do in the less than 48 hours left than figure out if the changes don't break tests or other functionality.
That being said, I think we'll close this having decided to use the colors: green for true, red for false, and grey for no information.


Change to validate when Cypress is doing Retry on a failed step

I got a scenario when it fails it tries again up to 3 times.
With this step, it was falling on the step, because it was undefined at that time.
Since we only require the screenshot once, when the whole test fails after all the tentatives I made the fix to check the number of tentatives configured by Cypress before trying to attach the screenshot.

I found that Cypress fixed the name issues on version 3.5.0 using the library Sanitize.
I change the code to apply the same principle and worked for both failed scenarios.

With the dot at the end of the test name
The other one with the ":" in the middle of the name.
Every other name without the two above continues to work just fine.

https://docs.cypress.io/guides/references/changelog#3-5-0

Hey @samuelpampolini yep I will try to look at this on the weekend.
On that note are you aware of the change of ownership of cypress-cucumber-preprocessor?
The new version includes screenshots on failed steps built in.
It may be beneficial for you to upgrade and no longer require this package... https://github.com/badeball/cypress-cucumber-preprocessor/issues/689

Thanks.
Yes, I saw it.
But for now, upgrade takes a lot of work, on the meanwhile I would like to have the screenshots attached.
On different projects here people need to execute more on after each hook.

I agree with your points and made the changes.
Please check again when you have time.
Thanks


Make stdbuild a cargo feature

Also invert the default feature / no std arrangement. The default
still uses std, but no_std now requires opt-in instead of opt-out.
This is work toward removing the shim in rustc.

This is green now, with the changes you requested.

I suppose, but won't that mean we can never get rid of the shim in rustc?
Anyway, done.
On Sep 12, 2017 00:11, "Alex Crichton"<EMAIL_ADDRESS>wrote:

@alexcrichton commented on this pull request.
In Cargo.toml
https://github.com/rust-lang/libc/pull/764#discussion_r138248018:

@@ -20,6 +20,7 @@ appveyor = { repository = "rust-lang-libs/libc" }
[features]
default = ["use_std"]
use_std = []
+stdbuild = []

Can this be avoided in this Cargo.toml? Ideally this isn't exported as
part of the public API
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/rust-lang/libc/pull/764#pullrequestreview-62016162,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABdsPKuRnmWoqQxh7fleK3FOwVqMOI11ks5shgR2gaJpZM4PT93Q
.

@bors: r+
AFAIK we have no path forward for using the libc crate as-is in rustbuild, we've got a long way to go to enable that.

:pushpin: Commit 8a7069f has been approved by alexcrichton

:hourglass: Testing commit 8a7069f91e4cc61d13c237975ac3972f920ec25e with merge 703ae4ff93aa6c91869a509dbb77111266de7242...

:sunny: Test successful - status-appveyor, status-travis
Approved by: alexcrichton
Pushing 703ae4ff93aa6c91869a509dbb77111266de7242 to master...


Fix a false positive for Style/NilComparison without receiver and EnforcedStyle: comparison

This would previously show an offense and get into an infinite loop during correction.

Before submitting the PR make sure the following are checked:

[x] The PR relates to only one subject with a clear title and description in grammatically correct, complete sentences.
[x] Wrote good commit messages.
[x] Commit message starts with [Fix #issue-number] (if the related issue exists).
[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[x] Added tests.
[x] Ran bundle exec rake default. It executes all tests and runs RuboCop on its own code.
[x] Added an entry (file) to the changelog folder named {change_type}_{change_description}.md if the new code introduces user-observable changes. See changelog entry format for details.

This is broken on prism 0.24. I'm assuming this is the same as all the other tests that have this comment. I confirmed that the test passes against prism main.


Geolocations say:  Unable to retrieve location PERMISSION DENIED

<EMAIL_ADDRESS>navigator.geolocation does not seem to work. I've ensured I am selecting ALLOW in the simulator, and I've set the custom cords to be Lat: 55.02  Lng: -1.42  but still getting the error PERMISSION DENIED
It also appears that all my linkages are correct:

https://facebook.github.io/react-native/docs/geolocation.html#content - "/!\ ATTENTION /!\ You need to add NSLocationWhenInUseUsageDescription key in Info.plist to enable geolocation, otherwise it's going to fail silently! !/ !/" - did you do this?

We should probably have the native module check whenever NSLocationWhenInUseUsageDescription is set and show warning / redbox. Anyone wants to send a quick PR? :)

@frantic - on it, PR coming!

@iDVB - confirmed that with custom location set and NSLocationWhenInUseUsageDescription configured, this works:

Looks like that value is indeed set.

BTW, the code I'm using is from this tutorial.

@iDVB - that happened to me and then I went into Debug > Location and chose Apple, pressed CMD+r to reload and it worked. Then switching to a custom location worked too, after that. Let me know if that helps!

WORKS! Kinda fiddly setup though. Not even sure what fixed it as I did, multiple refreshes, restarts of the Simulator and swapping the location from custom to Apple and back.
Thanks for the help.

I also keep getting "permission denied" even with NSLocationWhenInUseUsageDescription in the Info.plist.

Restarting the simulator helped me fix this issue

navigator.geolocation.watchPosition through permission denied in Android OS>5

Problem still occur for me.
NSLocationAlwaysUsageDescription & NSLocationWhenInUseUsageDescription are set

The info.plist need NSLocationAlwaysAndWhenInUseUsageDescription & NSLocationAlwaysUsageDescription aswell


[Figma] Additional refactoring

Address comments on:

[x] Link large
[x] List large
[ ] Tabs extended (x4)
[x] Tag link
[ ] Video player captions

...and others as needed

Moving Tabs extended updates and Video player caption updates to Sprint 13


Admin REST API resetCursorOnPosition endpoint missing position parameter in docs

Describe the bug
http://pulsar.apache.org/en/admin-rest-api/#operation/resetCursorOnPosition does not describe how to actually supply the position.
Additional context
Add any other context about the problem here.

@grantwwu The document has now been added. Does this problem still exist? If there are no problems, we will close this issue.

@congbobo184 could you please help provide the link/PR for the added document? Thanks.

@congbobo184 do you refer to this doc (https://pulsar.apache.org/admin-rest-api/?version=2.8.0&apiversion=v2#operation/resetCursor) ?

https://pulsar.apache.org/admin-rest-api/?version=2.8.0&apiversion=v2#operation/resetCursorOnPosition  this is right


Buffer output of running step, transmit pages

at the moment, every single update of a running step (i.e. every line out output) triggers an update to the UI. The result is that the transmission of large chunks of output (e.g. result of a large output step) takes a long time (i.e. longer than the step itself).
this could be solved by dropping updates and not sending intermediate updates if a newer one is available

output is updated only once per second, thus limiting the amount of network traffic sent to the client.
this solution should be evaluated

todo: use async.core mechanisms (throttling channel) instead of half baked own solution


[stable/openvpn] systemd-resolved, ip_forward, nodeport, ubuntu fixes

Signed-off-by: Jon Stelly<EMAIL_ADDRESS>
What this PR does / why we need it:
- Added routing / ip_forward issue and workaround to readme
- Added Ubuntu systemd-resolved and vpn gui issues to readme
- Move openvpn.conf to openvpn.serverConf for custom lines written to the server config file
- Add openvpn.clientConf for custom lines written to the client config file
- Major version bump for the openvpn.conf breaking change
- If chart is deployed using NodePort service, have clients connect to NodePort instead of externalPort

Which issue this PR fixes
(optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged)

fixes #

Special notes for your reviewer:
@jasongwartz and @dippynark, let me know if anything needs to be changed.
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x ] DCO signed
[ x] Chart Version bumped
[ x] Variables are documented in the README.md
[x ] Title of the PR starts with chart name (e.g. [stable/chart])

/assign @dippynark

Thanks @jonstelly for the contribution, looks to add some good functionality. Unfortunately I am on holiday from today without my laptop - will be back on 26th August so will take a proper look/test asap

/ok-to-test

Looks good, thanks for the updates!
Can you also read through https://github.com/helm/charts/pull/16599 and see if you think any of your changes would be impacted? I don't believe so, but that's a pretty major upcoming change (will also be a major version bump).

Can you also read through #16599 and see if you think any of your changes would be impacted?

Is that PR in a state where I should be able to merge it with my changes and test?  If so I'll merge that and the ip forwarding and my PR and give it a test today or tomorrow.

Yeah, you should be able to make a temp branch with both those PRs as well as this PR and it will (hopefully) work, afaik both of those PRs are in a working state.
That's a very good point about the encryption level. If that's not addressed by the change in openvpn version, I'd be happy to see a follow-up PR that changes the default.

@jonstelly sorry for the radio silence. we'll try and get the PR about the ipv4 init container merged and then give this one more review, and we should be nearly ready to go.

Not a problem, I've been using the chart from my branch with the 3 PRs merged and everything has been running fine.  Will be happy to see it when it lands in the official chart but there's no rush from my end.  Thanks for the update.

bump...

bump...

@jonstelly sorry again for the pause. The author of https://github.com/helm/charts/pull/14986 hasn’t been responding (and your PR depends on those changes). Would you like to bring the changes from #14986 into this branch? If you do that, fix the conflict in the README, and update the chart version, we’re good to go AFAIK.

I just merged that pull request... The merge was pretty simple but I'm seeing a script error initializing.  I'm a bit busy with holiday stuff but I'll dig into that this week, hopefully have something ready to merge next week.

Everything is working for me.  My issue from yesterday was a problem with the kind cluster I created, the storage class had some issue so the volume was getting mounted read-only instead of read-write.  Easyrsa didn't like that.
I think this is good to go.

I just tested this branch in favour of my own PR #20019 after @jasongwartz pointed this one out.
I was able to get it to work fine, but I did run into one minor issue; if I specify a cipher, no redirectGateway and no clientConf in the values and then use the script to generate a client cert, the  is put on the same line as the cipher, making the config file invalid.
If I look at the configmap generated, I see this;
cipher AES-256-CBC<key>
`cat ${EASY_RSA_LOC}/pki/private/$1.key`
</key>

As you can see,  is not where it should be. I think this may be an issue with mixed line endings or something.
An easy workaround is to specify a clientConf with a blank line, but that's not ideal.

Thanks for reporting that @gboor.  I made this change to not eat the newlines for each conditional config value.  So if none of these settings are present there will be a few blank lines in the newClientCert.sh script and generated *.ovpn file, but that's not a problem and ensures the openvpn lines each end up on a separate line if they are specified.

/approve
/lgtm
Thanks everyone who worked on this, especially @jonstelly, for your patience!


Better index format

Issues in clangd:

https://github.com/clangd/clangd/issues/587
https://github.com/clangd/clangd/discussions/1206
https://github.com/clangd/clangd/issues/1340

Some requests, e.g., go to definition and find reference, actually require cross-translation unit information. However, it's impossible to compile every source file in the CDB (compilation database) when the program starts, as this would consume an incredible amount of memory and time. A possible solution is to pre-index the information, organizing the required data into a specialized format to support fast lookup. Therefore, a crucial question is how to choose an appropriate indexing format that achieves a good balance among functionality, memory usage, and lookup speed.

The first one is the indexing system in clangd.

Include graph is already recorded in index, so tools like reclient are not very useful for clice. Besides, only searching files including the headers that the declaration is located is not accurate. User may declare a symbol separately and not include the header. clice may provides a option to decide related behavior.
By the way, it's better to use English in issues. If it's convenient, you can use LLM to translate the above comment. Thank you! ❤


Do not consider warning related to string overread as error.

BUG=https://b.corp.google.com/issues/258039184

@mergifyio refresh


Recorder with external SQL server - "Database not ready" error

Home Assistant release (hass --version): 0.38.4
Python release (python3 --version): Python 3.5.2
Component/platform: Recorder
Description of problem:
After configuring the Recorder with the "db_url", the following error message appears in the log:
[homeassistant.components.recorder] Database not ready, waiting another 10 seconds.
No data written or read from the database
Expected:
Uploading dat to the database and read them.
Problem-relevant configuration.yaml entries and steps to reproduce:

recorder:
db_url<EMAIL_ADDRESS>
Additional info:
recorder is a MySQL server, the user name,password db read/write is working outside HA
More cases in the forum:
https://community.home-assistant.io/t/0-38-1-database-not-ready/11724
Possible solution
The HA not checking (and not installing) the required sql python package (in my case mysqlclient).
Temporary fix could be the

pip3 install mysqlclient

It could be great, if the HA could install the proper component "on-the-fly" after the start.

This will likely be fixed by #6167.

Installing the mysqlclient is not in scope of the recorder and must currently be handled by an installer or the user since it requires compiling on certain platforms. Preferably this should NOT be installed in deps, but in the virtual environment, since deps gets nuked on each upgrade.
I suspect SQLAlchemy throws an uncaught exception on the recorder thread and this message is generated by other processes blocking on the recorder.
Since #4614 these will increase the timers and throw proper exceptions, but the root cause will still be hidden. Will propose a possible fix.


Remove version: eTeks.SweetHome3D version 7.1

[Automated] It returns code over 400 in all urls
Microsoft Reviewers: Open in CodeFlow

Close with reason: URL works;


Doc is missing new files types that are detected.

Expected Behavior

Doc should include mjs and cjs files in the list of files that may be detected.
Current Behavior

Add those to the doc
Possible Solution

Steps to Reproduce

Motivations

PR landed to fix, closing.


fix(home view): status bar safe area

This PR resolves ONYX-1347
Description
We noticed that the safe area wasn't in use on the new home view Screen component, thus allowing for content to appear behind the status bar:

This PR toggles the safe area on, and adjusts the placeholder accordingly:

Android
iOS

PR Checklist

[x] I have tested my changes on iOS and Android.
[x] I hid my changes behind a feature flag, or they don't need one.
[x] I have included screenshots or videos, or I have not changed the UI.
[x] I have added tests, or my changes don't require any.
[x] I added an app state migration, or my changes do not require one.
[x] I have documented any follow-up work that this PR will require, or it does not require any.
[x] I have added a changelog entry below, or my changes do not require one.

To the reviewers 👀

[ ] I would like at least one of the reviewers to run this PR on the simulator or device.

Changelog updates
Changelog updates

Cross-platform user-facing changes

Respect safe area top inset on new home view — Roop

iOS user-facing changes

Android user-facing changes

Dev changes

Need help with something? Have a look at our docs, or get in touch with us.

This PR contains the following changes:

Cross-platform user-facing changes (Respect safe area top inset on new home view — Roop)

  Generated by :no_entry_sign: dangerJS against c3c6bd0628e27598a200eac777b602f8a699ad25

This fix also seems to resolve the pull-to-refresh indicator issue on the home screen. 🙌


glitch and graphical problem

https://github.com/HimDek/yuzu-Early-Access-Launcher/assets/161940521/2a103cbe-632f-406f-ad19-693c67029534
This happened when i play this game on yuzu version 4176. So, can you solve this issue please as soon as possible?
<EMAIL_ADDRESS>Kind regards

This is not a repository for the emulatior but only the launcher.


[tw] Localize infrastructure as code for Traditional Chinese

Please describe why this term needs to be updated
Why this term needs to be updated? (briefly)
Localize IaC for Traditional Chinese
https://glossary.cncf.io/infrastructure-as-code/

@ydFu, sorry, I might get the wrong label issue. is there any way to transfer to lang/tw? thank you.

@ydFu, sorry, I might get the wrong label issue. is there any way to transfer to lang/tw? thank you.

Done, thank @chienfuchen32

@chienfuchen32
Please be careful when nominating tasks next time if you repeat them with others. Thank you.

@ydFu I see, I'll follow the task from slack channel next time. sorry for the inconvenience.

Get Merged,thank @chienfuchen32


torbrowser 9.5 unavailable

Describe the bug
trying https://dist.torproject.org/torbrowser/9.5/tor-browser-linux64-9.5_en-US.tar.xz
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
curl: (22) The requested URL returned error: 404 Not Found
error: cannot download tor-browser-linux64-9.5_en-US.tar.xz from any mirror

It looks like 9.5 has been removed and there is now only 9.5.{1,2,3} at https://dist.torproject.org/torbrowser/
To Reproduce
Steps to reproduce the behavior:

Try to install torbrowser

Expected behavior
Package installs
Additional context
Tested on NixOS with 20.03 and unstable.
Notify maintainers
@offline @matejc @doublec @thoughtpolice @joachifm @hax404 @cap
Metadata
$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 5.4.44, NixOS, 20.03.2304.9c42eb70cfd (Markhor)`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.3.6`
 - channels(root): `"nixos-20.03.2668.7c85b915892, nixos-unstable-20.09pre236419.a45f68ccac4"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

See #94200 #94019 that both would address this.

#94019  has been merged, closing ticket. Hopefully this will show up in a few days on unstable. If not, you can checkout from master branch.


converting string dates or epochs into ISODate

Hi,
How do I have the following fields converted into ISODate when inserted into mongo?
{ "timestamp" : "2018-10-01T17:17:04.117+0000" }
{ "timestamp" :<PHONE_NUMBER>222 }
We do not use AVRO format but plain JSON.
I think one solution is to use $setOnInsert defined in mongo. But I would like to solve this using only kafka-connect if possible.
Thanks!

Hi, maybe I can help you,
if data is plain Json you will get a mongodb document with a timestamp key as String.
Try using Json with explicit Schema in Kafka, something like this:
{
  "schema": {
    "type": "struct",
    "fields": [
      {
        "field": "key1",
        "type": "string"
      },

...other fields,

      {
         "field":"timestamp",
         "type": "int64",
         "name": "org.apache.kafka.connect.data.Timestamp",
         "version": 1
      }
                 ]
},
{
  "payload": {
     "key1":"value_for_key1",

      ...other payloads for fields,

     "timestamp":"1537375035222"
      }
}

check link: Kafka Connect Deep Dive – Converters and Serialization Explained