nmk-python 0.17.1__py3-none-any.whl → 1.1.0__py3-none-any.whl

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.
nmk_python/build.py CHANGED
@@ -121,7 +121,7 @@ class Installer(VenvUpdateBuilder):
121
121
  Install built wheel in venv
122
122
  """
123
123
 
124
- def build(self, name: str, pip_args: str, to_remove: str):
124
+ def build(self, name: str, pip_args: list[str], to_remove: str):
125
125
  """
126
126
  Install wheel in venv
127
127
 
@@ -133,7 +133,7 @@ class Installer(VenvUpdateBuilder):
133
133
  # Check if wheel can be installed
134
134
  if _can_install(name, self.logger):
135
135
  # Install wheel in current venv
136
- super().build(pip_args)
136
+ super().build(" ".join(pip_args))
137
137
 
138
138
  # Remove stamp file
139
139
  Path(to_remove).unlink(missing_ok=True)
@@ -162,7 +162,7 @@ class EditableBuilder(NmkTaskBuilder):
162
162
  Install python project in editable mode
163
163
  """
164
164
 
165
- def build(self, pip_args: str):
165
+ def build(self, pip_args: list[str]):
166
166
  """
167
167
  Install project in venv as editable package
168
168
 
@@ -172,7 +172,7 @@ class EditableBuilder(NmkTaskBuilder):
172
172
  # Check if project can be installed in editable mode
173
173
  if _can_install(self.model.config["pythonPackage"].value, self.logger):
174
174
  # Delegate to pip
175
- run_pip(["install", "-e", "."], logger=self.logger, extra_args=pip_args)
175
+ run_pip(["install", "-e", "."], logger=self.logger, extra_args=" ".join(pip_args))
176
176
 
177
177
  # Touch stamp file
178
178
  self.main_output.touch()
nmk_python/build.yml CHANGED
@@ -24,9 +24,6 @@ config:
24
24
  # Python package dependencies (also contributed to venv)
25
25
  pythonPackageRequirements: []
26
26
  venvPkgDeps:
27
- - setuptools
28
- - wheel
29
- - build
30
27
  - ${pythonPackageRequirements}
31
28
 
32
29
  # Extra (external) resources to be bundled in built python wheel
@@ -51,6 +48,16 @@ config:
51
48
  password: ${{ secrets.pypi_password }}
52
49
  packages_dir: ${r!pythonArtifacts}
53
50
 
51
+ # Wheel install arguments
52
+ pythonWheelInstallArgs:
53
+ - --force-reinstall # force reinstall because otherwise install will be skipped if version didn't changed
54
+ - --no-deps # but skip dependencies to avoid reinstalling everything (deps are already installed by py.venv task)
55
+
56
+ # Editable install arguments
57
+ pythonEditableInstallArgs:
58
+ - --no-deps # skip dependencies to avoid reinstalling everything
59
+ - --no-build-isolation # disable dependencies install when building for "editable" mode
60
+
54
61
  tasks:
55
62
 
56
63
  # Python editable install
@@ -69,7 +76,8 @@ tasks:
69
76
  - ${pythonProjectFile}
70
77
  builder: nmk_python.build.EditableBuilder
71
78
  params:
72
- pip_args: --force-reinstall --no-deps ${venvPipArgs}
79
+ pip_args:
80
+ - ${pythonEditableInstallArgs}
73
81
 
74
82
  # Python wheel build
75
83
  py.build:
@@ -110,9 +118,8 @@ tasks:
110
118
  builder: nmk_python.build.Installer
111
119
  params:
112
120
  name: ${pythonPackage}
113
- pip_args: --force-reinstall --no-deps ${venvPipArgs}
114
- # - force reinstall because otherwise install will be skipped if version didn't changed
115
- # - but skip dependencies to avoid reinstalling everything (deps are already installed by py.venv task)
121
+ pip_args:
122
+ - ${pythonWheelInstallArgs}
116
123
  to_remove: ${pythonEditableStamp}
117
124
 
118
125
  # Python module clean
nmk_python/ruff.yml CHANGED
@@ -1,9 +1,5 @@
1
1
  config:
2
2
 
3
- # Just needs ruff
4
- venvPkgDeps:
5
- - ruff
6
-
7
3
  # Max line length
8
4
  pythonLineLength: 160
9
5
 
nmk_python/tests.yml CHANGED
@@ -3,12 +3,6 @@ config:
3
3
  pythonProjectFileFragments:
4
4
  - ${BASEDIR}/templates/pytest.toml.jinja
5
5
 
6
- # Tests related venv dependencies
7
- venvPkgDeps:
8
- - pytest-xdist
9
- - pytest-cov
10
- - pytest-multilog
11
-
12
6
  # Coverage outputs
13
7
  pythonCoverageHtmlReport: ${outputDir}/coverage-report
14
8
  pythonCoverageXmlReport: ${outputDir}/coverage.xml
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.2
2
2
  Name: nmk-python
3
- Version: 0.17.1
3
+ Version: 1.1.0
4
4
  Summary: Python plugin for nmk build system
5
5
  Author: The dynod project
6
6
  Maintainer: The dynod project
@@ -16,9 +16,16 @@ Classifier: Programming Language :: Python :: 3.13
16
16
  Requires-Python: >=3.9
17
17
  Description-Content-Type: text/markdown
18
18
  License-File: LICENSE
19
- Requires-Dist: nmk-base>=0.24.0
19
+ Requires-Dist: nmk-base>=1.0.1
20
20
  Requires-Dist: Jinja2
21
21
  Requires-Dist: tomlkit
