nox-uv 0.6.3__tar.gz → 0.7.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nox-uv
3
- Version: 0.6.3
3
+ Version: 0.7.0
4
4
  Summary: Facilitate nox integration with uv for Python projects
5
5
  Keywords: nox,uv
6
6
  Author: Dan Tebben
@@ -130,7 +130,9 @@ def lint(s: Session) -> None:
130
130
  - `uv_only_groups`: list of `uv` _only-groups_ to include. Prevents installation of project
131
131
  _dependencies_
132
132
  - `uv_all_extras`: boolean to install all _optional-dependencies_ from `pyproject.toml`
133
+ - `uv_no_extras`: list of extras to exclude during install of `uv_all_extras`
133
134
  - `uv_all_groups`: boolean to install all _dependency-groups_
135
+ - `uv_no_groups`: list of groups to exclude during install of `uv_all_groups`
134
136
  - `uv_no_install_project`: boolean to not install the current project
135
137
  - `uv_sync_locked`: boolean to validate that `uv.lock` is up to date
136
138
 
@@ -100,7 +100,9 @@ def lint(s: Session) -> None:
100
100
  - `uv_only_groups`: list of `uv` _only-groups_ to include. Prevents installation of project
101
101
  _dependencies_
102
102
  - `uv_all_extras`: boolean to install all _optional-dependencies_ from `pyproject.toml`
103
+ - `uv_no_extras`: list of extras to exclude during install of `uv_all_extras`
103
104
  - `uv_all_groups`: boolean to install all _dependency-groups_
105
+ - `uv_no_groups`: list of groups to exclude during install of `uv_all_groups`
104
106
  - `uv_no_install_project`: boolean to not install the current project
105
107
  - `uv_sync_locked`: boolean to validate that `uv.lock` is up to date
106
108
 
@@ -1,12 +1,10 @@
1
1
  [project]
2
2
  name = "nox-uv"
3
- version = "0.6.3"
3
+ version = "0.7.0"
4
4
  description = "Facilitate nox integration with uv for Python projects"
5
5
  keywords = ["nox", "uv"]
6
6
  readme = "README.md"
7
- authors = [
8
- { name = "Dan Tebben", email = "dantebben@gmail.com" }
9
- ]
7
+ authors = [{ name = "Dan Tebben", email = "dantebben@gmail.com" }]
10
8
  license = "MIT"
11
9
  license-files = ["LICENSE.txt"]
12
10
  classifiers = [
@@ -27,9 +25,7 @@ classifiers = [
27
25
  ]
28
26
 
29
27
  requires-python = ">=3.9"
30
- dependencies = [
31
- "nox>=2025.05.01",
32
- ]
28
+ dependencies = ["nox>=2025.05.01"]
33
29
 
34
30
  [project.urls]
35
31
  Homepage = "https://github.com/dantebben/nox-uv"
@@ -41,18 +37,13 @@ requires = ["uv_build>=0.9.0,<0.10.0"]
41
37
  build-backend = "uv_build"
42
38
 
43
39
  [dependency-groups]
44
- lint = [
45
- "ruff>=0.9.7",
46
- ]
40
+ lint = ["ruff>=0.9.7"]
47
41
  test = [
48
42
  "pytest>=8.4.0",
49
- "pytest-cov>=6.1.1",
50
- # TODO: Remove this pin when CoverageWarnings are fixed.
51
- "coverage==7.10.7",
52
- ]
53
- type_check = [
54
- "mypy>=1.15.0",
43
+ # TODO: Remove this upper bound when CoverageWarnings are fixed.
44
+ "pytest-cov<7",
55
45
  ]
46
+ type_check = ["mypy>=1.15.0"]
56
47
 
57
48
  [tool.uv]
58
49
  default-groups = "all"
@@ -70,25 +61,22 @@ src = ["src"]
70
61
 
71
62
  [tool.ruff.lint]
72
63
  select = [
73
- "F", # pyflakes
74
- "E", # pycodestyle
75
- "I", # isort
76
- "N", # pep8-naming
77
- "UP", # pyupgrade
64
+ "F", # pyflakes
65
+ "E", # pycodestyle
66
+ "I", # isort
67
+ "N", # pep8-naming
68
+ "UP", # pyupgrade
78
69
  "RUF", # ruff
79
- "B", # flake8-bugbear
80
- "C4", # flake8-comprehensions
70
+ "B", # flake8-bugbear
71
+ "C4", # flake8-comprehensions
81
72
  "ISC", # flake8-implicit-str-concat
82
73
  "PIE", # flake8-pie
83
- "PT", # flake-pytest-style
74
+ "PT", # flake-pytest-style
84
75
  "PTH", # flake8-use-pathlib
85
76
  "SIM", # flake8-simplify
86
77
  "TID", # flake8-tidy-imports
87
78
  ]
88
- extend-ignore = [
89
- "RUF005",
90
- "RUF012",
91
- ]
79
+ extend-ignore = ["RUF005", "RUF012"]
92
80
  unfixable = [
93
81
  # Disable removing unused imports by default and only enable within nox so editors don't delete
94
82
  # unused imports while the user is in the middle of editing a file on save.
@@ -104,10 +92,7 @@ split-on-trailing-comma = false
104
92
  ban-relative-imports = "all"
105
93
 
106
94
  [tool.pytest.ini_options]
107
- addopts = [
108
- "--strict-config",
109
- "--strict-markers",
110
- ]
95
+ addopts = ["--strict-config", "--strict-markers"]
111
96
  xfail_strict = true
112
97
  filterwarnings = ["error"]
113
98
 
@@ -25,7 +25,9 @@ def session(
25
25
  uv_extras: Sequence[str] = (),
26
26
  uv_only_groups: Sequence[str] = (),
27
27
  uv_all_extras: bool = False,
28
+ uv_no_extras: Sequence[str] = (),
28
29
  uv_all_groups: bool = False,
30
+ uv_no_groups: Sequence[str] = (),
29
31
  uv_no_install_project: bool = False,
30
32
  uv_sync_locked: bool = True,
31
33
  **kwargs: dict[str, Any],
@@ -54,7 +56,9 @@ def session(
54
56
  uv_groups=uv_groups,
55
57
  uv_extras=uv_extras,
56
58
  uv_all_extras=uv_all_extras,
59
+ uv_no_extras=uv_no_extras,
57
60
  uv_all_groups=uv_all_groups,
61
+ uv_no_groups=uv_no_groups,
58
62
  uv_only_groups=uv_only_groups,
59
63
  uv_no_install_project=uv_no_install_project,
60
64
  uv_sync_locked=uv_sync_locked,
@@ -82,9 +86,13 @@ def session(
82
86
 
83
87
  if uv_all_groups:
84
88
  extended_cmd.append("--all-groups")
89
+ # Add the no-group(s)
90
+ extended_cmd.extend([f"--no-group={g}" for g in uv_no_groups])
85
91
 
86
92
  if uv_all_extras:
87
93
  extended_cmd.append("--all-extras")
94
+ # Add the no-extra(s)
95
+ extended_cmd.extend([f"--no-extra={e}" for e in uv_no_extras])
88
96
 
89
97
  if uv_no_install_project:
90
98
  extended_cmd.append("--no-install-project")
File without changes
File without changes