toolz
List processing tools and functional utilities
Decision gist · record as of 2026-08-14
Yes. Toolz is a stable, zero-dependency utility library with a permissive license, low install friction, and no known vulnerabilities. It is widely used and well-suited for projects adopting functional programming patterns. The aging maintenance status is not a blocker—the team commits to critical fixes—but it signals the library is feature-complete and not actively developed; install it if you need its specific utilities, not expecting active feature development.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Low install friction with no runtime dependencies beyond the standard library.
- Maintenance is aging—the project is alive but inactive, with the original maintainers having moved on; the team commits to critical bug fixes and security issues but does not plan extensive review of contributions.
License · maintenance · safety
BSD-3-Clause (permissive) — BSD-3-Clause (permissive) allows commercial and private use with minimal restrictions; you must include a copy of the license and retain copyright notices.
last release 2025-10-17 (301 days) · last repo commit 2026-01-01 · 5,151 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 62,699,991 downloads/mo, #496 on PyPI
Alternatives
Verify before relying
pip install toolz
from toolz import compose, frequencies
from toolz.curried import map
def stem(word):
return word.lower().rstrip(",.!:;'-\"").lstrip("'\"")
wordcount = compose(frequencies, map(stem), str.split)
result = wordcount("This cat jumped over this other cat!")
print(result) # {'this': 2, 'cat': 2, 'jumped': 1, 'over': 1, 'other': 1}- Whether the aging maintenance status affects stability for new Python versions or edge cases not covered by critical bug fixes.
What it is and what it does
Toolz is a pure-Python library of utility functions for functional-style programming, organized into three modules: itertoolz for operations on iterables (groupby, unique, interpose), functoolz for higher-order functions (memoize, curry, compose), and dicttoolz for dictionary operations (assoc, update-in, merge). It draws from the functional programming tradition and interoperates well to accomplish complex tasks with minimal boilerplate.
The package requires Python 3.9+ and has no external dependencies, making it a lightweight addition to any project. It is Production/Stable and widely used (top 1000 on PyPI), though the original maintainers have largely moved on; the project is maintained for critical bug fixes and security issues but is viewed as mostly complete and not actively developed.
Use it for
- Build composable data-transformation pipelines by chaining functions like compose, map, and filter without intermediate variables.
- Group and aggregate iterables efficiently with functions like groupby, frequencies, and partition for data analysis tasks.
- Implement memoization and currying to optimize recursive functions and create partially-applied function variants.
- Manipulate nested dictionaries with update-in and merge to avoid mutation and simplify configuration or state management.
- Process text or sequences with functional utilities like unique, interpose, and sliding_window for clean, readable code.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
Toolz is a stable, zero-dependency utility library with a permissive license, low install friction, and no known vulnerabilities. It is widely used and well-suited for projects adopting functional programming patterns. The aging maintenance status is not a blocker—the team commits to critical fixes—but it signals the library is feature-complete and not actively developed; install it if you need its specific utilities, not expecting active feature development.
Install
toolz on PyPI
Before you install
Low install friction with no runtime dependencies beyond the standard library. Maintenance is aging—the project is alive but inactive, with the original maintainers having moved on; the team commits to critical bug fixes and security issues but does not plan extensive review of contributions.
License in practice
BSD-3-Clause (permissive) allows commercial and private use with minimal restrictions; you must include a copy of the license and retain copyright notices.
Quickstart
pip install toolz
from toolz import compose, frequencies
from toolz.curried import map
def stem(word):
return word.lower().rstrip(",.!:;'-\"").lstrip("'\"")
wordcount = compose(frequencies, map(stem), str.split)
result = wordcount("This cat jumped over this other cat!")
print(result) # {'this': 2, 'cat': 2, 'jumped': 1, 'over': 1, 'other': 1}
Verify before relying
- Whether the aging maintenance status affects stability for new Python versions or edge cases not covered by critical bug fixes.
Package facts
| License | BSD-3-Clause permissive |
| Python support | Supports the current Python release >=3.9 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | None |
| Maintenance | Aging 301 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 62,699,991 / month, #496 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPy |
Evidence: toolz-1.1.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “iterator and function tools”
- toolzToolz provides utility functions for functional-style programming…
- rignoreProvides fast directory traversal with support for .gitignore rules…
- jaraco.itertoolsProvides additional iterator utilities and helper functions that…
Give your agent the search over MCP, or paste the wish link into any chat.
Similar packages
Cython-accelerated implementation of the toolz functional utilities library, providing faster performance for operations on iterables, functions, and dictionaries while maintaining the same API.
Funcy provides a collection of functional programming utilities—higher-order functions, collection transformations, and control-flow abstractions—designed to make functional patterns practical in Python.
Install it if you write functional-style Python or want to reduce boilerplate in collection transformations and function composition.
fastcore extends Python with functional programming tools, enhanced list operations, parallel execution utilities, and decorators for cleaner class and function definitions.
Provides additional iterator utilities and recipes that extend Python's built-in itertools library for grouping, windowing, peeking, and transforming iterables.
Install it if your code works with iterables and needs patterns beyond what itertools provides.
Provides additional iterator utilities and helper functions that extend Python's standard itertools module, built on more_itertools and inflect.
However, install only if you have a concrete use case—the package's narrow scope and lack of public documentation mean it's not a general-purpose utility library.
Provides additional functional programming utilities beyond Python's standard library functools, including decorators and higher-order functions for common patterns.
Install only if you have a specific need for the additional functools it provides—it's a specialized library, not a general dependency.
See also pydash · asyncstdlib-fw · asyncstdlib · big