Skip to main content

Various functionalities: folder synchronization, simple logging function, helpers to generate documentation with sphinx, sphinx extension, to run a command line, to run a notebook...

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.6.2413 (2018-02-13)

BugFix

  • 86: avoids last line of notebooks in rst to disappear

  • 95: fix replaced unicode characters in latex output

  • 99: fix issue with subfolders in example galleries

  • 96: better handling of notebooks for latex

  • 101: update to Sphinx 1.7

Features

  • 73: merges coverage reports from differents jobs about unit tests

  • 84: remove epkg instruction in call_cli_function

  • 92: add directive video for sphinx documentation

  • 93: add a variable in documentation configuration for custom replacements in notebooks

  • 94: implements test fixture @skipif_appveyor, @skipif_travis, @skipif_circleci

  • 100: fix indentation in documented source files

1.5.2275 (2017-11-28)

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 Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

pyquickhelper-1.6.2413-py3-none-any.whl (2.1 MB view hashes)

Uploaded Python 3

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