Metadata-Version: 1.0
Name: django-detect-cyclic
Version: 0.0.4
Summary: Django application to detect cyclic imports
Home-page: https://github.com/goinnn/django-detect-cyclic
Author: Pablo Martin
Author-email: goinnn@gmail.com
License: LGPL 3
Description: .. contents::
        
        ====================
        Django detect cyclic
        ====================
        
        Application to detect cyclic imports.
        With this application you can analyze the dependence of your applications
        
        .. image:: https://github.com/goinnn/django-detect-cyclic/raw/master/examples/example-only-cyclic-exclude.png
        
        Requeriments
        ============
        
         * `python-graph-core <http://pypi.python.org/pypi/python-graph-core/>`_ (1.8.1)
         * `python-graph-dot <http://pypi.python.org/pypi/python-graph-dot/>`_ (1.8.1)
         * `pysmell <http://pypi.python.org/pypi/pysmell/>`_ (0.7.3)
         * `pyplete <http://pypi.python.org/pypi/pyplete/>`_ (0.0.1)
         * `django-form-admin <http://pypi.python.org/pypi/django-form-admin>`_ (0.3.2) (optional)
        
        
        Installation
        ============
        
        In your settings.py:
        
        ::
        
            INSTALLED_APPS = (
        
                'django_detect_cyclic',
        
            )
        
        In your urls.py:
        
        ::
        
            urlpatterns = patterns('',
        
                (r'^admin/detect_cyclic/', include('django_detect_cyclic.urls')),
        
            )
        
        Caption
        =======
        
         * The nodes are the applications, or the modules of the applications (if you use the option show-modules)
         * One edge means that the node source import the node destination
         * When there is a cycle the edge has a background color (the same color in all the cycle), and it label contains "Cycle X"
         * The label of the edges contains the weight in parentheses
         * If you use the options show-modules, each node has a background color. If two nodes are to the same application, they have the same background color.
         * If a edge is dotted, every import between these two nodes is into a function
        
        
        Possibles Errors
        ================
        
        It is possible that the next links are interested if you can some problem:
        
         * http://code.google.com/p/python-graph/issues/detail?id=15
         * http://stackoverflow.com/questions/2133767/using-python-graphviz-importerror-no-module-named-gv
        
        It is possible that you have to remove the pyc files:
        
        ::
        
            find -iname "*.pyc" -exec rm "{}" \;
        
        Usage 
        =====
        
        You have two ways, you can run a command:
        
        ::
        
            python manage.py detect_cyclic
            python manage.py detect_cyclic --include-apps="app1,app6,app7,app11" --file-name="my_graph.svg" --exclude-packages="migrations,templatetags" --verbosity=2
            python manage.py detect_cyclic --include-apps="app1,app6" --show-modules --file-name="my_graph.svg" --exclude-packages="migrations" --verbosity=2
            python manage.py detect_cyclic --include-apps="app1,app6" --only-cyclic --file-name="my_graph.svg" --exclude-packages="migrations" --verbosity=2
        
        Or you can access via web to the wizard:
        
        ::
        
           /admin/detect_cyclic/
        
        
        Examples
        ========
        
        To see more examples click in `examples <https://github.com/goinnn/django-detect-cyclic/blob/master/EXAMPLES.rst/>`_
        
        
        Releases
        ========
        
        0.0.4 (2012-07-12)
        ------------------
        
         * Wizard to create graphs (/admin/detect_cyclic/)
         * Format svg-js (beta)
        
        0.0.3 (2012-07-10)
        ------------------
        
         * Add the option "scope-global", this ignore the imports into the functions
         * Now if the verbosity option is 1, only show the errors
         * Now when a node (with show-modules) has the same name that a application, the node name will be app_name.__init__
         * Now the label of the cycle edges has the same color that the edge
         * Now disabled the colors of the edge and nodes when the format is not svg. But it is possible enabled if you use the "force color" option
         * Optimizations
         * New option "dotted-scope-local". If the all import between two nodes are into a function the edge will be dotted
         * Fixed some little errors
        
        0.0.2 (2012-07-09)
        ------------------
        
         * Documentation and examples
        
        0.0.1 (2012-07-09)
        ------------------
        
         * Initial release.
Keywords: django,imports,cycle,cyclic imports,analyze code
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Framework :: Django
Classifier: License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)
