diff options
author | Nirbheek Chauhan <nirbheek@centricular.com> | 2020-02-15 23:47:53 +0530 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2020-02-17 00:38:57 +0200 |
commit | 40b58be100af300906e39025276c6576bc4b3559 (patch) | |
tree | ce5915d2b86440a635d484c00b27f1ace671c599 | |
parent | d8c3dc66d5370c880db3d4473f208f01154b250a (diff) | |
download | meson-40b58be100af300906e39025276c6576bc4b3559.zip meson-40b58be100af300906e39025276c6576bc4b3559.tar.gz meson-40b58be100af300906e39025276c6576bc4b3559.tar.bz2 |
modules/python: Do not error out if positional args are passed
Also update the documentation.
Fixes https://github.com/mesonbuild/meson/issues/6470
-rw-r--r-- | docs/markdown/Python-module.md | 5 | ||||
-rw-r--r-- | mesonbuild/modules/python.py | 6 |
2 files changed, 8 insertions, 3 deletions
diff --git a/docs/markdown/Python-module.md b/docs/markdown/Python-module.md index 152aa5c..d99b36a 100644 --- a/docs/markdown/Python-module.md +++ b/docs/markdown/Python-module.md @@ -103,8 +103,9 @@ need to add `dependencies : py_installation.dependency()`, see [][`dependency()` python_dependency py_installation.dependency(...) ``` -This method accepts the same arguments as the standard [dependency] function and -the following additional keyword arguments: +This method accepts no positional arguments, and the same keyword arguments as +the standard [dependency] function. It also supports the following keyword +argument: - `embed`: *(since 0.53.0)* If true, meson will try to find a python dependency that can be used for embedding python into an application. diff --git a/mesonbuild/modules/python.py b/mesonbuild/modules/python.py index 6644fd2..3f971f7 100644 --- a/mesonbuild/modules/python.py +++ b/mesonbuild/modules/python.py @@ -348,10 +348,14 @@ class PythonInstallation(ExternalProgramHolder): return self.interpreter.func_shared_module(None, args, kwargs) - @noPosargs @permittedKwargs(permitted_kwargs['dependency']) @FeatureNewKwargs('python_installation.dependency', '0.53.0', ['embed']) def dependency_method(self, args, kwargs): + if args: + mlog.warning('python_installation.dependency() does not take any ' + 'positional arguments. It always returns a Python ' + 'dependency. This will become an error in the future.', + location=self.interpreter.current_node) dep = PythonDependency(self, self.interpreter.environment, kwargs) return self.interpreter.holderify(dep) |