From 7dcd1a7eebb5cb8ad14518d28f267e30b470111c Mon Sep 17 00:00:00 2001 From: KV Date: Thu, 15 Oct 2020 20:42:34 +0200 Subject: [PATCH] Define application name and URL only once The application name and URL was defined several places in the code, and the name was not written exactly the same everywhere. By using the same constants everywhere, consistency is obtained. --- setup.py | 8 +++----- src/wireviz/Harness.py | 11 +++++------ src/wireviz/__init__.py | 4 ++++ src/wireviz/build_examples.py | 8 ++++---- 4 files changed, 16 insertions(+), 15 deletions(-) diff --git a/setup.py b/setup.py index cd289742..af1b715f 100644 --- a/setup.py +++ b/setup.py @@ -4,9 +4,7 @@ import os from setuptools import setup, find_packages -from src.wireviz import __version__ - -project_name = 'wireviz' +from src.wireviz import __version__, CMD_NAME, APP_URL # Utility function to read the README file. # Used for the long_description. It's nice, because now 1) we have a top level @@ -16,7 +14,7 @@ def read(fname): return open(os.path.join(os.path.dirname(__file__), fname)).read() setup( - name=project_name, + name=CMD_NAME, version=__version__, author='Daniel Rojas', #author_email='', @@ -30,7 +28,7 @@ def read(fname): ], license='GPLv3', keywords='cable connector hardware harness wiring wiring-diagram wiring-harness', - url='https://github.com/formatc1702/WireViz', + url=APP_URL, package_dir={'': 'src'}, packages=find_packages('src'), entry_points={ diff --git a/src/wireviz/Harness.py b/src/wireviz/Harness.py index f5ef5e54..e597a153 100644 --- a/src/wireviz/Harness.py +++ b/src/wireviz/Harness.py @@ -3,7 +3,7 @@ from wireviz.DataClasses import Connector, Cable from graphviz import Graph -from wireviz import wv_colors, wv_helper, __version__ +from wireviz import wv_colors, wv_helper, __version__, APP_NAME, APP_URL from wireviz.wv_colors import get_color_hex from wireviz.wv_helper import awg_equiv, mm2_equiv, tuplelist2tsv, \ nested_html_table, flatten2d, index_if_list, html_line_breaks, \ @@ -63,8 +63,8 @@ def connect(self, from_name: str, from_pin: (int, str), via_name: str, via_pin: def create_graph(self) -> Graph: dot = Graph() - dot.body.append('// Graph generated by WireViz ' + __version__) - dot.body.append('// https://github.com/formatc1702/WireViz') + dot.body.append(f'// Graph generated by {APP_NAME} {__version__}') + dot.body.append(f'// {APP_URL}') font = 'arial' dot.attr('graph', rankdir='LR', ranksep='2', @@ -298,9 +298,8 @@ def output(self, filename: (str, Path), view: bool = False, cleanup: bool = True file.write('\n') file.write('\n') file.write(' \n') - file.write(f' \n') - file.write(' Wireviz Diagram and BOM\n') + file.write(f' \n') + file.write(f' {APP_NAME} Diagram and BOM\n') file.write('\n') file.write('

Diagram

') diff --git a/src/wireviz/__init__.py b/src/wireviz/__init__.py index c8f5000d..3f3bcf3c 100644 --- a/src/wireviz/__init__.py +++ b/src/wireviz/__init__.py @@ -1,3 +1,7 @@ # Please don't import anything in this file to avoid issues when it is imported in setup.py __version__ = '0.1.1' + +CMD_NAME = 'wireviz' # Lower case command and module name +APP_NAME = 'WireViz' # Application name in texts meant to be human readable +APP_URL = 'https://github.com/formatc1702/WireViz' diff --git a/src/wireviz/build_examples.py b/src/wireviz/build_examples.py index 5e594dae..4195b121 100755 --- a/src/wireviz/build_examples.py +++ b/src/wireviz/build_examples.py @@ -9,7 +9,7 @@ script_path = Path(__file__).absolute() sys.path.insert(0, str(script_path.parent.parent)) # to find wireviz module -from wireviz import wireviz, __version__ +from wireviz import wireviz, __version__, APP_NAME from wv_helper import open_file_write, open_file_read, open_file_append @@ -26,7 +26,7 @@ 'path': dir / 'tutorial', 'prefix': 'tutorial', readme: ['md', 'yml'], # Include .md and .yml files - 'title': 'WireViz Tutorial', + 'title': f'{APP_NAME} Tutorial', }, 'demos' : { 'path': dir / 'examples', @@ -127,8 +127,8 @@ def restore_generated(groupkeys, branch = ''): def parse_args(): - parser = argparse.ArgumentParser(description='Wireviz Example Manager',) - parser.add_argument('-V', '--version', action='version', version='%(prog)s - wireviz ' + __version__) + parser = argparse.ArgumentParser(description=f'{APP_NAME} Example Manager',) + parser.add_argument('-V', '--version', action='version', version=f'%(prog)s - {APP_NAME} {__version__}') parser.add_argument('action', nargs='?', action='store', choices=['build','clean','compare','diff','restore'], default='build', help='what to do with the generated files (default: build)')