22
+ Requires-Dist: setuptools
23
+ Requires-Dist: wheel
24
+ Requires-Dist: build
25
+ Requires-Dist: ruff
26
+ Requires-Dist: pytest-xdist
27
+ Requires-Dist: pytest-cov
28
+ Requires-Dist: pytest-multilog
22
29
 
23
30
  # nmk-python
24
31
  Python plugin for nmk build system
@@ -1,16 +1,16 @@
1
1
  nmk_python/__init__.py,sha256=EouCWXbAeObby1vOCx0Vx_WaGC2fEEFDMCen3JZt4TU,446
2
2
  nmk_python/badges.yml,sha256=LzElZecCXKxdF-oPkvIwfnbQlOcAM_zUj6MelClmAug,749
3
- nmk_python/build.py,sha256=uTOaj-iPOrJdoynXqdnN-2OlXXas_S45YjgIaC_n2Ok,6275
4
- nmk_python/build.yml,sha256=miakmtxwHhtFXK257saotRhtgjGbKhq8F3OPAADZ6EA,4011
3
+ nmk_python/build.py,sha256=rN7CvAUPU-gGsg17cBojdqGBSbW-GAEFItz234rqM1E,6307
4
+ nmk_python/build.yml,sha256=Yn4zVuNNo1fnAsvlI_ul_kmEpLp_5WHK4pA0T9kkQ3I,4297
5
5
  nmk_python/doc.yml,sha256=12amAlYylH7JAHaqBIOoEZ_LrXY_bPNKuHrrwUkIj8w,932
6
6
  nmk_python/files.py,sha256=gtPf6ldR5F4oGsAdzFnEIbI9MqqvF3z5JQnyONZmLmk,1863
7
7
  nmk_python/files.yml,sha256=-vGjogdulwsfdKVEUa5RARYDKxF3m9RmHKFnIhaT3_k,780
8
8
  nmk_python/plugin.yml,sha256=hi7osXyIwpHgJAsww5mhOA6emxhzgitDF8cOsvyY29Y,1068
9
9
  nmk_python/project.yml,sha256=sRIMvKkasrYlIvOo3DsVyNM_sgID_sHVgZg_bSIqtfw,975
10
10
  nmk_python/ruff.py,sha256=tfqC66NEB3P1FID1qzP-Ba3hafF02A1I9GIeruGUW2U,1058
11
- nmk_python/ruff.yml,sha256=VIlH52dc4m-dgsm-SFuD4-AK6knke1-GuJSJQvVsXWE,1863
11
+ nmk_python/ruff.yml,sha256=09ackKHfT9oXKqIniYUehFkyW2DUxlHl5Ak5x2tlvQQ,1808
12
12
  nmk_python/tests.py,sha256=8kRKP3dT2Thi5W5sCQSQOPXkV1D9C7tde3QYySo6G2c,1212
13
- nmk_python/tests.yml,sha256=agb5QJSPIdjfzalQbvhOzoiX_Ijw_Zj1KxzNZBQz--w,1664
13
+ nmk_python/tests.yml,sha256=wQusYK1bxSl87zWFQy5lJcrkcAz4pMEZT9Vt6o2K5Vs,1538
14
14
  nmk_python/version.py,sha256=fLpOWdujYwlJB7XhWaOGCTeg3gQaClk2YHoRkkW64dE,3109
15
15
  nmk_python/version.yml,sha256=jU0b6JIBVWl5JZJmRBRiqT_pIRyVdddwnH5U5jV1VJ8,904
16
16
  nmk_python/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -19,8 +19,8 @@ nmk_python/templates/pytest.toml.jinja,sha256=zQ3SRWnF23Omxm7zInE54j0l3OyjXSOn5p
19
19
  nmk_python/templates/python-settings.json.jinja,sha256=-6J1tybWEzChxlDqu4tp9BMWxbYD8HpztGs9G8LkC_w,877
20
20
  nmk_python/templates/python-test-debug-launch.json.jinja,sha256=J_xju2EpHNXvgvqBxlf99p7g-ZMh3xE-_2r7o_57gpU,364
21
21
  nmk_python/templates/ruff.toml.jinja,sha256=DTHe1ixK1SBY8d2xBCfkGz89HzjAoMO7Ogs12AY1i4Y,346
22
- nmk_python-0.17.1.dist-info/LICENSE,sha256=PROo9EW7wP6jmSr_90OluItAsIB411b_CAqEBioMKpI,1074
23
- nmk_python-0.17.1.dist-info/METADATA,sha256=qIfnrB8msgjFhdqaGbeLq_aj74iwf6JNUL55ZJercrg,2947
24
- nmk_python-0.17.1.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
25
- nmk_python-0.17.1.dist-info/top_level.txt,sha256=MCb5w_hoOZ0kk3Dajxrd9Pz6lZ3pyuS6TQCRA3vddTo,11
26
- nmk_python-0.17.1.dist-info/RECORD,,
22
+ nmk_python-1.1.0.dist-info/LICENSE,sha256=PROo9EW7wP6jmSr_90OluItAsIB411b_CAqEBioMKpI,1074
23
+ nmk_python-1.1.0.dist-info/METADATA,sha256=xdcI0iJEVV_3VQQHdj2m0oEo5ith5CAhcSMQSXM2CWo,3118
24
+ nmk_python-1.1.0.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
25
+ nmk_python-1.1.0.dist-info/top_level.txt,sha256=MCb5w_hoOZ0kk3Dajxrd9Pz6lZ3pyuS6TQCRA3vddTo,11
26
+ nmk_python-1.1.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.6.0)
2
+ Generator: setuptools (75.8.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5