METADATA 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. Metadata-Version: 2.3
  2. Name: dnspython
  3. Version: 2.7.0
  4. Summary: DNS toolkit
  5. Project-URL: homepage, https://www.dnspython.org
  6. Project-URL: repository, https://github.com/rthalley/dnspython.git
  7. Project-URL: documentation, https://dnspython.readthedocs.io/en/stable/
  8. Project-URL: issues, https://github.com/rthalley/dnspython/issues
  9. Author-email: Bob Halley <halley@dnspython.org>
  10. License: ISC
  11. License-File: LICENSE
  12. Classifier: Development Status :: 5 - Production/Stable
  13. Classifier: Intended Audience :: Developers
  14. Classifier: Intended Audience :: System Administrators
  15. Classifier: License :: OSI Approved :: ISC License (ISCL)
  16. Classifier: Operating System :: Microsoft :: Windows
  17. Classifier: Operating System :: POSIX
  18. Classifier: Programming Language :: Python
  19. Classifier: Programming Language :: Python :: 3
  20. Classifier: Programming Language :: Python :: 3.9
  21. Classifier: Programming Language :: Python :: 3.10
  22. Classifier: Programming Language :: Python :: 3.11
  23. Classifier: Programming Language :: Python :: 3.12
  24. Classifier: Programming Language :: Python :: 3.13
  25. Classifier: Topic :: Internet :: Name Service (DNS)
  26. Classifier: Topic :: Software Development :: Libraries :: Python Modules
  27. Requires-Python: >=3.9
  28. Provides-Extra: dev
  29. Requires-Dist: black>=23.1.0; extra == 'dev'
  30. Requires-Dist: coverage>=7.0; extra == 'dev'
  31. Requires-Dist: flake8>=7; extra == 'dev'
  32. Requires-Dist: hypercorn>=0.16.0; extra == 'dev'
  33. Requires-Dist: mypy>=1.8; extra == 'dev'
  34. Requires-Dist: pylint>=3; extra == 'dev'
  35. Requires-Dist: pytest-cov>=4.1.0; extra == 'dev'
  36. Requires-Dist: pytest>=7.4; extra == 'dev'
  37. Requires-Dist: quart-trio>=0.11.0; extra == 'dev'
  38. Requires-Dist: sphinx-rtd-theme>=2.0.0; extra == 'dev'
  39. Requires-Dist: sphinx>=7.2.0; extra == 'dev'
  40. Requires-Dist: twine>=4.0.0; extra == 'dev'
  41. Requires-Dist: wheel>=0.42.0; extra == 'dev'
  42. Provides-Extra: dnssec
  43. Requires-Dist: cryptography>=43; extra == 'dnssec'
  44. Provides-Extra: doh
  45. Requires-Dist: h2>=4.1.0; extra == 'doh'
  46. Requires-Dist: httpcore>=1.0.0; extra == 'doh'
  47. Requires-Dist: httpx>=0.26.0; extra == 'doh'
  48. Provides-Extra: doq
  49. Requires-Dist: aioquic>=1.0.0; extra == 'doq'
  50. Provides-Extra: idna
  51. Requires-Dist: idna>=3.7; extra == 'idna'
  52. Provides-Extra: trio
  53. Requires-Dist: trio>=0.23; extra == 'trio'
  54. Provides-Extra: wmi
  55. Requires-Dist: wmi>=1.5.1; extra == 'wmi'
  56. Description-Content-Type: text/markdown
  57. # dnspython
  58. [![Build Status](https://github.com/rthalley/dnspython/actions/workflows/ci.yml/badge.svg)](https://github.com/rthalley/dnspython/actions/)
  59. [![Documentation Status](https://readthedocs.org/projects/dnspython/badge/?version=latest)](https://dnspython.readthedocs.io/en/latest/?badge=latest)
  60. [![PyPI version](https://badge.fury.io/py/dnspython.svg)](https://badge.fury.io/py/dnspython)
  61. [![License: ISC](https://img.shields.io/badge/License-ISC-brightgreen.svg)](https://opensource.org/licenses/ISC)
  62. [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
  63. ## INTRODUCTION
  64. dnspython is a DNS toolkit for Python. It supports almost all record types. It
  65. can be used for queries, zone transfers, and dynamic updates. It supports TSIG
  66. authenticated messages and EDNS0.
  67. dnspython provides both high and low level access to DNS. The high level classes
  68. perform queries for data of a given name, type, and class, and return an answer
  69. set. The low level classes allow direct manipulation of DNS zones, messages,
  70. names, and records.
  71. To see a few of the ways dnspython can be used, look in the `examples/`
  72. directory.
  73. dnspython is a utility to work with DNS, `/etc/hosts` is thus not used. For
  74. simple forward DNS lookups, it's better to use `socket.getaddrinfo()` or
  75. `socket.gethostbyname()`.
  76. dnspython originated at Nominum where it was developed
  77. to facilitate the testing of DNS software.
  78. ## ABOUT THIS RELEASE
  79. This is dnspython 2.7.0.
  80. Please read
  81. [What's New](https://dnspython.readthedocs.io/en/stable/whatsnew.html) for
  82. information about the changes in this release.
  83. ## INSTALLATION
  84. * Many distributions have dnspython packaged for you, so you should
  85. check there first.
  86. * To use a wheel downloaded from PyPi, run:
  87. pip install dnspython
  88. * To install from the source code, go into the top-level of the source code
  89. and run:
  90. ```
  91. pip install --upgrade pip build
  92. python -m build
  93. pip install dist/*.whl
  94. ```
  95. * To install the latest from the main branch, run `pip install git+https://github.com/rthalley/dnspython.git`
  96. Dnspython's default installation does not depend on any modules other than
  97. those in the Python standard library. To use some features, additional modules
  98. must be installed. For convenience, pip options are defined for the
  99. requirements.
  100. If you want to use DNS-over-HTTPS, run
  101. `pip install dnspython[doh]`.
  102. If you want to use DNSSEC functionality, run
  103. `pip install dnspython[dnssec]`.
  104. If you want to use internationalized domain names (IDNA)
  105. functionality, you must run
  106. `pip install dnspython[idna]`
  107. If you want to use the Trio asynchronous I/O package, run
  108. `pip install dnspython[trio]`.
  109. If you want to use WMI on Windows to determine the active DNS settings
  110. instead of the default registry scanning method, run
  111. `pip install dnspython[wmi]`.
  112. If you want to try the experimental DNS-over-QUIC code, run
  113. `pip install dnspython[doq]`.
  114. Note that you can install any combination of the above, e.g.:
  115. `pip install dnspython[doh,dnssec,idna]`
  116. ### Notices
  117. Python 2.x support ended with the release of 1.16.0. Dnspython 2.6.x supports
  118. Python 3.8 and later, though support for 3.8 ends on October 14, 2024.
  119. Dnspython 2.7.x supports Python 3.9 and later. Future support is aligned with the
  120. lifetime of the Python 3 versions.
  121. Documentation has moved to
  122. [dnspython.readthedocs.io](https://dnspython.readthedocs.io).