diff options
author | 2020-04-11 10:50:14 +0200 | |
---|---|---|
committer | 2020-12-08 07:53:04 +0200 | |
commit | b736c016b0213f455b7918e094e30fbee36e51a2 (patch) | |
tree | e62092966d111bde4cb846f88e130a759dd27cc2 /dev-python/wcmatch | |
parent | dev-python/backrefs: Wrapper for re/regex that adds addit. back refs (diff) | |
download | gentoo-b736c016b0213f455b7918e094e30fbee36e51a2.tar.gz gentoo-b736c016b0213f455b7918e094e30fbee36e51a2.tar.bz2 gentoo-b736c016b0213f455b7918e094e30fbee36e51a2.zip |
dev-python/wcmatch: Wildcard/glob file name matcher
Package-Manager: Portage-2.3.98, Repoman-2.3.22
Signed-off-by: Andrew Ammerlaan <andrewammerlaan@riseup.net>
Signed-off-by: Joonas Niilola <juippis@gentoo.org>
Diffstat (limited to 'dev-python/wcmatch')
-rw-r--r-- | dev-python/wcmatch/Manifest | 1 | ||||
-rw-r--r-- | dev-python/wcmatch/metadata.xml | 52 | ||||
-rw-r--r-- | dev-python/wcmatch/wcmatch-7.1.ebuild | 55 |
3 files changed, 108 insertions, 0 deletions
diff --git a/dev-python/wcmatch/Manifest b/dev-python/wcmatch/Manifest new file mode 100644 index 000000000000..eb561b1f9514 --- /dev/null +++ b/dev-python/wcmatch/Manifest @@ -0,0 +1 @@ +DIST wcmatch-7.1.tar.gz 105744 BLAKE2B 0add1c68025c92ac57d6ea64d82bddb20bace60de5d319fb16e16802f208d788d876695bfcd186b80630039f544565c631d36e1c7327dee5d8c799eff8c80ce2 SHA512 79d62d85f13d245e38d0fe92a275e24058b86af8aaf9a926bfd950dad4ec47e40e763c18b08d3eb4ddd925832ae9910f13407094070442b41dbe2fe4ad11fb39 diff --git a/dev-python/wcmatch/metadata.xml b/dev-python/wcmatch/metadata.xml new file mode 100644 index 000000000000..a6af55c38820 --- /dev/null +++ b/dev-python/wcmatch/metadata.xml @@ -0,0 +1,52 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> + +<pkgmetadata> + <maintainer type="person"> + <email>lssndrbarbieri@gmail.com</email> + <name>Alessandro Barbieri</name> + </maintainer> + <maintainer type="person"> + <email>andrewammerlaan@riseup.net</email> + <name>Andrew Ammerlaan</name> + </maintainer> + <maintainer type="project"> + <email>proxy-maint@gentoo.org</email> + <name>Proxy Maintainers</name> + </maintainer> + <upstream> + <remote-id type="github">facelessuser/wcmatch</remote-id> + <remote-id type="pypi">wcmatch</remote-id> + </upstream> + <longdescription lang="en"> +Wildcard Match provides an enhanced fnmatch, glob, and pathlib library in order to provide +file matching and globbing that more closely follows the features found in Bash. In some +ways these libraries are similar to Python's builtin libraries as they provide a similar +interface to match, filter, and glob the file system. But they also include a number of +features found in Bash's globbing such as backslash escaping, brace expansion, extended +glob pattern groups, etc. They also add a number of new useful functions as well, such as +globmatch which functions like fnmatch, but for paths. +Wildcard Match also adds a file search utility called wcmatch that is built on top of fnmatch and globmatch. It was +originally written for Rummage, but split out into this project to be used by other +projects that may find its approach useful. +Bash is used as a guide when making decisions on behavior for fnmatch and glob. Behavior may differ from Bash version to Bash version, +but an attempt is made to keep Wildcard Match up with the latest relevant changes. With +all of this said, there may be a few corner cases in which we've intentionally chosen to +not exactly mirror Bash. If an issue is found where Wildcard Match seems to deviate in an +illogical way, we'd love to hear about it in the issue tracker. +Features +A quick overview of Wildcard Match's +Features: + Provides an interface comparable to Python's builtin in fnamtch, glob, and pathlib. + Allows for a much more configurable experience when matching or globbing with many more features. Adds support for ** in glob. + Adds support for escaping characters with \. + Add support for POSIX style character classes inside sequences: [[:alnum:]], etc. The C locale is used for byte strings and Unicode properties for Unicode strings. + Adds support for brace expansion: a{b,{c,d}} --> ab ac ad. + Adds support for expanding ~ or ~username to the appropriate user path. + Adds support for extended match patterns: @(...), +(...), *(...), ?(...), and !(...). + Adds ability to match path names via the path centric globmatch. + Provides a pathlib variant that uses Wildcard Match's glob library instead of Python's default. + Provides an alternative file crawler called wcmatch. + And more... + </longdescription> +</pkgmetadata> diff --git a/dev-python/wcmatch/wcmatch-7.1.ebuild b/dev-python/wcmatch/wcmatch-7.1.ebuild new file mode 100644 index 000000000000..ef181cb493b7 --- /dev/null +++ b/dev-python/wcmatch/wcmatch-7.1.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{7,8} ) + +DOCS_BUILDER="mkdocs" +DOCS_DEPEND=" + ~dev-python/mkdocs_pymdownx_material_extras-1.0.7 + dev-python/mkdocs-material + dev-python/mkdocs-git-revision-date-localized-plugin + dev-python/mkdocs-minify-plugin + dev-python/pyspelling +" + +inherit distutils-r1 docs + +DESCRIPTION="Wildcard/glob file name matcher" +HOMEPAGE=" + https://github.com/facelessuser/wcmatch + https://pypi.org/project/wcmatch" +SRC_URI="https://github.com/facelessuser/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND=" + >=dev-python/backrefs-4.1[${PYTHON_USEDEP}] + >=dev-python/bracex-2.0[${PYTHON_USEDEP}] +" + +DEPEND="test? ( + dev-python/mock[${PYTHON_USEDEP}] +)" + +distutils_enable_tests pytest + +python_prepare_all() { + # no such file or dir ~homedir + sed -i -e 's:test_tilde_user:_&:' \ + tests/test_glob.py || die + + # mkdocs-git-revision-date-localized-plugin needs git repo + if use doc; then + git init + git config --global user.email "you@example.com" || die + git config --global user.name "Your Name" || die + git add . + git commit -m 'init' + fi + + distutils-r1_python_prepare_all +} |