I use it on Cyberpunk without issues. But regardless of platform, it needs to be paired with DLSS or FSR to mitigate the huge performance hit. I think it will still take 5+ years for it to become the expected way to run a new photo-realistic game.
I use it on Cyberpunk without issues. But regardless of platform, it needs to be paired with DLSS or FSR to mitigate the huge performance hit. I think it will still take 5+ years for it to become the expected way to run a new photo-realistic game.
How much storage do you need? If it’s just 2TB - or if you’re just future proofing it and don’t anticipate needing more than 2TB within the next few years - I’d pick one SSD. Even the cheaper ones will give you a better performance than an SSD + HDD combo.
dua is more like ncdu in rust, less stale too
I’m sure I’m not the only person who’s got uv configured to install the virtualenv in the local .venv folder
That’s the default for projects. Script is a different run mode.
every time I invoke the script, I’d get a new set of dependencies installed wherever I happen to be.
Does that happen though? uv
uses the cache location for these script dependencies, not your usual venv one. Where you call it from is not a factor.
deleted by creator
you can also enable this rule set to remind you https://docs.astral.sh/ruff/rules/#flake8-use-pathlib-pth
it’s more effort and care compared to a throwaway script, not necessarily compared to other languages
yeah, all that setup sucks even after being writing python for years.
Nowadays I’ve been running every project with uv
and it’s a much better and faster experience, usually in 3 steps: 1. initialize, 2. add dependencies, 3. run project:
# if the project doesn't already have a pyproject.toml with dependencies, initialize it
# uv will also install the right interpreter if not present:
uv init --python 3.13
# anything you would install with pip, use uv add:
uv add dep1 dep2
# run the project / script
uv run main.py
Then in future runs (as long as you have the pyproject.toml), you can just do uv run main.py
(shorthand to uv run python main.py
), even when there’s no venv created. No more activating virtual envs. No more long interpreter installations. No more accidentally messing with system’s packages or the PATH variable. With the uv.lock
that’s also a lot more reliable to reproduce than requirements.txt
and similar.
That’s a proficiency matter. Python is the language I can get something done the fastest today, but 6 years ago that would be Java or even JS for me.
Exactly! I’ve wasted more time hunting missing semicolons in languages that use them, than fixing wrong indentation in Python.
You can totally write heavy duty things if you know what you’re doing: use type hints, static checkers, tests, etc. It just takes a bit more effort and care.
and despite those differences, uv is essentially cargo for Python, showing it is possible.
The Python env has been trying this multiple tools approach for decades and consistently delivering a worse experience than languages that pack most things in one tool.
Rust is a bliss to use, largely thanks to cargo that takes care of build, dependencies, locking, tests, publishing etc. You say do one thing and do it well. In my experience they often do one thing in a mediocre way, while forcing users to understand which and how to combine dozens of possible tools in a development environment that keeps changing. It’s messy, slow, error prone, and requires constant developer attention.
are you really asking why use 1 tool instead of 5?
venvs and dependency management are such interconnected concepts, I don’t even know how you could sustainably handle them separately.
Ah true, I had the wrong idea about this constraints file. What’s your use case?
my personal preference is a pyproject.toml over that mess
There are dozens of us. Dozens!
that’s already in the cheatsheet
Not that I know of. A couple years ago I was looking for a way to bind other mouse buttons.
Even with third party software, it likely won’t work on Wayland.