{ "info": { "author": "Mike Bayer", "author_email": "mike_mp@zzzcomputing.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy" ], "description": "========\nzimports\n========\n\nReformats Python imports so that they can pass flake8-import-order. This is\nroughly:\n\n* one import per line\n\n* alphabetically sorted, with stylistic options for how dots, case sensitivity,\n and dotted names are sorted\n\n* grouped by builtin / external library / current application (also\n stylistically controllable)\n\n* unused imports removed, using pyflakes to match \"unused import\" warnings\n to actual lines of code\n\n* duplicate imports removed (note this does not yet include duplicate symbol\n names against different imports)\n\n* no star imports (e.g. ``from import *``); these are rewritten as\n explicit names, by importing all the names from each target module and then\n removing all the unused names\n\n* support for TYPE_CHECKING import blocks.\n\nThe program currently bolts itself on top of `flake8-import-order\n`_, in order to reuse the import\nclassification and sorting styles that tool provides. Without options given,\nthe script will look directly for a ``setup.cfg`` file with a ``[flake8]``\nsection and will consume flake8-import-order parameters ``\"application-import-\nnames\"``, ``\"application-package-names\"``, and ``\"import-order-style\"``, to\nsort imports exactly as this linter then expects to find them. All of the\nsingle-line import styles, e.g. google, cryptography, pycharm, should just\nwork.\n\nSpecial classifications can be given to imports, as either a \" # noqa\" comment\nindicating the import should not be removed, and optionally\nthe comment \" # noqa nosort\" which will place the import into a special\n\"don't sort\" category, placing all of the \"nosort\" imports in the order\nthey originally appeared, grouped after all the sorted imports. This can\nbe used for special situations where a few imports have to be in a certain\norder against each other (SQLAlchemy has two lines like this at the moment).\n\nThe application also does not affect imports that are inside of conditionals\nor defs, or otherwise indented in any way, with the exception of TYPE_CHECKING\nimports. This is also the behavior of\nflake8-import-order; only imports in column zero of the source file are\ncounted, although imports that are on lines below other definitions are\ncounted, which are moved up to the top section of the source file.\n\n.. note:: This application runs in **Python 3 only**. It can reformat\n imports for Python 2 code as well but internally it uses library\n and language features only available in Python 3.\n\n\nzzzeek why are you writing one of these, there are a dozen pep8 import fixers\n=============================================================================\n\nI've just gone through a whole bunch. I need one that:\n\n* works directly with flake8-import-order so we are guaranteed to have a match\n\n* has shell capability, not only a plugin for vim or sublime text (Python Fix\n Imports, gratis)\n\n* Removes unused imports, not just reformats them (importanize)\n\n* Reformats imports, not just removes unused ones (autoflake)\n\n* Doesn't miss removing an import that isn't used just because it's on a\n multiline import (autoflake)\n\n* Breaks up *all* imports into individual lines, not just if the line is >80 char\n (importanize)\n\n* Is still pretty simple (we're a bit beyond our original \"extremely\" simple\n baseline, because all problems are ultimately not that simple) because (since\n pyflakes and now flake8-import-order do most of the hard work) this is an\n extremely simple job, there's (still) no need for a giant application here.\n\nUsage\n=====\n\nThe script can run without any configuration, options are as follows::\n\n $ zimports --help\n usage: zimports [-h] [-m APPLICATION_IMPORT_NAMES]\n [-p APPLICATION_PACKAGE_NAMES] [--style STYLE] [--multi-imports]\n [-k] [-kt] [--heuristic-unused HEURISTIC_UNUSED] [--statsonly]\n [-e] [--diff] [--stdout]\n filename [filename ...]\n\n positional arguments:\n filename Python filename(s) or directories\n\n optional arguments:\n -h, --help show this help message and exit\n -m APPLICATION_IMPORT_NAMES, --application-import-names APPLICATION_IMPORT_NAMES\n comma separated list of names that should be\n considered local to the application. reads from\n [flake8] application-import-names by default.\n -p APPLICATION_PACKAGE_NAMES, --application-package-names APPLICATION_PACKAGE_NAMES\n comma separated list of names that should be\n considered local to the organization. reads from\n [flake8] application-package-names by default.\n --style STYLE import order styling, reads from [flake8] import-\n order-style by default, or defaults to 'google'\n --multi-imports If set, multiple imports can exist on one line\n -k, --keep-unused keep unused imports even though detected as unused.\n Implies keep-unused-type-checking\n -kt, --keep-unused-type-checking\n keep unused imports even though detected as unused in\n type checking blocks. zimports does not detect type usage\n in comments or when used as string\n --heuristic-unused HEURISTIC_UNUSED\n Remove unused imports only if number of imports is\n less than percent of the total\n lines of code. Ignored in type checking blocks\n --statsonly don't write or display anything except the file stats\n -e, --expand-stars Expand star imports into the names in the actual\n module, which can then have unused names removed.\n Requires modules can be imported\n --diff don't modify files, just dump out diffs\n --stdout dump file output to stdout\n\nConfiguration is currently broken up between consumption of flake8 parameters\nfrom ``setup.cfg``, and then additional zimports parameters in\n``pyproject.toml`` (as of version 0.5.0) - unification of these two files will\nbe in a future release, possibly when flake8 adds toml support::\n\n # setup.cfg\n\n [flake8]\n enable-extensions = G\n ignore =\n A003,\n E203,E305,E711,E712,E721,E722,E741,\n F841,\n N801,N802,N806,\n W503,W504\n import-order-style = google\n application-import-names = sqlalchemy,test\n\n # pyproject.toml, integrated with black\n\n [tool.black]\n line-length = 79\n target-version = ['py37']\n\n\n [tool.zimports]\n black-line-length = 79\n keep-unused-type-checking = true\n\n # other options:\n # multi-imports = true\n # keep-unused = true\n\nThen, a typical run on a mostly clean source tree looks like::\n\n $ zimports lib/\n [Unchanged] lib/sqlalchemy/inspection.py (in 0.0058 sec)\n [Unchanged] lib/sqlalchemy/log.py (in 0.0221 sec)\n\n ...\n\n [Unchanged] lib/sqlalchemy/orm/attributes.py (in 0.2152 sec)\n [Unchanged] lib/sqlalchemy/orm/base.py (in 0.0363 sec)\n [Writing] lib/sqlalchemy/orm/relationships.py ([2% of lines are imports] [source +0L/-2L] [3 imports removed in 0.3287 sec])\n [Unchanged] lib/sqlalchemy/orm/strategies.py (in 0.2237 sec)\n\nThe program has two general modes of usage. One is that of day-to-day usage\nfor an application that already has clean imports. Running zimports on the\nsource files of such an application should produce no changes, except for\nwhatever source files were recently edited, and may have some changes to\nimports that need to be placed into the correct order. This usage model is\nsimilar to that of `Black `_, where you can run\n\"zimports .\" and it will find whatever files need adjusting and leave the rest\nalone.\n\nThe other mode of usage is that of the up-front cleaning up of an application\nthat has un- organized imports. In this mode of usage, the goal is to get\nthe source files to be cleaned up so that ``zimports`` can be run straight\nwithout any modifications to the file needed, including that all necessary\nimports are either used locally or marked as not to be removed.\n\nProblems that can occur during this phase are that some imports are unused and\nshould be removed, while other imports that are apparently unused are still in\nfact imported by other parts of the program. Another issue is that changing\nthe ordering of imports in complex cases may cause the application to no longer\nrun due to the creation of unresolvable import cycles. Finally, some\nprograms have use of ``import *``, pulling in a large list of names for which\nan unknown portion of them are needed by the application. The options\n``--keep-unused``, ``--heuristic-unused`` and ``--expand-stars`` are\nprovided to assist in working through these issues until the code can be\nfully reformatted such that running ``zimports`` no longer produces changes.\n\nThe issue of apparently unused imports that are externally imported can be\nprominent in some applications. In order to allow imports that aren't locally\nused to remain in the source file, symbols that are part of\n``__all__`` will not be removed, as will imports that are followed by a `` #\nnoqa`` comment. Either of these techniques should be applied to imports that\nare used from other modules but not otherwise referenced within the immediate\nsource file. For the less common case that a few imports really need a very\nspecific import order for things to work, those imports can be followed by a ``\n# noqa nosort`` comment that will add these lines to a special group at the end\nof all imports, where they will not be removed and their order relative to each\nother will be maintained.\n\nThe program does currently require that you pass it at least one file or\ndirectory name as an argument. It also does not have the file caching feature\nthat Black has, which can allow it to only look at files that have changed\nsince the last run. The plan is to have it check that it's inside a git\nrepository where it will run through files to be committed if no filenames are\ngiven.\n\nUsage as a ``git`` hook\n=======================\n\n``zimports`` can be used with the pre-commit_ git hooks framework. To add\nthe plugin, add the following to your ``.pre-commit-config.yaml``. Note\nthe ``rev:`` attribute refers to a git tag or revision number of\nzimports to be used, such as ``\"master\"`` or ``\"0.1.3\"``:\n\n.. code-block:: yaml\n\n repos:\n - repo: https://github.com/sqlalchemyorg/zimports/\n rev: v0.4.5\n hooks:\n - id: zimports\n\n\n.. _pre-commit: https://pre-commit.com/\n", "description_content_type": "text/x-rst", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/sqlalchemyorg/zimports", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "zimports", "package_url": "https://pypi.org/project/zimports/", "platform": null, "project_url": "https://pypi.org/project/zimports/", "project_urls": { "Homepage": "https://github.com/sqlalchemyorg/zimports", "Issue Tracker": "https://github.com/sqlalchemyorg/zimports/issues" }, "release_url": "https://pypi.org/project/zimports/0.6.0/", "requires_dist": [ "pyflakes", "flake8-import-order", "tomli" ], "requires_python": ">=3.7", "summary": "Yet another import fixing tool", "version": "0.6.0", "yanked": false, "yanked_reason": null }, "last_serial": 13775220, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "81f7bb8b518d6e9d3ad9fb5296c7fa23", "sha256": "d5447295199b0dac5030c1a1f085f4459105fdacfb8f8f58497ef66994eee5ce" }, "downloads": -1, "filename": "zimports-0.1.0.tar.gz", "has_sig": false, "md5_digest": "81f7bb8b518d6e9d3ad9fb5296c7fa23", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8343, "upload_time": "2019-01-07T05:47:18", "upload_time_iso_8601": "2019-01-07T05:47:18.694612Z", "url": "https://files.pythonhosted.org/packages/46/2c/45ef5c627a6432c41a976856b8c028813f1998b2cad130eb723855b9c565/zimports-0.1.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "4fe3d899008e64c737f20263f2a415e9", "sha256": "58c97a677a9abc1c5174c20ed81b25437273dfb78e749e3178dd6066e45ba485" }, "downloads": -1, "filename": "zimports-0.1.1.tar.gz", "has_sig": false, "md5_digest": "4fe3d899008e64c737f20263f2a415e9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36231, "upload_time": "2019-01-07T05:58:55", "upload_time_iso_8601": "2019-01-07T05:58:55.009500Z", "url": "https://files.pythonhosted.org/packages/11/73/e44c33275de8fc354547220b46d84ef8cf4aabf72ce461b4a03b1d0df36e/zimports-0.1.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "4b15db481876709f319fe11846d7e0bb", "sha256": "697293cc99f434ba0e93e5e5bdfae34442c181a16ec950ec5c3557f233d3aa10" }, "downloads": -1, "filename": "zimports-0.1.2.tar.gz", "has_sig": false, "md5_digest": "4b15db481876709f319fe11846d7e0bb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 40714, "upload_time": "2019-01-07T06:59:27", "upload_time_iso_8601": "2019-01-07T06:59:27.587886Z", "url": "https://files.pythonhosted.org/packages/89/49/984358f94048ff218c013bac672c280f125939e23ca898b63cf6cce28ee1/zimports-0.1.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "b773c3663f968b32b9baade4d337f8ff", "sha256": "1297e0ecfc80dfe746cef3142ae9614eab1bf56ef75176fdea75a0915ab073e7" }, "downloads": -1, "filename": "zimports-0.1.3.tar.gz", "has_sig": false, "md5_digest": "b773c3663f968b32b9baade4d337f8ff", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 41131, "upload_time": "2019-01-07T19:35:31", "upload_time_iso_8601": "2019-01-07T19:35:31.869940Z", "url": "https://files.pythonhosted.org/packages/17/9e/ff7223a7ead8c064435b6200267b1abb5b34c71822ad2ea6d4eaaed8862e/zimports-0.1.3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "c0f15f09757ce9725c90927156503f20", "sha256": "ddd74b45c25bcb525a97df5f1ce782a0734a8c894acd415d7ee0f2cafa7357e7" }, "downloads": -1, "filename": "zimports-0.2.0.tar.gz", "has_sig": false, "md5_digest": "c0f15f09757ce9725c90927156503f20", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 41540, "upload_time": "2019-10-25T22:55:48", "upload_time_iso_8601": "2019-10-25T22:55:48.807033Z", "url": "https://files.pythonhosted.org/packages/c6/e5/85328dc85c4839ccd630cff8437d72e37f44ded3c29205ef79fbb8f480d3/zimports-0.2.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "2292c4a1e11a7e2acf9e92bf2af30943", "sha256": "3faf0c96ee09fde5c127a1a3e2788c238b79d07313370b71339208cf4513e403" }, "downloads": -1, "filename": "zimports-0.2.1.tar.gz", "has_sig": false, "md5_digest": "2292c4a1e11a7e2acf9e92bf2af30943", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 43856, "upload_time": "2020-06-21T15:06:20", "upload_time_iso_8601": "2020-06-21T15:06:20.673895Z", "url": "https://files.pythonhosted.org/packages/1f/f0/cc4ffca64170a045f86c3a9ae30c2a85ad06a91293f004db52f0a74cfdd2/zimports-0.2.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "84d831949923574ad6970af2b3d29581", "sha256": "19106e1996fe266942286e73e0f1f13b95d006f79704f6c32159084e0638b2f0" }, "downloads": -1, "filename": "zimports-0.2.2.tar.gz", "has_sig": false, "md5_digest": "84d831949923574ad6970af2b3d29581", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 44027, "upload_time": "2020-07-27T14:14:03", "upload_time_iso_8601": "2020-07-27T14:14:03.671157Z", "url": "https://files.pythonhosted.org/packages/a8/96/66c5584fd464cfd453a3e8d69b277daf2d12d573090878d8ebcd2b19ad4d/zimports-0.2.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "f969927ca187311f74fdd9de93fd9895", "sha256": "a2236263d38d798f53187bd71f3f7c178ebc95154c6cf9b5de9b4c1b99bfc810" }, "downloads": -1, "filename": "zimports-0.3.0.tar.gz", "has_sig": false, "md5_digest": "f969927ca187311f74fdd9de93fd9895", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 47242, "upload_time": "2021-03-04T16:19:37", "upload_time_iso_8601": "2021-03-04T16:19:37.145450Z", "url": "https://files.pythonhosted.org/packages/f8/85/f27e2d1b3ee1c9f64dd38f2f354b5f1c14441b0ab1a82f2ed8267178d07d/zimports-0.3.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "55473d456fa5cacb04e0f7323b393264", "sha256": "fd41505d7bae33d397181e1c7b6573626dc176aa81764d340be68481cebb7fb6" }, "downloads": -1, "filename": "zimports-0.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "55473d456fa5cacb04e0f7323b393264", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7", "size": 17576, "upload_time": "2021-05-12T19:53:38", "upload_time_iso_8601": "2021-05-12T19:53:38.045681Z", "url": "https://files.pythonhosted.org/packages/ec/60/e4b922a19a115630e9b0b4caba8493820c1dd15a748655eb14eec230b6f3/zimports-0.4.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "ccb652d0a191b0e94dc7bd3a3d2eaca4", "sha256": "6f25b2e434703abbf36bb54e74fc7aa111922a7706a60b13b297cd39c0e3f7e5" }, "downloads": -1, "filename": "zimports-0.4.0.tar.gz", "has_sig": false, "md5_digest": "ccb652d0a191b0e94dc7bd3a3d2eaca4", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7", "size": 49256, "upload_time": "2021-05-12T19:53:39", "upload_time_iso_8601": "2021-05-12T19:53:39.233563Z", "url": "https://files.pythonhosted.org/packages/91/e2/5701a8cbfc8c7f7bdbd07e30bfeebaf21bb5e220a428c00541262fefc5fa/zimports-0.4.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "cc03dda9104e6f48df0267b32bc11de7", "sha256": "926c60acb7550f3d02d134dba4ff826bf1fa28adf607362ef9c03f3b8f3d77cb" }, "downloads": -1, "filename": "zimports-0.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "cc03dda9104e6f48df0267b32bc11de7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7", "size": 17847, "upload_time": "2021-08-11T15:21:53", "upload_time_iso_8601": "2021-08-11T15:21:53.819318Z", "url": "https://files.pythonhosted.org/packages/22/55/b9f7200b7d75049894c198a38c569eef793fbbde0d20f93b857cd670c784/zimports-0.4.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "feeaaaf3aae4ed8cfcee4222b7718523", "sha256": "078761ac7eb14ae13be8eccb8e324fd822a57cce1d609947c565b36151fc4d14" }, "downloads": -1, "filename": "zimports-0.4.1.tar.gz", "has_sig": false, "md5_digest": "feeaaaf3aae4ed8cfcee4222b7718523", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7", "size": 49093, "upload_time": "2021-08-11T15:21:54", "upload_time_iso_8601": "2021-08-11T15:21:54.841477Z", "url": "https://files.pythonhosted.org/packages/d4/9a/113f2a3b09a42b0dcf67cba18e64882143fc2b6141ba18e6e70c561172ec/zimports-0.4.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "6a449b556565e4c967ed104cbb453414", "sha256": "0b602b47af603d5097fc34ec0e701cbf0f3cec1f30b63f45db81037c2f1fc313" }, "downloads": -1, "filename": "zimports-0.4.2-py3-none-any.whl", "has_sig": false, "md5_digest": "6a449b556565e4c967ed104cbb453414", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7", "size": 17941, "upload_time": "2022-01-15T16:38:40", "upload_time_iso_8601": "2022-01-15T16:38:40.083983Z", "url": "https://files.pythonhosted.org/packages/e9/d0/e749097eed750124d96e49525a79109cad4518465f32a963d4ecf7012479/zimports-0.4.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "767d24cf7152d526b15ccbee5ccef014", "sha256": "3cf85ffd56140eff1676618ca302738aef987d288d94050aafb4bdfd67de3963" }, "downloads": -1, "filename": "zimports-0.4.2.tar.gz", "has_sig": false, "md5_digest": "767d24cf7152d526b15ccbee5ccef014", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7", "size": 49894, "upload_time": "2022-01-15T16:38:41", "upload_time_iso_8601": "2022-01-15T16:38:41.454626Z", "url": "https://files.pythonhosted.org/packages/4f/1c/8cb717c4a1c9c0604449f7562d56981bccec5069e7c3e83cce3ad8b107ca/zimports-0.4.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.3": [ { "comment_text": "", "digests": { "md5": "5cdd7235ac204b1fbfb71934d931b72d", "sha256": "e35cd69648dfc2a333ef4b8675bade4b7e9a1097744570499c6d1f1a971ee9d2" }, "downloads": -1, "filename": "zimports-0.4.3-py3-none-any.whl", "has_sig": false, "md5_digest": "5cdd7235ac204b1fbfb71934d931b72d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7", "size": 18294, "upload_time": "2022-01-27T15:30:17", "upload_time_iso_8601": "2022-01-27T15:30:17.460242Z", "url": "https://files.pythonhosted.org/packages/71/d9/05e05267bbd490982e23138b578acba85430e970a90c18e31699e6cfc222/zimports-0.4.3-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "29c5bfa3df7b4e3769fd6060e2190a6b", "sha256": "a5060c9ee0a560d93027c2935ac1e55d84d7e97796d43b362ebea743b6687ace" }, "downloads": -1, "filename": "zimports-0.4.3.tar.gz", "has_sig": false, "md5_digest": "29c5bfa3df7b4e3769fd6060e2190a6b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7", "size": 52441, "upload_time": "2022-01-27T15:30:18", "upload_time_iso_8601": "2022-01-27T15:30:18.990862Z", "url": "https://files.pythonhosted.org/packages/e4/d5/383864e942a8a7c9e06e7d6bacd058c81cb4c0941775f9302c76353a279e/zimports-0.4.3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.4": [ { "comment_text": "", "digests": { "md5": "9e183626912de64880952de336267d43", "sha256": "bc5e0c2b1ad58c6ca05c191a75b5cb935f93cbd1374ddcfbff12719dd3e58ef3" }, "downloads": -1, "filename": "zimports-0.4.4-py3-none-any.whl", "has_sig": false, "md5_digest": "9e183626912de64880952de336267d43", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7", "size": 18301, "upload_time": "2022-02-02T03:19:59", "upload_time_iso_8601": "2022-02-02T03:19:59.911690Z", "url": "https://files.pythonhosted.org/packages/34/c0/9c2b8b1b7645451f82fbf91740c12e7cde87ac8dfc6f2cd097d79ac487d1/zimports-0.4.4-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "907dcbfb7a9776ff9b29fe13772f7a6f", "sha256": "0a920eba05191d7a71f015630f6f365083e16f09845c5fbed64d2f3e4c0f482d" }, "downloads": -1, "filename": "zimports-0.4.4.tar.gz", "has_sig": false, "md5_digest": "907dcbfb7a9776ff9b29fe13772f7a6f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7", "size": 52577, "upload_time": "2022-02-02T03:20:01", "upload_time_iso_8601": "2022-02-02T03:20:01.618059Z", "url": "https://files.pythonhosted.org/packages/4f/97/d818d41619c152f008804c5016cecd9097fb5762c16c2128b3a4430b57d0/zimports-0.4.4.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.5": [ { "comment_text": "", "digests": { "md5": "596f440888ecc3b0b851f82f5349688c", "sha256": "e63fca12c56da2b1115b9f9d4a055f69b1ef8d2b924a0f54bcc8c16a9607d577" }, "downloads": -1, "filename": "zimports-0.4.5-py3-none-any.whl", "has_sig": false, "md5_digest": "596f440888ecc3b0b851f82f5349688c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7", "size": 18566, "upload_time": "2022-02-09T20:38:53", "upload_time_iso_8601": "2022-02-09T20:38:53.188504Z", "url": "https://files.pythonhosted.org/packages/dd/c3/29f683952ba2687f464bbfa5ed7fce4f097f1a1bf6638af55ea951751d55/zimports-0.4.5-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "0dd5a8cf7bcf1d3c2c3b780f1b71198b", "sha256": "fe92b86824a745297ae5c15c5c4b7ee593d25710d6d3aaa439fd58f0fdd8447b" }, "downloads": -1, "filename": "zimports-0.4.5.tar.gz", "has_sig": false, "md5_digest": "0dd5a8cf7bcf1d3c2c3b780f1b71198b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7", "size": 53215, "upload_time": "2022-02-09T20:38:54", "upload_time_iso_8601": "2022-02-09T20:38:54.753413Z", "url": "https://files.pythonhosted.org/packages/5c/f9/62558353cef1eb3cf322b6c5d4a1659ddd1ec9fe3eb9a8a3637f59ff4628/zimports-0.4.5.tar.gz", "yanked": false, "yanked_reason": null } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "322ac13b70fb7bd098453debc2723f75", "sha256": "cb9bff86e44489082dca97c5a62de49c9d84e7afb937fcd0f92e6b1dc5311faa" }, "downloads": -1, "filename": "zimports-0.5.0-py3-none-any.whl", "has_sig": false, "md5_digest": "322ac13b70fb7bd098453debc2723f75", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7", "size": 19040, "upload_time": "2022-02-09T22:23:30", "upload_time_iso_8601": "2022-02-09T22:23:30.995099Z", "url": "https://files.pythonhosted.org/packages/53/9f/e5f819555b863861a87023d04e00d4e771e64feee71f68f439357237ceed/zimports-0.5.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "46b8e7c540fe3629d8b67b66730ad505", "sha256": "ce1d4cf7b9c642c2391d24b7075fcd29f40348440c9c74e371b4dfefd405e04f" }, "downloads": -1, "filename": "zimports-0.5.0.tar.gz", "has_sig": false, "md5_digest": "46b8e7c540fe3629d8b67b66730ad505", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7", "size": 54039, "upload_time": "2022-02-09T22:23:32", "upload_time_iso_8601": "2022-02-09T22:23:32.336924Z", "url": "https://files.pythonhosted.org/packages/6f/f4/1460c4183faf237498adea54759ebe51a2df633c72ed7fcdc8993be51070/zimports-0.5.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "063b24da6c2ec7d6264479052c99c26c", "sha256": "fb63485a02170741d5b4bece48ad1c7011b290609ca27d69783189e3573b1920" }, "downloads": -1, "filename": "zimports-0.5.1-py3-none-any.whl", "has_sig": false, "md5_digest": "063b24da6c2ec7d6264479052c99c26c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7", "size": 19216, "upload_time": "2022-05-10T14:31:37", "upload_time_iso_8601": "2022-05-10T14:31:37.926941Z", "url": "https://files.pythonhosted.org/packages/ae/5b/b228392ce78554b838c02d459a47652cc9867251e63ef18ad346e34be5c7/zimports-0.5.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "2a6e5bbee61802fd0d4398c6e5122f50", "sha256": "ef6572650c2eea1194b19bfbc1e9e729c37ec54dad426dd64da5a7ffe7b373c4" }, "downloads": -1, "filename": "zimports-0.5.1.tar.gz", "has_sig": false, "md5_digest": "2a6e5bbee61802fd0d4398c6e5122f50", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7", "size": 54330, "upload_time": "2022-05-10T14:31:39", "upload_time_iso_8601": "2022-05-10T14:31:39.555951Z", "url": "https://files.pythonhosted.org/packages/30/50/2fb7b01320923c816eb176d662302b07ec6f174b28bcdfe8f415d2242a27/zimports-0.5.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "0361ad1c94aae07b7143c2f9270f1278", "sha256": "3126ae7df95b3300137fe7533813196f5cf41ff89c3bb74a73712e1d346ba78f" }, "downloads": -1, "filename": "zimports-0.6.0-py3-none-any.whl", "has_sig": false, "md5_digest": "0361ad1c94aae07b7143c2f9270f1278", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7", "size": 19202, "upload_time": "2022-05-10T20:59:55", "upload_time_iso_8601": "2022-05-10T20:59:55.906859Z", "url": "https://files.pythonhosted.org/packages/89/17/3abc05961a16a3f122447364887aabda7d2f2ea2073eb27c6b068c3a1838/zimports-0.6.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "5dd42a75bc2935f1389be4043955b04a", "sha256": "e69da03c196fe4685245bfa63fa55287ebb02d89eacd85798cf26ff57caf425f" }, "downloads": -1, "filename": "zimports-0.6.0.tar.gz", "has_sig": false, "md5_digest": "5dd42a75bc2935f1389be4043955b04a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7", "size": 54282, "upload_time": "2022-05-10T20:59:57", "upload_time_iso_8601": "2022-05-10T20:59:57.586967Z", "url": "https://files.pythonhosted.org/packages/c6/cb/fc125fa77d893d04c61f95d6ec0581baa926d267cb00148f4b39369cc231/zimports-0.6.0.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0361ad1c94aae07b7143c2f9270f1278", "sha256": "3126ae7df95b3300137fe7533813196f5cf41ff89c3bb74a73712e1d346ba78f" }, "downloads": -1, "filename": "zimports-0.6.0-py3-none-any.whl", "has_sig": false, "md5_digest": "0361ad1c94aae07b7143c2f9270f1278", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7", "size": 19202, "upload_time": "2022-05-10T20:59:55", "upload_time_iso_8601": "2022-05-10T20:59:55.906859Z", "url": "https://files.pythonhosted.org/packages/89/17/3abc05961a16a3f122447364887aabda7d2f2ea2073eb27c6b068c3a1838/zimports-0.6.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "5dd42a75bc2935f1389be4043955b04a", "sha256": "e69da03c196fe4685245bfa63fa55287ebb02d89eacd85798cf26ff57caf425f" }, "downloads": -1, "filename": "zimports-0.6.0.tar.gz", "has_sig": false, "md5_digest": "5dd42a75bc2935f1389be4043955b04a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7", "size": 54282, "upload_time": "2022-05-10T20:59:57", "upload_time_iso_8601": "2022-05-10T20:59:57.586967Z", "url": "https://files.pythonhosted.org/packages/c6/cb/fc125fa77d893d04c61f95d6ec0581baa926d267cb00148f4b39369cc231/zimports-0.6.0.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }