From d884194cd94ae0976b034048aa865f26c2a96c94 Mon Sep 17 00:00:00 2001 From: Sharan Yalburgi Date: Wed, 14 Feb 2018 10:24:59 +0000 Subject: [PATCH 1/9] Add help option when running gensim --- gensim/__main__.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 gensim/__main__.py diff --git a/gensim/__main__.py b/gensim/__main__.py new file mode 100644 index 0000000000..c9f7722661 --- /dev/null +++ b/gensim/__main__.py @@ -0,0 +1,19 @@ +import platform +import sys +import numpy +import scipy +import gensim +import argparse + +if __name__ == "__main__": + + parser = argparse.ArgumentParser() + parser.add_argument("--info", action="store_true", help="Display version of Gensim and its dpendencies") + opt = parser.parse_args() + if opt.info: + print(platform.platform()) + print("Python", sys.version) + print("NumPy", numpy.__version__) + print("SciPy", scipy.__version__) + print("gensim", gensim.__version__) + From e337c80bee9da139c2612b36047b8771e5108976 Mon Sep 17 00:00:00 2001 From: Sharan Yalburgi Date: Wed, 14 Feb 2018 13:19:46 +0000 Subject: [PATCH 2/9] requested changes --- gensim/__init__.py | 31 +++++++++++++++++++++++++++++++ gensim/__main__.py | 29 ++++++++++++++--------------- 2 files changed, 45 insertions(+), 15 deletions(-) diff --git a/gensim/__init__.py b/gensim/__init__.py index 8b1fb6817c..4c60dda509 100644 --- a/gensim/__init__.py +++ b/gensim/__init__.py @@ -6,6 +6,16 @@ from gensim import parsing, matutils, interfaces, corpora, models, similarities, summarization, utils # noqa:F401 import logging +import platform +import sys +import numpy +import scipy +import argparse +import gensim +import smart_open +from gensim.models.word2vec import FAST_VERSION + + __version__ = '3.3.0' @@ -19,3 +29,24 @@ def emit(self, record): logger = logging.getLogger('gensim') if len(logger.handlers) == 0: # To ensure reload() doesn't add another one logger.addHandler(NullHandler()) + + +def package_info(): + """Get the versions of Gensim and its dependencies, the location where Gensim is installed and platform on which the system is running. + + Returns + ------- + dict + Returns a dictionary containing the versions pof Gensim, Python, NumPy, SciPy and platform information. + """ + dict = {} + dict["platform"] = platform.platform() + dict["python"] = sys.version + dict["NumPy"] = numpy.__version__ + dict["SciPy"] = scipy.__version__ + dict["gensim"] = gensim.__version__, gensim.__file__ +# dict["smart_open"] = smart_open.__version__ + dict["fast_version"] = FAST_VERSION + + return dict + diff --git a/gensim/__main__.py b/gensim/__main__.py index c9f7722661..4bbc79f59f 100644 --- a/gensim/__main__.py +++ b/gensim/__main__.py @@ -1,19 +1,18 @@ -import platform -import sys -import numpy -import scipy -import gensim import argparse +from gensim import package_info -if __name__ == "__main__": - parser = argparse.ArgumentParser() - parser.add_argument("--info", action="store_true", help="Display version of Gensim and its dpendencies") - opt = parser.parse_args() - if opt.info: - print(platform.platform()) - print("Python", sys.version) - print("NumPy", numpy.__version__) - print("SciPy", scipy.__version__) - print("gensim", gensim.__version__) + +parser = argparse.ArgumentParser() +parser.add_argument("--info", action="store_true", help="Display version of Gensim and its dpendencies") +opt = parser.parse_args() + +if opt.info: + dict = package_info() + print("\nGensim ", dict["gensim"][0], " from ", dict["gensim"][1], "\n") + print("FAST_VERSION ",dict["fast_version"], "\n\n") + print("python ", dict["python"], "\n\n") + print("Platform \t", dict["platform"], "\n") + print("NumPy \t\t", dict["NumPy"], "\n") + print("SciPy \t\t", dict["SciPy"], "\n") From 573e933ce00aa37c867ea8ade05de3a55b1a5492 Mon Sep 17 00:00:00 2001 From: Sharan Yalburgi Date: Wed, 14 Feb 2018 13:31:06 +0000 Subject: [PATCH 3/9] Add program output --- gensim/__init__.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gensim/__init__.py b/gensim/__init__.py index 4c60dda509..d436e048cd 100644 --- a/gensim/__init__.py +++ b/gensim/__init__.py @@ -38,6 +38,8 @@ def package_info(): ------- dict Returns a dictionary containing the versions pof Gensim, Python, NumPy, SciPy and platform information. + + .. program-output:: python -m gensim --info """ dict = {} dict["platform"] = platform.platform() From 1a81616cef563ddc6f27679a4fe42eac56461fb2 Mon Sep 17 00:00:00 2001 From: Sharan Yalburgi Date: Wed, 14 Feb 2018 13:56:49 +0000 Subject: [PATCH 4/9] Fix flake8 errors --- gensim/__init__.py | 14 ++++++-------- gensim/__main__.py | 9 +++------ 2 files changed, 9 insertions(+), 14 deletions(-) diff --git a/gensim/__init__.py b/gensim/__init__.py index d436e048cd..c9636401cd 100644 --- a/gensim/__init__.py +++ b/gensim/__init__.py @@ -10,9 +10,7 @@ import sys import numpy import scipy -import argparse import gensim -import smart_open from gensim.models.word2vec import FAST_VERSION @@ -32,15 +30,16 @@ def emit(self, record): def package_info(): - """Get the versions of Gensim and its dependencies, the location where Gensim is installed and platform on which the system is running. - + """Get the versions of Gensim and its dependencies, the location where Gensim is\ + installed and platform on which the system is running. + Returns ------- - dict + dict Returns a dictionary containing the versions pof Gensim, Python, NumPy, SciPy and platform information. .. program-output:: python -m gensim --info - """ + """ dict = {} dict["platform"] = platform.platform() dict["python"] = sys.version @@ -49,6 +48,5 @@ def package_info(): dict["gensim"] = gensim.__version__, gensim.__file__ # dict["smart_open"] = smart_open.__version__ dict["fast_version"] = FAST_VERSION - - return dict + return dict diff --git a/gensim/__main__.py b/gensim/__main__.py index 4bbc79f59f..3a76e3ef29 100644 --- a/gensim/__main__.py +++ b/gensim/__main__.py @@ -1,8 +1,6 @@ import argparse from gensim import package_info - - parser = argparse.ArgumentParser() parser.add_argument("--info", action="store_true", help="Display version of Gensim and its dpendencies") opt = parser.parse_args() @@ -10,9 +8,8 @@ if opt.info: dict = package_info() print("\nGensim ", dict["gensim"][0], " from ", dict["gensim"][1], "\n") - print("FAST_VERSION ",dict["fast_version"], "\n\n") + print("FAST_VERSION ", dict["fast_version"], "\n\n") print("python ", dict["python"], "\n\n") print("Platform \t", dict["platform"], "\n") - print("NumPy \t\t", dict["NumPy"], "\n") - print("SciPy \t\t", dict["SciPy"], "\n") - + print("NumPy \t\t", dict["NumPy"], "\n") + print("SciPy \t\t", dict["SciPy"], "\n") From 26f97cc906e1a59ed771893ac9aba12651f3aa7e Mon Sep 17 00:00:00 2001 From: Sharan Yalburgi Date: Wed, 14 Feb 2018 20:14:00 +0000 Subject: [PATCH 5/9] Add .rst file --- docs/src/__init__.rst | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 docs/src/__init__.rst diff --git a/docs/src/__init__.rst b/docs/src/__init__.rst new file mode 100644 index 0000000000..76a73e1079 --- /dev/null +++ b/docs/src/__init__.rst @@ -0,0 +1,11 @@ +****** +Gensim +****** + +Compute pair-wise document similarities within a corpus of documents +#################################################################### + +__init__ +******** + +.. autofunction:: package_info From bb3e90a05f93c6e9ff95fd9dc2276b85c5ddc07b Mon Sep 17 00:00:00 2001 From: ivan Date: Thu, 15 Feb 2018 18:35:10 +0500 Subject: [PATCH 6/9] Fix many stuff --- docs/src/__init__.rst | 11 ------- docs/src/apiref.rst | 1 + docs/src/gensim.rst | 9 ++++++ gensim/__init__.py | 68 ++++++++++++++++++++++++++----------------- gensim/__main__.py | 16 ++-------- 5 files changed, 55 insertions(+), 50 deletions(-) delete mode 100644 docs/src/__init__.rst create mode 100644 docs/src/gensim.rst diff --git a/docs/src/__init__.rst b/docs/src/__init__.rst deleted file mode 100644 index 76a73e1079..0000000000 --- a/docs/src/__init__.rst +++ /dev/null @@ -1,11 +0,0 @@ -****** -Gensim -****** - -Compute pair-wise document similarities within a corpus of documents -#################################################################### - -__init__ -******** - -.. autofunction:: package_info diff --git a/docs/src/apiref.rst b/docs/src/apiref.rst index 453b3ba864..0fe466d1c9 100644 --- a/docs/src/apiref.rst +++ b/docs/src/apiref.rst @@ -99,3 +99,4 @@ Modules: summarization/syntactic_unit summarization/textcleaner viz/poincare + gensim.rst diff --git a/docs/src/gensim.rst b/docs/src/gensim.rst new file mode 100644 index 0000000000..5153823e19 --- /dev/null +++ b/docs/src/gensim.rst @@ -0,0 +1,9 @@ +:mod:`gensim` -- CLI interface of Gensim +======================================== + +.. automodule:: gensim + :synopsis: CLI interface of Gensim. + :members: + :inherited-members: + :undoc-members: + :show-inheritance: diff --git a/gensim/__init__.py b/gensim/__init__.py index c9636401cd..58870e00fe 100644 --- a/gensim/__init__.py +++ b/gensim/__init__.py @@ -1,19 +1,18 @@ -""" -This package contains interfaces and functionality to compute pair-wise document -similarities within a corpus of documents. +"""This package contains interfaces and functionality to compute pair-wise document similarities within a corpus +of documents. + +Also provide CLI interface + +Command line arguments +---------------------- +.. program-output:: python -m gensim --help + :ellipsis: 0, -4 + """ from gensim import parsing, matutils, interfaces, corpora, models, similarities, summarization, utils # noqa:F401 import logging -import platform -import sys -import numpy -import scipy -import gensim -from gensim.models.word2vec import FAST_VERSION - - __version__ = '3.3.0' @@ -30,23 +29,40 @@ def emit(self, record): def package_info(): - """Get the versions of Gensim and its dependencies, the location where Gensim is\ - installed and platform on which the system is running. + """Get the versions of Gensim and its dependencies, + the location where Gensim is installed and platform on which the system is running. Returns ------- - dict - Returns a dictionary containing the versions pof Gensim, Python, NumPy, SciPy and platform information. + dict of (str, str) + Dictionary containing the versions of Gensim, Python, NumPy, SciPy and platform information. - .. program-output:: python -m gensim --info """ - dict = {} - dict["platform"] = platform.platform() - dict["python"] = sys.version - dict["NumPy"] = numpy.__version__ - dict["SciPy"] = scipy.__version__ - dict["gensim"] = gensim.__version__, gensim.__file__ -# dict["smart_open"] = smart_open.__version__ - dict["fast_version"] = FAST_VERSION - - return dict + import platform + import sys + import os + import numpy + import scipy + from gensim.models.word2vec import FAST_VERSION + + return { + "Platform": platform.platform(), + "Python": sys.version.replace("\n", ', '), + "NumPy": numpy.__version__, + "SciPy": scipy.__version__, + "Gensim": __version__, + "Location": os.path.abspath(__file__), + "FAST_VERSION": FAST_VERSION + } + + +def main(): + import argparse + parser = argparse.ArgumentParser(description=__doc__[:-112], formatter_class=argparse.RawDescriptionHelpFormatter) + parser.add_argument("--info", help="Information about Gensim package", action="store_true") + args = parser.parse_args() + + if args.info: + print("Gensim installation information\n") + for (k, v) in sorted(package_info().items()): + print("{}: {}".format(k, v)) diff --git a/gensim/__main__.py b/gensim/__main__.py index 3a76e3ef29..50c0522dde 100644 --- a/gensim/__main__.py +++ b/gensim/__main__.py @@ -1,15 +1,5 @@ -import argparse -from gensim import package_info +from gensim import main -parser = argparse.ArgumentParser() -parser.add_argument("--info", action="store_true", help="Display version of Gensim and its dpendencies") -opt = parser.parse_args() -if opt.info: - dict = package_info() - print("\nGensim ", dict["gensim"][0], " from ", dict["gensim"][1], "\n") - print("FAST_VERSION ", dict["fast_version"], "\n\n") - print("python ", dict["python"], "\n\n") - print("Platform \t", dict["platform"], "\n") - print("NumPy \t\t", dict["NumPy"], "\n") - print("SciPy \t\t", dict["SciPy"], "\n") +if __name__ == "__main__": + main() From 6e78656240838a4f36b20273cf1092721483cfda Mon Sep 17 00:00:00 2001 From: ivan Date: Thu, 15 Feb 2018 18:46:39 +0500 Subject: [PATCH 7/9] fix --- gensim/__init__.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/gensim/__init__.py b/gensim/__init__.py index 58870e00fe..60d598b1dd 100644 --- a/gensim/__init__.py +++ b/gensim/__init__.py @@ -1,10 +1,11 @@ """This package contains interfaces and functionality to compute pair-wise document similarities within a corpus of documents. -Also provide CLI interface +Also provide CLI interface :: + + python -m gensim --help + -Command line arguments ----------------------- .. program-output:: python -m gensim --help :ellipsis: 0, -4 @@ -58,7 +59,7 @@ def package_info(): def main(): import argparse - parser = argparse.ArgumentParser(description=__doc__[:-112], formatter_class=argparse.RawDescriptionHelpFormatter) + parser = argparse.ArgumentParser(description=__doc__[:-65], formatter_class=argparse.RawDescriptionHelpFormatter) parser.add_argument("--info", help="Information about Gensim package", action="store_true") args = parser.parse_args() From eb96e6d6aacb3042c9db83bde77abae51634b0ec Mon Sep 17 00:00:00 2001 From: ivan Date: Thu, 15 Feb 2018 19:52:31 +0500 Subject: [PATCH 8/9] rename all as scripts.package_info --- docs/src/apiref.rst | 2 +- docs/src/gensim.rst | 9 ----- docs/src/scripts/package_info.rst | 9 +++++ gensim/__init__.py | 49 ------------------------- gensim/__main__.py | 5 --- gensim/scripts/package_info.py | 60 +++++++++++++++++++++++++++++++ 6 files changed, 70 insertions(+), 64 deletions(-) delete mode 100644 docs/src/gensim.rst create mode 100644 docs/src/scripts/package_info.rst delete mode 100644 gensim/__main__.py create mode 100644 gensim/scripts/package_info.py diff --git a/docs/src/apiref.rst b/docs/src/apiref.rst index 0fe466d1c9..01a2d1a0c4 100644 --- a/docs/src/apiref.rst +++ b/docs/src/apiref.rst @@ -79,6 +79,7 @@ Modules: topic_coherence/probability_estimation topic_coherence/segmentation topic_coherence/text_analysis + scripts/package_info scripts/glove2word2vec scripts/make_wikicorpus scripts/word2vec_standalone @@ -99,4 +100,3 @@ Modules: summarization/syntactic_unit summarization/textcleaner viz/poincare - gensim.rst diff --git a/docs/src/gensim.rst b/docs/src/gensim.rst deleted file mode 100644 index 5153823e19..0000000000 --- a/docs/src/gensim.rst +++ /dev/null @@ -1,9 +0,0 @@ -:mod:`gensim` -- CLI interface of Gensim -======================================== - -.. automodule:: gensim - :synopsis: CLI interface of Gensim. - :members: - :inherited-members: - :undoc-members: - :show-inheritance: diff --git a/docs/src/scripts/package_info.rst b/docs/src/scripts/package_info.rst new file mode 100644 index 0000000000..f5e4802e1b --- /dev/null +++ b/docs/src/scripts/package_info.rst @@ -0,0 +1,9 @@ +:mod:`scripts.package_info` -- Information about gensim package +=============================================================== + +.. automodule:: gensim.scripts.package_info + :synopsis: Information about gensim package. + :members: + :inherited-members: + :undoc-members: + :show-inheritance: diff --git a/gensim/__init__.py b/gensim/__init__.py index 60d598b1dd..a6b05830a6 100644 --- a/gensim/__init__.py +++ b/gensim/__init__.py @@ -1,16 +1,7 @@ """This package contains interfaces and functionality to compute pair-wise document similarities within a corpus of documents. -Also provide CLI interface :: - - python -m gensim --help - - -.. program-output:: python -m gensim --help - :ellipsis: 0, -4 - """ - from gensim import parsing, matutils, interfaces, corpora, models, similarities, summarization, utils # noqa:F401 import logging @@ -27,43 +18,3 @@ def emit(self, record): logger = logging.getLogger('gensim') if len(logger.handlers) == 0: # To ensure reload() doesn't add another one logger.addHandler(NullHandler()) - - -def package_info(): - """Get the versions of Gensim and its dependencies, - the location where Gensim is installed and platform on which the system is running. - - Returns - ------- - dict of (str, str) - Dictionary containing the versions of Gensim, Python, NumPy, SciPy and platform information. - - """ - import platform - import sys - import os - import numpy - import scipy - from gensim.models.word2vec import FAST_VERSION - - return { - "Platform": platform.platform(), - "Python": sys.version.replace("\n", ', '), - "NumPy": numpy.__version__, - "SciPy": scipy.__version__, - "Gensim": __version__, - "Location": os.path.abspath(__file__), - "FAST_VERSION": FAST_VERSION - } - - -def main(): - import argparse - parser = argparse.ArgumentParser(description=__doc__[:-65], formatter_class=argparse.RawDescriptionHelpFormatter) - parser.add_argument("--info", help="Information about Gensim package", action="store_true") - args = parser.parse_args() - - if args.info: - print("Gensim installation information\n") - for (k, v) in sorted(package_info().items()): - print("{}: {}".format(k, v)) diff --git a/gensim/__main__.py b/gensim/__main__.py deleted file mode 100644 index 50c0522dde..0000000000 --- a/gensim/__main__.py +++ /dev/null @@ -1,5 +0,0 @@ -from gensim import main - - -if __name__ == "__main__": - main() diff --git a/gensim/scripts/package_info.py b/gensim/scripts/package_info.py new file mode 100644 index 0000000000..e71de42ffa --- /dev/null +++ b/gensim/scripts/package_info.py @@ -0,0 +1,60 @@ +"""Script get basic information about gensim & dependencies (useful for bug-reporting). + +Examples +-------- +You can use it through python + +>>> from gensim.scripts.package_info import package_info +>>> +>>> info = package_info() + +or using CLI interface + +:: + + python -m gensim.scripts.package_info --info + + +.. program-output:: python -m gensim --help + :ellipsis: 0, -4 +""" +import argparse +import platform +import sys +import os +import numpy +import scipy +import gensim +from gensim.models.word2vec import FAST_VERSION + + +def package_info(): + """Get the versions of Gensim and its dependencies, + the location where Gensim is installed and platform on which the system is running. + + Returns + ------- + dict of (str, str) + Dictionary containing the versions of Gensim, Python, NumPy, SciPy and platform information. + + """ + return { + "Platform": platform.platform(), + "Python": sys.version.replace("\n", ', '), + "NumPy": numpy.__version__, + "SciPy": scipy.__version__, + "Gensim": gensim.__version__, + "Location": os.path.abspath(__file__), + "FAST_VERSION": FAST_VERSION + } + + +if __name__ == "__main__": + parser = argparse.ArgumentParser(description=__doc__[:-65], formatter_class=argparse.RawDescriptionHelpFormatter) + parser.add_argument("--info", help="Information about Gensim package", action="store_true") + args = parser.parse_args() + + if args.info: + print("Gensim installation information\n") + for (k, v) in sorted(package_info().items()): + print("{}: {}".format(k, v)) From 2267ecfb798903e662ef3a3abbf379712d524d65 Mon Sep 17 00:00:00 2001 From: ivan Date: Thu, 15 Feb 2018 19:54:59 +0500 Subject: [PATCH 9/9] fix --- gensim/scripts/package_info.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gensim/scripts/package_info.py b/gensim/scripts/package_info.py index e71de42ffa..da607b78e9 100644 --- a/gensim/scripts/package_info.py +++ b/gensim/scripts/package_info.py @@ -1,4 +1,4 @@ -"""Script get basic information about gensim & dependencies (useful for bug-reporting). +"""Get basic information about gensim & dependencies (useful for bug-reporting). Examples -------- @@ -15,7 +15,7 @@ python -m gensim.scripts.package_info --info -.. program-output:: python -m gensim --help +.. program-output:: python -m gensim.scripts.package_info --help :ellipsis: 0, -4 """ import argparse