Skip to main content

Various functionalities: folder synchronization, a logging function, helpers to generate documentation with sphinx, generation of code for Python 2.7 from Python 3

Project description

README

Build status Build Status Windows https://circleci.com/gh/sdpython/pyquickhelper/tree/master.svg?style=svg https://badge.fury.io/py/pyquickhelper.svg MIT License Requirements Status https://codecov.io/github/sdpython/pyquickhelper/coverage.svg?branch=master GitHub Issues Waffle Codacy Badge Notebook Coverage

Links:

Functionalities

  • simple forms in notebooks

  • help generation including notebook conversion

  • folder synchronization

  • logging

  • help running unit tests

  • simple server to server sphinx documentation

  • file compression, zip, gzip, 7z

  • helpers for ipython notebooks (upgrade, offline run)

  • parser to quickly add a magic command in a notebook

  • Sphinx directives to integrate a blogpost in the documentation

  • mechanism to add forms in notebooks

Design

This project contains the following folders:

  • a source folder: src

  • a unit test folder: _unittests, go to this folder and run run_unittests.py

  • a folder: _doc, it will contain the documentation, a subfolder _doc/sphinxdox/source/blog contains blog post to communicate on the module

  • a file setup.py to build and to install the module, if the source were retrieve from GitHub, the script can also be called with the following extra options (python setup.py <option>): * clean_space: remove extra spaces in the code * build_sphinx: builds the documentation * unittests: run the unit tests, compute the code coverage

  • a script build_script.bat which produces many script on Windows to easily run the setup, generate the documentation, run the unit tests.

Examples

Convert a notebook into slides:

from pyquickhelper.helpgen import nb2slides
nb2slides("nb.ipynb", "convert.slides.html")

Merge two notebooks:

from pyquickhelper.ipythonhelper import read_nb
nb1 = read_nb("<file1>", kernel=False)
nb2 = read_nb("<file2>", kernel=False)
nb1.merge_notebook(nb2)
nb1.to_json(outfile)

Run a notebook:

from pyquickhelper.ipythonhelper import run_notebook
run_notebook("source.ipynb", working_dir="temp",
            outfilename="modified.ipynb",
            additional_path = [ "c:/temp/mymodule/src" ] )

Run a command line program:

from pyquickhelper.loghelper import run_cmd
out,err = run_cmd("python setup.py install", wait=True)

A sphinx extension to generate python documentation from a script:

.. runpython::
    :showcode:

    import sys
    print("sys.version_info=", str(sys.version_info))

History

1.5.???? (2017-??-??)

Bugfix

  • 46: update to Sphinx 1.6

  • 54: fix searchbox for sphinx_rtd_theme

  • 69: overwrites toctree to catch exception and process rst inline

  • 71: skip old notebook execution when computing the coverage

Features

  • 56: support function for role epkg

  • 36: add support for sphinx-gallery

  • 53: handle history, converts the file into something usable by module releases

  • 52: add coverage for notebooks

  • 61: add a build on circleci, builds the documentation, populates the artifacts section

  • 63: add file_detail in get_repo_log

  • 60: add notebook coverage as a separate page

  • 34: applies pep8 on the code being rendered on the documentation

  • 65: add function to clean readme.rst before sending it to pypi

  • 67: add toctree delayed which gets filled after the dynamic content is created, use it for blogs

  • 77: add class ExtUnitCase with extensive test function

  • 78: get_temp_folder change other default directory

  • 81: add youtube sphinx extension

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

pyquickhelper-1.5.2275.tar.gz (3.0 MB view details)

Uploaded Source

Built Distribution

pyquickhelper-1.5.2275-py3-none-any.whl (521.7 kB view details)

Uploaded Python 3

File details

Details for the file pyquickhelper-1.5.2275.tar.gz.

File metadata

File hashes

Hashes for pyquickhelper-1.5.2275.tar.gz
Algorithm Hash digest
SHA256 481afc1d39fc00814692b3051ecedc51390bbc59d516e088f8b5db2682bdaf00
MD5 9a9a643c5770aee7308af82f28c7ebf2
BLAKE2b-256 82d63383720eb9205107681a8e046a203656e245fab076419ebc138d9ff53100

See more details on using hashes here.

File details

Details for the file pyquickhelper-1.5.2275-py3-none-any.whl.

File metadata

File hashes

Hashes for pyquickhelper-1.5.2275-py3-none-any.whl
Algorithm Hash digest
SHA256 8acd3a69d0a7d157d8d56f2f974a90f4c822c18282b29c71d7c3ed62ed3cc64c
MD5 4bc9f47621df4292d289ddf6e547b5f7
BLAKE2b-256 928b0aba9fdcc82e9cf4e92f81fb0c222e88855e4c3e4ffd0f14e414435005a2

See more details on using hashes here.

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