Skip to main content

Small library to dynamically create python functions.

Project description

# python-makefun

Small library to dynamically create python functions.

[![Build Status](https://travis-ci.org/smarie/python-makefun.svg?branch=master)](https://travis-ci.org/smarie/python-makefun) [![Tests Status](https://smarie.github.io/python-makefun/junit/junit-badge.svg?dummy=8484744)](https://smarie.github.io/python-makefun/junit/report.html) [![codecov](https://codecov.io/gh/smarie/python-makefun/branch/master/graph/badge.svg)](https://codecov.io/gh/smarie/python-makefun) [![Documentation](https://img.shields.io/badge/docs-latest-blue.svg)](https://smarie.github.io/python-makefun/) [![PyPI](https://img.shields.io/badge/PyPI-makefun-blue.svg)](https://pypi.python.org/pypi/makefun/)

This is the readme for developers. The documentation for users is available here: [https://smarie.github.io/python-makefun/](https://smarie.github.io/python-makefun/)

## Want to contribute ?

Contributions are welcome ! Simply fork this project on github, commit your contributions, and create pull requests.

Here is a non-exhaustive list of interesting open topics: [https://github.com/smarie/python-makefun/issues](https://github.com/smarie/python-makefun/issues)

## Running the tests

This project uses pytest.

`bash pytest -v makefun/tests/ `

You may need to install requirements for setup beforehand, using

`bash pip install -r ci_tools/requirements-test.txt `

## Packaging

This project uses setuptools_scm to synchronise the version number. Therefore the following command should be used for development snapshots as well as official releases:

`bash python setup.py egg_info bdist_wheel rotate -m.whl -k3 `

You may need to install requirements for setup beforehand, using

`bash pip install -r ci_tools/requirements-setup.txt `

## Generating the documentation page

This project uses mkdocs to generate its documentation page. Therefore building a local copy of the doc page may be done using:

`bash mkdocs build -f docs/mkdocs.yml `

You may need to install requirements for doc beforehand, using

`bash pip install -r ci_tools/requirements-doc.txt `

## Generating the test reports

The following commands generate the html test report and the associated badge.

`bash pytest --junitxml=junit.xml -v makefun/tests/ ant -f ci_tools/generate-junit-html.xml python ci_tools/generate-junit-badge.py `

### PyPI Releasing memo

This project is now automatically deployed to PyPI when a tag is created. Anyway, for manual deployment we can use:

`bash twine upload dist/* -r pypitest twine upload dist/* `

### Merging pull requests with edits - memo

Ax explained in github (‘get commandline instructions’):

`bash git checkout -b <git_name>-<feature_branch> master git pull https://github.com/<git_name>/python-makefun.git <feature_branch> --no-commit --ff-only `

if the second step does not work, do a normal auto-merge (do not use rebase!):

`bash git pull https://github.com/<git_name>/python-makefun.git <feature_branch> --no-commit `

Finally review the changes, possibly perform some modifications, and commit.

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

makefun-0.1.0.tar.gz (30.2 kB view details)

Uploaded Source

Built Distribution

makefun-0.1.0-py3-none-any.whl (7.0 kB view details)

Uploaded Python 3

File details

Details for the file makefun-0.1.0.tar.gz.

File metadata

  • Download URL: makefun-0.1.0.tar.gz
  • Upload date:
  • Size: 30.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.7.1 requests-toolbelt/0.9.1 tqdm/4.30.0 CPython/3.5.6

File hashes

Hashes for makefun-0.1.0.tar.gz
Algorithm Hash digest
SHA256 3f8f06a03c2318ed71dd2651ce7522463c95b4e3ae9ebd1b2b4c5c9f0a8f339a
MD5 9d48536312d087b89f03fad913f852fe
BLAKE2b-256 ab9c4ab0288d3627e2669555a33835fdab88595911d450af586cf5234b44e8b2

See more details on using hashes here.

Provenance

File details

Details for the file makefun-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: makefun-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 7.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.7.1 requests-toolbelt/0.9.1 tqdm/4.30.0 CPython/3.5.6

File hashes

Hashes for makefun-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fb8f6826b56aed6aba50d07526a57844480d6e049e116b24eeeb460883ed9bb5
MD5 7794337487aa28aee58f0e7b04faccc1
BLAKE2b-256 3c35a728b406d3eb5a253f3789c2616c085e6c3890f51b6fbad76a1ec40e4c35

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