Command SkipChannel is failling

Summary:
SkipChannel commands seems to fail with response as failure instead of success when we execute.
Spec screenshot:

Screenshot and log:

skipchannel.txt

@lazarkov @chrisdecenzo

I've tested the master branch all is good now.
One terminal tab to run chip-tv-app:
➜  connectedhomeip git:(master) ./out/debug/standalone/chip-tv-app
One terminal tab to run chip-tool read command:
➜  connectedhomeip git:(master) out/debug/standalone/chip-tool channel skip-channel-request  1 1 1
Here's the response:
[1644278071841] [99515:1068681] CHIP: [EM] Received message of type 0x9 with protocolId (0, 1) and MessageCounter:449925 on exchange 47355i
[1644278071841] [99515:1068681] CHIP: [EM] Found matching exchange: 47355i, Delegate: 0x7ff731affec0
[1644278071841] [99515:1068681] CHIP: [EM] Rxd Ack; Removing MessageCounter:12886860 from Retrans Table on exchange 47355i
[1644278071841] [99515:1068681] CHIP: [EM] Removed CHIP MessageCounter:12886860 from RetransTable on exchange 47355i
[1644278071841] [99515:1068681] CHIP: [DMG] ICR moving to [ResponseRe]
[1644278071841] [99515:1068681] CHIP: [DMG] InvokeResponseMessage =
[1644278071841] [99515:1068681] CHIP: [DMG] {
[1644278071841] [99515:1068681] CHIP: [DMG] 	suppressResponse = false,
[1644278071841] [99515:1068681] CHIP: [DMG] 	InvokeResponseIBs =
[1644278071841] [99515:1068681] CHIP: [DMG] 	[
[1644278071841] [99515:1068681] CHIP: [DMG] 		InvokeResponseIB =
[1644278071841] [99515:1068681] CHIP: [DMG] 		{
[1644278071841] [99515:1068681] CHIP: [DMG] 			CommandStatusIB =
[1644278071841] [99515:1068681] CHIP: [DMG] 			{
[1644278071841] [99515:1068681] CHIP: [DMG] 				CommandPathIB =
[1644278071841] [99515:1068681] CHIP: [DMG] 				{
[1644278071841] [99515:1068681] CHIP: [DMG] 					EndpointId = 0x1,
[1644278071841] [99515:1068681] CHIP: [DMG] 					ClusterId = 0x504,
[1644278071841] [99515:1068681] CHIP: [DMG] 					CommandId = 0x3,
[1644278071841] [99515:1068681] CHIP: [DMG] 				},
[1644278071841] [99515:1068681] CHIP: [DMG]
[1644278071841] [99515:1068681] CHIP: [DMG] 				StatusIB =
[1644278071841] [99515:1068681] CHIP: [DMG] 				{
[1644278071841] [99515:1068681] CHIP: [DMG] 					status = 0x0,
[1644278071841] [99515:1068681] CHIP: [DMG] 				},
[1644278071841] [99515:1068681] CHIP: [DMG]
[1644278071841] [99515:1068681] CHIP: [DMG] 			},
[1644278071841] [99515:1068681] CHIP: [DMG]
[1644278071841] [99515:1068681] CHIP: [DMG] 		},
[1644278071841] [99515:1068681] CHIP: [DMG]
[1644278071841] [99515:1068681] CHIP: [DMG] 	],
[1644278071841] [99515:1068681] CHIP: [DMG]
[1644278071841] [99515:1068681] CHIP: [DMG] 	InteractionModelRevision = 1
[1644278071841] [99515:1068681] CHIP: [DMG] },
[1644278071841] [99515:1068681] CHIP: [DMG] Received Command Response Status for Endpoint=1 Cluster=0x0000_0504 Command=0x0000_0003 Status=0x0
[1644278071841] [99515:1068681] CHIP: [DMG] ICR moving to [AwaitingDe]
[1644278071841] [99515:1068681] CHIP: [EM] Sending Standalone Ack for MessageCounter:449925 on exchange 47355i
[1644278071841] [99515:1068681] CHIP: [IN] Prepared secure message 0x70000be58560 to 0x0000000000000001 (1)  of type 0x10 and protocolId (0, 0) on exchange 47355i with MessageCounter:12886861.
[1644278071841] [99515:1068681] CHIP: [IN] Sending encrypted msg 0x70000be58560 with MessageCounter:12886861 to 0x0000000000000001 (1) at monotonic time: 49726244 msec
[1644278071842] [99515:1068681] CHIP: [EM] Flushed pending ack for MessageCounter:449925 on exchange 47355i
[1644278071842] [99515:1068674] CHIP: [CTL] Shutting down the commissioner
[1644278071842] [99515:1068674] CHIP: [CTL] Shutting down the controller
[1644278071842] [99515:1068674] CHIP: [CTL] Shutting down the commissioner
[1644278071842] [99515:1068674] CHIP: [CTL] Shutting down the controller
[1644278071842] [99515:1068674] CHIP: [CTL] Shutting down the commissioner
[1644278071842] [99515:1068674] CHIP: [CTL] Shutting down the controller
[1644278071842] [99515:1068674] CHIP: [CTL] Shutting down the commissioner
[1644278071842] [99515:1068674] CHIP: [CTL] Shutting down the controller
[1644278071842] [99515:1068674] CHIP: [CTL] Shutting down the System State, this will teardown the CHIP Stack
[1644278071842] [99515:1068674] CHIP: [DL] Inet Layer shutdown
[1644278071842] [99515:1068674] CHIP: [DL] System Layer shutdown

@vivien-apple we need YAML support for "SkipChannel" command which is showing failure response when we execute, the above which lazarkov told its not related to YAML

@manjunathambiger23 It should work if you run the YAML against tv-app, no?  all-clusters-app does not have a working implementation of the TV clusters, and no one is planning to add one.


Base64 can not decode values including an uppercase A

When using the Base64.decode method, it fails when the encoded string contains an uppsercase A letter (e.g. minimal example I used biA=).  The error is
attempt to perform arithmetic on a nil value
on the line:
local v = map[a] * 0x40000 + map[b] * 0x1000 + map[c] * 0x40 + map[d]
The reason is, the first index of the default encoding is zero. The default decoding map is build by using TableUtils.invert on the encoding map. This then uses TableUtils.iterate to iterate over the table. Since its not a fixed length array it uses ipairs to iterate which starts at index 1. So the default decoding map doesn't include a value for the letter A.

Sorry, https://github.com/Benjamin-Dobell/ge_tts/commit/8e3f9fd087671bb3a2638d6a8710216a385d4807 was a lot more breaking than I intended!


🐛 Bug Report: Realtime ws unsubscribe does not work as expected

👟 Reproduction steps
unsubscribe does not work as expected for the following code block
  startListener() {
    if (!this.listenerFn) {
      this.listenerFn = this.notification.connect();
    }
  }

  unsubscribeListener() {
    // Stop listening to notifications
    if (this.listenerFn) {
      this.listenerFn();
      console.log('Notification Service stopped');
    }

doc ref:
import { Client } from "appwrite";

const client = new Client()
    .setEndpoint('https://cloud.appwrite.io/v1')
    .setProject('<PROJECT_ID>');

const unsubscribe = client.subscribe('files', response => {
    // Callback will be executed on changes for all files.
    console.log(response);
});

// Closes the subscription.
unsubscribe();

demo video:
https://github.com/appwrite/sdk-for-web/assets/3280475/825ae55c-05c8-4d75-8f15-35b680926881
👍 Expected behavior
it should close the websocket totally. i can see the network tab of inspector
👎 Actual Behavior
when i call unsubscribe, it doesnt trigger to and after logout it continues to listen.
🎲 Appwrite version
Different version (specify in environment)
💻 Operating system
MacOS
🧱 Your Environment
appwrite version 1.4.13
sdk for web "appwrite": "^13.0.0",
👀 Have you spent some time to check if this issue has been raised before?

[X] I checked and didn't find similar issue

🏢 Have you read the Code of Conduct?

[X] I have read the Code of Conduct

Related with #40

@behics, thanks for creating this issue! 🙏🏼 Since we already have https://github.com/appwrite/appwrite/issues/7584. It would be good to just use that 1 issue. Please make sure to add a 👍🏼 to that issue.


German Translation is missing

I can do that until weekend – if nobody is faster than me.

If I create the template file, can you update it into German?  I just use Google but its a lot faster for a german speaker to translate.

I have added the template, I will update the string shortly

Thx

I downloaded "translations.php" and contribute German Sentences, soon.

I did a quick test with the patch in the master branch:

Works fine!

And I haven't a clue how to do a Pull Request for the patch.


Trouble with acute accent in version 1.09

Aftter a while of writting in spanish acute accents stop working, so for example if I want to write "ó,á,í" or other characters nothing appears written on the screen.
This issue is being fixed rebooting Atom.

Can you reproduce this in the latest version of Atom? (1.0.15)

helo,
I'm able to write letters with accent as described in this ticket but, when using the search function it does not work. Even with the accent or not the search feature cannot find it. IT should be able to get close to the word at least if put most of the word at least. EX. configuración if I search for configu or the whole word the search does not work.

never mind the last comment. It works now :) you can write with accents and search for words that have it.

Great to hear @chagara!
I'm going to close this out – @ctala feel free to comment if you run into this again!


Oncall: 2023-06-05

The Oncall is responsible for releasing a new version of CiviForm on Wednesday during their rotation and general upkeep through their rotation. This is an aid for each rotation, but the docs are the source of truth.
Rotations begin each Monday, with the release happening on Wednesday.
Please check off all items at their appropriate times during your rotation.
Resources:

Oncall Guide
Release Guide

Task list:
Release

[x] Create a Draft Release by 12 PT Wed
[x] Contact Matthew Sprenke for QA on Slack
[ ] If Matthew is unavailable have the general team attempt a best-effort QA.
[x] After QA, publish the release
[x] Email release notes

General

[ ] Create an Oncall issue for the next rotation
[x] Check Security lists daily
[x] Check #ci Slack channel daily to monitor failed pushes
[x] Check Dependency updates once

Play framework posted about a couple of vulnerabilities later last week (https://groups.google.com/g/play-framework-security/c/vU1AugoBe8s):

CVE-2022-31018 - Denial of service when binding forms from JSON (affecting Play versions 2.8.3-2.8.15) - https://github.com/playframework/playframework/security/advisories/GHSA-v8x6-59g4-5g3w - Even though we use Form.bindFromRequest, I don't think we should be impacted, since we're not parsing a request body of type application/json. The impact would be OOM errors, so it may be good to double check for this in the logs
CVE-2022-31023 - Dev error stack trace leaking into prod (affecting Play versions up to and including 2.8.15) - https://github.com/playframework/playframework/security/advisories/GHSA-p9p4-97g9-wcrh - I don't think this should impact us either since we don't use the CORSFilter or CORSActionBuilder use the static object DefaultHttpErrorHandler

Added to slack so others are aware.


Provision Windows - Network Unreachable

We are provisioning a Windows server with custom specs.  The cloning works, the server is powered on with a disconnected network.  It seems like the customizations are then applied, and the vm is rebooted.  After it restarts, the network in vpshere shows 'connected', after a few seconds the hostname will show in vpshere and the command line will say wnexttest2 is now ready, but vpshere shows no ip yet.  The provisioning then fails with Errno::ENETUNREACH Network is unreachable - connect(2) for "<IP_ADDRESS>" port 5985 (http://<IP_ADDRESS>:5985).  A few seconds later and vpshere shows a 169.x.x.x ip address.  Then, a minute or so later it shows the actual ip address we set in the customization.  A linux provisioning works fine, just this issue with Windows.  Also, once the vm shows the correct ip, if i re-run the provisioning...it will bootstrap it fine.
    - creating machine wnexttest2 on vsphere://xxx.net/sdk?use_ssl=true&insecure=true
    -   start_timeout: 600
    -   create_timeout: 600
    -   ready_timeout: 1000
    -   use_linked_clone: false
    -   customization_spec: {:org_name=>"XXX", :time_zone=>"America/New_York", :win_time_zone=>35, :product_id=>"xxxxx-xxxxx-xxxxx-xxxxx-xxxxx", :ipsettings=>{:ip=>"<IP_ADDRESS>", :subnetMask=>"<IP_ADDRESS>", :gateway=>["<IP_ADDRESS>"], :dnsServerList=>["<IP_ADDRESS>", "<IP_ADDRESS>"]}, :domain=>"local", :hostname=>"wnexttest2"}
    -   ssh: {:paranoid=>false, :user=>"xxx", :password=>"xxx"}
    -   vm_folder: "Dev Env/DevOps/Next"
    -   datacenter: "powerdms.net"
    -   datastore: "vm_vol_1"
    -   resource_pool: "hq"
    -   template_folder: "Templates"
    -   template_name: "win2k12base"   **This is Windows 2012 R2 with all latest updates applied**
    -   network_name: ["VLAN_202_PDMSSvr"]
    -   num_cpus: 2
    -   memory_mb: 4096
    - finding networks...
    - network: VLAN_202_PDMSSvr is a Network
    - changing template nic for VLAN_202_PDMSSvr
    - customizing wnexttest2               with static IP <IP_ADDRESS>
    - customizing wnexttest2 with /
                  dynamic IP and DNS: ["<IP_ADDRESS>", "<IP_ADDRESS>"]

Here are my chef gem versions when running chef gem list:
chef (12.4.1)
chef-config (12.4.1)
chef-dk (0.7.0)
chef-provisioning (1.4.0, 1.3.0)
chef-provisioning-aws (1.3.1)
chef-provisioning-azure (0.3.2)
chef-provisioning-fog (0.13.2)
chef-provisioning-vagrant (0.9.0)
chef-provisioning-vsphere (0.8.1)
chef-vault (2.6.1)
chef-zero (4.2.3, 1.5.6)

The template is a Windows 2012 R2 with all the latest updates and the latest VM tools installed.  Is there something else that needs to be setup on the template maybe?

I've also tried increasing all 3 timeouts to 2000.

Yes you are probably missing some winrm setup in the template:
winrm set winrm/config/client/auth '@{Basic="true"}'
winrm set winrm/config/service/auth '@{Basic="true"}'
winrm set winrm/config/service '@{AllowUnencrypted="true"}'

Sorry, just saw your response.  Seems like the 3 you mentioned are all set correctly.  And like I said, it will work when I re-run the provisioning once the server is created.

Hmm. Hard to say why this is. You might try connecting via winrm from a different session during this same time just to see if winrm connectivity is working.

This seems to have fixed itself either via an upgrade, we also greatly shrunk our base image size, and made bunch of changes to our vm infrastructure networking.  Either way, thx!


After installation/start of using O365 integration i get multiple errors in log

After I installed the O365 integration I get multiple error in my logs, multiple times a day, even while it seems the the integration is working, I only use it for my Calendar Events of my Microsoft Outlook account, and have only basic configuration.
Any suggestion what I can/need to do to make this stop happening?
Logger: homeassistant.helpers.entity
Source: helpers/entity.py:950
First occurred: 01:53:47 (6 occurrences)
Last logged: 06:15:42

Update for calendar.cam4_agenda_cam4 fails
Update for calendar.feestdagen_in_nederland_cam4 fails
Traceback (most recent call last):
  File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 715, in urlopen
    httplib_response = self._make_request(
                       ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 467, in _make_request
    six.raise_from(e, None)
  File "<string>", line 3, in raise_from
  File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 462, in _make_request
    httplib_response = conn.getresponse()
                       ^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/http/client.py", line 1423, in getresponse
    response.begin()
  File "/usr/local/lib/python3.12/http/client.py", line 331, in begin
    version, status, reason = self._read_status()
                              ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/http/client.py", line 300, in _read_status
    raise RemoteDisconnected("Remote end closed connection without"
http.client.RemoteDisconnected: Remote end closed connection without response

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 486, in send
    resp = conn.urlopen(
           ^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 799, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 550, in increment
    raise six.reraise(type(error), error, _stacktrace)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/urllib3/packages/six.py", line 769, in reraise
    raise value.with_traceback(tb)
  File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 715, in urlopen
    httplib_response = self._make_request(
                       ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 467, in _make_request
    six.raise_from(e, None)
  File "<string>", line 3, in raise_from
  File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 462, in _make_request
    httplib_response = conn.getresponse()
                       ^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/http/client.py", line 1423, in getresponse
    response.begin()
  File "/usr/local/lib/python3.12/http/client.py", line 331, in begin
    version, status, reason = self._read_status()
                              ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/http/client.py", line 300, in _read_status
    raise RemoteDisconnected("Remote end closed connection without"
urllib3.exceptions.ProtocolError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 950, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1293, in async_device_update
    await self.async_update()
  File "/config/custom_components/o365/calendar.py", line 300, in async_update
    await self.data.async_update(self.hass)
  File "/config/custom_components/o365/calendar.py", line 659, in async_update
    results = await self.async_o365_get_events(
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/o365/calendar.py", line 556, in async_o365_get_events
    events = await self._async_calendar_schedule_get_events(
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/o365/calendar.py", line 617, in _async_calendar_schedule_get_events
    return await hass.async_add_executor_job(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/O365/calendar.py", line 1797, in get_events
    response = self.con.get(url, params=params)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/O365/connection.py", line 898, in get
    return self.oauth_request(url, 'get', params=params, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/O365/connection.py", line 887, in oauth_request
    return self._internal_request(self.session, url, method, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/O365/connection.py", line 802, in _internal_request
    if self.refresh_token() is False:
       ^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/O365/connection.py", line 699, in refresh_token
    self.session.refresh_token(
  File "/usr/local/lib/python3.12/site-packages/requests_oauthlib/oauth2_session.py", line 432, in refresh_token
    r = self.post(
        ^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post
    return self.request("POST", url, data=data, json=json, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/requests_oauthlib/oauth2_session.py", line 521, in request
    return super(OAuth2Session, self).request(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 501, in send
    raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))

This error originated from a custom integration.

Logger: homeassistant
Source: custom_components/o365/calendar.py:617
integration: Office 365 (documentation, issues)
First occurred: 04:13:11 (5 occurrences)
Last logged: 06:28:09

Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 715, in urlopen
    httplib_response = self._make_request(
                       ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 467, in _make_request
    six.raise_from(e, None)
  File "<string>", line 3, in raise_from
  File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 462, in _make_request
    httplib_response = conn.getresponse()
                       ^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/http/client.py", line 1423, in getresponse
    response.begin()
  File "/usr/local/lib/python3.12/http/client.py", line 331, in begin
    version, status, reason = self._read_status()
                              ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/http/client.py", line 300, in _read_status
    raise RemoteDisconnected("Remote end closed connection without"
http.client.RemoteDisconnected: Remote end closed connection without response

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 486, in send
    resp = conn.urlopen(
           ^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 799, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 550, in increment
    raise six.reraise(type(error), error, _stacktrace)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/urllib3/packages/six.py", line 769, in reraise
    raise value.with_traceback(tb)
  File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 715, in urlopen
    httplib_response = self._make_request(
                       ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 467, in _make_request
    six.raise_from(e, None)
  File "<string>", line 3, in raise_from
  File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 462, in _make_request
    httplib_response = conn.getresponse()
                       ^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/http/client.py", line 1423, in getresponse
    response.begin()
  File "/usr/local/lib/python3.12/http/client.py", line 331, in begin
    version, status, reason = self._read_status()
                              ^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/http/client.py", line 300, in _read_status
    raise RemoteDisconnected("Remote end closed connection without"
urllib3.exceptions.ProtocolError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/calendar/trigger.py", line 255, in _handle_refresh
    self._events.extend(await self._fetcher(self._timespan))
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/calendar/trigger.py", line 133, in async_get_events
    active_events = await fetcher(offset_timespan)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/calendar/trigger.py", line 115, in async_get_events
    return await entity.async_get_events(hass, timespan.start, end_time)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/o365/calendar.py", line 296, in async_get_events
    return await self.data.async_get_events(hass, start_date, end_date)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/o365/calendar.py", line 631, in async_get_events
    results = await self.async_o365_get_events(hass, start_date, end_date)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/o365/calendar.py", line 556, in async_o365_get_events
    events = await self._async_calendar_schedule_get_events(
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/o365/calendar.py", line 617, in _async_calendar_schedule_get_events
    return await hass.async_add_executor_job(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/O365/calendar.py", line 1797, in get_events
    response = self.con.get(url, params=params)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/O365/connection.py", line 898, in get
    return self.oauth_request(url, 'get', params=params, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/O365/connection.py", line 887, in oauth_request
    return self._internal_request(self.session, url, method, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/O365/connection.py", line 802, in _internal_request
    if self.refresh_token() is False:
       ^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/O365/connection.py", line 699, in refresh_token
    self.session.refresh_token(
  File "/usr/local/lib/python3.12/site-packages/requests_oauthlib/oauth2_session.py", line 432, in refresh_token
    r = self.post(
        ^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post
    return self.request("POST", url, data=data, json=json, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/requests_oauthlib/oauth2_session.py", line 521, in request
    return super(OAuth2Session, self).request(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 501, in send
    raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))

Logger: homeassistant.components.calendar
Source: helpers/entity_platform.py:1012
integration: Calendar (documentation, issues)
First occurred: 01:38:15 (96 occurrences)
Last logged: 06:32:16

Updating o365 calendar took longer than the scheduled update interval 0:01:00

Logger: O365.connection
Source: /usr/local/lib/python3.12/site-packages/O365/connection.py:838
First occurred: 00:43:08 (8 occurrences)
Last logged: 07:28:10

Client Error: 401 Client Error: Unauthorized for url: https://graph.microsoft.com/v1.0/me/calendars/AQMkADAwATNiZmYAZC03YmEzLTk2YmIALTAwAi0wMAoARgAAA-MMqasDrAtHnQgbr2JjCCQHABD9WdJWyYBIm2HB8Vb0nAMAAAIBBgAAABD9WdJWyYBIm2HB8Vb0nAMAAAGscR4AAAA=/calendarView?%24top=999&startDateTime=2024-05-22T02%3A56%3A56.282235%2B03%3A00&endDateTime=2024-05-22T03%3A11%3A57.282886%2B03%3A00&%24select=subject%2Cbody%2CseriesMasterId%2Cattendees%2Clocation%2Csensitivity%2Cstart%2CisAllDay%2Cend%2CshowAs%2Ccategories | Error Message: IDX14100: JWT is not well formed, there are no dots (.). The token needs to be in JWS or JWE Compact Serialization Format. (JWS): 'EncodedHeader.EndcodedPayload.EncodedSignature'. (JWE): 'EncodedProtectedHeader.EncodedEncryptedKey.EncodedInitializationVector.EncodedCiphertext.EncodedAuthenticationTag'. | Error Code:
Client Error: 401 Client Error: Unauthorized for url: https://graph.microsoft.com/v1.0/me/calendars/AQMkADAwATNiZmYAZC03YmEzLTk2YmIALTAwAi0wMAoARgAAA-MMqasDrAtHnQgbr2JjCCQHABD9WdJWyYBIm2HB8Vb0nAMAAAIBBgAAABD9WdJWyYBIm2HB8Vb0nAMAAAGscR4AAAA=/calendarView?%24top=999&startDateTime=2024-05-22T03%3A42%3A36.288436%2B03%3A00&endDateTime=2024-05-22T03%3A57%3A37.289486%2B03%3A00&%24select=subject%2Cbody%2CseriesMasterId%2Cattendees%2Clocation%2Csensitivity%2Cstart%2CisAllDay%2Cend%2CshowAs%2Ccategories | Error Message: IDX14100: JWT is not well formed, there are no dots (.). The token needs to be in JWS or JWE Compact Serialization Format. (JWS): 'EncodedHeader.EndcodedPayload.EncodedSignature'. (JWE): 'EncodedProtectedHeader.EncodedEncryptedKey.EncodedInitializationVector.EncodedCiphertext.EncodedAuthenticationTag'. | Error Code:
Client Error: 401 Client Error: Unauthorized for url: https://graph.microsoft.com/v1.0/me/calendars/AQMkADAwATNiZmYAZC03YmEzLTk2YmIALTAwAi0wMAoARgAAA-MMqasDrAtHnQgbr2JjCCQHABD9WdJWyYBIm2HB8Vb0nAMAAAIBBgAAABD9WdJWyYBIm2HB8Vb0nAMAAAGscR4AAAA=/calendarView?%24top=999&startDateTime=2024-05-22T04%3A57%3A36.292149%2B03%3A00&endDateTime=2024-05-22T05%3A12%3A37.293172%2B03%3A00&%24select=subject%2Cbody%2CseriesMasterId%2Cattendees%2Clocation%2Csensitivity%2Cstart%2CisAllDay%2Cend%2CshowAs%2Ccategories | Error Message: IDX14100: JWT is not well formed, there are no dots (.). The token needs to be in JWS or JWE Compact Serialization Format. (JWS): 'EncodedHeader.EndcodedPayload.EncodedSignature'. (JWE): 'EncodedProtectedHeader.EncodedEncryptedKey.EncodedInitializationVector.EncodedCiphertext.EncodedAuthenticationTag'. | Error Code:
Client Error: 401 Client Error: Unauthorized for url: https://graph.microsoft.com/v1.0/me/calendars/AQMkADAwATNiZmYAZC03YmEzLTk2YmIALTAwAi0wMAoARgAAA-MMqasDrAtHnQgbr2JjCCQHABD9WdJWyYBIm2HB8Vb0nAMAAAIBBgAAABD9WdJWyYBIm2HB8Vb0nAMAAAGscR4AAAA=/calendarView?%24top=999&startDateTime=2024-05-22T05%3A57%3A36.295683%2B03%3A00&endDateTime=2024-05-22T06%3A12%3A37.296064%2B03%3A00&%24select=subject%2Cbody%2CseriesMasterId%2Cattendees%2Clocation%2Csensitivity%2Cstart%2CisAllDay%2Cend%2CshowAs%2Ccategories | Error Message: IDX14100: JWT is not well formed, there are no dots (.). The token needs to be in JWS or JWE Compact Serialization Format. (JWS): 'EncodedHeader.EndcodedPayload.EncodedSignature'. (JWE): 'EncodedProtectedHeader.EncodedEncryptedKey.EncodedInitializationVector.EncodedCiphertext.EncodedAuthenticationTag'. | Error Code:
Client Error: 401 Client Error: Unauthorized for url: https://graph.microsoft.com/v1.0/me/calendars/AQMkADAwATNiZmYAZC03YmEzLTk2YmIALTAwAi0wMAoARgAAA-MMqasDrAtHnQgbr2JjCCQHABD9WdJWyYBIm2HB8Vb0nAMAAAIBBgAAABD9WdJWyYBIm2HB8Vb0nAMAAAGscR4AAAA=/calendarView?%24top=999&startDateTime=2024-05-22T07%3A26%3A56.296749%2B03%3A00&endDateTime=2024-05-22T07%3A41%3A57.297146%2B03%3A00&%24select=subject%2Cbody%2CseriesMasterId%2Cattendees%2Clocation%2Csensitivity%2Cstart%2CisAllDay%2Cend%2CshowAs%2Ccategories | Error Message: IDX14100: JWT is not well formed, there are no dots (.). The token needs to be in JWS or JWE Compact Serialization Format. (JWS): 'EncodedHeader.EndcodedPayload.EncodedSignature'. (JWE): 'EncodedProtectedHeader.EncodedEncryptedKey.EncodedInitializationVector.EncodedCiphertext.EncodedAuthenticationTag'. | Error Code:

This error originated from a custom integration.

Logger: homeassistant
Source: custom_components/o365/calendar.py:617
integration: Office 365 (documentation, issues)
First occurred: 00:43:08 (8 occurrences)
Last logged: 07:28:10

Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/calendar/trigger.py", line 255, in _handle_refresh
    self._events.extend(await self._fetcher(self._timespan))
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/calendar/trigger.py", line 133, in async_get_events
    active_events = await fetcher(offset_timespan)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/calendar/trigger.py", line 115, in async_get_events
    return await entity.async_get_events(hass, timespan.start, end_time)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/o365/calendar.py", line 296, in async_get_events
    return await self.data.async_get_events(hass, start_date, end_date)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/o365/calendar.py", line 631, in async_get_events
    results = await self.async_o365_get_events(hass, start_date, end_date)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/o365/calendar.py", line 556, in async_o365_get_events
    events = await self._async_calendar_schedule_get_events(
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/o365/calendar.py", line 617, in _async_calendar_schedule_get_events
    return await hass.async_add_executor_job(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/O365/calendar.py", line 1797, in get_events
    response = self.con.get(url, params=params)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/O365/connection.py", line 898, in get
    return self.oauth_request(url, 'get', params=params, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/O365/connection.py", line 887, in oauth_request
    return self._internal_request(self.session, url, method, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/O365/connection.py", line 848, in _internal_request
    raise HTTPError('{} | Error Message: {}'.format(e.args[0], error_message),
requests.exceptions.HTTPError: 401 Client Error: Unauthorized for url: https://graph.microsoft.com/v1.0/me/calendars/AQMkADAwATNiZmYAZC03YmEzLTk2YmIALTAwAi0wMAoARgAAA-MMqasDrAtHnQgbr2JjCCQHABD9WdJWyYBIm2HB8Vb0nAMAAAIBBgAAABD9WdJWyYBIm2HB8Vb0nAMAAAGscR4AAAA=/calendarView?%24top=999&startDateTime=2024-05-22T00%3A41%3A56.275276%2B03%3A00&endDateTime=2024-05-22T00%3A56%3A57.277043%2B03%3A00&%24select=subject%2Cbody%2CseriesMasterId%2Cattendees%2Clocation%2Csensitivity%2Cstart%2CisAllDay%2Cend%2CshowAs%2Ccategories | Error Message: IDX14100: JWT is not well formed, there are no dots (.).
The token needs to be in JWS or JWE Compact Serialization Format. (JWS): 'EncodedHeader.EndcodedPayload.EncodedSignature'. (JWE): 'EncodedProtectedHeader.EncodedEncryptedKey.EncodedInitializationVector.EncodedCiphertext.EncodedAuthenticationTag'.

Logger: urllib3.connectionpool
Source: /usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py:824
First occurred: 00:13:08 (31 occurrences)
Last logged: 07:58:08

Retrying (Retry(total=2, connect=3, read=2, redirect=None, status=None)) after connection broken by 'ProtocolError('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))': /v1.0/me/calendars/AQMkADAwATNiZmYAZC03YmEzLTk2YmIALTAwAi0wMAoARgAAA-MMqasDrAtHnQgbr2JjCCQHABD9WdJWyYBIm2HB8Vb0nAMAAAIBBgAAABD9WdJWyYBIm2HB8Vb0nAMAAAGscR4AAAA=/calendarView?%24top=999&startDateTime=2024-05-22T06%3A42%3A16.282279%2B03%3A00&endDateTime=2024-05-22T06%3A57%3A17.282606%2B03%3A00&%24select=subject%2Cbody%2CseriesMasterId%2Cattendees%2Clocation%2Csensitivity%2Cstart%2CisAllDay%2Cend%2CshowAs%2Ccategories
Retrying (Retry(total=2, connect=3, read=2, redirect=None, status=None)) after connection broken by 'ProtocolError('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))': /v1.0/me/calendars/AQMkADAwATNiZmYAZC03YmEzLTk2YmIALTAwAi0wMAoARgAAA-MMqasDrAtHnQgbr2JjCCQHABD9WdJWyYBIm2HB8Vb0nAMAAAIBBgAAABD9WdJWyYBIm2HB8Vb0nAMAAAGscR4AAAA=/calendarView?%24top=999&startDateTime=2024-05-22T06%3A27%3A36.296951%2B03%3A00&endDateTime=2024-05-22T06%3A42%3A37.297842%2B03%3A00&%24select=subject%2Cbody%2CseriesMasterId%2Cattendees%2Clocation%2Csensitivity%2Cstart%2CisAllDay%2Cend%2CshowAs%2Ccategories
Retrying (Retry(total=2, connect=3, read=2, redirect=None, status=None)) after connection broken by 'ProtocolError('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))': /v1.0/me/calendars/AQMkADAwATNiZmYAZC03YmEzLTk2YmIALTAwAi0wMAoARgAAA-MMqasDrAtHnQgbr2JjCCQHABD9WdJWyYBIm2HB8Vb0nAMAAAIBBgAAABD9WdJWyYBIm2HB8Vb0nAMAAAGscR4AAAA=/calendarView?%24top=999&startDateTime=2024-05-22T07%3A26%3A56.296749%2B03%3A00&endDateTime=2024-05-22T07%3A41%3A57.297146%2B03%3A00&%24select=subject%2Cbody%2CseriesMasterId%2Cattendees%2Clocation%2Csensitivity%2Cstart%2CisAllDay%2Cend%2CshowAs%2Ccategories
Retrying (Retry(total=2, connect=3, read=2, redirect=None, status=None)) after connection broken by 'ProtocolError('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))': /v1.0/me/calendars/AQMkADAwATNiZmYAZC03YmEzLTk2YmIALTAwAi0wMAoARgAAA-MMqasDrAtHnQgbr2JjCCQHABD9WdJWyYBIm2HB8Vb0nAMAAAIBBgAAABD9WdJWyYBIm2HB8Vb0nAMAAAGscR4AAAA=/calendarView?%24top=999&startDateTime=2024-05-22T07%3A27%3A36.299740%2B03%3A00&endDateTime=2024-05-22T07%3A42%3A37.300780%2B03%3A00&%24select=subject%2Cbody%2CseriesMasterId%2Cattendees%2Clocation%2Csensitivity%2Cstart%2CisAllDay%2Cend%2CshowAs%2Ccategories
Retrying (Retry(total=2, connect=3, read=2, redirect=None, status=None)) after connection broken by 'ProtocolError('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))': /v1.0/me/calendars/AQMkADAwATNiZmYAZC03YmEzLTk2YmIALTAwAi0wMAoARgAAA-MMqasDrAtHnQgbr2JjCCQHABD9WdJWyYBIm2HB8Vb0nAMAAAIBBgAAABD9WdJWyYBIm2HB8Vb0nAMAAAGscR4AAAA=/calendarView?%24top=999&startDateTime=2024-05-22T07%3A42%3A36.300780%2B03%3A00&endDateTime=2024-05-22T07%3A57%3A37.302356%2B03%3A00&%24select=subject%2Cbody%2CseriesMasterId%2Cattendees%2Clocation%2Csensitivity%2Cstart%2CisAllDay%2Cend%2CshowAs%2Ccategories

Whilst I can trap the connection error that so it is more graceful and just logs a warning, the JWT errors are more concerning (the JWT errors will be why you are getting not authorised). For me I get connection errors a few times a day, I just expect that since the internet connection and graph api cannot be guaranteed to be always respond.
The integration itself doesn't do any setup of the headers in which the JWT would be passed, that is handled by the python-o365 library. If the API is responding that the JWT is invalid, then to me the most likely cause is some corruption going on in the conversation with the api. I'm afraid this is outside my ability to debug and resolve.
To give an idea in the last two days I have:

15 x O365 errors where HA says it took longer than a minute (they all occurred in the same 20 minute period)
1 x O365 protocol error
1 x O365 Unauthorised error

I also have:

2 x Peloton connection error
1 x Homelink connection error
2 x Android connection errors
3 x Monta Timeout errors
1 x Sureha Timeout errors
7 x snmp errors

I tolerate the higher number of O365 it took longer than errors, because I see comments elsewhere about MS Graph API being variably slow. Also if you are running multiple calendars, and email and chat, presence, etc sensors then it is doing a lot of calls. I've tried to improve performance on that by parallel running where appropriate, but there is no getting away from the fact that it has to do a lot of work. Consequently I'm considering breaking the integration into multiple parts.
I appreciate you are only using calendars, and you are still getting errors. For my part I only retrieve 1 calendar. At my second site where I retrieve the same calendar (plus a todo list) I have 1 connection error and 1 took to long error, in the same 2 day period.
I'm sorry I can't be more helpful than that.

Just to add, you commented previously that your new events were taking time to come through. You will have seen that I said they update every 30 seconds. You might what to check if you have something else going on in your setup.

Just to add, you commented previously that your new events were taking time to come through. You will have seen that I said they update every 30 seconds. You might what to check if you have something else going on in your setup.

@RogerSelwyn the above was actually not a real error, I just did mix up 2 calendars/accounts and didn't see the event was not yet updated in the calendar linked to 0365, so logical it also not did update in HA.
For all the error in logs if I understand you correctly these are not real errors but probably caused by slower communication/updates and not related to any wrong settings or anything else similar that can be adjusted to stop these errors from hitting logs?

@RogerSelwyn  Ok I will try to exclude these errors from logs within configuration.yaml. any suggestion how to exclude O365 related errors only. I only know how to do this on logger level, but that would mean I have to exclude all logs by "homeassistant" what of course not is preferred also

@RogerSelwyn I did search google and all but can not find a solution, If I have the following log error
Logger: homeassistant
Source: custom_components/o365/calendar.py:617
integration: Office 365 (documentation, issues)
First occurred: 19:55:53 (5 occurrences)
Last logged: 21:10:53
How I exclude these from showing in logs? What I know or normal would do is set "logger homeassistant to level fatal... but this will exclude all logs with s lower rate as fatal logged by logger homeassistant ....  is there a way to just exclude logs regarding O365?

The latest beta release should treat them into O365, please try that release

@RogerSelwyn you mean version v4.8.0b3 that is available on HACS?

Yes and yes

I did install the Beta version, will keep you posted how it will go.
For now did put following in configuration as logger level
custom_components.o365: fatal
O365: fatal
homeassistant.components.calendar: Error
Will see how this goes 👍

@RogerSelwyn
Unfortunately seems that error still get logged by logger:homeassistant when using latest beta instead of put them into O365
Logger: homeassistant
Source: custom_components/o365/calendar.py:569
integration: Office 365 (documentation, issues)
First occurred: 23:22:52 (1 occurrences)
Last logged: 23:22:52
Error doing job: Task exception was never retrieved

Please post the full error, not just the summary from the top of the log

Sure here you go!
This error originated from a custom integration.
Logger: homeassistant
Source: custom_components/o365/calendar.py:569
integration: Office 365 (documentation, issues)
First occurred: 23:22:52 (1 occurrences)
Last logged: 23:22:52
Error doing job: Task exception was never retrieved
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/calendar/trigger.py", line 255, in _handle_refresh
self._events.extend(await self._fetcher(self._timespan))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/calendar/trigger.py", line 133, in async_get_events
active_events = await fetcher(offset_timespan)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/calendar/trigger.py", line 115, in async_get_events
return await entity.async_get_events(hass, timespan.start, end_time)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/o365/calendar.py", line 293, in async_get_events
return await self.data.async_get_events(hass, start_date, end_date)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/o365/calendar.py", line 634, in async_get_events
results = await self.async_o365_get_events(hass, start_date, end_date)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/o365/calendar.py", line 563, in async_o365_get_events
events = self._filter_events(events)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/o365/calendar.py", line 569, in _filter_events
lst_events = list(events)
^^^^^^^^^^^^
TypeError: 'NoneType' object is not iterable

This is a different issue, probably caused by trapping the previous error, which I’ll look to handle properly.

This is a different issue, probably caused by trapping the previous error, which I’ll look to handle properly.

OK 👍 .... If you need me to test any adjustments you make just give a shout...thank you very much!

You can try beta 4. To be honest, I doubt I will ever capture all errors in O365 logging. I tried removing all errors when I first started with HA. I gave up after a while...

@RogerSelwyn I still get the below two errors.
This error originated from a custom integration.
Logger: homeassistant
Source: custom_components/o365/calendar.py:623
integration: Office 365 (documentation, issues)
First occurred: 05:06:09 (3 occurrences)
Last logged: 07:21:09
Error doing job: Task exception was never retrieved
Traceback (most recent call last):
File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 715, in urlopen
httplib_response = self._make_request(
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 467, in _make_request
six.raise_from(e, None)
File "", line 3, in raise_from
File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 462, in _make_request
httplib_response = conn.getresponse()
^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/http/client.py", line 1423, in getresponse
response.begin()
File "/usr/local/lib/python3.12/http/client.py", line 331, in begin
version, status, reason = self._read_status()
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/http/client.py", line 300, in _read_status
raise RemoteDisconnected("Remote end closed connection without"
http.client.RemoteDisconnected: Remote end closed connection without response
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 486, in send
resp = conn.urlopen(
^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 799, in urlopen
retries = retries.increment(
^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 550, in increment
raise six.reraise(type(error), error, _stacktrace)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/urllib3/packages/six.py", line 769, in reraise
raise value.with_traceback(tb)
File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 715, in urlopen
httplib_response = self._make_request(
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 467, in _make_request
six.raise_from(e, None)
File "", line 3, in raise_from
File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 462, in _make_request
httplib_response = conn.getresponse()
^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/http/client.py", line 1423, in getresponse
response.begin()
File "/usr/local/lib/python3.12/http/client.py", line 331, in begin
version, status, reason = self._read_status()
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/http/client.py", line 300, in _read_status
raise RemoteDisconnected("Remote end closed connection without"
urllib3.exceptions.ProtocolError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/calendar/trigger.py", line 255, in _handle_refresh
self._events.extend(await self._fetcher(self._timespan))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/calendar/trigger.py", line 133, in async_get_events
active_events = await fetcher(offset_timespan)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/calendar/trigger.py", line 115, in async_get_events
return await entity.async_get_events(hass, timespan.start, end_time)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/o365/calendar.py", line 293, in async_get_events
return await self.data.async_get_events(hass, start_date, end_date)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/o365/calendar.py", line 637, in async_get_events
results = await self.async_o365_get_events(hass, start_date, end_date)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/o365/calendar.py", line 560, in async_o365_get_events
events = await self._async_calendar_schedule_get_events(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/o365/calendar.py", line 623, in _async_calendar_schedule_get_events
return await hass.async_add_executor_job(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/O365/calendar.py", line 1797, in get_events
response = self.con.get(url, params=params)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/O365/connection.py", line 898, in get
return self.oauth_request(url, 'get', params=params, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/O365/connection.py", line 887, in oauth_request
return self._internal_request(self.session, url, method, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/O365/connection.py", line 802, in _internal_request
if self.refresh_token() is False:
^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/O365/connection.py", line 699, in refresh_token
self.session.refresh_token(
File "/usr/local/lib/python3.12/site-packages/requests_oauthlib/oauth2_session.py", line 432, in refresh_token
r = self.post(
^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post
return self.request("POST", url, data=data, json=json, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/requests_oauthlib/oauth2_session.py", line 521, in request
return super(OAuth2Session, self).request(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request
resp = self.send(prep, **send_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send
r = adapter.send(request, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 501, in send
raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
AND
Logger: homeassistant.helpers.entity
Source: helpers/entity.py:950
First occurred: 02:38:42 (4 occurrences)
Last logged: 09:22:54
Update for calendar.cam4_agenda_cam4 fails
Traceback (most recent call last):
File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 715, in urlopen
httplib_response = self._make_request(
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 467, in _make_request
six.raise_from(e, None)
File "", line 3, in raise_from
File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 462, in _make_request
httplib_response = conn.getresponse()
^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/http/client.py", line 1423, in getresponse
response.begin()
File "/usr/local/lib/python3.12/http/client.py", line 331, in begin
version, status, reason = self._read_status()
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/http/client.py", line 300, in _read_status
raise RemoteDisconnected("Remote end closed connection without"
http.client.RemoteDisconnected: Remote end closed connection without response
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 486, in send
resp = conn.urlopen(
^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 799, in urlopen
retries = retries.increment(
^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/urllib3/util/retry.py", line 550, in increment
raise six.reraise(type(error), error, _stacktrace)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/urllib3/packages/six.py", line 769, in reraise
raise value.with_traceback(tb)
File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 715, in urlopen
httplib_response = self._make_request(
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 467, in _make_request
six.raise_from(e, None)
File "", line 3, in raise_from
File "/usr/local/lib/python3.12/site-packages/urllib3/connectionpool.py", line 462, in _make_request
httplib_response = conn.getresponse()
^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/http/client.py", line 1423, in getresponse
response.begin()
File "/usr/local/lib/python3.12/http/client.py", line 331, in begin
version, status, reason = self._read_status()
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/http/client.py", line 300, in _read_status
raise RemoteDisconnected("Remote end closed connection without"
urllib3.exceptions.ProtocolError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 950, in async_update_ha_state
await self.async_device_update()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1293, in async_device_update
await self.async_update()
File "/config/custom_components/o365/calendar.py", line 297, in async_update
await self.data.async_update(self.hass)
File "/config/custom_components/o365/calendar.py", line 665, in async_update
results = await self.async_o365_get_events(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/o365/calendar.py", line 560, in async_o365_get_events
events = await self._async_calendar_schedule_get_events(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/o365/calendar.py", line 623, in _async_calendar_schedule_get_events
return await hass.async_add_executor_job(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/O365/calendar.py", line 1797, in get_events
response = self.con.get(url, params=params)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/O365/connection.py", line 898, in get
return self.oauth_request(url, 'get', params=params, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/O365/connection.py", line 887, in oauth_request
return self._internal_request(self.session, url, method, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/O365/connection.py", line 802, in _internal_request
if self.refresh_token() is False:
^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/O365/connection.py", line 699, in refresh_token
self.session.refresh_token(
File "/usr/local/lib/python3.12/site-packages/requests_oauthlib/oauth2_session.py", line 432, in refresh_token
r = self.post(
^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 637, in post
return self.request("POST", url, data=data, json=json, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/requests_oauthlib/oauth2_session.py", line 521, in request
return super(OAuth2Session, self).request(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 589, in request
resp = self.send(prep, **send_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/requests/sessions.py", line 703, in send
r = adapter.send(request, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/requests/adapters.py", line 501, in send
raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))

Try beta 5

@RogerSelwyn after installation of beta 5 and using the following logger level settings
custom_components.o365: fatal
O365: fatal
homeassistant.components.calendar: error
I not did see any O36 calendar related errors anymore in my system logs so far for last 3 days, and the integration works and updates calendar events as expected.
So it seems your adjustments did help me to be able to get rid of the errors I got in the system logs 👍
I will wait few more days to see what happens, and if all stays as it is will leave a message and close this issue... thanks so far for your help and effort! 💯

@RogerSelwyn all still seems fine for me, I did see there is a new main release also v4.8.0 does this version includes all fixes and all still will be same regarding error logs if I update to this version?

@RogerSelwyn when time can you please advise me what to do, stay on v4.8.0b5 or update to v4.8.0?

All releases include previous changes. This cane be seen in the change notes for the release ;-)

@RogerSelwyn i did read those and see capture of calendar errors but not was sure if those where related to my errors in system log... but I understand I can do update without any worries regarding this issues I had 😉 ... Thanks!

So far so good on v4.8.0 💯

@RogerSelwyn I not got any error message anymore since your latest changes in beta version 5, now am running stable version 4.8.0 and all good.
I will also try out your M365 Calendar integration what is perfect for my use case as syncing of Outlook Calendar is all I need for HA.
Thank you for all the time and energy you put in this! 🥇
I will come this issue now as it is solved for me. Thanks again! 👍


Remove bullet from task-lists

Testing pages-themes/hacker#75

Opened on wrong repository. I think it was be in my fork