feat: add type hints, new CLI features, and improve project structure
chore: add uv.lock to gitignore Major changes: - Add type hints and docstrings to all functions (PEP 484) - Add __main__.py for module execution (python -m genpass) - Expose public API in __init__.py - Add config file support (~/.genpass/config.json) - Add entropy calculation (--entropy) - Add clipboard support (--clipboard/-c) - Add ambiguous characters exclusion (--no-ambiguous) - Add output formats: plain, json, delimited (--format) - Add sensible defaults (all character types enabled by default) - Add input validation for length and count - Update shell completions for all new options - Add pre-commit config with ruff, mypy, black - Update pyproject.toml with dev dependencies and tool configs - Add requirements.txt and requirements-dev.txt - Update README.md with comprehensive examples BREAKING CHANGE: Default behavior now includes all character types
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
"""
|
||||
GenPass - Secure password generator.
|
||||
|
||||
This package provides functionality to generate strong, random passwords
|
||||
with customizable character sets and various security features.
|
||||
|
||||
Example usage:
|
||||
>>> from genpass import generate_password, get_character_pools
|
||||
>>> pools = get_character_pools(True, True, True, True, "!@#$%", False)
|
||||
>>> password = generate_password(16, pools)
|
||||
>>> print(password)
|
||||
"""
|
||||
|
||||
from genpass.cli import (
|
||||
AMBIGUOUS_CHARS,
|
||||
DEFAULT_SYMBOLS,
|
||||
calculate_entropy,
|
||||
generate_password,
|
||||
get_character_pools,
|
||||
)
|
||||
|
||||
__version__ = "2.0.0"
|
||||
__all__ = [
|
||||
"generate_password",
|
||||
"get_character_pools",
|
||||
"calculate_entropy",
|
||||
"DEFAULT_SYMBOLS",
|
||||
"AMBIGUOUS_CHARS",
|
||||
"__version__",
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user