aboutsummaryrefslogtreecommitdiff
path: root/catapult/telemetry/third_party/modulegraph/PKG-INFO
blob: bfd4006594593d91290204c3cc5f0b635b828724 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
Metadata-Version: 1.1
Name: modulegraph
Version: 0.12.1
Summary: Python module dependency analysis tool
Home-page: http://bitbucket.org/ronaldoussoren/modulegraph
Author: Ronald Oussoren
Author-email: ronaldoussoren@mac.com
License: MIT
Download-URL: http://pypi.python.org/pypi/modulegraph
Description: modulegraph determines a dependency graph between Python modules primarily
        by bytecode analysis for import statements.
        
        modulegraph uses similar methods to modulefinder from the standard library,
        but uses a more flexible internal representation, has more extensive 
        knowledge of special cases, and is extensible.
        
        
        Release history
        ===============
        
        0.12.1
        ------
        
        * Issue #25: Complex python files could cause an "maximum recursion depth exceeded"
          exception due to using stack-based recursion to walk the module AST.
        
        
        0.12
        ----
        
        * Added 'modulegraph.modulegraph.InvalidSourceModule'. This graph node is
          used for Python source modules that cannot be compiled (for example because
          they contain syntax errors).
        
          This is primarily useful for being able to create a graph for packages
          that have python 2.x or python 3.x compatibility in separate modules that
          contain code that isn't valid in the "other" python version.
        
        * Added 'modulegraph.modulegraph.InvalidCompiledModule'. This graph node
          is used for Python bytecode modules that cannot be loaded.
        
        * Added 'modulegraph.modulegraph.NamespacePackage'.
        
          Patch by bitbucket user htgoebel.
        
        * No longer add a MissingModule node to the graph for 'collections.defaultdict'
          when using 'from collections import defaultdict' ('collections.defaultdict'
          is an attribute of 'collections', not a submodule).
        
        * Fixed typo in ModuleGraph.getReferences()
        
        * Added ModuleGraph.getReferers(tonode). This methods yields the
          nodes that are referencing *tonode* (the reverse of getReferences)
        
        * The graph will no longer contain MissingModule nodes when using 'from ... import name' to
          import a global variable in a python module.
        
          There will still be MissingModule nodes for global variables in C extentions, and
          for 'from missing import name' when 'missing' is itself a MissingModule.
        
        * Issue #18: Don't assume that a PEP 302 loader object has a ``path`` attribute. That
          attribute is not documented and is not always present.
        
        0.11.2
        ------
        
        *
        
        0.11.1
        ------
        
        * Issue #145: Don't exclude the platform specific 'path' modules (like ntpath)
        
        0.11
        ----
        
        This is a feature release
        
        Features
        ........
        
        * Hardcode knowlegde about the compatibility aliases in the email
          module (for python 2.5 upto 3.0).
        
          This makes it possible to remove a heavy-handed recipe from py2app.
        
        * Added ``modegraph.zipio.getmode`` to fetch the Unix file mode
          for a file.
        
        * Added some handy methods to ``modulegraph.modulegraph.ModuleGraph``.
        
        0.10.5
        ------
        
        This is a bugfix release
        
        * Don't look at the file extension to determine the file type
          in modulegraph.find_modules.parse_mf_results, but use the
          class of the item.
        
        * Issue #13: Improved handing of bad relative imports
          ("from .foo import bar"), these tended to raise confusing errors and
          are now handled like any other failed import.
        
        0.10.4
        ------
        
        This is a bugfix release
        
        * There were no 'classifiers' in the package metadata due to a bug
          in setup.py.
        
        0.10.3
        ------
        
        This is a bugfix release
        
        Bugfixes
        ........
        
        * ``modulegraph.find.modules.parse_mf_results`` failed when the main script of
          a py2app module didn't have a file name ending in '.py'.
        
        0.10.2
        ------
        
        This is a bugfix release
        
        Bugfixes
        ........
        
        * Issue #12: modulegraph would sometimes find the wrong package *__init__*
          module due to using the wrong search method. One easy way to reproduce the
          problem was to have a toplevel module named *__init__*.
        
          Reported by Kentzo.
        
        0.10.1
        ------
        
        This is a bugfix release
        
        Bugfixes
        ........
        
        * Issue #11: creating xrefs and dotty graphs from modulegraphs (the --xref
          and --graph options of py2app) didn't work with python 3 due to use of
          APIs that aren't available in that version of python.
        
          Reported by Andrew Barnert.
        
        
        0.10
        ----
        
        This is a minor feature release
        
        Features
        ........
        
        * ``modulegraph.find_modules.find_needed_modules`` claimed to automaticly
          include subpackages for the "packages" argument as well, but that code
          didn't work at all.
        
        * Issue #9: The modulegraph script is deprecated, use
          "python -mmodulegraph" instead.
        
        * Issue #10: Ensure that the result of "zipio.open" can be used
          in a with statement (that is, ``with zipio.open(...) as fp``.
        
        * No longer use "2to3" to support Python 3.
        
          Because of this modulegraph now supports Python 2.6
          and later.
        
        * Slightly improved HTML output, which makes it easier
          to manipulate the generated HTML using JavaScript.
        
          Patch by anatoly techtonik.
        
        * Ensure modulegraph works with changes introduced after
          Python 3.3b1.
        
        * Implement support for PEP 420 ("Implicit namespace packages")
          in Python 3.3.
        
        * ``modulegraph.util.imp_walk`` is deprecated and will be
          removed in the next release of this package.
        
        Bugfixes
        ........
        
        * The module graph was incomplete, and generated incorrect warnings
          along the way, when a subpackage contained import statements for
          submodules.
        
          An example of this is ``sqlalchemy.util``, the ``__init__.py`` file
          for this package contains imports of modules in that modules using
          the classic relative import syntax (that is ``import compat`` to
          import ``sqlalchemy.util.compat``). Until this release modulegraph
          searched the wrong path to locate these modules (and hence failed
          to find them).
        
        
        0.9.2
        -----
        
        This is a bugfix release
        
        Bugfixes
        ........
        
        * The 'packages' option to modulegraph.find_modules.find_modules ignored
          the search path argument but always used the default search path.
        
        * The 'imp_find_modules' function in modulegraph.util has an argument 'path',
          this was a string in previous release and can now also be a sequence.
        
        * Don't crash when a module on the 'includes' list doesn't exist, but warn
          just like for missing 'packages' (modulegraph.find_modules.find_modules)
        
        0.9.1
        -----
        
        This is a bugfix release
        
        Bug fixes
        .........
        
        - Fixed the name of nodes imports in packages where the first element of
          a dotted name can be found but the rest cannot. This used to create
          a MissingModule node for the dotted name in the global namespace instead
          of relative to the package.
        
          That is, given a package "pkg" with submodule "sub" if the "__init__.py"
          of "pkg" contains "import sub.nomod" we now create a MissingModule node
          for "pkg.sub.nomod" instead of "sub.nomod".
        
          This fixes an issue with including the crcmod package in application
          bundles, first reported on the pythonmac-sig mailinglist by
          Brendan Simon.
        
        0.9
        ---
        
        This is a minor feature release
        
        
        Features:
        
        - Documentation is now generated using `sphinx <http://pypi.python.org/pypi/sphinx>`_
          and can be viewed at <http://packages.python.org/modulegraph>.
        
          The documention is very rough at this moment and in need of reorganisation and
          language cleanup. I've basiclly writting the current version by reading the code
          and documenting what it does, the order in which classes and methods are document
          is therefore not necessarily the most useful.
        
        - The repository has moved to bitbucket
        
        - Renamed ``modulegraph.modulegraph.AddPackagePath`` to ``addPackagePath``,
          likewise ``ReplacePackage`` is now ``replacePackage``. The old name is still
          available, but is deprecated and will be removed before the 1.0 release.
        
        - ``modulegraph.modulegraph`` contains two node types that are unused and
          have unclear semantics: ``FlatPackage`` and ``ArchiveModule``. These node
          types are deprecated and will be removed before 1.0 is released.
        
        - Added a simple commandline tool (``modulegraph``) that will print information
          about the dependency graph of a script.
        
        - Added a module (``zipio``) for dealing with paths that may refer to entries
          inside zipfiles (such as source paths referring to modules in zipped eggfiles).
        
          With this addition ``modulegraph.modulegraph.os_listdir`` is deprecated and
          it will be removed before the 1.0 release.
        
        Bug fixes:
        
        - The ``__cmp__`` method of a Node no longer causes an exception
          when the compared-to object is not a Node. Patch by Ivan Kozik.
        
        - Issue #1: The initialiser for ``modulegraph.ModuleGraph`` caused an exception
          when an entry on the path (``sys.path``) doesn't actually exist.
        
          Fix by "skurylo", testcase by Ronald.
        
        - The code no longer worked with python 2.5, this release fixes that.
        
        - Due to the switch to mercurial setuptools will no longer include
          all required files. Fixed by adding a MANIFEST.in file
        
        - The method for printing a ``.dot`` representation of a ``ModuleGraph``
          works again.
        
        
        0.8.1
        -----
        
        This is a minor feature release
        
        Features:
        
        - ``from __future__ import absolute_import`` is now supported
        
        - Relative imports (``from . import module``) are now supported
        
        - Add support for namespace packages when those are installed
          using option ``--single-version-externally-managed`` (part
          of setuptools/distribute)
        
        0.8
        ---
        
        This is a minor feature release
        
        Features:
        
        - Initial support for Python 3.x
        
        - It is now possible to run the test suite
          using ``python setup.py test``.
        
          (The actual test suite is still fairly minimal though)
        
Keywords: import,,dependencies
Platform: any
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Software Development :: Build Tools