1 00:00:00,510 --> 00:00:03,570 Isn't Pipenv pretty impressive thus far? 2 00:00:03,570 --> 00:00:05,920 One last thing here that's pretty helpful. 3 00:00:05,920 --> 00:00:10,426 If you need to see what dependencies are reliant on one another, 4 00:00:10,426 --> 00:00:15,529 you can easily generate a dependency graph with Pipenv, pipenv graph. 5 00:00:16,902 --> 00:00:22,350 This shows the top level dependencies and which packages they depend on. 6 00:00:22,350 --> 00:00:25,308 graph can take a few flags, which can be helpful as well. 7 00:00:27,074 --> 00:00:32,726 Clear, we can get our graph back in JSON 8 00:00:32,726 --> 00:00:38,440 format with, pipenv graph --json. 9 00:00:38,440 --> 00:00:42,693 And if we run pipenv graph --reverse, 10 00:00:45,803 --> 00:00:50,300 We'll find the sub-dependencies first, and what is reliant on them. 11 00:00:50,300 --> 00:00:54,670 This can be very helpful when attempting to figure out dependency conflicts. 12 00:00:54,670 --> 00:00:58,974 Finally, there is a built-in security check that tests against PEP 508 13 00:00:58,974 --> 00:01:01,000 requirements and package safety. 14 00:01:03,442 --> 00:01:05,088 We do pipenv check. 15 00:01:07,907 --> 00:01:10,610 Whew, it all passed. 16 00:01:10,610 --> 00:01:13,800 Check the teacher's notes for more information on 508 requirements. 17 00:01:14,880 --> 00:01:16,520 Pretty nice, right? 18 00:01:16,520 --> 00:01:18,730 With adding Pipenv to your toolbox, 19 00:01:18,730 --> 00:01:21,600 you get the benefits of a streamlined development workflow, 20 00:01:21,600 --> 00:01:25,410 with virtual environment, dependency management, and security. 21 00:01:26,440 --> 00:01:31,320 We've looked at Pipfile and Pipfile.lock, to see how Pipenv 22 00:01:31,320 --> 00:01:36,240 separates abstract dependency declarations to manage our project environment. 23 00:01:36,240 --> 00:01:38,970 We also saw how to generate a dependency graph. 24 00:01:40,435 --> 00:01:43,450 Pipenv is a great tool to have in your Python toolkit. 25 00:01:43,450 --> 00:01:47,967 It allows pip and virtualenv to be consolidated into an easy-to-use, 26 00:01:47,967 --> 00:01:49,230 single interface. 27 00:01:49,230 --> 00:01:53,510 I would encourage you to try it out in your next project. 28 00:01:53,510 --> 00:01:56,420 Be sure to share your thoughts in the Treehouse community forum, or 29 00:01:56,420 --> 00:01:57,430 reach out to me on Twitter. 30 00:01:58,550 --> 00:02:00,560 Until next time, happy coding.