gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-build-common] branch master updated: Add yapf to detection. Next


From: gnunet
Subject: [taler-build-common] branch master updated: Add yapf to detection. Next we should probably abstract the tools more to avoid this boilerplating.
Date: Mon, 16 Dec 2019 13:51:53 +0100

This is an automated email from the git hooks/post-receive script.

ng0 pushed a commit to branch master
in repository build-common.

The following commit(s) were added to refs/heads/master by this push:
     new 248914b  Add yapf to detection. Next we should probably abstract the 
tools more to avoid this boilerplating.
248914b is described below

commit 248914b63660e506645c8059eacf27d41145c88f
Author: ng0 <address@hidden>
AuthorDate: Mon Dec 16 12:51:10 2019 +0000

    Add yapf to detection. Next we should probably abstract the tools
    more to avoid this boilerplating.
---
 talerbuildconfig.py | 43 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

diff --git a/talerbuildconfig.py b/talerbuildconfig.py
index 7e91de4..28a20f8 100644
--- a/talerbuildconfig.py
+++ b/talerbuildconfig.py
@@ -231,6 +231,49 @@ class PyToxTool(Tool):
                     return True
 
 
+class YapfTool(Tool):
+    name ="yapf"
+
+    def args(self, parser):
+        parser.add_argument(
+            "--with-yapf", type=str, help="name of the yapf executable"
+        )
+
+    def check(self, buildconfig):
+        # No suffix. Would probably be cheaper to do this in
+        # the dict as well. We also need to check the python
+        # version it was build against (TODO).
+        if existence("yapf"):
+            import yapf
+            myyapf_version = yapf.__version__
+            buildconfig._set_tool("yapf", "yapf", myyapf_version)
+            return True
+        else:
+            # Has suffix, try suffix. We know the names in advance,
+            # so use a dictionary and iterate over it. Use enough names
+            # to safe updating this for another couple of years.
+            version_dict = {
+                "3.0": "yapf3.0",
+                "3.1": "yapf3.1",
+                "3.2": "yapf3.2",
+                "3.3": "yapf3.3",
+                "3.4": "yapf3.4",
+                "3.5": "yapf3.5",
+                "3.6": "yapf3.6",
+                "3.7": "yapf3.7",
+                "3.8": "yapf3.8",
+                "3.9": "yapf3.9",
+                "4.0": "yapf4.0",
+            }
+            for key, value in version_dict.items():
+                if existence(value):
+                    # FIXME: This version reporting is slightly off
+                    # FIXME: and only maps to the suffix.
+                    mypytox_version = key
+                    buildconfig._set_tool("yapf", value, mypytox_version)
+                    return True
+
+
 class PyBabelTool(Tool):
     name = "pybabel"
 

-- 
To stop receiving notification emails like this one, please contact
address@hidden.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]