Development

Daddy’s Boring Math Projects

The boring-math PyPI project is a support component of my Boring Math hobby projects.

  • Claims the boring-math name on PyPI for the overall effort

  • PyPI project for the boring-math homepage on GitHub pages

  • Homepage provides links to the

    • PyPI projects making up the Boring Math effort

    • GitHub Repos for each project

  • Provides locations for overarching CHANGELOG and README files.

    • Each Boring Math project has its own CHANGELOG and README files.

Tip

There is no reason to install boring-math itself, but does not hurt anything if just the base package is installed.

Module Dependencies

All non-typing related dependencies. Arrows point from modules to their dependencies.

digraph Modules {
    bgcolor="#957fb8";
    node [style=filled, fillcolor="#181616", fontcolor="#dcd7ba"];
    edge [color="#181616", fontcolor="#dcd7ba"];
    combinatorics -> "pythonic_fp.circulararray";
    combinatorics -> "pythonic_fp.iterables";
    combinatorics -> number_theory;
    number_theory -> "pythonic_fp.circulararray";
    number_theory -> "pythonic_fp.iterables";
    pythagorean_triples -> sys;
    pythagorean_triples -> number_theory;
    recursive_functions -> sys;
    recursive_functions -> "pythonic_fp.iterables";
}
digraph Modules {
    bgcolor="#957fb8";
    node [style=filled, fillcolor="#181616", fontcolor="#dcd7ba"];
    edge [color="#181616", fontcolor="#dcd7ba"];
    probability_distributions -> math;
    probability_distributions -> "mathplotlib.pyplot";
    probability_distributions -> "pythonic_fp.fptools";
    special_functions -> cmath;
    special_functions -> math;
}

Semantic Versioning

Boring Math Projects

Maintainer has adopted strict 3 digit semantic versioning and does not put caps on dependencies for library modules. The few example executables also do not have caps since their purpose is to show library usage.

This allows for more package management flexibility for software developers using these libraries, and provides easier access to the latest features.

Homepage & Integrated Testing (pythonic-fp)

The meanings for version numbers can change with paradigm shifts. Currently they are

  • major: for paradigm shifts

  • minor: homepage changes, additional tests

  • patch: typos, git/pypi thrashing, pure eye-candy

Changelog

Boring Math overarching CHANGELOG.

Each individual Boring Math project has its own CHANGELOG too.