.. image:: https://travis-ci.org/webyneter/python-humble-utils.svg?branch=master :target: https://travis-ci.org/webyneter/python-humble-utils :alt: Build Status
.. image:: https://badgen.net/dependabot/webyneter/python-humble-utils/?icon=dependabot :target: https://badgen.net/dependabot/webyneter/python-humble-utils/?icon=dependabot :alt: dependabot
.. image:: https://codecov.io/gh/webyneter/python-humble-utils/branch/master/graph/badge.svg :target: https://codecov.io/gh/webyneter/python-humble-utils :alt: Coverage
.. image:: https://codeclimate.com/github/webyneter/python-humble-utils/badges/gpa.svg :target: https://codeclimate.com/github/webyneter/python-humble-utils :alt: Code Climate
.. image:: https://badge.fury.io/py/python-humble-utils.svg :target: https://pypi.python.org/pypi/python-humble-utils :alt: Latest Version
.. image:: https://img.shields.io/pypi/pyversions/python-humble-utils.svg :target: https://pypi.python.org/pypi/python-humble-utils :alt: Supported Python Versions
.. image:: https://readthedocs.org/projects/python-humble-utils/badge/?version=stable :target: http://python-humble-utils.readthedocs.io/en/stable/?badge=stable :alt: Documentation Status
.. image:: https://img.shields.io/badge/License-MIT-green.svg :target: https://opensource.org/licenses/MIT :alt: MIT License
.. image:: https://img.shields.io/gitter/room/webyneter/python-humble-utils.svg :target: https://gitter.im/webyneter/python-humble-utils?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge :alt: Join the chat at https://gitter.im/webyneter/python-humble-utils
Python utils for everyday use.
Documentation
_.open issues
_ before sending emails to the maintainers: You will get a much faster response!.. open issues
: https://github.com/webyneter/python-humble-utils/issues/new
.. Documentation
: https://python-humble-utils.readthedocs.io/en/stable/installation.html
py.test
_ fixtures and helpers... _py.test
: https://docs.pytest.org/en/stable/
.. code-block:: console
$ pip install python-humble-utils
or install from sources:
.. code-block:: console
$ python setup.py install
Refer to Installation
_ for detailed instructions.
.. _Installation
: https://python-humble-utils.readthedocs.io/en/stable/installation.html
.. code-block:: python
import os
from pathlib import Path
from python_humble_utils.filesystem import yield_file_paths
from python_humble_utils.strings import camel_or_pascal_case_to_snake_case
# ...
file_paths = yield_file_paths(
dir_path=Path("dir") / "with" / "scripts",
allowed_file_extensions=(".sh", ".bash"),
recursively=True
)
assert set(file_paths) == set(("s1.sh", "s2.bash", "s3.bash"))
s = camel_or_pascal_case_to_snake_case("camelCasedString")
assert s == "camel_cased_string"
s = camel_or_pascal_case_to_snake_case("PascalCasedString")
assert s == "pascal_cased_string"
# ...
Your contributions are very much welcome! Refer to Contributing
_ for more details.
.. _Contributing
: https://python-humble-utils.readthedocs.io/en/stable/contributing.html
All those using python-humble-utils
, including its codebase and project management ecosystem are expected to follow the Python Community Code of Conduct
_.
.. _Python Community Code of Conduct
: https://www.python.org/psf/codeofconduct/
This package was initially scaffolded via Cookiecutter
with audreyr/cookiecutter-pypackage
template.
.. Cookiecutter
: https://github.com/audreyr/cookiecutter
.. audreyr/cookiecutter-pypackage
: https://github.com/audreyr/cookiecutter-pypackage
Bumps wheel from 0.34.2 to 0.38.1.
Sourced from wheel's changelog.
Release Notes
UNRELEASED
- Updated vendored
packaging
to 22.00.38.4 (2022-11-09)
- Fixed
PKG-INFO
conversion inbdist_wheel
mangling UTF-8 header values inMETADATA
(PR by Anderson Bravalheri)0.38.3 (2022-11-08)
- Fixed install failure when used with
--no-binary
, reported on Ubuntu 20.04, by removingsetup_requires
fromsetup.cfg
0.38.2 (2022-11-05)
- Fixed regression introduced in v0.38.1 which broke parsing of wheel file names with multiple platform tags
0.38.1 (2022-11-04)
- Removed install dependency on setuptools
- The future-proof fix in 0.36.0 for converting PyPy's SOABI into a abi tag was faulty. Fixed so that future changes in the SOABI will not change the tag.
0.38.0 (2022-10-21)
- Dropped support for Python < 3.7
- Updated vendored
packaging
to 21.3- Replaced all uses of
distutils
withsetuptools
- The handling of
license_files
(including glob patterns and default values) is now delegated tosetuptools>=57.0.0
(#466). The package dependencies were updated to reflect this change.- Fixed potential DoS attack via the
WHEEL_INFO_RE
regular expression- Fixed
ValueError: ZIP does not support timestamps before 1980
when usingSOURCE_DATE_EPOCH=0
or when on-disk timestamps are earlier than 1980-01-01. Such timestamps are now changed to the minimum value before packaging.0.37.1 (2021-12-22)
- Fixed
wheel pack
duplicating theWHEEL
contents when the build number has changed (#415)- Fixed parsing of file names containing commas in
RECORD
(PR by Hood Chatham)0.37.0 (2021-08-09)
- Added official Python 3.10 support
- Updated vendored
packaging
library to v20.9
... (truncated)
6f1608d
Created a new releasecf8f5ef
Moved news item from PR #484 to its proper place9ec2016
Removed install dependency on setuptools (#483)747e1f6
Fixed PyPy SOABI parsing (#484)7627548
[pre-commit.ci] pre-commit autoupdate (#480)7b9e8e1
Test on Python 3.11 finala04dfef
Updated the pypi-publish action94bb62c
Fixed docs not building due to code style changesd635664
Updated the codecov action to the latest versionfcb94cd
Updated version to match the releaseDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase
.
Bumps codecov from 2.0.15 to 2.0.16.
3a8b06b
Version 2.0.16b2951c0
Merge pull request #231 from codecov/ce-13802a80aa4
CE-1380_sanitize_args73b1b13
Merge pull request #218 from rly/patch-180a3fcc
Fix broken bitly link in helpba51a78
Merge pull request #106 from blueyed/verbose1d5d288
Merge branch 'master' into verbose3502fdd
Merge pull request #201 from takluyver/patch-1de92d4f
Merge pull request #202 from takluyver/patch-254033d8
Merge pull request #192 from hugovk/add-3.7Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase
.
Bumps ipython from 7.12.0 to 7.16.3.
d43c7c7
release 7.16.35fa1e40
Merge pull request from GHSA-pq7m-3gw7-gq5x8df8971
back to dev9f477b7
release 7.16.2138f266
bring back release helper from master branch5aa3634
Merge pull request #13341 from meeseeksmachine/auto-backport-of-pr-13335-on-7...bcae8e0
Backport PR #13335: What's new 7.16.28fcdcd3
Pin Jedi to <0.17.2.2486838
release 7.16.120bdc6f
fix conda buildDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase
.
Related to #19
Functional:
Non-functional:
Breaking changes
extract_file_name_with_extension
extract_file_name_and_extension
extract_file_dir_path
parse_tuple_from_string
generate_hex_uuid_4
generate_random_file_name_with_extension
get_class_name
get_class_qualname
Other changes
typing.Collection
s back to typing.Sequence
s for backward compatibility with Python 3.5.Breaking changes - Move tests to the root. - Pick another naming scheme for tests.
Other changes - Convert NamedTuple's to classes and document them. - Clean up docstrings. - Stop indexing tests in docs.
Expert DevOps and Cloud Architect with Python/Django Background. Consultant. Core Contributor at Cookiecutter Django
GitHub Repository Homepagepython python-3 utility utilities util utils humble helper helpers