Skip to main content

...

Project description

cvxcooker

PyPI version Apache 2.0 License Downloads Coverage Status

What is cvxcooker?

This is code to automate the often tedious process of writing boilerplate files such as

  • README.md
  • CONTRIBUTING.md
  • CODE_OF_CONDUCT.md
  • book/sphinx/conf.py
  • book/_config.yml

All those files are created from Jinja2 templates, e.g. the file 'book/_config.yml' is created from the template

# Book settings
# Learn more at https://jupyterbook.org/customize/config.html

title: {{ name }}
author: {{ authors[0] }}
only_build_toc_files: true

execute:
  execute_notebooks: force
  timeout: 240

parse:
  myst_enable_extensions:
    - linkify
    - dollarmath

# needed for plotly
sphinx:
  config:
    html_js_files:
    - https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js

# Information about where the book exists on the web
repository:
  url: {{ repository }}
  path_to_book: book
  branch: main

# Add GitHub buttons to your book
# See https://jupyterbook.org/customize/config.html#add-a-link-to-your-repository
html:
  use_issues_button: true
  use_repository_button: true
  extra_navbar: Powered by <a href="https://jupyterbook.org">Jupyter Book</a>
  # Will be displayed underneath the left navbar.

The data in double curly braces is replaced by the data injected into the template. We get the data from parsing the projects 'pyproject.toml' in the root of the repository.

Of course, we do not want to entertain the idea of having copies of all those templates in all the repositories. Instead, we have this central repository and every repository that wants to use this functionality adds in its Makefile the job

.PHONY: boil
boil: ## Update the boilerplate code
 @poetry run pip install cvxcooker
 @poetry run cook pyproject.toml

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

cvxcooker-0.0.6.tar.gz (32.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cvxcooker-0.0.6-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file cvxcooker-0.0.6.tar.gz.

File metadata

  • Download URL: cvxcooker-0.0.6.tar.gz
  • Upload date:
  • Size: 32.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for cvxcooker-0.0.6.tar.gz
Algorithm Hash digest
SHA256 8e246b5b133c3263b1ebd7dceb8738d5726a95d450ec46b7fdfee7b25af2913e
MD5 2a44e41a0488ebe50d5e0176f81809e1
BLAKE2b-256 95ba9dc3555f32957d0878ed3e58a401f61d5c66130e52495299e22dc25b65fe

See more details on using hashes here.

Provenance

The following attestation bundles were made for cvxcooker-0.0.6.tar.gz:

Publisher: release.yml on cvxgrp/boilerplate

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cvxcooker-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: cvxcooker-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 9.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for cvxcooker-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 25d3989a92b7c6b3c066571060aedf4727fdc673fdd2e9d724b655eb36275b8d
MD5 60a188d24d9a2903adaffa17bd6ad250
BLAKE2b-256 d6f8d89c1001bdf2023051b07590ef530936b4165278d19d58624a7a53b22ead

See more details on using hashes here.

Provenance

The following attestation bundles were made for cvxcooker-0.0.6-py3-none-any.whl:

Publisher: release.yml on cvxgrp/boilerplate

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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