Skip to content

Constrain uamqp for Python 3.10 only#88198

Merged
bdraco merged 1 commit into
devfrom
frenck-2023-0312
Feb 15, 2023
Merged

Constrain uamqp for Python 3.10 only#88198
bdraco merged 1 commit into
devfrom
frenck-2023-0312

Conversation

@frenck
Copy link
Copy Markdown
Member

@frenck frenck commented Feb 15, 2023

Proposed change

This PR adds back the constraint to uamqp, but this time for Python 3.10 only.

It is a really odd move to make. Reason: We need to release this constrain to get our Python 3.11 development going in #88038.

The problem is we can't build the wheels for the most recent versions against armhf & armv7 (32-bit arm). The upstream project also doesn't provide wheels for it.

At this point, we don't ship our images with Python 3.11 yet (which will take a bit still), so using this constrain, we can still continue our Python 3.11 development and testing, while maintaining our current Python 3.10 releases working.

Type of change

  • Dependency upgrade
  • Bugfix (non-breaking change which fixes an issue)
  • New integration (thank you!)
  • New feature (which adds functionality to an existing integration)
  • Deprecation (breaking change to happen in the future)
  • Breaking change (fix/feature causing existing functionality to break)
  • Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: fixes #
  • This PR is related to issue:
  • Link to documentation pull request:

Checklist

  • The code change is tested and works locally.
  • Local tests pass. Your PR cannot be merged unless tests pass
  • There is no commented out code in this PR.
  • I have followed the development checklist
  • The code has been formatted using Black (black --fast homeassistant tests)
  • Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
  • Untested files have been added to .coveragerc.

To help with the load of incoming pull requests:

@home-assistant home-assistant Bot added bugfix cla-signed core small-pr PRs with less than 30 lines. labels Feb 15, 2023
@frenck
Copy link
Copy Markdown
Member Author

frenck commented Feb 15, 2023

@eavanvalkenburg Do you happen to know if there is ETA on the pure Python implementation? That would solve this problem for us completely. Right now, it is pretty blocking in the short-term for us.

../Frenck

@eavanvalkenburg
Copy link
Copy Markdown
Contributor

Just asked, in beta soon, but they do have wheels for 3.10 and 3.11

Copy link
Copy Markdown
Member

@bdraco bdraco left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested: Seems to work as expected 👍

@bdraco bdraco merged commit a1efd59 into dev Feb 15, 2023
@bdraco bdraco deleted the frenck-2023-0312 branch February 15, 2023 20:24
@frenck
Copy link
Copy Markdown
Member Author

frenck commented Feb 15, 2023

Just asked, in beta soon, but they do have wheels for 3.10 and 3.11

@eavanvalkenburg They don't have wheels for musllinux (which we use), nor do they provide wheels for arm 32 bits (armhf/armv7) (architectures which we use).

But good news something is coming 👍

@eavanvalkenburg
Copy link
Copy Markdown
Contributor

Indeed not for all platforms, if you want early beta access to validate sooner let me know!

@frenck
Copy link
Copy Markdown
Member Author

frenck commented Feb 15, 2023

Validation is not our issue perse, it is mostly being able to publish for / move forward with the arm32 architectures (and being able to publish/support Python 3.11 eventually).

@kashifkhan
Copy link
Copy Markdown
Contributor

kashifkhan commented Feb 15, 2023

Hi @frenck, I'm on the python messaging SDK team and we have a beta coming out soon (its going through review). We do have an alpha out there as well published and would love to have yall on the beta (if not alpha), especially as it removes a big blocker.

Looking at the component using service bus since its sending notifications to service bus, without using some of the other logic its a relatively safe move. Its also designed to be just like the event hub SDK with the move being seamless and not having to build uamqp for ARM etc.

@frenck
Copy link
Copy Markdown
Member Author

frenck commented Feb 16, 2023

I think, if there is a public beta @kashifkhan (as in, a package published on PyPi), we could consider joining that. That said, we generally don't use non-stable releases.

@github-actions github-actions Bot locked and limited conversation to collaborators Feb 17, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

bugfix cla-signed core small-pr PRs with less than 30 lines.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants