All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH] check-package: move parts to subdirectory
@ 2017-04-19 18:06 Ricardo Martincoski
  2017-04-20 20:30 ` Thomas Petazzoni
  0 siblings, 1 reply; 2+ messages in thread
From: Ricardo Martincoski @ 2017-04-19 18:06 UTC (permalink / raw)
  To: buildroot

Currently check-package script use many files in the same directory.

Keep the main script at support/scripts/check-package and move the rest
to a subdirectory.

The modules were previously prefixed to make easy to identify which
script they belong to.
It's not needed when using a subdirectory, so remove the prefix.

Note: if this commit is checked out and the script is run, and later on
a previous version is checked out, the file
support/scripts/checkpackagelib/__init__.pyc
needs to be manually removed to prevent Python interpreter to look for
checkpackagelib package when only the checkpackagelib module is
available.

Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
---
The note above can be removed when applying if you think it is not
needed.
---
 support/scripts/check-package                          | 18 +++++++++---------
 support/scripts/checkpackagelib/__init__.py            |  0
 .../{checkpackagebase.py => checkpackagelib/base.py}   |  2 +-
 .../{checkpackagelib.py => checkpackagelib/lib.py}     |  4 ++--
 .../lib_config.py}                                     | 12 ++++++------
 .../lib_hash.py}                                       | 12 ++++++------
 .../lib_mk.py}                                         | 12 ++++++------
 .../lib_patch.py}                                      |  6 +++---
 .../{check-package.txt => checkpackagelib/readme.txt}  |  7 +++----
 9 files changed, 36 insertions(+), 37 deletions(-)
 create mode 100644 support/scripts/checkpackagelib/__init__.py
 rename support/scripts/{checkpackagebase.py => checkpackagelib/base.py} (78%)
 rename support/scripts/{checkpackagelib.py => checkpackagelib/lib.py} (93%)
 rename support/scripts/{checkpackagelib_config.py => checkpackagelib/lib_config.py} (93%)
 rename support/scripts/{checkpackagelib_hash.py => checkpackagelib/lib_hash.py} (88%)
 rename support/scripts/{checkpackagelib_mk.py => checkpackagelib/lib_mk.py} (96%)
 rename support/scripts/{checkpackagelib_patch.py => checkpackagelib/lib_patch.py} (92%)
 rename support/scripts/{check-package.txt => checkpackagelib/readme.txt} (95%)

diff --git a/support/scripts/check-package b/support/scripts/check-package
index 2add4712c..74ea46f81 100755
--- a/support/scripts/check-package
+++ b/support/scripts/check-package
@@ -1,5 +1,5 @@
 #!/usr/bin/env python
-# See support/scripts/check-package.txt before editing this file.
+# See support/scripts/checkpackagelib/readme.txt before editing this file.
 
 from __future__ import print_function
 import argparse
@@ -7,10 +7,10 @@ import inspect
 import re
 import sys
 
-import checkpackagelib_config
-import checkpackagelib_hash
-import checkpackagelib_mk
-import checkpackagelib_patch
+import checkpackagelib.lib_config
+import checkpackagelib.lib_hash
+import checkpackagelib.lib_mk
+import checkpackagelib.lib_patch
 
 VERBOSE_LEVEL_TO_SHOW_IGNORED_FILES = 3
 flags = None  # Command line arguments.
@@ -48,13 +48,13 @@ def get_lib_from_filename(fname):
     if FILE_IS_FROM_A_PACKAGE.search(fname) is None:
         return None
     if CONFIG_IN_FILENAME.search(fname):
-        return checkpackagelib_config
+        return checkpackagelib.lib_config
     if fname.endswith(".hash"):
-        return checkpackagelib_hash
+        return checkpackagelib.lib_hash
     if fname.endswith(".mk"):
-        return checkpackagelib_mk
+        return checkpackagelib.lib_mk
     if fname.endswith(".patch"):
-        return checkpackagelib_patch
+        return checkpackagelib.lib_patch
     return None
 
 
diff --git a/support/scripts/checkpackagelib/__init__.py b/support/scripts/checkpackagelib/__init__.py
new file mode 100644
index 000000000..e69de29bb
diff --git a/support/scripts/checkpackagebase.py b/support/scripts/checkpackagelib/base.py
similarity index 78%
rename from support/scripts/checkpackagebase.py
rename to support/scripts/checkpackagelib/base.py
index e4c664d24..7669775f0 100644
--- a/support/scripts/checkpackagebase.py
+++ b/support/scripts/checkpackagelib/base.py
@@ -1,4 +1,4 @@
-# See support/scripts/check-package.txt before editing this file.
+# See support/scripts/checkpackagelib/readme.txt before editing this file.
 
 
 class _CheckFunction(object):
diff --git a/support/scripts/checkpackagelib.py b/support/scripts/checkpackagelib/lib.py
similarity index 93%
rename from support/scripts/checkpackagelib.py
rename to support/scripts/checkpackagelib/lib.py
index 280084575..3077f518b 100644
--- a/support/scripts/checkpackagelib.py
+++ b/support/scripts/checkpackagelib/lib.py
@@ -1,6 +1,6 @@
-# See support/scripts/check-package.txt before editing this file.
+# See support/scripts/checkpackagelib/readme.txt before editing this file.
 
-from checkpackagebase import _CheckFunction
+from base import _CheckFunction
 
 
 class ConsecutiveEmptyLines(_CheckFunction):
diff --git a/support/scripts/checkpackagelib_config.py b/support/scripts/checkpackagelib/lib_config.py
similarity index 93%
rename from support/scripts/checkpackagelib_config.py
rename to support/scripts/checkpackagelib/lib_config.py
index be52d9432..8f49224e9 100644
--- a/support/scripts/checkpackagelib_config.py
+++ b/support/scripts/checkpackagelib/lib_config.py
@@ -1,16 +1,16 @@
-# See support/scripts/check-package.txt before editing this file.
+# See support/scripts/checkpackagelib/readme.txt before editing this file.
 # Kconfig generates errors if someone introduces a typo like "boool" instead of
 # "bool", so below check functions don't need to check for things already
 # checked by running "make menuconfig".
 
 import re
 
-from checkpackagebase import _CheckFunction
+from base import _CheckFunction
 # Notice: ignore 'imported but unused' from pyflakes for check functions.
-from checkpackagelib import ConsecutiveEmptyLines
-from checkpackagelib import EmptyLastLine
-from checkpackagelib import NewlineAtEof
-from checkpackagelib import TrailingSpace
+from lib import ConsecutiveEmptyLines
+from lib import EmptyLastLine
+from lib import NewlineAtEof
+from lib import TrailingSpace
 
 
 def _empty_or_comment(text):
diff --git a/support/scripts/checkpackagelib_hash.py b/support/scripts/checkpackagelib/lib_hash.py
similarity index 88%
rename from support/scripts/checkpackagelib_hash.py
rename to support/scripts/checkpackagelib/lib_hash.py
index 47fe18756..c76abb43f 100644
--- a/support/scripts/checkpackagelib_hash.py
+++ b/support/scripts/checkpackagelib/lib_hash.py
@@ -1,16 +1,16 @@
-# See support/scripts/check-package.txt before editing this file.
+# See support/scripts/checkpackagelib/readme.txt before editing this file.
 # The validity of the hashes itself is checked when building, so below check
 # functions don't need to check for things already checked by running
 # "make package-dirclean package-source".
 
 import re
 
-from checkpackagebase import _CheckFunction
+from base import _CheckFunction
 # Notice: ignore 'imported but unused' from pyflakes for check functions.
-from checkpackagelib import ConsecutiveEmptyLines
-from checkpackagelib import EmptyLastLine
-from checkpackagelib import NewlineAtEof
-from checkpackagelib import TrailingSpace
+from lib import ConsecutiveEmptyLines
+from lib import EmptyLastLine
+from lib import NewlineAtEof
+from lib import TrailingSpace
 
 
 def _empty_line_or_comment(text):
diff --git a/support/scripts/checkpackagelib_mk.py b/support/scripts/checkpackagelib/lib_mk.py
similarity index 96%
rename from support/scripts/checkpackagelib_mk.py
rename to support/scripts/checkpackagelib/lib_mk.py
index 0740a37f7..a51e0e3ce 100644
--- a/support/scripts/checkpackagelib_mk.py
+++ b/support/scripts/checkpackagelib/lib_mk.py
@@ -1,4 +1,4 @@
-# See support/scripts/check-package.txt before editing this file.
+# See support/scripts/checkpackagelib/readme.txt before editing this file.
 # There are already dependency checks during the build, so below check
 # functions don't need to check for things already checked by exploring the
 # menu options using "make menuconfig" and by running "make" with appropriate
@@ -6,12 +6,12 @@
 
 import re
 
-from checkpackagebase import _CheckFunction
+from base import _CheckFunction
 # Notice: ignore 'imported but unused' from pyflakes for check functions.
-from checkpackagelib import ConsecutiveEmptyLines
-from checkpackagelib import EmptyLastLine
-from checkpackagelib import NewlineAtEof
-from checkpackagelib import TrailingSpace
+from lib import ConsecutiveEmptyLines
+from lib import EmptyLastLine
+from lib import NewlineAtEof
+from lib import TrailingSpace
 
 
 class Indent(_CheckFunction):
diff --git a/support/scripts/checkpackagelib_patch.py b/support/scripts/checkpackagelib/lib_patch.py
similarity index 92%
rename from support/scripts/checkpackagelib_patch.py
rename to support/scripts/checkpackagelib/lib_patch.py
index ee46efb70..c191d262e 100644
--- a/support/scripts/checkpackagelib_patch.py
+++ b/support/scripts/checkpackagelib/lib_patch.py
@@ -1,13 +1,13 @@
-# See support/scripts/check-package.txt before editing this file.
+# See support/scripts/checkpackagelib/readme.txt before editing this file.
 # The format of the patch files is tested during the build, so below check
 # functions don't need to check for things already checked by running
 # "make package-dirclean package-patch".
 
 import re
 
-from checkpackagebase import _CheckFunction
+from base import _CheckFunction
 # Notice: ignore 'imported but unused' from pyflakes for check functions.
-from checkpackagelib import NewlineAtEof
+from lib import NewlineAtEof
 
 
 class ApplyOrder(_CheckFunction):
diff --git a/support/scripts/check-package.txt b/support/scripts/checkpackagelib/readme.txt
similarity index 95%
rename from support/scripts/check-package.txt
rename to support/scripts/checkpackagelib/readme.txt
index 630cd04f0..0444d1799 100644
--- a/support/scripts/check-package.txt
+++ b/support/scripts/checkpackagelib/readme.txt
@@ -8,8 +8,8 @@ How the scripts are structured:
   of variables (for the case it needs to keep data across calls) and the
   equivalent finalization (e.g. for the case a warning must be issued if some
   pattern is not in the input file).
-- checkpackagebase.py contains the base class for all check functions.
-- checkpackagelib.py contains the classes for common check functions.
+- base.py contains the base class for all check functions.
+- lib.py contains the classes for common check functions.
   Each check function is explicitly included in a given type-parsing library.
   Do not include every single check function in this file, a class that will
   only parse hash files should be implemented in the hash-parsing library.
@@ -20,8 +20,7 @@ How the scripts are structured:
   first and second warnings are printed; when called with -vv until the third
   warning is printed; an so on.
   Helper functions can be defined and will not be called by the main script.
-- checkpackagelib_type.py contains check functions specific to files of this
-  type.
+- lib_type.py contains check functions specific to files of this type.
 
 Some hints when changing this code:
 - prefer O(n) algorithms, where n is the total number of lines in the files
-- 
2.11.0

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [Buildroot] [PATCH] check-package: move parts to subdirectory
  2017-04-19 18:06 [Buildroot] [PATCH] check-package: move parts to subdirectory Ricardo Martincoski
@ 2017-04-20 20:30 ` Thomas Petazzoni
  0 siblings, 0 replies; 2+ messages in thread
From: Thomas Petazzoni @ 2017-04-20 20:30 UTC (permalink / raw)
  To: buildroot

Hello,

On Wed, 19 Apr 2017 15:06:21 -0300, Ricardo Martincoski wrote:
> Currently check-package script use many files in the same directory.
> 
> Keep the main script at support/scripts/check-package and move the rest
> to a subdirectory.
> 
> The modules were previously prefixed to make easy to identify which
> script they belong to.
> It's not needed when using a subdirectory, so remove the prefix.
> 
> Note: if this commit is checked out and the script is run, and later on
> a previous version is checked out, the file
> support/scripts/checkpackagelib/__init__.pyc
> needs to be manually removed to prevent Python interpreter to look for
> checkpackagelib package when only the checkpackagelib module is
> available.
> 
> Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
> Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
> ---
> The note above can be removed when applying if you think it is not
> needed.
> ---
>  support/scripts/check-package                          | 18 +++++++++---------
>  support/scripts/checkpackagelib/__init__.py            |  0
>  .../{checkpackagebase.py => checkpackagelib/base.py}   |  2 +-
>  .../{checkpackagelib.py => checkpackagelib/lib.py}     |  4 ++--
>  .../lib_config.py}                                     | 12 ++++++------
>  .../lib_hash.py}                                       | 12 ++++++------
>  .../lib_mk.py}                                         | 12 ++++++------
>  .../lib_patch.py}                                      |  6 +++---
>  .../{check-package.txt => checkpackagelib/readme.txt}  |  7 +++----
>  9 files changed, 36 insertions(+), 37 deletions(-)
>  create mode 100644 support/scripts/checkpackagelib/__init__.py
>  rename support/scripts/{checkpackagebase.py => checkpackagelib/base.py} (78%)
>  rename support/scripts/{checkpackagelib.py => checkpackagelib/lib.py} (93%)
>  rename support/scripts/{checkpackagelib_config.py => checkpackagelib/lib_config.py} (93%)
>  rename support/scripts/{checkpackagelib_hash.py => checkpackagelib/lib_hash.py} (88%)
>  rename support/scripts/{checkpackagelib_mk.py => checkpackagelib/lib_mk.py} (96%)
>  rename support/scripts/{checkpackagelib_patch.py => checkpackagelib/lib_patch.py} (92%)
>  rename support/scripts/{check-package.txt => checkpackagelib/readme.txt} (95%)

Applied to master, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2017-04-20 20:30 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-04-19 18:06 [Buildroot] [PATCH] check-package: move parts to subdirectory Ricardo Martincoski
2017-04-20 20:30 ` Thomas Petazzoni

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.