Skip to main content

Package for converting thermo homework assignments

Project description

thermohw

Homework assignment converter from Jupyter Notebooks to PDF

This package installs a CLI script to convert Jupyter Notebook homework assignments to PDF (with and without solutions) and a set of Notebooks (with and without solutions).

Given a directory structure such as

.
├── homework
|   ├── homework-1
│   │   ├── homework-1-1.ipynb
│   │   ├── homework-1-2.ipynb
│   │   ├── homework-1-3.ipynb
│   │   ├── homework-1-4.ipynb
│   │   ├── homework-1-5.ipynb
│   │   ├── homework-1-6.ipynb
|   ├── homework-2
│   │   ├── homework-2-1.ipynb
│   │   ├── homework-2-2.ipynb
│   │   ├── homework-2-3.ipynb
│   │   ├── homework-2-4.ipynb
...

running

convert_thermo_hw --hw 1

will convert all of the .ipynb files in the homework-1 directory. You can also specify which problems should be converted by the problems argument, which takes a list of integers

convert_thermo_hw --hw 2 --problems 1 3 4

would convert problems 1, 3, and 4 in homework-2.

The output files are placed in a directory called output in the homework-N directory.

Change Log

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

0.3.0 - 2018-AUG-14

Added

0.2.5 - 2018-AUG-03

Added

  • setup.cfg file added to configure some metadata
  • Add flake8 configuration to setup.cfg
  • More keywords to setup function in setup.py
  • Module docstring for the new preprocessors module
  • Export more classes and functions from __init__.py

Changed

  • The HomeworkPreprocessor and SolnRemoverPreprocessor are moved from convert_thermo_hw module to preprocessors module

Fixed

  • Fix some typing errors

Removed

  • Remove the ExtractOutputsPreprocessor which is not needed anymore

0.2.4 - 2018-AUG-03

Fixed

  • PyPI deploy password for Travis CI must be encrypted with --pro flag

0.2.3 - 2018-AUG-03

Fixed

  • Fix anaconda.org upload token decryption

0.2.2 - 2018-AUG-03

Fixed

  • Typo in README.md
  • Conda recipe description was not valid YAML

0.2.1 - 2018-AUG-03

Added

  • Install conda-verify on Travis CI

Changed

  • Change Python version dependency in conda.recipe/meta.yaml to be less the 4.0

Fixed

  • Fix accessing Jinja variables in conda.recipe/meta.yaml

Removed

0.2.0 - 2018-AUG-03

Added

  • Add Travis CI configuration
  • Include the homework.tpl template file with the distribution
  • Appropriate classes are now exported in __init__.py

Changed

  • Use PyMarkdownPreprocessor from our own module to avoid having jupyter_contrib_nbextensions as a dependency
  • Set the build_directory of the PDFExporter FileWriter instance to prevent writing intermediate files in the local directory
  • Sort the list of problems to be processed by problem number
  • Automatically write the Notebook outputs to a zip file
  • Automatically combine the PDF outputs to a single PDF file
  • Refactor the processing loop to avoid creating the FilesWriter on every iteration

Fixed

  • Fix warnings about docstrings
  • Fix that paths must be resolved to be processed
  • Fix typos in docstrings
  • Specify that the long_description content for PyPI is Markdown formatted

0.1.0 - 2018-JUL-29

Added

  • Convert Jupyter Notebook to PDF with and without solutions
  • Convert Jupyter Notebook to a set of Notebooks, with and without solutions
  • README with instructions for use

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

thermohw-0.3.0.tar.gz (11.4 kB view hashes)

Uploaded Source

Built Distribution

thermohw-0.3.0-py3-none-any.whl (15.4 kB 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