diff --git a/.coveragerc b/.coveragerc index 4ff6ac6..a17a504 100644 --- a/.coveragerc +++ b/.coveragerc @@ -1,6 +1,6 @@ [run] omit = - */tests/* + */test/* */venv* branch = True dynamic_context = test_function @@ -18,14 +18,14 @@ exclude_lines = if False: [html] -directory = tests/htmlcov -title = ShellLogger Coverage Report +directory = test/htmlcov +title = shell-logger Coverage Report show_contexts = True [xml] -output = tests/coverage.xml +output = test/coverage.xml [json] -output = tests/coverage.json +output = test/coverage.json pretty_print = True show_contexts = True diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml deleted file mode 100644 index 5dc62de..0000000 --- a/.gitlab-ci.yml +++ /dev/null @@ -1,277 +0,0 @@ -# This file controls the GitLab CI pipeline for the `ShellLogger` -# project. See here for the keyword reference: -# https://docs.gitlab.com/ee/ci/yaml/. - - -# Set up a global cache to pass information across stages. -cache: &global_cache - key: "${CI_COMMIT_REF_SLUG}_${CI_COMMIT_SHORT_SHA}" - paths: - - shelllogger-env/ - policy: pull-push - - -# Set up the pipeline stages. -stages: - - prepare - - install - - test - - documentation - - deploy - - finish - - -# Run this before every job. -before_script: - - |- - export LSB_RELEASE=$(which lsb_release) - if [ -x ${LSB_RELEASE} ]; then - ${LSB_RELEASE} -a - fi - - |- - if [ -d "shelllogger-env" ]; then - conda activate $(pwd)/shelllogger-env - else - echo "Conda environment 'shelllogger-env' was not found." - exit 1 - fi - echo "-----" - conda list - echo "-----" - - -# Run this after every job. -after_script: - - |- - if [[ "${CONDA_PREFIX}" == "$(pwd)/shelllogger-env" ]]; then - conda deactivate - fi - - -#----------------------------------------------------------------------- -# Stage: Prepare -#----------------------------------------------------------------------- - - -# Create the virtual environment, install the requirements, and save the -# environment to the cache. -requirements: - before_script: - - conda create --prefix ./shelllogger-env --yes python=3.7 pip - cache: - <<: *global_cache - when: on_success - script: - - # Activate the virtual environment. - - conda activate $(pwd)/shelllogger-env - - # Show the contents of the virtual environment. - - conda list - - # Install required packages. - - pip install - -r requirements.txt - -r tests/requirements.txt - -r doc/requirements.txt - - # Show the contents of the virtual environment. - - conda list - stage: prepare - timeout: 10m - - -#----------------------------------------------------------------------- -# Stage: Install -#----------------------------------------------------------------------- - - -# Test building a distribution. -wheel: - artifacts: - name: "shelllogger-dist" - paths: - - dist/shelllogger*.whl - expire_in: 6 weeks - cache: - <<: *global_cache - policy: pull - script: - - pip wheel --no-deps -w dist . - stage: install - timeout: 5m - - -# Test installation of the package. -install: - cache: - <<: *global_cache - script: - - # Install the package. - - pip install . - - # Show the contents of the virtual environment to ensure it's there. - - conda list - stage: install - timeout: 5m - - -#----------------------------------------------------------------------- -# Stage: Test -#----------------------------------------------------------------------- - - -# Ensure the examples run without problems. -examples: - artifacts: - paths: - - examples/log* - - examples/*.html - cache: - <<: *global_cache - policy: pull - script: - - cd examples - - python3 ./hello_world_html.py - - cp -L log_hello_world_html/Hello_World_HTML.html . - - python3 ./hello_world_html_and_console.py - - cp -L log_hello_world_html_and_console/Hello_World_HTML_and_Console.html - . - - python3 ./hello_world_html_with_stats.py - - cp -L log_hello_world_html_with_stats/Hello_World_HTML_with_Stats.html . - - python3 ./build_flex.py - - cp -L log_build_flex/Build_Flex.html . - stage: test - timeout: 5m - - -# Ensure we pass the `flake8` linter. -flake8: - cache: - <<: *global_cache - script: - - python3 -m flake8 - --exclude=shelllogger-env - stage: test - timeout: 5m - - -# Execute the unit tests. -pytest: - artifacts: - paths: - - tests/htmlcov - reports: - coverage_report: - coverage_format: cobertura - path: tests/coverage.xml - junit: tests/coverage.xml - cache: - <<: *global_cache - coverage: '/TOTAL\s*[0-9]*\s*[0-9]*\s*[0-9]*\s*[0-9]*\s*(\d+%)/' - script: - - python3 -m pytest - --cov=src.shelllogger - --cov-config=.coveragerc - --cov-report=html - --cov-report=term - --cov-report=xml - --full-trace - tests/ - stage: test - timeout: 5m - - -# Ensure we adhere to our style guide.variables: -yapf: - artifacts: - expire_in: 1 week - paths: - - yapf.diff.txt - when: on_failure - cache: - <<: *global_cache - script: - - set +e - - python3 -m yapf - --style .style.yapf - --diff - --recursive - examples/ - src/ - tests/ - > yapf.diff.txt - - |- - if [[ "$(wc -l yapf.diff.txt | awk '{print $1}')" != "0" ]]; then - echo "----------" - echo "Your code does not match our Python style guide." - echo -n "Run 'yapf --style .style.yapf --in-place --recursive " - echo "examples/ src/ tests/' in the repository root to fix it." - echo "The offending files are:" - grep "^+++.*(reformatted)$" yapf.diff.txt | awk '{print $2}' - exit 1 - fi - stage: test - timeout: 5m - - -#----------------------------------------------------------------------- -# Stage: Documentation -#----------------------------------------------------------------------- - - -# Generate the documentation. -sphinx: - artifacts: - paths: - - doc/html - cache: - <<: *global_cache - script: - - cd doc - - bash make_html_docs.sh - stage: documentation - timeout: 5m - - -#----------------------------------------------------------------------- -# Stage: Deploy -#----------------------------------------------------------------------- - - -# Publish coverage data and documentation (if on the main branch). -pages: - artifacts: - paths: - - public - cache: - <<: *global_cache - policy: pull - rules: - - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH' - script: - - mkdir -p public/examples - - mv tests/htmlcov public/. - - mv doc/html/* public/. - - mv examples/*.html public/examples/. - stage: deploy - timeout: 5m - - -#----------------------------------------------------------------------- -# Stage: Finish -#----------------------------------------------------------------------- - - -# Test that uninstalling from a virtual environment works. -uninstall: - cache: - <<: *global_cache - script: - - pip uninstall -y shelllogger - - # Show the contents of the virtual environment. - - conda list - stage: finish - timeout: 5m diff --git a/.idea/.gitignore b/.idea/.gitignore deleted file mode 100644 index 26d3352..0000000 --- a/.idea/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml diff --git a/.idea/ShellLogger.iml b/.idea/ShellLogger.iml deleted file mode 100644 index 8ca6856..0000000 --- a/.idea/ShellLogger.iml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml deleted file mode 100644 index 105ce2d..0000000 --- a/.idea/inspectionProfiles/profiles_settings.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml deleted file mode 100644 index 6c66106..0000000 --- a/.idea/misc.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml deleted file mode 100644 index 18cd181..0000000 --- a/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml deleted file mode 100644 index 5ace414..0000000 --- a/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/doc/source/abstract_method.rst b/doc/source/abstract_method.rst index f5ffee9..dbb420d 100644 --- a/doc/source/abstract_method.rst +++ b/doc/source/abstract_method.rst @@ -1,5 +1,5 @@ AbstractMethod ============== -.. autoexception:: shelllogger.abstract_method.AbstractMethod +.. autoexception:: shell_logger.abstract_method.AbstractMethod :noindex: diff --git a/doc/source/conf.py b/doc/source/conf.py index 17f2b15..b24d88b 100644 --- a/doc/source/conf.py +++ b/doc/source/conf.py @@ -15,11 +15,11 @@ from pathlib import Path import sys -sys.path.append(str(Path.cwd().parent.parent.resolve() / "src")) +sys.path.append(str(Path.cwd().parent.parent.resolve() / "shell_logger")) # -- Project information ----------------------------------------------------- -project = "ShellLogger" +project = "shell-logger" copyright = ( "2024, National Technology & Engineering Solutions of Sandia, LLC " "(NTESS)" diff --git a/doc/source/html_utilities.rst b/doc/source/html_utilities.rst index 3269674..781b4ba 100644 --- a/doc/source/html_utilities.rst +++ b/doc/source/html_utilities.rst @@ -4,5 +4,5 @@ HTML Utilities The following are a number of utility functions used to generate the HTML log file produced by :class:`ShellLogger`. -.. automodule:: shelllogger.html_utilities +.. automodule:: shell_logger.html_utilities :noindex: diff --git a/doc/source/index.rst b/doc/source/index.rst index b87e0d7..e80b5b2 100644 --- a/doc/source/index.rst +++ b/doc/source/index.rst @@ -1,5 +1,5 @@ -shelllogger -=========== +shell-logger +============ .. toctree:: :hidden: @@ -14,16 +14,17 @@ shelllogger html_utilities todo -The ``shelllogger`` Python module allows you to interact with the shell, while -logging various metadata, statistics, and trace information. Any time you're -tempted to write your own wrapper around things like :class:`subprocess.Popen` -or :func:`subprocess.run`, consider using :func:`ShellLogger.log` instead. If -you're familiar with `the Unix script command -`_, this is similar in -principle, but with substantially more functionality. If you're familiar with -`Python's logging module `_, -the motivation is similar, but this intends to capture what's happening *in the -shell* rather than in Python itself. +The ``shell-logger`` Python package allows you to interact with the shell, +while logging various metadata, statistics, and trace information. Any time +you're tempted to write your own wrapper around things like +:class:`subprocess.Popen` or :func:`subprocess.run`, consider using +:func:`ShellLogger.log` instead. If you're familiar with `the Unix script +command `_, this is +similar in principle, but with substantially more functionality. If you're +familiar with `Python's logging module +`_, the motivation is similar, +but this intends to capture what's happening *in the shell* rather than in +Python itself. The following talk from the `US-RSE Virtual Workshop 2021 `_ illustrates the module's @@ -49,8 +50,8 @@ functionality. -Where to Get shelllogger ------------------------- +Where to Get shell-logger +------------------------- The source repository for this module can be found `here `_. See the project's @@ -58,8 +59,8 @@ The source repository for this module can be found `here `_ for details on how to clone, install, and otherwise interact with the project. -Using shelllogger ------------------ +Using shell-logger +------------------ At a high-level, :func:`ShellLogger.log` allows you to execute commands, given as strings, in the shell. When a command is executed, :class:`ShellLogger` @@ -92,29 +93,29 @@ Example 1: The Basics For this initial example, let's first consider a simple "Hello World" script written in bash: -.. literalinclude:: ../../examples/hello_world.sh +.. literalinclude:: ../../example/hello_world.sh :language: bash :linenos: - :caption: ``examples/hello_world.sh`` + :caption: ``example/hello_world.sh`` -The equivalent Python script written with ``shelllogger``, demonstrating its +The equivalent Python script written with ``shell-logger``, demonstrating its basic functionality where it's logging commands only to the HTML log file, is the following: -.. literalinclude:: ../../examples/hello_world_html.py +.. literalinclude:: ../../example/hello_world_html.py :language: python :linenos: - :caption: ``examples/hello_world_html.py`` + :caption: ``example/hello_world_html.py`` Running the script yields .. code-block:: This example demonstrates logging information solely to the HTML log file. - Open /Users/jmgate/workspace/ShellLogger/examples/log_hello_world_html/2021-09-22_14.56.42.558599_szt68acx/Hello_ShellLogger.html to view the log. + Open /Users/jmgate/workspace/shell-logger/example/log_hello_world_html/2021-09-22_14.56.42.558599_szt68acx/Hello_ShellLogger.html to view the log. You can view the generated HTML log file `here -`__. +`__. When you open that file, you'll see something like .. image:: images/html_log.png @@ -171,14 +172,14 @@ This next example demonstrates logging commands both to the HTML log file and the console. The primary differences between this and **Example 1** are the highlighted lines below. -.. literalinclude:: ../../examples/hello_world_html_and_console.py +.. literalinclude:: ../../example/hello_world_html_and_console.py :language: python :linenos: :emphasize-lines: 11, 13 - :caption: ``examples/hello_world_html_and_console.py`` + :caption: ``example/hello_world_html_and_console.py`` You can view the generated HTML log file `here -`__. +`__. Example 3: Collecting Statistics ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -187,37 +188,37 @@ In this example, we demonstrate how easy it is to capture various statistics while running your commands in the shell. The primary differences between this and **Example 1** are the highlighted lines below. -.. literalinclude:: ../../examples/hello_world_html_with_stats.py +.. literalinclude:: ../../example/hello_world_html_with_stats.py :language: python :linenos: :emphasize-lines: 12, 14 - :caption: ``examples/hello_world_html_with_stats.py`` + :caption: ``example/hello_world_html_with_stats.py`` You can view the generated HTML log file `here -`__. +`__. Example 4: Building a Code ^^^^^^^^^^^^^^^^^^^^^^^^^^^ -In this final example, we use ``shelllogger`` to do some "real work"---cloning, -configuring, and building `flex `_, a fast -lexical analyzer generator. Before we do that, let's take a look at what the -bash script would look like: +In this final example, we use ``shell-logger`` to do some "real +work"---cloning, configuring, and building `flex +`_, a fast lexical analyzer generator. +Before we do that, let's take a look at what the bash script would look like: -.. literalinclude:: ../../examples/build_flex.sh +.. literalinclude:: ../../example/build_flex.sh :language: bash :linenos: - :caption: ``examples/build_flex.sh`` + :caption: ``example/build_flex.sh`` -The equivalent Python script using ``shelllogger`` is the following: +The equivalent Python script using ``shell-logger`` is the following: -.. literalinclude:: ../../examples/build_flex.py +.. literalinclude:: ../../example/build_flex.py :language: python :linenos: - :caption: ``examples/build_flex.py`` + :caption: ``example/build_flex.py`` You can view the generated HTML log file `here -`__. +`__. More Details ------------ diff --git a/doc/source/shell.rst b/doc/source/shell.rst index 0eefab3..d5c47f6 100644 --- a/doc/source/shell.rst +++ b/doc/source/shell.rst @@ -1,5 +1,5 @@ Shell ===== -.. automodule:: shelllogger.shell +.. automodule:: shell_logger.shell :noindex: diff --git a/doc/source/shell_logger.rst b/doc/source/shell_logger.rst index 2b82eb8..9e3d888 100644 --- a/doc/source/shell_logger.rst +++ b/doc/source/shell_logger.rst @@ -1,13 +1,13 @@ ShellLogger =========== -.. autoclass:: shelllogger.ShellLogger +.. autoclass:: shell_logger.ShellLogger :noindex: JSON Serialization ------------------ -.. autoclass:: shelllogger.ShellLoggerDecoder +.. autoclass:: shell_logger.ShellLoggerDecoder :noindex: .. todo:: @@ -15,5 +15,5 @@ JSON Serialization Figure out why the documentation below is pulling in the docstring for the base class as well. -.. autoclass:: shelllogger.ShellLoggerEncoder +.. autoclass:: shell_logger.ShellLoggerEncoder :noindex: diff --git a/doc/source/stats_collector.rst b/doc/source/stats_collector.rst index a91313e..74824d8 100644 --- a/doc/source/stats_collector.rst +++ b/doc/source/stats_collector.rst @@ -1,26 +1,26 @@ StatsCollector ============== -.. autoclass:: shelllogger.stats_collector.StatsCollector +.. autoclass:: shell_logger.stats_collector.StatsCollector :noindex: -.. automethod:: shelllogger.stats_collector::stats_collectors +.. automethod:: shell_logger.stats_collector::stats_collectors :noindex: DiskStatsCollector ------------------ -.. autoclass:: shelllogger.stats_collector.DiskStatsCollector +.. autoclass:: shell_logger.stats_collector.DiskStatsCollector :noindex: CPUStatsCollector ----------------- -.. autoclass:: shelllogger.stats_collector.CPUStatsCollector +.. autoclass:: shell_logger.stats_collector.CPUStatsCollector :noindex: MemoryStatsCollector -------------------- -.. autoclass:: shelllogger.stats_collector.MemoryStatsCollector +.. autoclass:: shell_logger.stats_collector.MemoryStatsCollector :noindex: diff --git a/doc/source/trace.rst b/doc/source/trace.rst index 384e394..fd8284f 100644 --- a/doc/source/trace.rst +++ b/doc/source/trace.rst @@ -1,20 +1,20 @@ Trace ===== -.. autoclass:: shelllogger.trace.Trace +.. autoclass:: shell_logger.trace.Trace :noindex: -.. automethod:: shelllogger.trace::trace_collector +.. automethod:: shell_logger.trace::trace_collector :noindex: STrace ------ -.. autoclass:: shelllogger.trace.STrace +.. autoclass:: shell_logger.trace.STrace :noindex: LTrace ------ -.. autoclass:: shelllogger.trace.LTrace +.. autoclass:: shell_logger.trace.LTrace :noindex: diff --git a/examples/.gitignore b/example/.gitignore similarity index 100% rename from examples/.gitignore rename to example/.gitignore diff --git a/examples/build_flex.py b/example/build_flex.py similarity index 97% rename from examples/build_flex.py rename to example/build_flex.py index f4286d1..80847e3 100755 --- a/examples/build_flex.py +++ b/example/build_flex.py @@ -5,9 +5,8 @@ Copyright The shell-logger Authors. SPDX-License-Identifier: BSD-3-Clause """ - from pathlib import Path -from shelllogger import ShellLogger +from shell_logger import ShellLogger sl = ShellLogger("Build Flex", Path.cwd() / f"log_{Path(__file__).stem}") sl.print( diff --git a/examples/build_flex.sh b/example/build_flex.sh similarity index 100% rename from examples/build_flex.sh rename to example/build_flex.sh diff --git a/examples/hello_world.sh b/example/hello_world.sh similarity index 100% rename from examples/hello_world.sh rename to example/hello_world.sh diff --git a/examples/hello_world_html.py b/example/hello_world_html.py similarity index 94% rename from examples/hello_world_html.py rename to example/hello_world_html.py index d746022..5930b8f 100755 --- a/examples/hello_world_html.py +++ b/example/hello_world_html.py @@ -5,9 +5,8 @@ Copyright The shell-logger Authors. SPDX-License-Identifier: BSD-3-Clause """ - from pathlib import Path -from shelllogger import ShellLogger +from shell_logger import ShellLogger sl = ShellLogger("Hello World HTML", Path.cwd() / f"log_{Path(__file__).stem}") sl.print( diff --git a/examples/hello_world_html_and_console.py b/example/hello_world_html_and_console.py similarity index 95% rename from examples/hello_world_html_and_console.py rename to example/hello_world_html_and_console.py index 3cd2239..90164c7 100755 --- a/examples/hello_world_html_and_console.py +++ b/example/hello_world_html_and_console.py @@ -5,9 +5,8 @@ Copyright The shell-logger Authors. SPDX-License-Identifier: BSD-3-Clause """ - from pathlib import Path -from shelllogger import ShellLogger +from shell_logger import ShellLogger sl = ShellLogger( "Hello World HTML and Console", diff --git a/examples/hello_world_html_with_stats.py b/example/hello_world_html_with_stats.py similarity index 95% rename from examples/hello_world_html_with_stats.py rename to example/hello_world_html_with_stats.py index f3e5aac..e735fba 100755 --- a/examples/hello_world_html_with_stats.py +++ b/example/hello_world_html_with_stats.py @@ -5,9 +5,8 @@ Copyright The shell-logger Authors. SPDX-License-Identifier: BSD-3-Clause """ - from pathlib import Path -from shelllogger import ShellLogger +from shell_logger import ShellLogger sl = ShellLogger( "Hello World HTML with Stats", diff --git a/pyproject.toml b/pyproject.toml index 6e739fa..9f615f6 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,12 +1,12 @@ [tool.poetry] -name = "shelllogger" +name = "shell-logger" version = "1.0.0" -license = "" +license = "LICENSE.md" readme = "README.md" keywords = ["shell", "logging"] -repository = "https://internal.gitlab.server/ShellLogger/ShellLogger" +repository = "https://github.com/sandialabs/shell-logger" description = "A tool for keeping track of Python's interactions with the shell." -documentation = "INSERT URL FOR SPHINX DOCS HERE" +documentation = "https://shell-logger.readthedocs.io" authors = [ "Josh Braun ", "David Collins ", @@ -17,7 +17,7 @@ classifiers = [ "Intended Audience :: Developers", "Intended Audience :: Information Technology", "Intended Audience :: System Administrators", - # "Licence :: FILL THIS OUT", UNCOMMENT AFTER ADDING LICENSE + "License :: OSI Approved :: BSD License", "Natural Language :: English", "Operating System :: MacOS", "Operating System :: POSIX", @@ -33,15 +33,11 @@ classifiers = [ "Topic :: System :: System Shells", "Typing :: Typed" ] -packages = [ - { include = "shelllogger", from = "src" }, -] -# include = ["CHANGELOG.md"] UNCOMMENT WHEN WE ADD A CHANGELOG [tool.poetry.urls] -CI = "https://internal.gitlab.server/ShellLogger/ShellLogger/-/pipelines" -Issues = "https://internal.gitlab.server/ShellLogger/ShellLogger/-/issues" +CI = "https://github.com/sandialabs/shell-logger/actions" +Issues = "https://github.com/sandialabs/shell-logger/issues" [tool.poetry.dependencies] diff --git a/src/shelllogger/__init__.py b/shell_logger/__init__.py similarity index 92% rename from src/shelllogger/__init__.py rename to shell_logger/__init__.py index eca3d23..a7d11d0 100644 --- a/src/shelllogger/__init__.py +++ b/shell_logger/__init__.py @@ -7,3 +7,4 @@ from .shell_logger import ShellLogger, ShellLoggerDecoder, ShellLoggerEncoder __all__ = ["ShellLogger", "ShellLoggerDecoder", "ShellLoggerEncoder"] +__version__ = "1.0.0" diff --git a/src/shelllogger/abstract_method.py b/shell_logger/abstract_method.py similarity index 99% rename from src/shelllogger/abstract_method.py rename to shell_logger/abstract_method.py index 88ce79c..23f454d 100644 --- a/src/shelllogger/abstract_method.py +++ b/shell_logger/abstract_method.py @@ -5,7 +5,6 @@ Copyright The shell-logger Authors. SPDX-License-Identifier: BSD-3-Clause """ - import inspect diff --git a/src/shelllogger/html_utilities.py b/shell_logger/html_utilities.py similarity index 100% rename from src/shelllogger/html_utilities.py rename to shell_logger/html_utilities.py diff --git a/src/shelllogger/resources/Chart.bundle.min.js b/shell_logger/resources/Chart.bundle.min.js similarity index 100% rename from src/shelllogger/resources/Chart.bundle.min.js rename to shell_logger/resources/Chart.bundle.min.js diff --git a/src/shelllogger/resources/Chart.min.css b/shell_logger/resources/Chart.min.css similarity index 100% rename from src/shelllogger/resources/Chart.min.css rename to shell_logger/resources/Chart.min.css diff --git a/src/shelllogger/resources/bootstrap.bundle.min.js b/shell_logger/resources/bootstrap.bundle.min.js similarity index 100% rename from src/shelllogger/resources/bootstrap.bundle.min.js rename to shell_logger/resources/bootstrap.bundle.min.js diff --git a/src/shelllogger/resources/bootstrap.min.css b/shell_logger/resources/bootstrap.min.css similarity index 100% rename from src/shelllogger/resources/bootstrap.min.css rename to shell_logger/resources/bootstrap.min.css diff --git a/src/shelllogger/resources/child_logger_style.css b/shell_logger/resources/child_logger_style.css similarity index 100% rename from src/shelllogger/resources/child_logger_style.css rename to shell_logger/resources/child_logger_style.css diff --git a/src/shelllogger/resources/code_block_style.css b/shell_logger/resources/code_block_style.css similarity index 100% rename from src/shelllogger/resources/code_block_style.css rename to shell_logger/resources/code_block_style.css diff --git a/src/shelllogger/resources/command_style.css b/shell_logger/resources/command_style.css similarity index 100% rename from src/shelllogger/resources/command_style.css rename to shell_logger/resources/command_style.css diff --git a/src/shelllogger/resources/detail_list_style.css b/shell_logger/resources/detail_list_style.css similarity index 100% rename from src/shelllogger/resources/detail_list_style.css rename to shell_logger/resources/detail_list_style.css diff --git a/src/shelllogger/resources/diagnostics_style.css b/shell_logger/resources/diagnostics_style.css similarity index 100% rename from src/shelllogger/resources/diagnostics_style.css rename to shell_logger/resources/diagnostics_style.css diff --git a/src/shelllogger/resources/jquery.slim.min.js b/shell_logger/resources/jquery.slim.min.js similarity index 100% rename from src/shelllogger/resources/jquery.slim.min.js rename to shell_logger/resources/jquery.slim.min.js diff --git a/src/shelllogger/resources/message_style.css b/shell_logger/resources/message_style.css similarity index 100% rename from src/shelllogger/resources/message_style.css rename to shell_logger/resources/message_style.css diff --git a/src/shelllogger/resources/output_style.css b/shell_logger/resources/output_style.css similarity index 100% rename from src/shelllogger/resources/output_style.css rename to shell_logger/resources/output_style.css diff --git a/src/shelllogger/resources/parent_logger_style.css b/shell_logger/resources/parent_logger_style.css similarity index 100% rename from src/shelllogger/resources/parent_logger_style.css rename to shell_logger/resources/parent_logger_style.css diff --git a/src/shelllogger/resources/search_controls.css b/shell_logger/resources/search_controls.css similarity index 100% rename from src/shelllogger/resources/search_controls.css rename to shell_logger/resources/search_controls.css diff --git a/src/shelllogger/resources/search_icon.svg b/shell_logger/resources/search_icon.svg similarity index 100% rename from src/shelllogger/resources/search_icon.svg rename to shell_logger/resources/search_icon.svg diff --git a/src/shelllogger/resources/search_output.js b/shell_logger/resources/search_output.js similarity index 100% rename from src/shelllogger/resources/search_output.js rename to shell_logger/resources/search_output.js diff --git a/src/shelllogger/resources/templates/child_logger.html b/shell_logger/resources/templates/child_logger.html similarity index 100% rename from src/shelllogger/resources/templates/child_logger.html rename to shell_logger/resources/templates/child_logger.html diff --git a/src/shelllogger/resources/templates/command.html b/shell_logger/resources/templates/command.html similarity index 100% rename from src/shelllogger/resources/templates/command.html rename to shell_logger/resources/templates/command.html diff --git a/src/shelllogger/resources/templates/command_detail.html b/shell_logger/resources/templates/command_detail.html similarity index 100% rename from src/shelllogger/resources/templates/command_detail.html rename to shell_logger/resources/templates/command_detail.html diff --git a/src/shelllogger/resources/templates/command_detail_list.html b/shell_logger/resources/templates/command_detail_list.html similarity index 100% rename from src/shelllogger/resources/templates/command_detail_list.html rename to shell_logger/resources/templates/command_detail_list.html diff --git a/src/shelllogger/resources/templates/diagnostics.html b/shell_logger/resources/templates/diagnostics.html similarity index 100% rename from src/shelllogger/resources/templates/diagnostics.html rename to shell_logger/resources/templates/diagnostics.html diff --git a/src/shelllogger/resources/templates/hidden_command_detail.html b/shell_logger/resources/templates/hidden_command_detail.html similarity index 100% rename from src/shelllogger/resources/templates/hidden_command_detail.html rename to shell_logger/resources/templates/hidden_command_detail.html diff --git a/src/shelllogger/resources/templates/html_message.html b/shell_logger/resources/templates/html_message.html similarity index 100% rename from src/shelllogger/resources/templates/html_message.html rename to shell_logger/resources/templates/html_message.html diff --git a/src/shelllogger/resources/templates/message.html b/shell_logger/resources/templates/message.html similarity index 100% rename from src/shelllogger/resources/templates/message.html rename to shell_logger/resources/templates/message.html diff --git a/src/shelllogger/resources/templates/output_block.html b/shell_logger/resources/templates/output_block.html similarity index 100% rename from src/shelllogger/resources/templates/output_block.html rename to shell_logger/resources/templates/output_block.html diff --git a/src/shelllogger/resources/templates/output_card.html b/shell_logger/resources/templates/output_card.html similarity index 100% rename from src/shelllogger/resources/templates/output_card.html rename to shell_logger/resources/templates/output_card.html diff --git a/src/shelllogger/resources/templates/output_card_collapsed.html b/shell_logger/resources/templates/output_card_collapsed.html similarity index 100% rename from src/shelllogger/resources/templates/output_card_collapsed.html rename to shell_logger/resources/templates/output_card_collapsed.html diff --git a/src/shelllogger/resources/templates/output_line.html b/shell_logger/resources/templates/output_line.html similarity index 100% rename from src/shelllogger/resources/templates/output_line.html rename to shell_logger/resources/templates/output_line.html diff --git a/src/shelllogger/resources/templates/parent_logger.html b/shell_logger/resources/templates/parent_logger.html similarity index 100% rename from src/shelllogger/resources/templates/parent_logger.html rename to shell_logger/resources/templates/parent_logger.html diff --git a/src/shelllogger/resources/templates/stat_chart.html b/shell_logger/resources/templates/stat_chart.html similarity index 100% rename from src/shelllogger/resources/templates/stat_chart.html rename to shell_logger/resources/templates/stat_chart.html diff --git a/src/shelllogger/resources/top_level_style_adjustments.css b/shell_logger/resources/top_level_style_adjustments.css similarity index 100% rename from src/shelllogger/resources/top_level_style_adjustments.css rename to shell_logger/resources/top_level_style_adjustments.css diff --git a/src/shelllogger/shell.py b/shell_logger/shell.py similarity index 99% rename from src/shelllogger/shell.py rename to shell_logger/shell.py index d217400..c60ed82 100644 --- a/src/shelllogger/shell.py +++ b/shell_logger/shell.py @@ -5,7 +5,6 @@ Copyright The shell-logger Authors. SPDX-License-Identifier: BSD-3-Clause """ - from __future__ import annotations import fcntl from io import StringIO diff --git a/src/shelllogger/shell_logger.py b/shell_logger/shell_logger.py similarity index 99% rename from src/shelllogger/shell_logger.py rename to shell_logger/shell_logger.py index ab6052f..58c01b1 100644 --- a/src/shelllogger/shell_logger.py +++ b/shell_logger/shell_logger.py @@ -5,7 +5,6 @@ Copyright The shell-logger Authors. SPDX-License-Identifier: BSD-3-Clause """ - from __future__ import annotations from .shell import Shell from .stats_collector import stats_collectors diff --git a/src/shelllogger/stats_collector.py b/shell_logger/stats_collector.py similarity index 99% rename from src/shelllogger/stats_collector.py rename to shell_logger/stats_collector.py index 7413869..e7df29e 100644 --- a/src/shelllogger/stats_collector.py +++ b/shell_logger/stats_collector.py @@ -5,7 +5,6 @@ Copyright The shell-logger Authors. SPDX-License-Identifier: BSD-3-Clause """ - from __future__ import annotations from .abstract_method import AbstractMethod from abc import abstractmethod diff --git a/src/shelllogger/trace.py b/shell_logger/trace.py similarity index 99% rename from src/shelllogger/trace.py rename to shell_logger/trace.py index 92c9cc8..ab10dac 100644 --- a/src/shelllogger/trace.py +++ b/shell_logger/trace.py @@ -5,7 +5,6 @@ Copyright The shell-logger Authors. SPDX-License-Identifier: BSD-3-Clause """ - from __future__ import annotations from .abstract_method import AbstractMethod from abc import abstractmethod diff --git a/tests/requirements.txt b/test/requirements.txt similarity index 100% rename from tests/requirements.txt rename to test/requirements.txt diff --git a/tests/test_shell_logger.py b/test/test_shell_logger.py similarity index 99% rename from tests/test_shell_logger.py rename to test/test_shell_logger.py index f61926b..bf362ce 100644 --- a/tests/test_shell_logger.py +++ b/test/test_shell_logger.py @@ -12,7 +12,7 @@ from pathlib import Path import pytest import re -from src.shelllogger import ShellLogger, ShellLoggerDecoder +from shell_logger import ShellLogger, ShellLoggerDecoder try: import psutil except ModuleNotFoundError: