Skip to main content

extended-functools

Additional tools for functional programming in Python.

This project intends to offer a variety of general-purpose tools, starting with a timeout decorator, while keeping transient third-party dependencies to a minimum.

Type Badges
PyPI Python versions PyPI - Implementation Wheel Downloads Version
Tests codecov Unit tests Ruff Deploy to PyPI
Activity GitHub contributors Last commit GitHub all releases GitHub issues GitHub closed issues GitHub pull requests GitHub closed pull requests
QA CodeFactor Rating
Other License FOSSA Status Known Vulnerabilities Repository size Code size Files Lines of code Blanks Comments Code

Installing

You can install the project from PyPI:

# For general use
pip install extended-functools

# For uv (and other package managers)
uv add extended-functools

Development

You can use whatever package manager you prefer, but the core team behind the project uses uv, and the CI scripts and Tox assume as much. This guide will assume you'll use uv. If you need more information on uv, consider reading through this guide.

It may also be a good idea to use VS Code as an IDE; the project includes a list of recommended extensions to install, which the IDE should tell you about on opening the project. Feel free to use something else if you want, though.

Setting up the development environment

You can install the project and its development dependencies by running uv install in the project directory after cloning it. After that, you should run

uv run pre-commit install

to install the pre-commit hooks, which are used to ensure commits are correctly formatted and meet the project's baseline quality standards. If the hooks need to be updated, you may run

uv run pre-commit autoupdate

to update them to the latest versions.

Contributing

This project follows semantic versioning, and uses a relaxed variant of the Git Flow workflow style, with feature branches playing a key role.

  • Direct commits to main are forbidden
  • The history of main is to remain linear through the use of fast-forward merges and rebasing
  • Commits must be signed
  • Messy PR histories are encouraged to be cleaned up before merging the PR.

More detailed information can be found in CONTRIBUTING.md.

Issues reports, feature requests, and PRs are all welcome.

Metadata

Release files for extended-functools 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for extended-functools 0.2.1
File Size Uploaded
extended_functools-0.2.1.tar.gz 68.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for extended-functools 0.2.1
File Interpreter ABI Platform
extended_functools-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 74.3 kB

Release files / extended_functools-0.2.1.tar.gz

Download URL extended_functools-0.2.1.tar.gz
Size 68.8 kB
Tags Source
SHA-256 checksum
How to use checksums
8ce0addf78ed6e173dd8982e09b6cf8652e00a3ec23ac3dbd0ddf54e8cf77492
BLAKE2b-256 checksum
How to use checksums
58406b6a0ba3a1ab016230c1f5b90374d1b0e8ccc2a1a29c025d43ecdcbc2440
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.6.14

Release files / extended_functools-0.2.1-py3-none-any.whl

Download URL extended_functools-0.2.1-py3-none-any.whl
Size 5.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6ea78ac51fb2a4515a41b5f9948b0496bbe1d2e8459fcf5f8178e1c81b4c0d95
BLAKE2b-256 checksum
How to use checksums
2a9fb3924f8fe35a4617892d89cad881fb5f925283f7421acd8ab29e604c90b3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.6.14

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page