{ "info": { "author": "Caleb P. Burns", "author_email": "cpburnz@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Utilities" ], "description": "*pathspec*: Path Specification\n==============================\n\n*pathspec* is a utility library for pattern matching of file paths. So\nfar this only includes Git's wildmatch pattern matching which itself is\nderived from Rsync's wildmatch. Git uses wildmatch for its `gitignore`_\nfiles.\n\n.. _`gitignore`: http://git-scm.com/docs/gitignore\n\n\nTutorial\n--------\n\nSay you have a \"Projects\" directory and you want to back it up, but only\ncertain files, and ignore others depending on certain conditions::\n\n\t>>> import pathspec\n\t>>> # The gitignore-style patterns for files to select, but we're including\n\t>>> # instead of ignoring.\n\t>>> spec = \"\"\"\n\t...\n\t... # This is a comment because the line begins with a hash: \"#\"\n\t...\n\t... # Include several project directories (and all descendants) relative to\n\t... # the current directory. To reference a directory you must end with a\n\t... # slash: \"/\"\n\t... /project-a/\n\t... /project-b/\n\t... /project-c/\n\t...\n\t... # Patterns can be negated by prefixing with exclamation mark: \"!\"\n\t...\n\t... # Ignore temporary files beginning or ending with \"~\" and ending with\n\t... # \".swp\".\n\t... !~*\n\t... !*~\n\t... !*.swp\n\t...\n\t... # These are python projects so ignore compiled python files from\n\t... # testing.\n\t... !*.pyc\n\t...\n\t... # Ignore the build directories but only directly under the project\n\t... # directories.\n\t... !/*/build/\n\t...\n\t... \"\"\"\n\nWe want to use the ``GitWildMatchPattern`` class to compile our patterns. The\n``PathSpec`` class provides an interface around pattern implementations::\n\n\t>>> spec = pathspec.PathSpec.from_lines(pathspec.patterns.GitWildMatchPattern, spec.splitlines())\n\nThat may be a mouthful but it allows for additional patterns to be implemented\nin the future without them having to deal with anything but matching the paths\nsent to them. ``GitWildMatchPattern`` is the implementation of the actual\npattern which internally gets converted into a regular expression.\n``PathSpec`` is a simple wrapper around a list of compiled patterns.\n\nTo make things simpler, we can use the registered name for a pattern class\ninstead of always having to provide a reference to the class itself. The\n``GitWildMatchPattern`` class is registered as **gitwildmatch**::\n\n\t>>> spec = pathspec.PathSpec.from_lines('gitwildmatch', spec.splitlines())\n\nIf we wanted to manually compile the patterns we can just do the following::\n\n\t>>> patterns = map(pathspec.patterns.GitWildMatchPattern, spec.splitlines())\n\t>>> spec = PathSpec(patterns)\n\n``PathSpec.from_lines()`` is simply a class method which does just that.\n\nIf you want to load the patterns from file, you can pass the file instance\ndirectly as well::\n\n\t>>> with open('patterns.list', 'r') as fh:\n\t>>> spec = pathspec.PathSpec.from_lines('gitwildmatch', fh)\n\nYou can perform matching on a whole directory tree with::\n\n\t>>> matches = spec.match_tree('path/to/directory')\n\nOr you can perform matching on a specific set of file paths with::\n\n\t>>> matches = spec.match_files(file_paths)\n\nOr check to see if an individual file matches::\n\n\t>>> is_matched = spec.match_file(file_path)\n\n\nLicense\n-------\n\n*pathspec* is licensed under the `Mozilla Public License Version 2.0`_. See\n`LICENSE`_ or the `FAQ`_ for more information.\n\nIn summary, you may use *pathspec* with any closed or open source project\nwithout affecting the license of the larger work so long as you:\n\n- give credit where credit is due,\n\n- and release any custom changes made to *pathspec*.\n\n.. _`Mozilla Public License Version 2.0`: http://www.mozilla.org/MPL/2.0\n.. _`LICENSE`: LICENSE\n.. _`FAQ`: http://www.mozilla.org/MPL/2.0/FAQ.html\n\n\nSource\n------\n\nThe source code for *pathspec* is available from the GitHub repo\n`cpburnz/python-path-specification`_.\n\n.. _`cpburnz/python-path-specification`: https://github.com/cpburnz/python-path-specification\n\n\nInstallation\n------------\n\n*pathspec* requires the following packages:\n\n- `setuptools`_\n\n*pathspec* can be installed from source with::\n\n\tpython setup.py install\n\n*pathspec* is also available for install through `PyPI`_::\n\n\tpip install pathspec\n\n.. _`setuptools`: https://pypi.python.org/pypi/setuptools\n.. _`PyPI`: http://pypi.python.org/pypi/pathspec\n\n\nDocumentation\n-------------\n\nDocumentation for *pathspec* is available on `Read the Docs`_.\n\n.. _`Read the Docs`: http://python-path-specification.readthedocs.io\n\n\nOther Languages\n---------------\n\n*pathspec* is also available as a `Ruby gem`_.\n\n.. _`Ruby gem`: https://github.com/highb/pathspec-ruby\n\nChange History\n==============\n\n\n0.6.0 (2019-10-03)\n------------------\n\n- `Issue #24`_: Drop support for Python 2.6, 3.2, and 3.3.\n- `Issue #25`_: Update README.rst.\n- `Issue #26`_: Method to escape gitwildmatch.\n\n.. _`Issue #24`: https://github.com/cpburnz/python-path-specification/pull/24\n.. _`Issue #25`: https://github.com/cpburnz/python-path-specification/pull/25\n.. _`Issue #26`: https://github.com/cpburnz/python-path-specification/pull/26\n\n\n0.5.9 (2018-09-15)\n------------------\n\n- Fixed file system error handling.\n\n\n0.5.8 (2018-09-15)\n------------------\n\n- Improved type checking.\n- Created scripts to test Python 2.6 because Tox removed support for it.\n- Improved byte string handling in Python 3.\n- `Issue #22`_: Handle dangling symlinks.\n\n.. _`Issue #22`: https://github.com/cpburnz/python-path-specification/issues/22\n\n\n0.5.7 (2018-08-14)\n------------------\n\n- `Issue #21`_: Fix collections deprecation warning.\n\n.. _`Issue #21`: https://github.com/cpburnz/python-path-specification/issues/21\n\n\n0.5.6 (2018-04-06)\n------------------\n\n- Improved unit tests.\n- Improved type checking.\n- `Issue #20`_: Support current directory prefix.\n\n.. _`Issue #20`: https://github.com/cpburnz/python-path-specification/issues/20\n\n\n0.5.5 (2017-09-09)\n------------------\n\n- Add documentation link to README.\n\n\n0.5.4 (2017-09-09)\n------------------\n\n- `Issue #17`_: Add link to Ruby implementation of *pathspec*.\n- Add sphinx documentation.\n\n.. _`Issue #17`: https://github.com/cpburnz/python-path-specification/pull/17\n\n\n0.5.3 (2017-07-01)\n------------------\n\n- `Issue #14`_: Fix byte strings for Python 3.\n- `Issue #15`_: Include \"LICENSE\" in source package.\n- `Issue #16`_: Support Python 2.6.\n\n.. _`Issue #14`: https://github.com/cpburnz/python-path-specification/issues/14\n.. _`Issue #15`: https://github.com/cpburnz/python-path-specification/pull/15\n.. _`Issue #16`: https://github.com/cpburnz/python-path-specification/issues/16\n\n\n0.5.2 (2017-04-04)\n------------------\n\n- Fixed change log.\n\n\n0.5.1 (2017-04-04)\n------------------\n\n- `Issue #13`_: Add equality methods to `PathSpec` and `RegexPattern`.\n\n.. _`Issue #13`: https://github.com/cpburnz/python-path-specification/pull/13\n\n\n0.5.0 (2016-08-22)\n------------------\n\n- `Issue #12`_: Add `PathSpec.match_file()`.\n- Renamed `gitignore.GitIgnorePattern` to `patterns.gitwildmatch.GitWildMatchPattern`.\n- Deprecated `gitignore.GitIgnorePattern`.\n\n.. _`Issue #12`: https://github.com/cpburnz/python-path-specification/issues/12\n\n\n0.4.0 (2016-07-15)\n------------------\n\n- `Issue #11`_: Support converting patterns into regular expressions without compiling them.\n- API change: Subclasses of `RegexPattern` should implement `pattern_to_regex()`.\n\n.. _`Issue #11`: https://github.com/cpburnz/python-path-specification/issues/11\n\n\n0.3.4 (2015-08-24)\n------------------\n\n- `Issue #7`_: Fixed non-recursive links.\n- `Issue #8`_: Fixed edge cases in gitignore patterns.\n- `Issue #9`_: Fixed minor usage documentation.\n- Fixed recursion detection.\n- Fixed trivial incompatibility with Python 3.2.\n\n.. _`Issue #7`: https://github.com/cpburnz/python-path-specification/pull/7\n.. _`Issue #8`: https://github.com/cpburnz/python-path-specification/pull/8\n.. _`Issue #9`: https://github.com/cpburnz/python-path-specification/pull/9\n\n\n0.3.3 (2014-11-21)\n------------------\n\n- Improved documentation.\n\n\n0.3.2 (2014-11-08)\n------------------\n\n- `Issue #5`_: Use tox for testing.\n- `Issue #6`_: Fixed matching Windows paths.\n- Improved documentation.\n- API change: `spec.match_tree()` and `spec.match_files()` now return iterators instead of sets.\n\n.. _`Issue #5`: https://github.com/cpburnz/python-path-specification/pull/5\n.. _`Issue #6`: https://github.com/cpburnz/python-path-specification/issues/6\n\n\n0.3.1 (2014-09-17)\n------------------\n\n- Updated README.\n\n\n0.3.0 (2014-09-17)\n------------------\n\n- `Issue #3`_: Fixed trailing slash in gitignore patterns.\n- `Issue #4`_: Fixed test for trailing slash in gitignore patterns.\n- Added registered patterns.\n\n.. _`Issue #3`: https://github.com/cpburnz/python-path-specification/pull/3\n.. _`Issue #4`: https://github.com/cpburnz/python-path-specification/pull/4\n\n\n0.2.2 (2013-12-17)\n------------------\n\n- Fixed setup.py.\n\n\n0.2.1 (2013-12-17)\n------------------\n\n- Added tests.\n- Fixed comment gitignore patterns.\n- Fixed relative path gitignore patterns.\n\n\n0.2.0 (2013-12-07)\n------------------\n\n- Initial release.", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/cpburnz/python-path-specification", "keywords": "", "license": "MPL 2.0", "maintainer": "", "maintainer_email": "", "name": "pathspec", "package_url": "https://pypi.org/project/pathspec/", "platform": "", "project_url": "https://pypi.org/project/pathspec/", "project_urls": { "Homepage": "https://github.com/cpburnz/python-path-specification" }, "release_url": "https://pypi.org/project/pathspec/0.6.0/", "requires_dist": null, "requires_python": "", "summary": "Utility library for gitignore style pattern matching of file paths.", "version": "0.6.0" }, "last_serial": 5926129, "releases": { "0.2.2": [ { "comment_text": "", "digests": { "md5": "7e75b842f4fb99b2b6c5e23683c33f7e", "sha256": "69376fdc87dd9620f0b7726e497272c997064c52ae02a9ec937136d93437b63d" }, "downloads": -1, "filename": "pathspec-0.2.2.tar.gz", "has_sig": false, "md5_digest": "7e75b842f4fb99b2b6c5e23683c33f7e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9764, "upload_time": "2013-12-17T17:01:42", "url": "https://files.pythonhosted.org/packages/b6/36/1917ff4019b4741beecf03237ead86cd886593de9eaa6c16e84bdeee44f6/pathspec-0.2.2.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "d3b62472c51ee65eafc64e884eaf1d7b", "sha256": "b756c59e7b580109d333e0dc6ec3b9098db2a3122cd29c428c5743c573d52fa7" }, "downloads": -1, "filename": "pathspec-0.3.0.tar.gz", "has_sig": false, "md5_digest": "d3b62472c51ee65eafc64e884eaf1d7b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9015, "upload_time": "2014-09-18T02:55:32", "url": "https://files.pythonhosted.org/packages/c8/8e/8cf94298f70eefec1e9069e2cae2d68c183c4307fe0da6fe14cbd0ad8fd1/pathspec-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "ca50e204509afc8c951a2c665a12d2b0", "sha256": "67d091064cead13d5feb81831218ff82e213631e2782e1853b745b20d20e2557" }, "downloads": -1, "filename": "pathspec-0.3.1.tar.gz", "has_sig": false, "md5_digest": "ca50e204509afc8c951a2c665a12d2b0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9128, "upload_time": "2014-09-18T03:10:42", "url": "https://files.pythonhosted.org/packages/24/9f/0b78c480638e2f6448b7729ee60dab030463c55f7e757b1cf1717750dd34/pathspec-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "4e39e676e81fe3485e3accc5d02f6e33", "sha256": "42e802d1c1abc5bffc3896ffd43c55633f8f2ecf4aacda64a398b5adf4ccfd4b" }, "downloads": -1, "filename": "pathspec-0.3.2.tar.gz", "has_sig": false, "md5_digest": "4e39e676e81fe3485e3accc5d02f6e33", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9990, "upload_time": "2014-11-08T15:32:27", "url": "https://files.pythonhosted.org/packages/21/e4/ab97deccb30e8d05c474ad5ccf9d56f8d9c671201f5351c7531d5959d592/pathspec-0.3.2.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "eaf9c6805f552535101752b4bd4a6be6", "sha256": "38d0613ee2ce75adbbad61a33895c3b88122c768a732fb14800e6f660cc1380b" }, "downloads": -1, "filename": "pathspec-0.3.3.tar.gz", "has_sig": false, "md5_digest": "eaf9c6805f552535101752b4bd4a6be6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10313, "upload_time": "2014-11-21T12:58:45", "url": "https://files.pythonhosted.org/packages/b8/70/f00bd4a643da9d38c191257d6698f7b6fb8e434adaa8f5b0ebda47699002/pathspec-0.3.3.tar.gz" } ], "0.3.4": [ { "comment_text": "", "digests": { "md5": "2a4af9bf2dee98845d583ec61a00d05d", "sha256": "7605ca5c26f554766afe1d177164a2275a85bb803b76eba3428f422972f66728" }, "downloads": -1, "filename": "pathspec-0.3.4.tar.gz", "has_sig": false, "md5_digest": "2a4af9bf2dee98845d583ec61a00d05d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12767, "upload_time": "2015-08-24T12:57:51", "url": "https://files.pythonhosted.org/packages/14/9d/c9d790d373d6f6938d793e9c549b87ad8670b6fa7fc6176485e6ef11c1a4/pathspec-0.3.4.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "61b10e7453bfc00c69247aef3dd965e2", "sha256": "d3147deb81d4d540f7489f9e761f6d2ab001351752a75ec45741adacc7880e1c" }, "downloads": -1, "filename": "pathspec-0.4.0.tar.gz", "has_sig": false, "md5_digest": "61b10e7453bfc00c69247aef3dd965e2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13344, "upload_time": "2016-07-15T13:33:17", "url": "https://files.pythonhosted.org/packages/c7/32/16e80b662842bd62209bc8d05ae2c42d03db4f63865fcef8f6993e301dff/pathspec-0.4.0.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "9e7c10d738189b7640a4d58fcb7305cd", "sha256": "aa3a071054d4740b963c91a3127a5e0e1358351718bae2a3f731ec24fb0bdd1f" }, "downloads": -1, "filename": "pathspec-0.5.0.tar.gz", "has_sig": false, "md5_digest": "9e7c10d738189b7640a4d58fcb7305cd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14277, "upload_time": "2016-08-23T02:08:08", "url": "https://files.pythonhosted.org/packages/67/f6/ad4d6964da803ffe0ec9d513b0be6924be0f502636c17781308561f08034/pathspec-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "4ba30be16a73ff54d6affba1af8e8bb2", "sha256": "72f1ec50373eb6c42e08e2a07e29e56426e349fe6b5f8e391fe884f5ba56f17a" }, "downloads": -1, "filename": "pathspec-0.5.1.tar.gz", "has_sig": false, "md5_digest": "4ba30be16a73ff54d6affba1af8e8bb2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14638, "upload_time": "2017-04-05T02:35:17", "url": "https://files.pythonhosted.org/packages/e2/4e/2cf091fb4dadcdffc877952629f95d5126440aca506204bd6413534c9266/pathspec-0.5.1.tar.gz" } ], "0.5.2": [ { "comment_text": "", "digests": { "md5": "40c33be6f756fcdba7c078d1fd4cc730", "sha256": "f9fdf4408f4adb30e9f507f61d3a41c968e9c6e6c519d4bbd2a189627b5e86f0" }, "downloads": -1, "filename": "pathspec-0.5.2.tar.gz", "has_sig": false, "md5_digest": "40c33be6f756fcdba7c078d1fd4cc730", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14662, "upload_time": "2017-04-05T02:38:33", "url": "https://files.pythonhosted.org/packages/0f/ae/a13bc82b20a66b5983ebfc365582495347b65659e0c4010523e2e842f3ef/pathspec-0.5.2.tar.gz" } ], "0.5.3": [ { "comment_text": "", "digests": { "md5": "5c3f701f069afc1f885e52daec31524c", "sha256": "54478a66a360f4ebe4499c9235e4206fca5dec837b8e272d1ce37e0a626cc64d" }, "downloads": -1, "filename": "pathspec-0.5.3.tar.gz", "has_sig": false, "md5_digest": "5c3f701f069afc1f885e52daec31524c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20473, "upload_time": "2017-07-01T20:17:17", "url": "https://files.pythonhosted.org/packages/a5/92/078512f5fe85300b97281210a9d38c970dde2dd7109a2b6dddd8252d9a3f/pathspec-0.5.3.tar.gz" } ], "0.5.4": [ { "comment_text": "", "digests": { "md5": "841fe44ff85c6b88f5492d5f99dcf075", "sha256": "8832d3d7615efac2e327bddba2d2acbf9c4785621d11a6077a7299256ae051bf" }, "downloads": -1, "filename": "pathspec-0.5.4.tar.gz", "has_sig": false, "md5_digest": "841fe44ff85c6b88f5492d5f99dcf075", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21010, "upload_time": "2017-09-09T14:00:37", "url": "https://files.pythonhosted.org/packages/8c/81/63b120a666781bc99a42b146c76362a7e0d1637b6d25c8ed53b7ec49e000/pathspec-0.5.4.tar.gz" } ], "0.5.5": [ { "comment_text": "", "digests": { "md5": "3c45b031b63d2bdd65b8d5e85bd269d9", "sha256": "72c495d1bbe76674219e307f6d1c6062f2e1b0b483a5e4886435127d0df3d0d3" }, "downloads": -1, "filename": "pathspec-0.5.5.tar.gz", "has_sig": false, "md5_digest": "3c45b031b63d2bdd65b8d5e85bd269d9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21081, "upload_time": "2017-09-09T14:05:57", "url": "https://files.pythonhosted.org/packages/9f/fb/5a901a3b1eeebf83af6da74ecca69d7daf5189e450f0f4cccf9c19132651/pathspec-0.5.5.tar.gz" } ], "0.5.6": [ { "comment_text": "", "digests": { "md5": "63551c99b88e02c83290becfc5e1fc31", "sha256": "be664567cf96a718a68b33329862d1e6f6803ef9c48a6e2636265806cfceb29d" }, "downloads": -1, "filename": "pathspec-0.5.6.tar.gz", "has_sig": false, "md5_digest": "63551c99b88e02c83290becfc5e1fc31", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24494, "upload_time": "2018-04-06T13:24:19", "url": "https://files.pythonhosted.org/packages/5e/59/d40bf36fda6cc9ec0e2d2d843986fa7d91f7144ad83e909bcb126b45ea88/pathspec-0.5.6.tar.gz" } ], "0.5.7": [ { "comment_text": "", "digests": { "md5": "52cc0289fbbe8a2ac66ba83736642e82", "sha256": "69ac7869c9ce308cfe631e29c09f9da60fae02baf31418885bbbb0c75adcd8c5" }, "downloads": -1, "filename": "pathspec-0.5.7.tar.gz", "has_sig": false, "md5_digest": "52cc0289fbbe8a2ac66ba83736642e82", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24602, "upload_time": "2018-08-14T13:30:49", "url": "https://files.pythonhosted.org/packages/46/ff/23dca7dfac363b185314553c67f0c113b8981137a59861eb66ed77716d6a/pathspec-0.5.7.tar.gz" } ], "0.5.8": [ { "comment_text": "", "digests": { "md5": "87b47295cc45c69b0dd98a9352cd3022", "sha256": "cd443795b6c5bb9b0903f3289ef87d466a5ab9cacb7250c1d0532743768c7b56" }, "downloads": -1, "filename": "pathspec-0.5.8.tar.gz", "has_sig": false, "md5_digest": "87b47295cc45c69b0dd98a9352cd3022", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25428, "upload_time": "2018-09-15T16:45:07", "url": "https://files.pythonhosted.org/packages/e6/21/07ce5b89164bfc7c60cb4fff1c081cf67dd51a4a685e11ebe3391786e432/pathspec-0.5.8.tar.gz" } ], "0.5.9": [ { "comment_text": "", "digests": { "md5": "d76bc12293518c652e1c2b7fb028529e", "sha256": "54a5eab895d89f342b52ba2bffe70930ef9f8d96e398cccf530d21fa0516a873" }, "downloads": -1, "filename": "pathspec-0.5.9.tar.gz", "has_sig": false, "md5_digest": "d76bc12293518c652e1c2b7fb028529e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25473, "upload_time": "2018-09-15T17:51:54", "url": "https://files.pythonhosted.org/packages/84/2a/bfee636b1e2f7d6e30dd74f49201ccfa5c3cf322d44929ecc6c137c486c5/pathspec-0.5.9.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "bb79f3c8644217d3afc73b9a7e6fb1a2", "sha256": "e285ccc8b0785beadd4c18e5708b12bb8fcf529a1e61215b3feff1d1e559ea5c" }, "downloads": -1, "filename": "pathspec-0.6.0.tar.gz", "has_sig": false, "md5_digest": "bb79f3c8644217d3afc73b9a7e6fb1a2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24159, "upload_time": "2019-10-04T01:08:45", "url": "https://files.pythonhosted.org/packages/7a/68/5902e8cd7f7b17c5879982a3a3ee2ad0c3b92b80c79989a2d3e1ca8d29e1/pathspec-0.6.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "bb79f3c8644217d3afc73b9a7e6fb1a2", "sha256": "e285ccc8b0785beadd4c18e5708b12bb8fcf529a1e61215b3feff1d1e559ea5c" }, "downloads": -1, "filename": "pathspec-0.6.0.tar.gz", "has_sig": false, "md5_digest": "bb79f3c8644217d3afc73b9a7e6fb1a2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24159, "upload_time": "2019-10-04T01:08:45", "url": "https://files.pythonhosted.org/packages/7a/68/5902e8cd7f7b17c5879982a3a3ee2ad0c3b92b80c79989a2d3e1ca8d29e1/pathspec-0.6.0.tar.gz" } ] }