{ "info": { "author": "Boris Pavlovic", "author_email": "boris@pavlovic.me", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "Intended Audience :: Information Technology", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4" ], "description": "===============================\nProfimp - python imports tracer\n===============================\n\n.. image:: https://img.shields.io/coveralls/boris-42/profimp.svg\n :target: https://coveralls.io/r/boris-42/profimp\n\n.. image:: https://api.travis-ci.org/boris-42/profimp.svg?branch=master\n :target: https://travis-ci.org/boris-42/profimp\n\n.. image:: https://pypip.in/version/profimp/badge.svg\n :target: https://pypi.python.org/pypi/profimp\n\n.. image:: https://pypip.in/py_versions/profimp/badge.svg\n :target: https://pypi.python.org/pypi/profimp/\n\n.. image:: https://pypip.in/download/profimp/badge.svg\n :target: https://pypi.python.org/pypi/profimp/\n\n\nProfimp allows you to trace imports of your code.\n\nThis lib should be used to simplify optimization of imports in your code.\nAt least you will find what consumes the most part of time and do the\nright decisions.\n\n\nInstallation\n------------\n\nInstallation of profimp is super easy:\n\n.. code-block::\n\n sudo pip install profimp\n\nor\n\n.. code-block::\n\n git clone https://github.com/boris-42/profimp && cd profimp\n sudo python setup.py install\n\n\nUsage\n-----\n\nSyntax:\n\n.. code-block::\n\n profimp [import_module_line] [--html]\n\nSamples:\n\n.. code-block::\n\n profimp \"import collections\"\n\n profimp \"from somemoudle import something\"\n\n prpfimp --html \"import multiprocessing\"\n\n\nPretty HTML reports\n-------------------\n\nif you run prpfimp with --html key you will get pretty html output\n\n.. code-block::\n\n profimp \"import collections\"\n\n\n.. image:: samples/collections_import_trace.png\n :alt: American Gothic\n :width: 650 px\n\n\nRaw JSON Results\n----------------\n\nIn output you will see something like:\n\n.. code-block::\n\n profimp \"import collections\"\n\n {\n \"level\": 0,\n \"finished_at\": 1427986324.921502,\n \"import_line\": \"root\",\n \"duration\": 1.0581016540527344,\n \"started_at\": 1427986324.920444,\n \"children\": [\n {\n \"level\": 1,\n \"finished_at\": 1427986324.9215,\n \"import_line\": \"import collections\",\n \"duration\": 1.0390281677246094,\n \"started_at\": 1427986324.920461,\n \"children\": [\n {\n \"level\": 2,\n \"finished_at\": 1427986324.920694,\n \"import_line\": \"from _abcoll import *\",\n \"duration\": 0.006198883056640625,\n \"started_at\": 1427986324.920688,\n \"children\": []\n },\n {\n \"level\": 2,\n \"finished_at\": 1427986324.920702,\n \"import_line\": \"import _abcoll\",\n \"duration\": 0.0019073486328125,\n \"started_at\": 1427986324.9207,\n \"children\": []\n },\n {\n \"level\": 2,\n \"finished_at\": 1427986324.920891,\n \"import_line\": \"from _collections import deque, defaultdict\",\n \"duration\": 0.1850128173828125,\n \"started_at\": 1427986324.920706,\n \"children\": []\n },\n {\n \"level\": 2,\n \"finished_at\": 1427986324.920899,\n \"import_line\": \"from operator import itemgetter, eq\",\n \"duration\": 0.00286102294921875,\n \"started_at\": 1427986324.920896,\n \"children\": []\n },\n {\n \"level\": 2,\n \"finished_at\": 1427986324.921064,\n \"import_line\": \"from keyword import iskeyword\",\n \"duration\": 0.16188621520996094,\n \"started_at\": 1427986324.920902,\n \"children\": []\n },\n {\n \"level\": 2,\n \"finished_at\": 1427986324.92107,\n \"import_line\": \"import sys\",\n \"duration\": 0.0021457672119140625,\n \"started_at\": 1427986324.921068,\n \"children\": []\n },\n {\n \"level\": 2,\n \"finished_at\": 1427986324.921402,\n \"import_line\": \"import heapq\",\n \"duration\": 0.3299713134765625,\n \"started_at\": 1427986324.921072,\n \"children\": [\n {\n \"level\": 3,\n \"finished_at\": 1427986324.921241,\n \"import_line\": \"from itertools import islice, count, imap, izip, tee, chain\",\n \"duration\": 0.0040531158447265625,\n \"started_at\": 1427986324.921237,\n \"children\": []\n },\n {\n \"level\": 3,\n \"finished_at\": 1427986324.921246,\n \"import_line\": \"from operator import itemgetter\",\n \"duration\": 0.0021457672119140625,\n \"started_at\": 1427986324.921244,\n \"children\": []\n },\n {\n \"level\": 3,\n \"finished_at\": 1427986324.921391,\n \"import_line\": \"from _heapq import *\",\n \"duration\": 0.13899803161621094,\n \"started_at\": 1427986324.921252,\n \"children\": []\n }\n ]\n },\n {\n \"level\": 2,\n \"finished_at\": 1427986324.921409,\n \"import_line\": \"from itertools import repeat, chain, starmap\",\n \"duration\": 0.00286102294921875,\n \"started_at\": 1427986324.921406,\n \"children\": []\n },\n {\n \"level\": 2,\n \"finished_at\": 1427986324.921413,\n \"import_line\": \"from itertools import imap\",\n \"duration\": 0.0019073486328125,\n \"started_at\": 1427986324.921411,\n \"children\": []\n },\n {\n \"level\": 2,\n \"finished_at\": 1427986324.921455,\n \"import_line\": \"from thread import get_ident\",\n \"duration\": 0.03981590270996094,\n \"started_at\": 1427986324.921415,\n \"children\": []\n }\n ]\n }\n ]", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://boris-42.me", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "profimp", "package_url": "https://pypi.org/project/profimp/", "platform": "", "project_url": "https://pypi.org/project/profimp/", "project_urls": { "Homepage": "http://boris-42.me" }, "release_url": "https://pypi.org/project/profimp/0.1.0/", "requires_dist": null, "requires_python": "", "summary": "profimp - generates tree of imports profiles", "version": "0.1.0" }, "last_serial": 4545913, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "7236fa6437665f1ad7a3a9de87c5de5f", "sha256": "dddffba85e69bdba963105bffbe2cdf0d82c6446eba2cf33174c12d59ff4163d" }, "downloads": -1, "filename": "profimp-0.0.1.macosx-10.10-intel.exe", "has_sig": true, "md5_digest": "7236fa6437665f1ad7a3a9de87c5de5f", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 76752, "upload_time": "2015-04-03T23:18:53", "url": "https://files.pythonhosted.org/packages/44/df/d821715f54b3c4af4fa57a371a3054d4b1665c60ebb32b84582680e1efcc/profimp-0.0.1.macosx-10.10-intel.exe" }, { "comment_text": "", "digests": { "md5": "19b0f7908d3eb5e2644865f0f081a1fb", "sha256": "eb91d88bd32bc12c92d6e0ee84fd94c103217e55c25f3754f2567c5856b48fd2" }, "downloads": -1, "filename": "profimp-0.0.1.tar.gz", "has_sig": true, "md5_digest": "19b0f7908d3eb5e2644865f0f081a1fb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 298403, "upload_time": "2015-04-03T23:18:46", "url": "https://files.pythonhosted.org/packages/77/74/cae8fa7364c57e8ab70c4e77d01e8037d34b044a4d8a318409ec2f5ac8d4/profimp-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "f3c090771869f1bd7fb7fe0951d2594a", "sha256": "e342e550984e9a6f733a7e19d0266dac7112454cf3851d1aa26acdbf06e9d53b" }, "downloads": -1, "filename": "profimp-0.0.2.macosx-10.10-intel.exe", "has_sig": false, "md5_digest": "f3c090771869f1bd7fb7fe0951d2594a", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 75995, "upload_time": "2015-04-07T19:13:10", "url": "https://files.pythonhosted.org/packages/49/5f/807399a608e0e149bff3048c1a873d83ad5378480a23eeda1eacfb2e28a1/profimp-0.0.2.macosx-10.10-intel.exe" }, { "comment_text": "", "digests": { "md5": "899b82b5cde517f1ed9a8a02454b7e8e", "sha256": "6837bd0d00d7b5f05c4c42654a7c3974471ef428c0ee60c4aedcb79a12323aa4" }, "downloads": -1, "filename": "profimp-0.0.2.tar.gz", "has_sig": false, "md5_digest": "899b82b5cde517f1ed9a8a02454b7e8e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 371068, "upload_time": "2015-04-07T19:13:07", "url": "https://files.pythonhosted.org/packages/b5/6b/64aa0d7151c2d9ed40b51b62729ff688e89288d524f214bb23b67bbfe58e/profimp-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "b55c5cc1f4d27883422d9076b92747e1", "sha256": "56de7a55d87ac1939430bb84bc18604a5216e14a0ff184a478d8e0e5c97e0c86" }, "downloads": -1, "filename": "profimp-0.0.3.macosx-10.10-intel.exe", "has_sig": false, "md5_digest": "b55c5cc1f4d27883422d9076b92747e1", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 77399, "upload_time": "2015-04-13T19:54:10", "url": "https://files.pythonhosted.org/packages/72/09/47f25c39f37e0ecc29f4f40e534031a23adfe749e6297e435576a17aa4f0/profimp-0.0.3.macosx-10.10-intel.exe" }, { "comment_text": "", "digests": { "md5": "00673367ced449dbba0f094bdb1a99ef", "sha256": "899579c0076c19c8532c00be624a2e7b8ebc27ff97bec28c8b3759623ec84518" }, "downloads": -1, "filename": "profimp-0.0.3.tar.gz", "has_sig": false, "md5_digest": "00673367ced449dbba0f094bdb1a99ef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 194177, "upload_time": "2015-04-13T19:54:06", "url": "https://files.pythonhosted.org/packages/5c/f0/7ac1ef7e7ea9bf0f6ce9dd6d357e80a55fa5a1decb9714ff791014852572/profimp-0.0.3.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "6a055c4ac30db74ec414654208a3fca0", "sha256": "d18e0145e131092a5d467e3a04a9034064856dfd5e1860ed6354dd844c9e0d54" }, "downloads": -1, "filename": "profimp-0.1.0.tar.gz", "has_sig": false, "md5_digest": "6a055c4ac30db74ec414654208a3fca0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 193429, "upload_time": "2018-11-30T06:39:22", "url": "https://files.pythonhosted.org/packages/70/ef/88078eb6d309242bc75cd1eb1f035a8489ce539b8ee44fc53300170d0d92/profimp-0.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6a055c4ac30db74ec414654208a3fca0", "sha256": "d18e0145e131092a5d467e3a04a9034064856dfd5e1860ed6354dd844c9e0d54" }, "downloads": -1, "filename": "profimp-0.1.0.tar.gz", "has_sig": false, "md5_digest": "6a055c4ac30db74ec414654208a3fca0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 193429, "upload_time": "2018-11-30T06:39:22", "url": "https://files.pythonhosted.org/packages/70/ef/88078eb6d309242bc75cd1eb1f035a8489ce539b8ee44fc53300170d0d92/profimp-0.1.0.tar.gz" } ] }