Files
kennethreitz.org/data/talks/requests-stdlib.md
T
2024-08-15 18:24:40 -04:00

2.6 KiB
Raw Blame History

Python, Requests, & The Standard Library

Introduction

  • Requests vs Standard Library discusses the stance of the Requests project regarding its potential inclusion in Pythons standard library, exploring the implications and reasoning behind the decision.

Requests Overview

  • Features:

    • Prioritizes security and design.
    • Optimized interfaces for best practices in SSL, connection pooling, encoding, headers, etc.
    • Simplifies interaction with web services.
  • Popularity:

    • Requests is the most downloaded Python package, with around 42 million downloads from PyPi.
    • Regularly suggested for inclusion in the standard library.

Arguments for Inclusion

  • Social Responsibility:

    • Including Requests in the standard library could be seen as the "right thing" to do, given its critical role in the Python ecosystem.
  • Sustainability:

    • Inclusion could facilitate funding for core contributors, ensuring the projects long-term sustainability.
  • Chardet:

    • Chardet, a dependency of Requests, is highlighted as a strong candidate for standard library inclusion due to its utility in character encoding detection.

Arguments Against Inclusion

  • Independence:

    • Requests value lies in its superiority over the standard library; inclusion would diminish its ability to innovate and quickly respond to security incidents or spec changes.
  • Flexibility:

    • Inclusion in the standard library could limit the projects ability to release updates and improvements promptly.

Broader Questions

  • Standard Library Goals:

    • The document questions the current goals of the standard library and whether inclusion is necessary in the era of tools like ensurepip.
  • Critical Infrastructure:

    • Requests is considered critical infrastructure for the Python community, but its inclusion in the standard library might make it less adaptable to change.

Conclusion

  • Final Stance:
    • The document leans against including Requests in the standard library, emphasizing the need for the project to remain agile and independent to continue serving the Python community effectively.