-
Type: Epic
-
Resolution: Won't Fix
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Done
-
Replace dnspython
Summary
Replace dnspython with our own SRV dns implementation.
Motivation
mongodb+srv:// URIs require SRV dns lookups. Currently pymongo (and motor) require the dnspython library to be installed. This causes user pain because dnspython is not installed by default (see MOTOR-706 and PYTHON-2605).
dnspython also brings its own problems as described in PYTHON-2362, PYTHON-2002, and PYTHON-2364.
Instead we should implement the required DNS logic ourselves and drop the dnspython dependency.
Cast of Characters
Engineering Lead:
Document Author:
POCers:
Product Owner:
Program Manager:
Stakeholders:
Documentation
[Scope Document|some.url]
[Technical Design Document|some.url]
- is related to
-
PYTHON-2902 Support dnspython 2
- Closed
- related to
-
PYTHON-2002 dnspython errors causing SRV polling tests to fail on CPython 2.7
- Closed
-
PYTHON-2362 DNS resolution timing out in SRV polling tests
- Closed
-
PYTHON-2364 Fix DeprecationWarning: please use dns.resolver.resolve() instead
- Closed
-
PYTHON-2605 Improve mongodb+srv:// error message when dnspython is not installed
- Closed
-
PYTHON-3423 Make dnspython a required dependency
- Closed
-
PYTHON-2667 Test failure - SRV support broken when running with eventlet
- Closed
-
MOTOR-706 Include tornado and dnspython as install_Requires
- Closed