Setup a Python Code Quality CI Pipeline with UV & Ruff

preview_player
Показать описание
This video shows how to setup a modern CI Pipeline using various tools such as UV, Ruff, Pytest and Pyright.

#code #python #tutorial #education #cicd #uv #ruff #pyright

00:00:00 Intro
00:00:18 Initialisation
00:00:35 Lock file
00:01:33 Linting
00:02:09 Formatting
00:03:01 Type Checking
00:04:17 Unit Tests
00:05:19 Building
00:05:49 Code Coverage
00:06:32 GitHub Action
00:06:44 Conclusion
Рекомендации по теме
Комментарии
Автор

This looks a lot like the setup I use. I'm a fan of adding in `pip-audit` as a warning-but-not-failure step. Knowing when your dependencies have security vulnerabilities can be useful!

bradbeattie
Автор

This video was gold. I loved how you explained and got to the point. No fluff. Simply explained. Also great to see the reusable action that I did not know about. Thanks for sharing!

marctorsoc
Автор

Incredible video, I have adopted this workflow for my repo. It is also extremely re-usable. Thank you for this!

ArNodr
Автор

I was trying to do thesame task for more than week... building python software into packages is crap! UV makes it much more pleasent. Thanks for the video.

alam
Автор

This was a great video. I understand now, why you should maybe use uv in python projects

timothyspottering
Автор

Nice Video! That will definitely help me with creating some piplines for my python applications.

danfreimann
Автор

great video! i'll watch more of you!

froozynoobfan
Автор

fantastic video, can you make a video of Granian and Rust based frameworks?

EmersonFlechas
Автор

If possible, please make git branching strategies, release versions and best practices videos, for python developers 🙏

dinabandhub
Автор

¡Excelente! aunque no entendí todo ¿que puedo hacer para aprender y llegar a ese nivel?

williansuarez
Автор

A great video for using uv in CI. Do you use uv in pre commit hooks or in IDE? I am trying to automate python code formatting, so IDE and/or pre-commit hooks can take care of it, and CI won't complain about formatting error.

juvewan
Автор

Wonderful video. Just one question.
In order to format and apply the fixes before commits, do you run each ruff, pytest, pyright ... commands manually or do you use some other tools like Tox?

SalahSaoud-js
Автор

Hi Tim, interesting video. What is the plugin you are using for the popup terminal?

djpaulytee
Автор

I'm following this exactly and locally --locked is fine but when I trigger the action it fails. Any ideas? All of my code is commited and pushed

rosslote
Автор

Is there any specific reason to use Pyright? Doesn't UV already support type checking?

paulomarvin
Автор

just working on my own package, any reason you did not use "uv build"?

froozynoobfan
Автор

mayby need write ?

run: |
uvx ruff check --select I --fix . \
&& ruff check . --fix \
&& ruff format .

I

lexaful
visit shbcf.ru