{ "info": { "author": "Jarry Shaw", "author_email": "jarryshaw@icloud.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Topic :: Software Development", "Topic :: Utilities" ], "description": "# poseur\n\n[![PyPI - Downloads](https://pepy.tech/badge/poseur)](https://pepy.tech/count/poseur)\n[![PyPI - Version](https://img.shields.io/pypi/v/poseur.svg)](https://pypi.org/project/poseur)\n[![PyPI - Format](https://img.shields.io/pypi/format/poseur.svg)](https://pypi.org/project/poseur)\n[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/poseur.svg)](https://pypi.org/project/poseur)\n\n[![Travis CI - Status](https://travis-ci.com/JarryShaw/poseur.svg)](https://travis-ci.org/JarryShaw/poseur)\n[![Codecov - Coverage](https://codecov.io/gh/JarryShaw/poseur/branch/master/graph/badge.svg)](https://codecov.io/gh/JarryShaw/poseur)\n![License](https://img.shields.io/github/license/jarryshaw/poseur.svg)\n[![LICENSE](https://img.shields.io/badge/license-Anti%20996-blue.svg)](https://github.com/996icu/996.ICU/blob/master/LICENSE)\n\n> Write *positional-only parameters* in Python 3.8 flavour, and let `poseur` worry about back-port issues :beer:\n\n  Since [PEP 570](https://www.python.org/dev/peps/pep-0570/), Python introduced *positional-only parameters*\nsyntax in version __3.8__. For those who wish to use *positional-only parameters* in their code, `poseur` provides an\nintelligent, yet imperfect, solution of a **backport compiler** by removing *positional-only parameters* syntax whilst\nintroducing a *decorator* for runtime checks, which guarantees you to always write *positional-only parameters* in Python\n3.8 flavour then compile for compatibility later.\n\n## Installation\n\n> Note that `poseur` only supports Python versions __since 3.3__ \ud83d\udc0d\n\n  For macOS users, `poseur` is now available through [Homebrew](https://brew.sh):\n\n```sh\nbrew tap jarryshaw/tap\nbrew install poseur\n# or simply, a one-liner\nbrew install jarryshaw/tap/poseur\n```\n\n  Simply run the following to install the current version from PyPI:\n\n```sh\npip install poseur\n```\n\n  Or install the latest version from the git repository:\n\n```sh\ngit clone https://github.com/JarryShaw/poseur.git\ncd poseur\npip install -e .\n# and to update at any time\ngit pull\n```\n\n## Basic Usage\n\n### CLI\n\n  It is fairly straightforward to use `poseur`:\n\n> context in `${...}` changes dynamically according to runtime environment\n\n```man\nusage: poseur [options] \n\nBack-port compiler for Python 3.8 positional-only parameters.\n\npositional arguments:\n SOURCE python source files and folders to be converted (${CWD})\n\noptional arguments:\n -h, --help show this help message and exit\n -V, --version show program's version number and exit\n -q, --quiet run in quiet mode\n\narchive options:\n duplicate original files in case there's any issue\n\n -n, --no-archive do not archive original files\n -p PATH, --archive-path PATH\n path to archive original files (${CWD}/archive)\n\nconvert options:\n compatibility configuration for non-unicode files\n\n -c CODING, --encoding CODING\n encoding to open source files (${LOCALE_ENCODING})\n -v VERSION, --python VERSION\n convert against Python version (${LATEST_VERSION})\n -s SEP, --linesep SEP\n line separator to process source files (${OS_LINESEP})\n -d, --dismiss dismiss runtime checks for positional-only parameters\n -nl, --no-linting do not lint converted codes\n -r VAR, --decorator VAR\n name of decorator for runtime checks (${DECORATOR})\n -t INDENT, --tabsize INDENT\n indentation tab size (4)\n```\n\n  `poseur` will read then convert all *positional-only parameters* syntax in every Python\nfile under this path. In case there might be some problems with the conversion, `poseur` will\nduplicate all original files it is to modify into `archive` directory ahead of the process,\nif `-n` not set.\n\n  Besides, to keep consistency of API to users, `poseur` ships with a *decorator* for\nsuch functions to check positional-only parameters at runtime, if `-nl` not set.\n\n## Developer Reference\n\n### Environments\n\n`poseur` currently supports three environment arguments:\n\n- `POSEUR_QUIET` -- run in quiet mode (same as `--quiet` option in CLI)\n- `POSEUR_VERSION` -- convert against Python version (same as `--python` option in CLI)\n- `POSEUR_ENCODING` -- encoding to open source files (same as `--encoding` option in CLI)\n- `POSEUR_LINESEP` -- line separator to process source files (same as `--linesep` option in CLI)\n- `POSEUR_DISMISS` -- dismiss runtime checks for positional-only arguments (same as `--dismiss` option in CLI)\n- `POSEUR_LINTING` -- lint converted codes (same as `--linting` option in CLI)\n- `POSEUR_DECORATOR` -- name of decorator for runtime checks (same as `--decorator` option in CLI)\n- `POSEUR_TABSIZE` -- indentation tab size (same as `--tabsize` option in CLI)\n\n### APIs\n\n#### `poseur` -- wrapper works for conversion\n\n```python\nposeur(filename)\n```\n\nArgs:\n\n- `filename` -- `str`, file to be converted\n\nEnvs:\n\n- `POSEUR_QUIET` -- run in quiet mode (same as `--quiet` option in CLI)\n- `POSEUR_ENCODING` -- encoding to open source files (same as `--encoding` option in CLI)\n- `POSEUR_VERSION`-- convert against Python version (same as `--python` option in CLI)\n- `POSEUR_LINESEP` -- line separator to process source files (same as `--linesep` option in CLI)\n- `POSEUR_DISMISS` -- dismiss runtime checks for positional-only arguments (same as `--dismiss` option in CLI)\n- `POSEUR_LINTING` -- lint converted codes (same as `--linting` option in CLI)\n- `POSEUR_DECORATOR` -- name of decorator for runtime checks (same as `--decorator` option in CLI)\n- `POSEUR_TABSIZE` -- indentation tab size (same as `--tabsize` option in CLI)\n\nRaises:\n\n- `ConvertError` -- when source code contains syntax errors\n\n#### `convert` -- the main conversion process\n\n```python\nconvert(string, source='')\n```\n\nArgs:\n\n- `string` -- `str`, context to be converted\n- `source` -- `str`, source of the context\n\nEnvs:\n\n- `POSEUR_VERSION` -- convert against Python version (same as `--python` option in CLI)\n- `POSEUR_LINESEP` -- line separator to process source files (same as `--linesep` option in CLI)\n- `POSEUR_DISMISS` -- dismiss runtime checks for positional-only arguments (same as `--dismiss` option in CLI)\n- `POSEUR_LINTING` -- lint converted codes (same as `--linting` option in CLI)\n- `POSEUR_DECORATOR` -- name of decorator for runtime checks (same as `--decorator` option in CLI)\n- `POSEUR_TABSIZE` -- indentation tab size (same as `--tabsize` option in CLI)\n\nReturns:\n\n- `str` -- converted string\n\nRaises:\n\n- `ConvertError` -- when source code contains syntax errors\n\n#### Internal exceptions\n\n```python\nclass ConvertError(SyntaxError):\n \"\"\"Parso syntax error.\"\"\"\n```\n\n```python\nclass EnvironError(EnvironmentError):\n \"\"\"Invalid environment.\"\"\"\n```\n\n## Test\n\n  See [`test.py`](https://github.com/JarryShaw/poseur/blob/master/tests/test.py).\n\n## Contribution\n\n  Contributions are very welcome, especially fixing bugs and providing test cases.\nNote that code must remain valid and reasonable.\n\n## See Also\n\n- [`babel`](https://github.com/jarryshaw/babel)\n- [`f2format`](https://github.com/jarryshaw/f2format)\n- [`walrus`](https://github.com/jarryshaw/walrus)\n- [`vermin`](https://github.com/netromdk/vermin)\n\n\n", "description_content_type": "text/markdown; charset=UTF-8", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/JarryShaw/poseur", "keywords": "positional-only parameters,back-port compiler", "license": "MIT License", "maintainer": "", "maintainer_email": "", "name": "poseur", "package_url": "https://pypi.org/project/poseur/", "platform": "", "project_url": "https://pypi.org/project/poseur/", "project_urls": { "Homepage": "https://github.com/JarryShaw/poseur" }, "release_url": "https://pypi.org/project/poseur/0.4.3/", "requires_dist": [ "parso (~=0.5.0)", "tbtrim (>=0.2.1)" ], "requires_python": ">=3.3", "summary": "Back-port compiler for Python 3.8 positional-only parameter syntax.", "version": "0.4.3", "yanked": false, "yanked_reason": null }, "last_serial": 6279553, "releases": { "0.0.0.dev0": [ { "comment_text": "", "digests": { "md5": "5fff0ba294d3215c75bba8672d40466b", "sha256": "486edb30812186b1b1be50cb31d5b98269976b1836ec1432e993f47ec1291f6a" }, "downloads": -1, "filename": "poseur-0.0.0.dev0-py3-none-any.whl", "has_sig": false, "md5_digest": "5fff0ba294d3215c75bba8672d40466b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5725, "upload_time": "2019-06-10T14:25:24", "upload_time_iso_8601": "2019-06-10T14:25:24.289142Z", "url": "https://files.pythonhosted.org/packages/64/f7/5ec78b7270750ff93ad5563a4c10ad04af93a37b6b69eaae89fc028d388a/poseur-0.0.0.dev0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "e575acc6eb39dd047d6a0315c44d2bfe", "sha256": "bd04111a4cde1a81ce835f00448fe66f30bdda3d9ddacdb01fa218d2a317e366" }, "downloads": -1, "filename": "poseur-0.0.0.dev0.tar.gz", "has_sig": false, "md5_digest": "e575acc6eb39dd047d6a0315c44d2bfe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5664, "upload_time": "2019-06-10T14:25:26", "upload_time_iso_8601": "2019-06-10T14:25:26.610589Z", "url": "https://files.pythonhosted.org/packages/b6/20/038a43f4f582e3eb024f9f5875ae130c2af848d4ba51bdae6a5f7cd46fbf/poseur-0.0.0.dev0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "cff1632f142ac4eebca3f9be4167bbb9", "sha256": "86088361cce2a4afc4c5c451a56801005c020e19338bed0a06cfa9c13c92e13f" }, "downloads": -1, "filename": "poseur-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "cff1632f142ac4eebca3f9be4167bbb9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10207, "upload_time": "2019-07-20T14:11:28", "upload_time_iso_8601": "2019-07-20T14:11:28.770134Z", "url": "https://files.pythonhosted.org/packages/72/1e/5241f8463113d4f8e84d995ff51283c1f8c595ec701f82af401842551411/poseur-0.1.0-py3-none-any.whl", "yanked": false, "yanked_reason": null } ], "0.1.0.post1": [ { "comment_text": "", "digests": { "md5": "20084b5a90397bbce44b2a69fe88a0a3", "sha256": "fa17aa03764d4b1506e7b5e8504c0a50b971e852bfe4925221b5ffa5da2e2d1a" }, "downloads": -1, "filename": "poseur-0.1.0.post1-py3-none-any.whl", "has_sig": false, "md5_digest": "20084b5a90397bbce44b2a69fe88a0a3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10319, "upload_time": "2019-07-21T02:07:07", "upload_time_iso_8601": "2019-07-21T02:07:07.106873Z", "url": "https://files.pythonhosted.org/packages/22/ab/759407d1e40ef70b9a4e54b81fe98b4506c59bb3b0d729d72b0cad96bb69/poseur-0.1.0.post1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "456075d962aa64b39050ca9d982ce14a", "sha256": "20718d18aaea6eb91080e81405a093f22ca19480c4f2426db1e7e3b12718352b" }, "downloads": -1, "filename": "poseur-0.1.0.post1.tar.gz", "has_sig": false, "md5_digest": "456075d962aa64b39050ca9d982ce14a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10129, "upload_time": "2019-07-21T02:07:14", "upload_time_iso_8601": "2019-07-21T02:07:14.104217Z", "url": "https://files.pythonhosted.org/packages/fa/00/f4492c9cea888bb00444089f1760a3ad39a43502dfbe88ede0139b5a118e/poseur-0.1.0.post1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.0b1": [ { "comment_text": "", "digests": { "md5": "612b39c8df95186464f9546051755fd0", "sha256": "c8adb9df3829a8678833307331d06c745b5742b39692bbf82b7d0f063c196811" }, "downloads": -1, "filename": "poseur-0.1.0b1-py3-none-any.whl", "has_sig": false, "md5_digest": "612b39c8df95186464f9546051755fd0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10236, "upload_time": "2019-07-20T13:55:25", "upload_time_iso_8601": "2019-07-20T13:55:25.797183Z", "url": "https://files.pythonhosted.org/packages/34/7b/744e775a6faaea57b252d989e162539834fc62b64f9793e81e98ed89bf2f/poseur-0.1.0b1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "ecf290f16565c8e3867001e799a669a8", "sha256": "8df411f8be3abbda793ca8cbc887da4fcd598a09072d2c6bb4e915e1564766ca" }, "downloads": -1, "filename": "poseur-0.1.0b1.tar.gz", "has_sig": false, "md5_digest": "ecf290f16565c8e3867001e799a669a8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12150, "upload_time": "2019-07-20T13:55:32", "upload_time_iso_8601": "2019-07-20T13:55:32.047553Z", "url": "https://files.pythonhosted.org/packages/c6/a0/7128633548e7aafd5b2d538d285e5f55df90464f140d1d662bff347afd83/poseur-0.1.0b1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "6a96c574066a49bdf4406c2398f04bb4", "sha256": "9938d30984501320be6fb117ac41dd94ce0a12a6169b0551e2f65c0f53338aa2" }, "downloads": -1, "filename": "poseur-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "6a96c574066a49bdf4406c2398f04bb4", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3", "size": 10555, "upload_time": "2019-07-26T14:00:49", "upload_time_iso_8601": "2019-07-26T14:00:49.722709Z", "url": "https://files.pythonhosted.org/packages/50/b3/84faeeca69f28d755f7679d9fffa792fdea1f2c59c96beae346a680bed53/poseur-0.1.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "d2cdcaf45dcca3c9970f02c8725279ee", "sha256": "2206ca484800ea5056041290f0867f808f8dceef8dbc4b186650ec1cb6cc0b08" }, "downloads": -1, "filename": "poseur-0.1.1.tar.gz", "has_sig": false, "md5_digest": "d2cdcaf45dcca3c9970f02c8725279ee", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3", "size": 10165, "upload_time": "2019-07-26T14:00:57", "upload_time_iso_8601": "2019-07-26T14:00:57.610964Z", "url": "https://files.pythonhosted.org/packages/03/dc/ce0da46049103ab373c3314371cbfe6a6ed9ef18d5b8b1494f8feab3a16e/poseur-0.1.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "44244ebea76ed4fcf1c41227e49f1ca1", "sha256": "f6b72972122688bdf13c60fb90b01c34eb3cfd34e5422618805f69e055ff9eed" }, "downloads": -1, "filename": "poseur-0.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "44244ebea76ed4fcf1c41227e49f1ca1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3", "size": 10579, "upload_time": "2019-07-28T07:24:42", "upload_time_iso_8601": "2019-07-28T07:24:42.530184Z", "url": "https://files.pythonhosted.org/packages/64/4e/81e7d33639f9b678a535b0a2482ce599f7a4cd7df8c438931b7f913c15f4/poseur-0.1.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "d1e8afd226ad3633f19163969fedf0d3", "sha256": "440d5c05c3452d2aaa12f756fb376b862b4f353bb47637da28cc5bf6fd237246" }, "downloads": -1, "filename": "poseur-0.1.2.tar.gz", "has_sig": false, "md5_digest": "d1e8afd226ad3633f19163969fedf0d3", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3", "size": 10191, "upload_time": "2019-07-28T07:24:54", "upload_time_iso_8601": "2019-07-28T07:24:54.124222Z", "url": "https://files.pythonhosted.org/packages/c0/c2/1932fc14170921bdb2a684facfbcb50045f3a9a55f49247279a236e01f62/poseur-0.1.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "0ff45fb8970b0023be42121c40f83a77", "sha256": "30177795d975784628595b9b84e859a8d9d96a81059e3a096a4d3365a2e0fe0f" }, "downloads": -1, "filename": "poseur-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "0ff45fb8970b0023be42121c40f83a77", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3", "size": 10590, "upload_time": "2019-08-03T07:09:11", "upload_time_iso_8601": "2019-08-03T07:09:11.788529Z", "url": "https://files.pythonhosted.org/packages/3d/62/80217c8259eed73447c05a22bc90ec4d161773b4f3080f66bb519fdc8b52/poseur-0.2.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "f9a1f26ecf4dfe26cbfbfb4d7b9cc6f2", "sha256": "f06dfa2eb3b3c06a42e45d36a6fbe3d4065948637176a539ae2322d20018d284" }, "downloads": -1, "filename": "poseur-0.2.0.tar.gz", "has_sig": false, "md5_digest": "f9a1f26ecf4dfe26cbfbfb4d7b9cc6f2", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3", "size": 10202, "upload_time": "2019-08-03T07:09:17", "upload_time_iso_8601": "2019-08-03T07:09:17.754740Z", "url": "https://files.pythonhosted.org/packages/45/6d/fd662d6f0dca9654b4d2cd9f3340df8e8342eb638ce4bee639288275c5e4/poseur-0.2.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "fc25687f6136cf5bb9f8496a5deb4957", "sha256": "ace52213de93f7829b482a178bd26630b34b00d2127a4da6d07d33238f452476" }, "downloads": -1, "filename": "poseur-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "fc25687f6136cf5bb9f8496a5deb4957", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3", "size": 10597, "upload_time": "2019-08-09T23:53:20", "upload_time_iso_8601": "2019-08-09T23:53:20.150462Z", "url": "https://files.pythonhosted.org/packages/b9/42/29fff3a336fafe1c042a74d037856a460a0925823094ab02e6a1a3ae384b/poseur-0.2.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "6ead9551f6632d36abf66c2fc56f99e8", "sha256": "f536bc03d75b73683472bbf7d6a68b2c617ba276bbe2c1376d149ce44dfff331" }, "downloads": -1, "filename": "poseur-0.2.1.tar.gz", "has_sig": false, "md5_digest": "6ead9551f6632d36abf66c2fc56f99e8", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3", "size": 10212, "upload_time": "2019-08-09T23:53:24", "upload_time_iso_8601": "2019-08-09T23:53:24.768134Z", "url": "https://files.pythonhosted.org/packages/70/7a/fd071ab3355199d8d4aa34088d3419f395cb6e59bb1930390b48e0e301a0/poseur-0.2.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "446011d3a6cdf5401ffa3b21837e08ed", "sha256": "b256effd68f2805f62b6bea1b63a44b6e4ed866e9cedc299f33259a69ba4783d" }, "downloads": -1, "filename": "poseur-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "446011d3a6cdf5401ffa3b21837e08ed", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3", "size": 10783, "upload_time": "2019-08-10T07:11:20", "upload_time_iso_8601": "2019-08-10T07:11:20.637413Z", "url": "https://files.pythonhosted.org/packages/67/4f/fba1e0d75593d33468049ed3840ed1bd8dd1bab53283355efbaed4dc3df9/poseur-0.3.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "28d33c0d5af2bcbc962425c9f32250d1", "sha256": "4f1206ca073f78e094292cce037a6ac3335800210bdc1ceb7a816bcdf8b2f3a8" }, "downloads": -1, "filename": "poseur-0.3.0.tar.gz", "has_sig": false, "md5_digest": "28d33c0d5af2bcbc962425c9f32250d1", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3", "size": 10392, "upload_time": "2019-08-10T07:11:26", "upload_time_iso_8601": "2019-08-10T07:11:26.479137Z", "url": "https://files.pythonhosted.org/packages/aa/fa/13afb5f5747a906f59ffffe7daa9eeef102764c42e6db58df3275a79bbe3/poseur-0.3.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "409d22865e55e1cc31d612fa1d09b87d", "sha256": "dbb16c2321aec9575294b3e8ade7dd788f0e9920bae1493e084c6a6dff1af662" }, "downloads": -1, "filename": "poseur-0.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "409d22865e55e1cc31d612fa1d09b87d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3", "size": 10779, "upload_time": "2019-10-23T16:03:51", "upload_time_iso_8601": "2019-10-23T16:03:51.458456Z", "url": "https://files.pythonhosted.org/packages/e3/b2/5fa37de8170c2eecbeef50f9ed805eed431f215a5e406bc7fcd61fa3ae5e/poseur-0.3.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "4553c833eecb9055e73025e4f421b8c1", "sha256": "788365a2636b7ee8eaaf8c8723981eb2f9e9ba37dd855252ce8f8ced047002a4" }, "downloads": -1, "filename": "poseur-0.3.1.tar.gz", "has_sig": false, "md5_digest": "4553c833eecb9055e73025e4f421b8c1", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3", "size": 10385, "upload_time": "2019-10-23T16:03:57", "upload_time_iso_8601": "2019-10-23T16:03:57.943233Z", "url": "https://files.pythonhosted.org/packages/c2/a8/5b3abcf83c7e2981cd2d2e14ee044f0506a7074dcd2ea6ef691285821baa/poseur-0.3.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "f690f4137295f30a35ff3d7ad20b4b0a", "sha256": "dd3ba6b8f86e62398781329dc4864b4852aee47c9af10326ca520d785c06beb3" }, "downloads": -1, "filename": "poseur-0.3.2-py3-none-any.whl", "has_sig": false, "md5_digest": "f690f4137295f30a35ff3d7ad20b4b0a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3", "size": 10814, "upload_time": "2019-10-24T13:47:38", "upload_time_iso_8601": "2019-10-24T13:47:38.054623Z", "url": "https://files.pythonhosted.org/packages/e3/9c/c5f00e33e702a5e5c36709fe75608088712d6feb1d3effeae58873037438/poseur-0.3.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "c61df2e2b2c2cd782a33151a188c6ea0", "sha256": "831db9f003db435e9c6cb3e45b3b9f12a0e799692ff70a94a3478cd0b7bfc903" }, "downloads": -1, "filename": "poseur-0.3.2.tar.gz", "has_sig": false, "md5_digest": "c61df2e2b2c2cd782a33151a188c6ea0", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3", "size": 10689, "upload_time": "2019-10-24T13:47:47", "upload_time_iso_8601": "2019-10-24T13:47:47.068122Z", "url": "https://files.pythonhosted.org/packages/24/5e/11a59768563175b41956776b39a17fadebbfe7d150085a8aa4d00c349494/poseur-0.3.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "eb7ca3ac0a468d395c1108632c16765c", "sha256": "32f506201c641c5319f127b046e0ca12238e1fcfcee00afafb0bbc388598da87" }, "downloads": -1, "filename": "poseur-0.3.3-py3-none-any.whl", "has_sig": false, "md5_digest": "eb7ca3ac0a468d395c1108632c16765c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3", "size": 10831, "upload_time": "2019-10-29T14:26:56", "upload_time_iso_8601": "2019-10-29T14:26:56.408664Z", "url": "https://files.pythonhosted.org/packages/83/68/c94b3e342502ee98d67ea1e3db6d69507fa4e9934d73c2616bc7785cbed6/poseur-0.3.3-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "442441eb563e0d029b13e834165475f3", "sha256": "b041c0baf7019b12024feff4a7190f2edc100d4f7879033261f62167f479a291" }, "downloads": -1, "filename": "poseur-0.3.3.tar.gz", "has_sig": false, "md5_digest": "442441eb563e0d029b13e834165475f3", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3", "size": 10685, "upload_time": "2019-10-29T14:27:02", "upload_time_iso_8601": "2019-10-29T14:27:02.816521Z", "url": "https://files.pythonhosted.org/packages/26/bd/c1cfc4b926f9a65c9a02887fbe570df09f8f7fedecc85e6cf74531cd8a1c/poseur-0.3.3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.4": [ { "comment_text": "", "digests": { "md5": "3f16718498b3d9650b7060fcef01dfbc", "sha256": "e55f1675cc0703164f744d8c36815cd51be87478f156c45e620dca5ccc5a90cc" }, "downloads": -1, "filename": "poseur-0.3.4-py3-none-any.whl", "has_sig": false, "md5_digest": "3f16718498b3d9650b7060fcef01dfbc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3", "size": 10949, "upload_time": "2019-11-08T15:26:41", "upload_time_iso_8601": "2019-11-08T15:26:41.241245Z", "url": "https://files.pythonhosted.org/packages/6d/61/5b46c6c4f2591152042c97f73d131fa851b0b3a1a95e567149a9b50a6371/poseur-0.3.4-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "6e16d67fe28d3add9a50548f1f89f894", "sha256": "22760dc450739ce090d63a3e13c105baafe11b5f540a080e2b19a3b0605d7a0b" }, "downloads": -1, "filename": "poseur-0.3.4.tar.gz", "has_sig": false, "md5_digest": "6e16d67fe28d3add9a50548f1f89f894", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3", "size": 10835, "upload_time": "2019-11-08T15:26:49", "upload_time_iso_8601": "2019-11-08T15:26:49.122945Z", "url": "https://files.pythonhosted.org/packages/f0/df/719d2c40d5272acdc0e948f92329ad842afeafc9cea1fd1ee3bd0e3d2d99/poseur-0.3.4.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.5": [ { "comment_text": "", "digests": { "md5": "15230fad101da6147b7491559cfc2914", "sha256": "7e63cf7b1ed19a189dfb217250e1a791de4a5453603addabfe53ba77db140c07" }, "downloads": -1, "filename": "poseur-0.3.5-py3-none-any.whl", "has_sig": false, "md5_digest": "15230fad101da6147b7491559cfc2914", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3", "size": 11253, "upload_time": "2019-11-09T02:22:10", "upload_time_iso_8601": "2019-11-09T02:22:10.146261Z", "url": "https://files.pythonhosted.org/packages/86/74/20f0c5ed127e745f7992e3e29ae0e14d8910b1764bb6be192e1245ca206d/poseur-0.3.5-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "8708a4fa97a59735c596db04ac45f0f3", "sha256": "dbfae3022ef63747b45d72b214251bfde9048e743ee880ec24725146da2e994e" }, "downloads": -1, "filename": "poseur-0.3.5.tar.gz", "has_sig": false, "md5_digest": "8708a4fa97a59735c596db04ac45f0f3", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3", "size": 11231, "upload_time": "2019-11-09T02:22:14", "upload_time_iso_8601": "2019-11-09T02:22:14.707218Z", "url": "https://files.pythonhosted.org/packages/55/21/097607a02006f89d4d80975c5aeefea6bca9e155418ca2e1394c24048bd7/poseur-0.3.5.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "dc7d985e672e9169c36738370dbce5e9", "sha256": "5717bd252495e5c26e16443151d2563c8565f1d429448ee757f8231c6b85487b" }, "downloads": -1, "filename": "poseur-0.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "dc7d985e672e9169c36738370dbce5e9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3", "size": 11370, "upload_time": "2019-11-09T03:13:51", "upload_time_iso_8601": "2019-11-09T03:13:51.008669Z", "url": "https://files.pythonhosted.org/packages/48/10/5139f214aeadc60447422e917572482af8e61c115fb0b2af844d15804ae7/poseur-0.4.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "4b38febf4e7c583d63130002aa70a300", "sha256": "75d027011b1e9294c427f9e1bbdcbda30df867718b5cbaa5840db8938af9e15d" }, "downloads": -1, "filename": "poseur-0.4.0.tar.gz", "has_sig": false, "md5_digest": "4b38febf4e7c583d63130002aa70a300", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3", "size": 11358, "upload_time": "2019-11-09T03:13:55", "upload_time_iso_8601": "2019-11-09T03:13:55.486943Z", "url": "https://files.pythonhosted.org/packages/1a/2b/a27e5f3051daa088969493fc006d81ee0cca225fa650ceac70d94bf5feac/poseur-0.4.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "932068422e259649dca33265c5a42d7a", "sha256": "d2664a777eaac055f73ad5218dcb35df49c2859768757ced658b58f25358e96e" }, "downloads": -1, "filename": "poseur-0.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "932068422e259649dca33265c5a42d7a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3", "size": 11621, "upload_time": "2019-11-25T14:56:22", "upload_time_iso_8601": "2019-11-25T14:56:22.178694Z", "url": "https://files.pythonhosted.org/packages/5c/93/1ceaf7296cbec1b2f7bd37824e0091f6b2968226e9eea001b070f4624bb5/poseur-0.4.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "a550e4c31cfd98f9302a3e4d4bb85795", "sha256": "b191f7fdc7f2bfd4dbc94204c1667a52228056e15f4f11c17f477e4d479bf142" }, "downloads": -1, "filename": "poseur-0.4.1.tar.gz", "has_sig": false, "md5_digest": "a550e4c31cfd98f9302a3e4d4bb85795", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3", "size": 11664, "upload_time": "2019-11-25T14:56:32", "upload_time_iso_8601": "2019-11-25T14:56:32.721564Z", "url": "https://files.pythonhosted.org/packages/3a/05/21d0a90ea3157d79ab39c2ddc8ee331fc534dc58f451b1a055edbc354608/poseur-0.4.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "80e664096b9d4dbdb013e5ea7b5da816", "sha256": "a37a3416dc2ef363cc46f78fc6e3f1dc23129c6320514943c5d43d80ed36774b" }, "downloads": -1, "filename": "poseur-0.4.2-py3-none-any.whl", "has_sig": false, "md5_digest": "80e664096b9d4dbdb013e5ea7b5da816", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3", "size": 11978, "upload_time": "2019-11-27T13:37:41", "upload_time_iso_8601": "2019-11-27T13:37:41.497927Z", "url": "https://files.pythonhosted.org/packages/17/2b/c00c560e057980cd4ed49dc62ce2a0b0525d909b8f30831c6167aad27361/poseur-0.4.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "e1788d9d6001a279daf6ac1d31123152", "sha256": "169a3dbb9b42635a96505fe77fc9327cd3b25755bc000ec77063615ac840f5a0" }, "downloads": -1, "filename": "poseur-0.4.2.tar.gz", "has_sig": false, "md5_digest": "e1788d9d6001a279daf6ac1d31123152", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3", "size": 12022, "upload_time": "2019-11-27T13:37:47", "upload_time_iso_8601": "2019-11-27T13:37:47.356414Z", "url": "https://files.pythonhosted.org/packages/9d/d3/5d0f248843896d691bfe9011af0f6244da6ae539c0ecd868afe7a74b9a3f/poseur-0.4.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.2.post1": [ { "comment_text": "", "digests": { "md5": "1a133ef55fd0c06d45ea33bd1f55a5f4", "sha256": "813d6b179aa0039f2d2e71a6a9e394ad674f4cb8cda8b663770a103cdd6a5b16" }, "downloads": -1, "filename": "poseur-0.4.2.post1-py3-none-any.whl", "has_sig": false, "md5_digest": "1a133ef55fd0c06d45ea33bd1f55a5f4", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3", "size": 12229, "upload_time": "2019-11-28T12:08:41", "upload_time_iso_8601": "2019-11-28T12:08:41.220218Z", "url": "https://files.pythonhosted.org/packages/24/a8/e59bdef518fd74525452bd455d38691d6a7290246a960ed1f7f0079767b7/poseur-0.4.2.post1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "3fc104aa4828e9cac2d8c0aae122bc70", "sha256": "0aa16c55a0d6e873a982995dc4a9ffdadc87be7c071ede76f03fb31d8ddd5079" }, "downloads": -1, "filename": "poseur-0.4.2.post1.tar.gz", "has_sig": false, "md5_digest": "3fc104aa4828e9cac2d8c0aae122bc70", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3", "size": 12157, "upload_time": "2019-11-28T12:08:47", "upload_time_iso_8601": "2019-11-28T12:08:47.806856Z", "url": "https://files.pythonhosted.org/packages/f8/8b/d02a303f2b26e723e63a86119248cf2ef4cfae15003bf893c8fac107d417/poseur-0.4.2.post1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.3": [ { "comment_text": "", "digests": { "md5": "a10ccb055e0d81f1b25332e62197f7d1", "sha256": "c66e140608656a863a607ec69cbde7533f6a25b0a80bf5347a8146c589705a98" }, "downloads": -1, "filename": "poseur-0.4.3-py3-none-any.whl", "has_sig": false, "md5_digest": "a10ccb055e0d81f1b25332e62197f7d1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3", "size": 12115, "upload_time": "2019-12-11T14:51:06", "upload_time_iso_8601": "2019-12-11T14:51:06.722309Z", "url": "https://files.pythonhosted.org/packages/b6/a0/44c6e0d8321a3fb59fc752701d6b5dde150b803ac0b10a5fa23733111a13/poseur-0.4.3-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "6c33a8a819943db2fc645e443d908c65", "sha256": "3a550409a88cef5cdd19c690f5ade3d4e137ee041cee6c25713a77e7a9c52e5f" }, "downloads": -1, "filename": "poseur-0.4.3.tar.gz", "has_sig": false, "md5_digest": "6c33a8a819943db2fc645e443d908c65", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3", "size": 12136, "upload_time": "2019-12-11T14:51:21", "upload_time_iso_8601": "2019-12-11T14:51:21.261688Z", "url": "https://files.pythonhosted.org/packages/d0/0a/90ee9462aac8662dd5789fda277847f383e0a78e0fe019e7f845f8aa1ff6/poseur-0.4.3.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a10ccb055e0d81f1b25332e62197f7d1", "sha256": "c66e140608656a863a607ec69cbde7533f6a25b0a80bf5347a8146c589705a98" }, "downloads": -1, "filename": "poseur-0.4.3-py3-none-any.whl", "has_sig": false, "md5_digest": "a10ccb055e0d81f1b25332e62197f7d1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.3", "size": 12115, "upload_time": "2019-12-11T14:51:06", "upload_time_iso_8601": "2019-12-11T14:51:06.722309Z", "url": "https://files.pythonhosted.org/packages/b6/a0/44c6e0d8321a3fb59fc752701d6b5dde150b803ac0b10a5fa23733111a13/poseur-0.4.3-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "6c33a8a819943db2fc645e443d908c65", "sha256": "3a550409a88cef5cdd19c690f5ade3d4e137ee041cee6c25713a77e7a9c52e5f" }, "downloads": -1, "filename": "poseur-0.4.3.tar.gz", "has_sig": false, "md5_digest": "6c33a8a819943db2fc645e443d908c65", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.3", "size": 12136, "upload_time": "2019-12-11T14:51:21", "upload_time_iso_8601": "2019-12-11T14:51:21.261688Z", "url": "https://files.pythonhosted.org/packages/d0/0a/90ee9462aac8662dd5789fda277847f383e0a78e0fe019e7f845f8aa1ff6/poseur-0.4.3.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }