NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #1385 most downloaded on PyPI
Random name and slug generator
Last release 5 months ago
23 Apr 2026
Ships unpredictably
gaps range from 2 weeks to 4.2 years
Nearly every release is documented
notes for 12 of 13 stable releases
Nothing withdrawn
no release was ever pulled
11 years old
13 releases · first in 2015
Merge branch 'master' into dev
Merge branch 'master' into dev
This major release has new features and significant internal changes, but it is compatible with 4.x in any normal usage as described in documentation, and you can upgrade from 4.x with minimal unit test coverage.
There are implementation changes that theoretically can break user code in undocumented scenarios. Even if it breaks, most likely, it will take a minute to fix.
What's new in the default generator:
Complete typing support, tested with mypy strict = True.
Added a few more words, and fixed one spelling mistake.
In custom generators:
Default parameter value changed: ensure_unique=True. Custom generators can forget about it and still generate sequences without repeating words. Consider also using ensure_unique_prefix (disabled by default).
New parameters for advanced words/phrases lists: strip_whitespace, allow_whitespace, separator.
What is considered a valid word? It's now controlled by word_regex parameter, \w+ by default.
Stricter config validation for custom generators, with more helpful error messages.
Custom generator can be rendered into text representation via ~coolname.RandomGenerator.render and ~coolname.RandomGenerator.write. Useful in debugging and logging.
~coolname.loader.load_config
~coolname.loader.filter_config
~coolname.loader.save_config_as_module
Type ~coolname.types.CoolnameConfigT formally describes config dict.
Config in *.txt allows comment after a word/phrase, Python-style:
# this was allowed before one two # this is now allowed too
One column per quarter.
Backported changes in word lists from 5.0.0
Backported changes in word lists from 5.0.0
Better mypy support
* Added a few words
Added a few words
docs: updated requirements and docs
docs: updated requirements and docs
Breaking change: Python 3.10+ is required (because of packaging - see below). Tests cover Python 3.10-3.14 and PyPy 3.10-3.11.
Switched to modern packaging with pyproject.toml. This should not affect user experience. Support for egg files is officially dropped, but the package is still pure Python and should work in bundles (such as PyInstaller - see documentation).
Added a lot of adjectives
Minor optimizations
README: get_combinations_count() result updated
README: get_combinations_count() result updated
Breaking change: Python 3.6 is not supported anymore. Tests cover Python 3.7-3.14 and PyPy 3.7-3.11.
Better type hints (now checked with mypy)
Minor bug fixed, concerning abnormal configs (most likely didn't affect anyone)
More mythical animals + one mistake fixed + few other words
Bump version: 2.1.0 → 2.2.0
Bump version: 2.0.0 → 2.1.0
Bump version: 2.0.0 → 2.1.0
Support OpenSSL FIPS by using hashlib.md5(..., usedforsecurity=False)
Bump version: 1.1.0 → 2.0.0
Bump version: 1.1.0 → 2.0.0
Support for old Python versions (<3.5) is dropped, because it's 2022
Command line usage and pipx support.
With additional owls and bitterns
Bump version: 1.0.4 → 1.1.0
Renamed RandomNameGenerator to RandomGenerator.
Breaking changes:
Renamed RandomNameGenerator to RandomGenerator.
randomize was removed, because it was just an alias to random.seed.
Phrase lists give you even more freedom when creating custom generators.
You can seed or even replace the underlying random.Random instance, see Randomization.
Change the default generator using COOLNAME_DATA_DIR and COOLNAME_DATA_MODULE. This also saves memory!
Total number of combinations = 60 billions.
Nothing published for this version
Consistent behavior in Python 2/3: output is always unicode.
Consistent behavior in Python 2/3: output is always unicode.
Provide from coolname.loader import load_config as a public API for loading custom configuration.
More strict configuration validation.
Total number of combinations increased from 33 to 43 billions.
* First release on PyPI.
First release on PyPI.
Your coding agent can read these notes before it upgrades. Set up the MCP server →