The Real Python Podcast

Resolving Package Dependencies With the New Version of Pip


Listen Later

If you use Python, then you probably have used pip to install additional packages from the Python package index. Part of the magic behind pip is the dependency resolver, and there is a new version of it in the latest version of pip. This week on the show, we have Sumana Harihareswara and Georgia Bullen, who have been working on the recent releases of pip. Sumana is the project manager for pip, and Georgia has been working on pip’s user experience (UX).

The resolver is how pip determines what to install, and in what order, based on package requirements. We talk about how you can help, from updating to the latest release, testing out the new resolver with your projects, and answering surveys about your experiences. A ton of work has gone into making the updates this year. We also talk about the funding of projects like this in the open-source community.

Course Spotlight: A Beginner’s Guide to Pip

This course is a great introduction to pip for those who are getting started Python, and for those who want to understand more about what is happening when you install new packages into your environment. It’s a worthy investment of your time to understand the fundamentals of pip.

Show Topics:

  • 00:00:00 – Introduction
  • 00:01:41 – Pip updates and changes to dependency resolver
  • 00:08:49 – Different types of wheels
  • 00:11:12 – Pinning package dependencies
  • 00:13:19 – Work on the user experience (UX) of pip
  • 00:15:45 – Documentation at Python packaging authority and thanks to Thea Flowers
  • 00:16:21 – Types of issues that need resolving
  • 00:20:48 – Need for reporting issues
  • 00:23:41 – Pip usability survey and dependency recipes to test
  • 00:27:21 – Call out to open source maintainers to test
  • 00:29:32 – Video Course Spotlight
  • 00:30:43 – How is this UX work different from Simply Secure
  • 00:34:59 – How do you present errors to users?
  • 00:41:14 – Pip release timeline for 2020 and into 2021
  • 00:46:38 – The dynamics of responsibility and power
  • 00:49:43 – What’s involved in getting more funding into open source?
  • 00:54:10 – Grant writing for the PSF
  • 00:57:53 – Call to action: How to help with pip?
  • 01:00:54 – What are you excited about in the world of Python?
  • 01:04:52 – What do you want to learn next?
  • 01:08:22 – Thanks and goodbyes
  • Show Links:

    • New pip resolver to roll out this year: Python Software Foundation
    • Changes to the pip dependency resolver in 20.2 (2020): Python Packaging Authority
    • Changes are coming to pip: YouTube
    • Sign-up for pip UX Studies!
    • Upgrade to pip 20.2, plus, changes coming in 20.3: Python Insider
    • Pip team midyear report: July 13, 2020
    • An Overview of Packaging for Python: PyPA
    • pip dependency resolver changes: Test & Code Podcast
    • What Are Python Wheels and Why Should You Care?: Real Python article
    • Python Wheels and Pass by Reference in Python: Real Python Podcast Ep23
    • Options for Packaging Your Python Application: Wheels, Docker, and More: Real Python Podcast Ep24
    • UX Research & Design: 2020 Work on Improving pip’s user experience
    • Simple Secure: User Research
    • Roadmap update for TUF (The Update Framework) support
    • Exploring CircuitPython with Thea Flowers: Real Python Podcast Ep5
    • PyPA - Packaging Problems Issue Tracker: Github
    • PEP 458 - Secure PyPI downloads with signed repository metadata
    • Fixing conflicting dependencies: PyPA
    • Finish dependency resolver for pip: Github
    • Announcing the PSF Project Funding Working Group: PSF
    • Sponsor PyPI and related projects
    • Tidelift: Managed open source. Backed by maintainers.
    • Apply for Grants To Fund Open Source Work: changeset
    • Open collective: Make your community sustainable
    • Sustain: Holding a space for conversations about sustaining Open Source
    • Answer these surveys to improve pip’s usability: Python Software Foundation
    • Breaking Release Bottlenecks – What Changeset Can Do
    • On The Art of Python 2019
    • Python Grab Bag: A Set of Short Plays
    • “Apply for Grants to Fund Open Source Work” - Sumana Harihareswara: PyOhio 2020
    • PyGotham TV: 2020
    • Get paid to write Free software: Cristina - PyGotham 2020
    • Level up your Python skills with our expert-led courses:

      • A Beginner's Guide to pip
      • How to Publish Your Own Python Package to PyPI
      • Python Modules and Packages: An Introduction
      • Support the podcast & join our community of Pythonistas

        ...more
        View all episodesView all episodes
        Download on the App Store

        The Real Python PodcastBy Real Python

        • 4.7
        • 4.7
        • 4.7
        • 4.7
        • 4.7

        4.7

        138 ratings


        More shows like The Real Python Podcast

        View all
        Software Engineering Radio - the podcast for professional software developers by se-radio@computer.org

        Software Engineering Radio - the podcast for professional software developers

        271 Listeners

        The Changelog: Software Development, Open Source by Changelog Media

        The Changelog: Software Development, Open Source

        284 Listeners

        Thoughtworks Technology Podcast by Thoughtworks

        Thoughtworks Technology Podcast

        41 Listeners

        Talk Python To Me by Michael Kennedy

        Talk Python To Me

        583 Listeners

        Software Engineering Daily by Software Engineering Daily

        Software Engineering Daily

        624 Listeners

        Super Data Science: ML & AI Podcast with Jon Krohn by Jon Krohn

        Super Data Science: ML & AI Podcast with Jon Krohn

        297 Listeners

        Python Bytes by Michael Kennedy and Brian Okken

        Python Bytes

        214 Listeners

        Data Engineering Podcast by Tobias Macey

        Data Engineering Podcast

        141 Listeners

        Machine Learning Guide by OCDevel

        Machine Learning Guide

        770 Listeners

        Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

        Syntax - Tasty Web Development Treats

        986 Listeners

        CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

        CoRecursive: Coding Stories

        190 Listeners

        DataFramed by DataCamp

        DataFramed

        271 Listeners

        Practical AI by Practical AI LLC

        Practical AI

        188 Listeners

        The Stack Overflow Podcast by The Stack Overflow Podcast

        The Stack Overflow Podcast

        63 Listeners

        The Pragmatic Engineer by Gergely Orosz

        The Pragmatic Engineer

        63 Listeners