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