Comments (2)
Can't you install "uv"
then use that? Or even do shutil.which("uv")
, and then install it if that returns None, otherwise use the external one?
Not saying having an installer option, and then having venv's default to the right thing but making it settable is bad. But it does complicate things.
from nox.
I did end up making a workaround with shutil.which("uv")
based on the find_uv
function that I saw in nox's source code.
In noxfile.py
global namespace:
def find_uv() -> tuple[bool, str]:
# Inspired by:
# https://github.com/wntrblm/nox/blob/08813c3c6b0d2171c280bbfcf219d089a16d1ac2/nox/virtualenv.py#L42
uv = shutil.which("uv")
if uv is not None:
return True, uv
return False, "uv"
HAS_UV, UV = find_uv()
Then in the session:
if HAS_UV:
session.run(UV, "pip", "install", "-r", "requirements/dev.txt", external=True)
else:
session.install("-r", "requirements/dev.txt")
Kind of messy but seems to work well enough.
from nox.
Related Issues (20)
- uv executable not found when installed with `pipx install nox[uv]` HOT 3
- 4 errors during tests: <class 'pytest_black.BlackItem'> is not using a cooperative constructor and only takes {'parent', 'fspath'} HOT 1
- test__create_venv_options fails without conda HOT 5
- Property to access venv_backend HOT 1
- Support extras in the action
- Error when running a uv backend session with active conda environment HOT 2
- 2024.03.02: pytest fails in 4 units HOT 6
- Support for PEP 723 HOT 7
- Remove legacy support for running a function in run?
- Support version specifiers in `nox`'s Python definition HOT 3
- Nox should unset UV_SYSTEM_PYTHON
- New release HOT 1
- 37 tests fail HOT 1
- run test session against active python versions HOT 1
- Docs suggestion[?]: uv backend needs "--refresh-package" flag to install up-to-date version of local package. HOT 1
- Wrong starting directory when noxfile.py is a symlink HOT 3
- Setting venv_backend='uv|virtualenv' breaks if 'uv' is installed but the version of python your session is running against isn't supported by uv.
- special character < is escaped HOT 3
- File system is busy for serveral seconds after nox session completes when using the virutalenv backend. HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nox.