requests
Airflow
| requests | Airflow | |
|---|---|---|
| 106 | 205 | |
| 54,039 | 45,795 | |
| 0.2% | 1.3% | |
| 8.2 | 10.0 | |
| 9 days ago | 5 days ago | |
| Python | Python | |
| Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
requests
-
Some secret management belongs in your HTTP proxy
all languages also seem to have packages around providing cert bundles which get used directly (e.g., certifi [3]), which does cause some pain
[1] https://github.com/rustls/rustls-native-certs/issues/16#issu...
[2] https://github.com/psf/requests/issues/2899
[3] https://pypi.org/project/certifi/
-
I Forked Httpx
Python’s urllib2 (now urllib.request) started out in the year 2000 [0].
.NET’s WebRequest was available in .NET Framework 1.1 in 2003 [1].
But since then, Microsoft noticed the issues with WebRequest and came up with HttpClient in 2012. It has some issues and footguns, like those related to HttpClient lifetime, but it’s a solid library. On the other hand, the requests library for Python started in 2011 [2], but the stdlib library hasn’t seen many improvements.
[0] https://github.com/python/cpython/blob/6d7e47b8ea1b8cf82927d...
[1] https://learn.microsoft.com/en-us/dotnet/api/system.net.webr...
[2] https://github.com/psf/requests/blob/main/HISTORY.md#001-201...
-
Hybrid scraping: The architecture for the modern web
Python’s requests package, which uses urllib from the standard library, has a very distinctive TLS fingerprint, containing ciphers (amongst other things) that aren’t seen in a browser. This makes it very easy to spot. Both rnet, and other options such as curl-cffi, are able to send a TLS fingerprint similar to that of a browser. This reduces the chances of our request being blocked.
-
How uv got so fast
There's been a branch for it (https://github.com/psf/requests/tree/hatchling) for a little while apparently; I guess they won't merge it until absolutely necessary for the 2.33 release. But that is still just over a year after I offered (https://github.com/psf/requests/issues/6775).
... Ah, I got confused for a bit. When I first noticed the `pyproject.toml` deficiency, it was because Requests was affected by the major Setuptools 72 backwards incompatibility. Then this year they were hit again by the major Setuptools 78 backwards incompatibility (which the Setuptools team consciously ignored in testing because Requests already publishes their own wheel, so this only affected the build-from-source purists like distro maintainers). See also my writeup https://lwn.net/Articles/1020576/ .
- Breaking Changes in Python-3.14
-
Deprecations via warnings don't work for Python libraries
This, I think, is the crux of the matter.
As an example, I always knew urllib3 as one of the foundational packages that Requests uses. And I was curious, what versions of urllib3 does Requests pull in?
Well, according to https://github.com/psf/requests/blob/main/setup.cfg, it's this:
urllib3>=1.21.1,<3 -
RFC 8594: The Sunset HTTP Header Field
I suggested exactly that (for the closely related Deprecation header) to Requests a few years ago, they feel it's the application's responsibility, discussion here: https://github.com/psf/requests/issues/5724
-
The Python Learning Journey: From Beginner Confusion to Advanced Mastery
Code Reading: Study repositories like Flask, Requests, or Rich on GitHub. Notice how they handle imports, error cases, and API design. Reading production code reveals patterns you won't find in tutorials.
-
Essential uv Usage for Daily Development
# Add latest version of requests package uv add requests # Specify version uv add 'requests==2.31.0' # Add git dependency uv add git+https://github.com/psf/requests # Migrate from requirements.txt uv add -r requirements.txt -c constraints.txt # If not using constraints.txt, use this uv add -r requirements.txt # Adding --dev makes it a development dependency # (added to dev in [dependency-groups] of pyproject.toml). # Example of adding moto needed only for testing as development dependency uv add moto --dev # Updates are also possible with uv add --upgrade uv add requests --upgrade
-
CVE-2024-47081: Netrc credential leak in PSF requests library
https://github.com/psf/requests/commit/79bb9ee1417afe2231972...
Airflow
-
From Zero to Job Data Visualization vs Power BI: Which Wins?
For senior engineers building custom job data visualization pipelines, the single biggest latency gain comes from pre-aggregating frequently accessed metrics instead of running joins at query time. In our benchmarks, querying raw job_postings tables with 1M rows took 210ms average, while pre-aggregated tables (updated hourly via PostgreSQL materialized views) reduced query time to 12ms. Use tools like Apache Airflow 2.7.3 to schedule materialized view refreshes during off-peak hours. For example, a materialized view for average salary by company can be defined as:
-
We Upgraded Airflow 2.8 to 3.1 on Kubernetes. Here Is What Actually Changed
As of now, there is no new auth manager that supports LDAP natively with the new Airflow 3 UI. There is an open discussion in the Airflow repo about building a lightweight LDAP auth manager, but nothing shipped yet. If you are using LDAP, this is something to be aware of. It is cosmetic, not functional.
- GitHub's Fake Star Economy
- Airflow Registry
-
Top Open-Source Data Engineering Tools- Unravelling the Best in 2026
Airflow
-
What is Argo Workflows?
Apache Airflow - Apache's Airflow project is a popular workflow system that supports DAG-based tasks and precise scheduling. It's an extensible Python project that supports several different providers and job executors, including Kubernetes.
-
InnovaML: Driving Business Innovation Through Intelligent ML Solutions
Automation Tools: MLflow, Airflow, Kubernetes
-
Introduction to Apache Airflow
Airflow GitHub Repository: Explore source code, example DAGs, or contribute to the project.
- Personal Picks: Data Product News (October 1, 2025)
-
dgsh – Directed Graph Shell
There is a lot of stuff for Python which follows the "express computation as a dag" approach, especially Apache Airflow
https://airflow.apache.org/
What are some alternatives?
urllib3 - urllib3 is a user-friendly HTTP client library for Python
n8n - n8n is a workflow automation platform for building AI-powered workflows and agents, connecting any AI model to any business system with full control over data, security, and deployment. Build visually or in code while n8n handles infrastructure from prototype to production with fully auditable executions.
httplib2 - Small, fast HTTP client library for Python. Features persistent connections, cache, and Google App Engine support. Originally written by Joe Gregorio, now supported by community.
luigi - Luigi is a Python module that helps you build complex pipelines of batch jobs. It handles dependency resolution, workflow management, visualization etc. It also comes with Hadoop support built in.
grequests - Requests + Gevent = <3
incubator-dolphinscheduler - Apache DolphinScheduler is the modern data orchestration platform. Agile to create high performance workflow with low-code