Commit Graph

182 Commits

Author SHA1 Message Date
Vineet Naik b067ab3a0e Use guessable versions to find conflicting deps
If the installed version of some pkg is guessable, then use that version
to find if it's conflicting with the required version. Earlier it
considered all pkgs without an available 'dist' object as conflicting.

Fixes #55
2016-10-23 14:14:43 +05:30
Vineet Naik 1b2cb12df3 Merge pull request #52 from jimbocoder/master
Defer to pip's list of excluded default packages.
2016-09-16 00:20:15 +05:30
Jim Howell caddbb9d28 Defer to pip's list of excluded default packages.
As of 6.0.0 pip will default to excluding the usual things we were
hardcoding here, so this just lets pip do its thing naturally.

This also removes 'pipdeptree' from the exclusion list, which seems
mandatory if your application actually *uses* pipdeptree and it's not
just for manual invocation (i.e.humans typing on keyboards)
2016-09-14 13:01:16 -05:00
Vineet Naik 0e26b3e632 Bump version to 0.7.0
And added changelog.
2016-08-21 11:13:41 +05:30
Vineet Naik a94768a6cf Fix support for Python 2.6
The 'importlib' is added to install_requires in setup.py
2016-08-08 00:47:09 +05:30
Vineet Naik 00300e6ae1 Fix failing builds on Python 2.6 and >3 2016-08-06 19:35:10 +05:30
Vineet Naik fda667faf9 Use new style str interpolation 2016-08-06 19:14:37 +05:30
Vineet Naik a44baabaa5 Try guessing versions of pkgs not listed by pip
* 'pip.get_installed_distributions' doesn't include some packages such
  as 'pip', 'setuptools' etc. so the installed versions for these is not
  available. This change tries to guess the installed version by
  importing the module and checking if the version is defined in
  '__version__' variable.

* Another related change is that the 'required' and 'installed' versions
  will be shown for all intermediate packages. When 'required' is not
  specified, it will show 'None' and when 'installed' is not available,
  it will show '?'. This is to keep the output consistent with the confusing deps
  output.

* Fix indentation in output.

Kind of fixes #46.
2016-08-06 19:14:16 +05:30
Vineet Naik 9949bf66db Sort the output in alphabetical order of pkg names
Partially fixes issue #44.
2016-08-06 17:56:56 +05:30
Vineet Naik 4ccd84f4de Fix incorrect output in reverse mode
Fixes issues #45 and #49
2016-08-06 17:33:49 +05:30
Vineet Naik ea17d2e558 Simplify code to show confusing deps 2016-08-06 16:08:38 +05:30
Ioannis Filippidis e57f57a1e4 ENH: dump dependency graph as graphviz dot code 2016-04-10 18:44:57 -07:00
Vineet Naik 975066df4b Bump version to 0.6.0
Also,

* Added changelog
* Updated README
2016-04-09 12:53:04 +05:30
Vineet Naik c0ad7a60b1 Merge pull request #42 from nikolas/patch-1
Typo fix: donot -> do not
2016-03-29 19:53:38 +05:30
Nik Nyby e28464d9fa Fix typo in readme 2016-03-24 10:29:48 -04:00
Nik Nyby 6190a55183 Typo fix: donot -> do not 2016-03-24 10:28:53 -04:00
Vineet Naik 30cbbedc86 Merge pull request #39 from t0m/master
add -werror to return non-zero when warnings are present
2016-03-23 22:45:47 +05:30
Tom Terrace fc2f060b3f Switch the -w flag to silence,suppress,fail 2016-02-23 16:20:48 -05:00
Tom Terrace 8785467d22 add -werror to return non-zero when warnings are present 2016-02-23 16:20:48 -05:00
Vineet Naik 4e564f7947 Merge pull request #40 from adamchainz/python_35
Add Python 3.5 support
2016-02-16 09:15:21 +05:30
Adam Chainz 275335df3e Add Python 3.5 support 2016-02-14 15:06:58 +00:00
Vineet Naik 474ce66ac5 Don't test on 3.2 on travis-ci
pip version >=8.0.0 has dropped support for python version 3.0-3.2
2016-02-14 19:42:24 +05:30
Vineet Naik 226007bfe1 Fix builds on travis-ci (3rd attempt) 2016-02-14 19:36:16 +05:30
Vineet Naik 8d7f85f3e4 Fix builds on travis-ci (2nd attempt)
The pip version will be upgraded before creating the test-envs
2016-02-14 19:33:05 +05:30
Vineet Naik 4e012fd976 Fix builds failing on travis-ci
By forcing installation of pip>=8.0.2
2016-02-14 19:17:04 +05:30
Vineet Naik 07bc2c143c Fix failing build
This is done by:

* Forcing tox to install pip version >=8.0.2 inside the virtualenv
* Commenting out a failing assertion. The reason for this failure is
  that the pkgs loaded from the pickled file lose a bit of information
  w.r.t editable packages. This will be fixed properly in soon.
2016-02-14 19:03:41 +05:30
Vineet Naik 4f5a51106c Add py.test cache folder to gitignore 2016-01-04 23:11:18 +05:30
Vineet Naik 9a320ed895 Merge branch 'chsava-master'
* chsava-master:
  Minor pep8 violations fix.
  Show all dependency conditions.
2016-01-04 23:11:03 +05:30
Vineet Naik d53b37011d Merge branch 'master' of https://github.com/chsava/pipdeptree into chsava-master
* 'master' of https://github.com/chsava/pipdeptree:
  Minor pep8 violations fix.
  Show all dependency conditions.
2016-01-04 22:58:49 +05:30
Vineet Naik 0227faf9c4 Merge pull request #37 from t0m/master
Show warning for unsatisfied/missing dependencies
2016-01-04 00:05:32 +05:30
Cristian_Sava 02305c5bfc Minor pep8 violations fix. 2015-12-29 18:39:07 -08:00
Tom Terrace 9fb8fd5933 print all conflicting messages to stderr 2015-12-26 10:22:07 -05:00
Tom Terrace 41b3fbf9ee replace confusing deps warning with conflicting deps 2015-12-26 09:02:06 -05:00
Cristian Sava a2129d4407 Show all dependency conditions. 2015-12-23 19:06:37 -08:00
Tom Terrace 48f50da49a accidental line deletion 2015-12-04 16:22:00 -05:00
Tom Terrace 0364d7c2da Add a warning for dependencies that are missing/unsatisfied 2015-12-04 16:17:22 -05:00
Vineet Naik 303f0e96b1 Bump version to 0.5.0
Also update README and changelog with latest features
2015-11-15 00:51:21 +05:30
Vineet Naik 74e7ab4678 Add flag to output json repr of dependency tree
With the '--json' flag specified, pipdeptree will output the dependency
tree as json list. The resulting json output is intended to be consumed
by external tools.
2015-11-14 17:18:46 +05:30
Vineet Naik 58ff62f9ef Add --packages option to list only select packages
This option is particularly useful with --reverse to find out what all
packages require the specified package(s).
2015-11-12 00:08:19 +05:30
Vineet Naik 9479b119ae Merge pull request #34 from naiquevin/reverse-mode
Reverse mode
2015-11-11 23:30:24 +05:30
Vineet Naik 49965622af Make code compatible with 2.6 and 3.x
- Replaced '.iteritems()' with '.items()'
- Replaced '{k: v for k,v in ..}' with 'dict((k, v) for k,v ..)'
2015-11-09 00:51:37 +05:30
Vineet Naik fdbe63116f Add --reverse flag for showing dep tree in reverse 2015-11-09 00:32:40 +05:30
Vineet Naik 8db536eab3 Majorly refactor the code
The primary reason behind refactoring the code is to be able to make it
straightforward to implement the --reverse mode (ie. instead of showing
package and their sub-deps, it will show the sub-deps and the packages
that need them).

As a part of this change, wrapper classes have been added for
Distribution and Requirements instances that pip returns. These wrapper
classes have handle the rendering of the pkg as a root (top level) and a
branch (non-top level) accordingly. As a result the same function
`render_tree` can be used for --reverse mode.

This change doesn't include the --reverse mode implementation. It will
be added in the subsequent commit.
2015-11-09 00:32:39 +05:30
Vineet Naik 07685bd313 Update README
- Update the section on running tests
- Add travis-ci badge
2015-08-03 22:09:14 +05:30
Vineet Naik f91f7ee8bc Bump version to 0.4.3 and add changelog 2015-08-03 21:38:39 +05:30
Vineet Naik 2a0ab2ab02 Add __version__ attr to pipdeptree module
Also modify setup.py to read the version from this module
2015-08-03 21:26:02 +05:30
Vineet Naik f70827abe6 Update README 2015-08-03 21:21:08 +05:30
Vineet Naik 49f4f977b4 Migrate travis builds to container-based infra 2015-07-30 00:23:10 +05:30
Vineet Naik d13ff8bdef Modify test workflow
This commit decouples the test virtualenv creation from tox and simplify
it for running both locally and on travis-ci. Creation of the test
virtualenvs now happen via Makefile target 'test-env' which will create
2 virtualenvs in the dir tests/virtualenvs and also dump their
respective package data in .pickle files that will be used by the tests.

Also, builds on travis now no longer depend on tox but reuses some of
the Makefile targets for test virtualenv creation/cleanup.
2015-07-30 00:07:15 +05:30
Vineet Naik 814aff4b08 Include license and changelog in dist tar ball
Fixes #32
2015-07-26 23:26:35 +05:30