Skip to main content

Python package with widget to simplify work with many processes in jupyter

Project description

GitHub last commit GitHub license<space><space> https://travis-ci.org/stas-prokopiev/jupyter_process_manager.svg?branch=master PyPI PyPI - Python Version

Overview.

This is a library which helps working with many processes in a jupyter notebook in a very simple way.

Installation via pip:

pip install jupyter_process_manager

Usage examples

How to create create and start processes for jupyter_process_manager

from jupyter_process_manager import JupyterProcessManager
process_manager = JupyterProcessManager(".")  # "." - path where to store outputs of the processes

# And functions for processing
process_manager.add_function_to_processing(
    func1, *func1_args,**func1_kwargs)
process_manager.add_function_to_processing(
    func2, *func2_args,**func2_kwargs)

WARNING: Please do NOT try to use functions defined inside jupyter notebook, they won’t work.

JupyterProcessManager arguments:

  1. str_dir_for_output: Directory where to store processes outputs

  2. is_to_delete_previous_outputs=True: Flag If you want to delete outputs for all previous processes in the directory

Usage in Jupyter Notebook

After processes were added, you can check what is happening with them

process_manager
images/2.PNG

How to check output for the processes

Select the process for which you want to see the output.
Select which output you want to see.
The output will get updated every 2 seconds.

How to add more processes

You can add as many processes as you want
by running the code below in any other jupyter notebook cell
process_manager.add_function_to_processing(
    func_new, *func_new_args,**func_new_kwargs)

How to stop a process

To stop the process, select it and press the orange button to stop it

When the button to stop the selected process is pushed.
KeyboardInterrupt Exception is called for the process
If within 5 seconds process is not finished then the process will be killed.

How to do a debug run without a new process creation

# arguments are the same as in **add_function_to_processing(...)**
process_manager.debug_run_of_1_function(func_to_process, *args, **kwargs)

Usage in a console

process_manager.wait_till_all_processes_are_over()

You will see the output like shown below

images/1.PNG

Contacts

License

This project is licensed under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jupyter_process_manager-0.1.13.tar.gz (13.3 kB view details)

Uploaded Source

Built Distribution

jupyter_process_manager-0.1.13-py3-none-any.whl (14.3 kB view details)

Uploaded Python 3

File details

Details for the file jupyter_process_manager-0.1.13.tar.gz.

File metadata

  • Download URL: jupyter_process_manager-0.1.13.tar.gz
  • Upload date:
  • Size: 13.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.9.12 Windows/10

File hashes

Hashes for jupyter_process_manager-0.1.13.tar.gz
Algorithm Hash digest
SHA256 c9479de3c941fc1e51933ec80a6aabaa708fa7b8ff8c0ba9a2cd3ff2fef1925b
MD5 462552a6a63010e8a94644ec2d6f56d7
BLAKE2b-256 3d602700684ec73e7a89a8967d18a56cfddd6bb7d6f09e1f56c3f4919a82399c

See more details on using hashes here.

Provenance

File details

Details for the file jupyter_process_manager-0.1.13-py3-none-any.whl.

File metadata

File hashes

Hashes for jupyter_process_manager-0.1.13-py3-none-any.whl
Algorithm Hash digest
SHA256 163837b898c4e95f3cb8034609bd01dea0f572720366533e884eb91a9a1c0675
MD5 195b006710ae833f8cd46f72bdcb922e
BLAKE2b-256 75975796ab906c4aeb34af8afd738cb2dab8b30d35cc85a595a7ada377623554

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page