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

⬆ Upgrade Rich, support 13.x #524

Merged
merged 1 commit into from
May 1, 2023
Merged

Conversation

musicinmybrain
Copy link
Contributor

Based on the changelog, the only relevant breaking change is that support for Python 3.6 is removed:

https://github.com/Textualize/rich/blob/v13.0.0/CHANGELOG.md#1300---2022-12-30

This is OK even though we support Python 3.6 in typer, because we do still allow older versions of rich that are compatible with Python 3.6.

Based on the changelog, the only relevant breaking change is that
support for Python 3.6 is removed:

https://github.com/Textualize/rich/blob/v13.0.0/CHANGELOG.md#1300---2022-12-30

This is OK even though we support Python 3.6 in typer, because we do
still allow older versions of rich that are compatible with Python 3.6.
@github-actions
Copy link

github-actions bot commented Jan 3, 2023

📝 Docs preview for commit 5bf232e at: https://63b442aa8de82e7d7a3da3e9--typertiangolo.netlify.app

@kkirsche kkirsche mentioned this pull request Jan 25, 2023
7 tasks
@mzebrak mzebrak mentioned this pull request Feb 9, 2023
@mzebrak
Copy link

mzebrak commented Feb 9, 2023

I am very much looking forward to this change as currently there is no easy way to use the latest versions of textualize along with the typer since:

Because no versions of textual match >0.10.1,<0.11.0
 and textual (0.10.1) depends on rich (>12.6.0), textual (>=0.10.1,<0.11.0) requires rich (>12.6.0).
Because typer (0.7.0) depends on rich (>=10.11.0,<13.0.0)
 and no versions of rich match >12.6.0,<13.0.0, typer (0.7.0) requires rich (>=10.11.0,<=12.6.0).
Thus, textual (>=0.10.1,<0.11.0) is incompatible with typer (0.7.0).
So, because my_app depends on both typer (0.7.0) and textual (^0.10.1), version solving failed.

@kkirsche
Copy link

Can any actions help offload the review responsibilities from tialango or other maintainers? I understand he's busy across multiple projects and his day job, but happy to help if there is a way to get this merged

Copy link

@atmartinez atmartinez left a comment

Choose a reason for hiding this comment

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

This looks good to me. Tests pass for each Python version with 3.6 installing Rich 12.6, and 3.7+ installing 13+.

I'm not a maintainer, but I hope this review helps with getting this merged by one.

@deepyaman
Copy link

100% support this (and generally not capping dependencies, even more so for a less-actively maintained project; see a lot of great arguments in https://iscinumpy.dev/post/bound-version-constraints/).

That being said, rich is an extra, so an easy workaround is to just depend on the additional dependencies:

- typer[all]
+ typer
+ colorama >=0.4.3,<0.5.0
+ shellingham >=1.3.0,<2.0.0
+ rich >=10.11.0,<14.0.0

Not perfect, but it gets the job done for a consuming library blocked by this.

@SRv6d
Copy link

SRv6d commented Apr 9, 2023

@musicinmybrain Can you merge this ?

@musicinmybrain
Copy link
Contributor Author

@musicinmybrain Can you merge this ?

I’m afraid not. I’m not a maintainer of this project, and I have no permissions on the repository.

@SRv6d
Copy link

SRv6d commented Apr 9, 2023

My bad, I falsely assumed your PR was reviewed by maintainers.

@tiangolo tiangolo changed the title Allow rich 13.x ⬆ Allow rich 13.x May 1, 2023
@tiangolo
Copy link
Member

tiangolo commented May 1, 2023

Thanks @musicinmybrain! 🚀

And thanks @atmartinez for you review with a comment explaining what you did to test it, that helps a lot! 🙇

This will be available in Typer 0.8.0 released in the next few hours.

@tiangolo tiangolo changed the title ⬆ Allow rich 13.x ⬆ Upgrade Rich, support 13.x May 1, 2023
@tiangolo tiangolo merged commit 6664f1e into fastapi:master May 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants