Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Apple TV integration not working with AirPort Express #101948

Closed
Spale350z opened this issue Oct 13, 2023 · 39 comments · Fixed by #102196
Closed

Apple TV integration not working with AirPort Express #101948

Spale350z opened this issue Oct 13, 2023 · 39 comments · Fixed by #102196

Comments

@Spale350z
Copy link

The problem

After the 2023.8 update I can't stream any media to my AirPort Express anymore.
I keep getting this error:

[Errno 110] Connect call failed ('IP_OF_AIRPORT_EXPRESS', 7000)

Downgrading back to 2023.7 will fix it and streams any kind of file through pyatv.
I've also noticed that if I select the AirPort Express as Airplay destination from iOS the Apple TV integration reloads instantly.

Anyone has the same issue?
I'm attaching the log file

What version of Home Assistant Core has the issue?

2023.10.2

What was the last working version of Home Assistant Core?

2023.7.3

What type of installation are you running?

Home Assistant OS

Integration causing the issue

apple_tv

Link to integration documentation on our website

https://www.home-assistant.io/integrations/apple_tv

Diagnostics information

Logger: homeassistant.components.script.riproduci_radio_viva_fm_soundbar
Source: helpers/script.py:468
Integration: Script (documentation, issues)
First occurred: 16:57:21 (1 occurrences)
Last logged: 16:57:21

Riproduci Radio Viva FM - Soundbar: Error executing script. Unexpected error for call_service at pos 4: [Errno 110] Connect call failed ('169.254.248.229', 7000)
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 468, in _async_step
await getattr(self, handler)()
File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 704, in _async_call_service_step
response_data = await self._async_run_long_action(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/script.py", line 666, in _async_run_long_action
return long_task.result()
^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/core.py", line 2012, in async_call
response_data = await coro
^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/core.py", line 2049, in _execute_service
return await target(service_call)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 235, in handle_service
return await service.entity_service_call(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 876, in entity_service_call
response_data = await _handle_entity_call(
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 948, in _handle_entity_call
result = await task
^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/apple_tv/media_player.py", line 300, in async_play_media
await self.atv.stream.stream_file(media_id)
File "/usr/local/lib/python3.11/site-packages/pyatv/core/facade.py", line 370, in stream_file
await self.relay("stream_file")(
File "/usr/local/lib/python3.11/site-packages/pyatv/protocols/raop/init.py", line 349, in stream_file
client, context = await self.playback_manager.setup(self.core.service)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/pyatv/protocols/raop/init.py", line 147, in setup
self._connection = await http_connect(self._address, self._port)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/pyatv/support/http.py", line 653, in http_connect
_, connection = await loop.create_connection(HttpConnection, address, port)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/asyncio/base_events.py", line 1085, in create_connection
raise exceptions[0]
File "/usr/local/lib/python3.11/asyncio/base_events.py", line 1069, in create_connection
sock = await self._connect_sock(
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/asyncio/base_events.py", line 973, in _connect_sock
await self.sock_connect(sock, address)
File "/usr/local/lib/python3.11/asyncio/selector_events.py", line 628, in sock_connect
return await fut
^^^^^^^^^
File "/usr/local/lib/python3.11/asyncio/selector_events.py", line 668, in _sock_connect_cb
raise OSError(err, f'Connect call failed {address}')
TimeoutError: [Errno 110] Connect call failed ('169.254.248.229', 7000)

Example YAML snippet

No response

Anything in the logs that might be useful for us?

No response

Additional information

No response

@home-assistant
Copy link

Hey there @postlund, mind taking a look at this issue as it has been labeled with an integration (apple_tv) you are listed as a code owner for? Thanks!

Code owner commands

Code owners of apple_tv can trigger bot actions by commenting:

  • @home-assistant close Closes the issue.
  • @home-assistant rename Awesome new title Renames the issue.
  • @home-assistant reopen Reopen the issue.
  • @home-assistant unassign apple_tv Removes the current integration label and assignees on the issue, add the integration domain after the command.

(message by CodeOwnersMention)


apple_tv documentation
apple_tv source
(message by IssueLinks)

@postlund
Copy link
Contributor

What is the actual IP of your AirPort Express?

@Spale350z
Copy link
Author

Spale350z commented Oct 13, 2023

What is the actual IP of your AirPort Express?

It is 192.168.1.65 but in the log I see 169.254.248.229

If I connect to the page 169.254.248.229:7000 it loads, same for 192.168.1.65:7000

@postlund
Copy link
Contributor

I suspect that Zeroconf resolves incorrect IP here, maybe @bdraco can help?

@Spale350z
Copy link
Author

I suspect that Zeroconf resolves incorrect IP here, maybe @bdraco can help?

Yes I also think that

By the way I also have one HomePod and a Belkin Soundform receiver and they works well.
AirPort also used to before upgrading to 2023.8.X and above

@bdraco
Copy link
Member

bdraco commented Oct 13, 2023

How old is the mdns stack in the problem device. Can the firmware be updated ?

@bdraco
Copy link
Member

bdraco commented Oct 13, 2023

It looks like that device isn't made anymore or no mdns fixes coming

I took the link local workaround out in postlund/pyatv@17d130a because we fixed the problem in zeroconf that it was created for.

It looks like Apple has the same or similar ordering bug where it can announce an older ip address later that a newer one in its older mdns implementations which is likely never to get fixed since you can't update the firmware

We can put that workaround back in as apparently we still need it to support these older devices.

I'll open a PR later today with a comment about why it's still needed even though zeroconf itself guarantees LIFO order for ip addresses.

@bdraco
Copy link
Member

bdraco commented Oct 13, 2023

It probably means we need to check for unspecified addresses as well

@postlund
Copy link
Contributor

Latest AirPort Express software is 7.8.1 from around June 2019, so it is very old (no more updates for that one). I also seem to have some discovery issues (maybe not related) with my HomePod (but I also saw the same thing with my AirPort Express prior to restarting Home Assistant):

2023-10-13 19:40:01.899 DEBUG (MainThread) [homeassistant.components.apple_tv] Discovering device Office
2023-10-13 19:40:01.900 DEBUG (MainThread) [pyatv.core.scan] 10.0.10.84: Multicast is broken or device offline, trying unicast PTR queries for ['_device-info._tcp.local.']
2023-10-13 19:40:06.902 DEBUG (MainThread) [homeassistant.components.apple_tv] Failed to find device Office with address 10.0.10.84

Using atvremote from another computer on the network (not using python-zeroconf like in Home Assistant though) works fine for me. The IP address in this case is correct.

@bdraco
Copy link
Member

bdraco commented Oct 13, 2023

Yeah we have workarounds for devices announcing unspecified addresses 🙈🙈🙈 in HA proper

@bdraco
Copy link
Member

bdraco commented Oct 13, 2023

Latest AirPort Express software is 7.8.1 from around June 2019, so it is very old (no more updates for that one). I also seem to have some discovery issues (maybe not related) with my HomePod (but I also saw the same thing with my AirPort Express prior to restarting Home Assistant):


2023-10-13 19:40:01.899 DEBUG (MainThread) [homeassistant.components.apple_tv] Discovering device Office

2023-10-13 19:40:01.900 DEBUG (MainThread) [pyatv.core.scan] 10.0.10.84: Multicast is broken or device offline, trying unicast PTR queries for ['_device-info._tcp.local.']

2023-10-13 19:40:06.902 DEBUG (MainThread) [homeassistant.components.apple_tv] Failed to find device Office with address 10.0.10.84

Using atvremote from another computer on the network (not using python-zeroconf like in Home Assistant though) works fine for me. The IP address in this case is correct.

Probably not related. I've seen the devices never respond to device info queries but if you query something else it includes device info in the response. We could include an ANY question in unicast fallback. That would probably fix that issue

@bdraco
Copy link
Member

bdraco commented Oct 13, 2023

@postlund just realized we don't have the name yet at that point to be able to send an Any query.

Is it not working or are you just seeing the fallback in the log to try to get the device info?

@bdraco
Copy link
Member

bdraco commented Oct 13, 2023

Maybe if you are just missing device info we have the name from one of the other records from the address.

We could extract it and include an any question for that name if we have it

@bdraco
Copy link
Member

bdraco commented Oct 13, 2023

If we are sending an any query we should be including know answers though so we don't generate a multicast response to everyone on the network

@bdraco
Copy link
Member

bdraco commented Oct 13, 2023

I guess we can't include known answers since if all questions are suppressed by the mdns stack on the HomePod it won't include the device info

@bdraco
Copy link
Member

bdraco commented Oct 13, 2023

And it looks like the only record missing is device info from your logs ... so we are kinda stuck with a bare any question without known answers.

@bdraco
Copy link
Member

bdraco commented Oct 13, 2023

It's annoying that Apple makes it so hard to get device info since they don't publish device info the dns sd services

@bdraco
Copy link
Member

bdraco commented Oct 13, 2023

I'll open a PR later today with a comment about why it's still needed even though zeroconf itself guarantees LIFO order for ip addresses.

postlund/pyatv#2241

@bdraco
Copy link
Member

bdraco commented Oct 13, 2023

The any question didn't seem to help.

I'll probably need to see the raw zeroconf debug logs to figure out whats going on there.

@Spale350z
Copy link
Author

The any question didn't seem to help.

I'll probably need to see the raw zeroconf debug logs to figure out whats going on there.

How can I get that log?

@bdraco
Copy link
Member

bdraco commented Oct 13, 2023

Sorry @Spale350z , we are conflating issues here.

postlund/pyatv#2241 should fix the issue you reported.

The log I was looking for was for @postlund 's HomePod issue.

We should take that discussion out of this issue to avoid confusion.

@Spale350z
Copy link
Author

Sorry @Spale350z , we are conflating issues here.

postlund/pyatv#2241 should fix the issue you reported.

The log I was looking for was for @postlund 's HomePod issue.

We should take that discussion out of this issue to avoid confusion.

Ok thank you very much.
I'll wait for the update to be released 😀

@Spale350z
Copy link
Author

SOLVED

Changed the static IP of AirPort Express and reverted it back to what it was.
Let's hope they keep going.

Both of them now work 🎉

@bdraco bdraco mentioned this issue Oct 18, 2023
20 tasks
@26tajeen
Copy link

I have this issue!

@bdraco
Copy link
Member

bdraco commented Oct 22, 2023

Unfortunately it may be a few months or years before we can update pyatv as HA is still using pydantic 1.x pydantic==1.10.12 and pyatv needs pydantic-extra-types 2.1.0 which depends on pydantic>=2.0.3

You can follow along with the migration process at #99218

An alternative would be for pyatv to remove the pydantic-extra-types dep, but that might be asking too much

@postlund
Copy link
Contributor

Unfortunately it may be a few months or years before we can update pyatv as HA is still using pydantic 1.x pydantic==1.10.12 and pyatv needs pydantic-extra-types 2.1.0 which depends on pydantic>=2.0.3

You can follow along with the migration process at #99218

An alternative would be for pyatv to remove the pydantic-extra-types dep, but that might be asking too much

Nah, removing that dependency is easy (I only use MacAddress from there). If that's the only blocker, I can fix that later today hopefully.

@bdraco
Copy link
Member

bdraco commented Oct 23, 2023

Nah, removing that dependency is easy (I only use MacAddress from there). If that's the only blocker, I can fix that later today hopefully.

AFAICT thats the only one. Nice!

@bdraco
Copy link
Member

bdraco commented Oct 23, 2023

@postlund It would be good to add the shims as well so we don't have to do it later example https://github.com/AngellusMortis/pyunifiprotect/pull/297 more details in #99218

@postlund
Copy link
Contributor

@bdraco I will fix that! Is pydantic-settings a problem as well?

https://github.com/pydantic/pydantic-settings

@postlund
Copy link
Contributor

@bdraco I decided to remove pydantic-settings as a dependency since it's not really used anyway. Backporting required a few changes to the code, but should be fine now. I also changed version of pydantic in base_version.txt, so tests are run with a 1.x version as an extra precaution. Maybe you can try if this works before I merge and make a release:

postlund/pyatv#2262

@26tajeen
Copy link

26tajeen commented Oct 23, 2023

To apply this fix before it’s merged would I need to ssh into my home assistant install on port 2222, please?

@postlund
Copy link
Contributor

I would suggest that you wait for this being released and merged properly before testing it.

@bdraco
Copy link
Member

bdraco commented Oct 23, 2023 via email

@bdraco
Copy link
Member

bdraco commented Oct 23, 2023

Install seems ok, doing live testing now

homeassistant:/config/pyatv# gh pr checkout 2262
remote: Enumerating objects: 625, done.
remote: Counting objects: 100% (397/397), done.
remote: Compressing objects: 100% (239/239), done.
remote: Total 625 (delta 281), reused 205 (delta 158), pack-reused 228
Receiving objects: 100% (625/625), 502.98 KiB | 3.96 MiB/s, done.
Resolving deltas: 100% (400/400), completed with 31 local objects.
From https://github.com/postlund/pyatv
 * [new ref]           refs/pull/2262/head -> pydantic_v1
 * [new tag]           v0.8.2              -> v0.8.2
 * [new tag]           v                   -> v
Switched to branch 'pydantic_v1'
homeassistant:/config/pyatv# pip3 install . -c /usr/src/homeassistant/homeassistant/package_constraints.txt 
Processing /config/pyatv
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
  Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: aiohttp<5,>=3.8.3 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (3.8.5)
Requirement already satisfied: async-timeout>=4.0.2 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (4.0.3)
Requirement already satisfied: cryptography>=36.0.2 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (41.0.4)
Requirement already satisfied: chacha20poly1305-reuseable>=0.0.3 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (0.10.2)
Requirement already satisfied: ifaddr>=0.1.7 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (0.2.0)
Requirement already satisfied: mediafile>=0.8.1 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (0.12.0)
Requirement already satisfied: miniaudio>=1.45 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (1.59)
Requirement already satisfied: protobuf>=4.23.4 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (4.24.3)
Requirement already satisfied: pydantic>=1.10.10 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (1.10.12)
Requirement already satisfied: requests>=2.23.0 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (2.31.0)
Requirement already satisfied: srptools>=0.2.0 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (1.0.1)
Requirement already satisfied: tabulate>=0.9.0 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (0.9.0)
Requirement already satisfied: zeroconf>=0.72.0 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (0.119.0)
Requirement already satisfied: attrs>=17.3.0 in /usr/local/lib/python3.11/site-packages (from aiohttp<5,>=3.8.3->pyatv==0.14.2) (23.1.0)
Requirement already satisfied: charset-normalizer<4.0,>=2.0 in /usr/local/lib/python3.11/site-packages (from aiohttp<5,>=3.8.3->pyatv==0.14.2) (3.2.0)
Requirement already satisfied: multidict<7.0,>=4.5 in /usr/local/lib/python3.11/site-packages (from aiohttp<5,>=3.8.3->pyatv==0.14.2) (6.0.4)
Requirement already satisfied: yarl<2.0,>=1.0 in /usr/local/lib/python3.11/site-packages (from aiohttp<5,>=3.8.3->pyatv==0.14.2) (1.9.2)
Requirement already satisfied: frozenlist>=1.1.1 in /usr/local/lib/python3.11/site-packages (from aiohttp<5,>=3.8.3->pyatv==0.14.2) (1.4.0)
Requirement already satisfied: aiosignal>=1.1.2 in /usr/local/lib/python3.11/site-packages (from aiohttp<5,>=3.8.3->pyatv==0.14.2) (1.3.1)
Requirement already satisfied: cffi>=1.12 in /usr/local/lib/python3.11/site-packages (from cryptography>=36.0.2->pyatv==0.14.2) (1.15.1)
Requirement already satisfied: six>=1.9 in /usr/local/lib/python3.11/site-packages (from mediafile>=0.8.1->pyatv==0.14.2) (1.16.0)
Requirement already satisfied: mutagen>=1.46 in /usr/local/lib/python3.11/site-packages (from mediafile>=0.8.1->pyatv==0.14.2) (1.47.0)
Requirement already satisfied: typing-extensions>=4.2.0 in /usr/local/lib/python3.11/site-packages (from pydantic>=1.10.10->pyatv==0.14.2) (4.8.0)
Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.11/site-packages (from requests>=2.23.0->pyatv==0.14.2) (3.4)
Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.11/site-packages (from requests>=2.23.0->pyatv==0.14.2) (1.26.16)
Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.11/site-packages (from requests>=2.23.0->pyatv==0.14.2) (2023.7.22)
Requirement already satisfied: pycparser in /usr/local/lib/python3.11/site-packages (from cffi>=1.12->cryptography>=36.0.2->pyatv==0.14.2) (2.21)
Building wheels for collected packages: pyatv
  Building wheel for pyatv (pyproject.toml) ... done
  Created wheel for pyatv: filename=pyatv-0.14.2-py3-none-any.whl size=452512 sha256=d533459c5b211eaa603486e63b63205815cc997c568b5718829d14c7131897a6
  Stored in directory: /tmp/pip-ephem-wheel-cache-det44_x5/wheels/2d/6f/aa/bb823d88edf6db1e41980b1fb3cd7c3abf815a17b3fef71202
Successfully built pyatv
Installing collected packages: pyatv
  Attempting uninstall: pyatv
    Found existing installation: pyatv 0.14.2
    Uninstalling pyatv-0.14.2:
      Successfully uninstalled pyatv-0.14.2
Successfully installed pyatv-0.14.2
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv

@bdraco
Copy link
Member

bdraco commented Oct 23, 2023

for comparison this is master

homeassistant:/config/pyatv# pip3 install . -c /usr/src/homeassistant/homeassistant/package_constraints.txt 
Processing /config/pyatv
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
  Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: aiohttp<5,>=3.8.3 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (3.8.5)
Requirement already satisfied: async-timeout>=4.0.2 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (4.0.3)
Requirement already satisfied: cryptography>=36.0.2 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (41.0.4)
Requirement already satisfied: chacha20poly1305-reuseable>=0.0.3 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (0.10.2)
Requirement already satisfied: ifaddr>=0.1.7 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (0.2.0)
Requirement already satisfied: mediafile>=0.8.1 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (0.12.0)
Requirement already satisfied: miniaudio>=1.45 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (1.59)
Requirement already satisfied: protobuf>=4.23.4 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (4.24.3)
Collecting pydantic-extra-types>=2.1.0 (from pyatv==0.14.2)
  Downloading pydantic_extra_types-2.1.0-py3-none-any.whl.metadata (2.5 kB)
Collecting pydantic-settings>=2.0.2 (from pyatv==0.14.2)
  Downloading pydantic_settings-2.0.3-py3-none-any.whl.metadata (2.9 kB)
Requirement already satisfied: requests>=2.23.0 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (2.31.0)
Requirement already satisfied: srptools>=0.2.0 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (1.0.1)
Requirement already satisfied: tabulate>=0.9.0 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (0.9.0)
Requirement already satisfied: zeroconf>=0.72.0 in /usr/local/lib/python3.11/site-packages (from pyatv==0.14.2) (0.119.0)
Requirement already satisfied: attrs>=17.3.0 in /usr/local/lib/python3.11/site-packages (from aiohttp<5,>=3.8.3->pyatv==0.14.2) (23.1.0)
Requirement already satisfied: charset-normalizer<4.0,>=2.0 in /usr/local/lib/python3.11/site-packages (from aiohttp<5,>=3.8.3->pyatv==0.14.2) (3.2.0)
Requirement already satisfied: multidict<7.0,>=4.5 in /usr/local/lib/python3.11/site-packages (from aiohttp<5,>=3.8.3->pyatv==0.14.2) (6.0.4)
Requirement already satisfied: yarl<2.0,>=1.0 in /usr/local/lib/python3.11/site-packages (from aiohttp<5,>=3.8.3->pyatv==0.14.2) (1.9.2)
Requirement already satisfied: frozenlist>=1.1.1 in /usr/local/lib/python3.11/site-packages (from aiohttp<5,>=3.8.3->pyatv==0.14.2) (1.4.0)
Requirement already satisfied: aiosignal>=1.1.2 in /usr/local/lib/python3.11/site-packages (from aiohttp<5,>=3.8.3->pyatv==0.14.2) (1.3.1)
Requirement already satisfied: cffi>=1.12 in /usr/local/lib/python3.11/site-packages (from cryptography>=36.0.2->pyatv==0.14.2) (1.15.1)
Requirement already satisfied: six>=1.9 in /usr/local/lib/python3.11/site-packages (from mediafile>=0.8.1->pyatv==0.14.2) (1.16.0)
Requirement already satisfied: mutagen>=1.46 in /usr/local/lib/python3.11/site-packages (from mediafile>=0.8.1->pyatv==0.14.2) (1.47.0)
INFO: pip is looking at multiple versions of pydantic-extra-types to determine which version is compatible with other requirements. This could take a while.
ERROR: Cannot install pyatv because these package versions have conflicting dependencies.

The conflict is caused by:
    pydantic-extra-types 2.1.0 depends on pydantic>=2.0.3
    The user requested (constraint) pydantic==1.10.12

To fix this you could try to:
1. loosen the range of package versions you've specified
2. remove package versions to allow pip attempt to solve the dependency conflict

ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/topics/dependency-resolution/#dealing-with-dependency-conflicts

@bdraco
Copy link
Member

bdraco commented Oct 23, 2023

Functional testing looks good. I think your change is good to go to solve the dep conflict 👍

@Spale350z
Copy link
Author

Really thank you for your work guys!
By the way refreshing the IP of the AirPort Express in his settings through the MacBook fixed it and I'm not having the issue for weeks now

@postlund
Copy link
Contributor

@bdraco 0.14.3 is out now!

@bdraco
Copy link
Member

bdraco commented Oct 23, 2023

Thanks. I'll bump that PR

@github-actions github-actions bot locked and limited conversation to collaborators Nov 22, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants