Name | sopel-dns JSON |
Version |
0.5.0
JSON |
| download |
home_page | None |
Summary | A DNS lookup plugin for Sopel IRC bots |
upload_time | 2024-10-21 04:37:25 |
maintainer | None |
docs_url | None |
author | None |
requires_python | <4,>=3.8 |
license | EFL-2.0 |
keywords |
sopel
plugin
bot
irc
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# sopel-dns
A DNS lookup plugin for Sopel IRC bots
## Installing
Releases are hosted on PyPI, so after installing Sopel, all you need is `pip`:
```shell
$ pip install sopel-dns
```
### Requirements
* Python 3.8+
* Sopel 8.0+
* `dnspython` 2.x
## Usage
Basic usage performs an 'A' record lookup:
```
<user> .dns domain.tld
<bot> user: 10.10.0.1
```
To look up IPv6 addresses instead, specify the 'AAAA' record type:
```
<user> .dns domain.tld AAAA
<bot> user: fd12:3456:789a:1::1
```
Other [supported record types](#supported-dns-record-types) output their
results in a similar fashion. Some types, such as `MX` and `TXT`, split the
output across multiple lines to make it easier to read, at the cost of
possible "spam" if there are many records attached to the queried domain.
### Rate limiting
Normal users are rate-limited to one `.dns` command every 2 minutes, both to
control channel flood and to prevent hammering whatever DNS server Sopel's
host system uses to resolve the submitted queries.
## Supported DNS record types
* `A`
* `AAAA`
* `CNAME`
* `MX`
* `NS`
* `PTR`
* `TXT`
If a record type you want isn't listed here, feel free to request it in an
[issue](https://github.com/dgw/sopel-dns/issues/new). Even better: a pull
request enabling that record type, including a demo of the resulting output.
## Changelog
### 0.5.0
Added:
* Rate limit feedback indicating how much time is left in cooldown ([#3][])
Changed:
* Require Sopel 8.0+
Meta:
* Converted to modern package style, `setup.cfg` → `pyproject.toml`
* Automated releases with GitHub Actions + PyPI Trusted Publishing
* Reworked NEWS file to match the README's style of Markdown
[#3]: https://github.com/dgw/sopel-dns/pull/3
### 0.4.0
Now requires Sopel 7.1, but also works on (upcoming) Sopel 8.0.
### 0.3.1
Tightened `dnspython` requirement vs. Sopel's own. This plugin now requires
Python 3.6+ (because that's what `dnspython` 2.x supports).
### 0.3.0
Added `[dns]` output prefix. This also meant changing most of the plugin's
output from replies to normal "say", which is fine. The flood of HLs from
looking up stuff like `MX` or `TXT` records could get annoying.
Rate limit has been reduced from 5 minutes to 2 minutes.
### 0.2.1
Fixed error when a DNS query has no answer (no results).
### 0.2.0
Added support for choosing DNS record type to look up. Currently understands
`A`, `AAAA`, `CNAME`, `MX`, `NS`, `PTR` (for IP addresses only), and `TXT`.
### 0.1.0
Initial release with support for querying a domain's `A` records.
Raw data
{
"_id": null,
"home_page": null,
"name": "sopel-dns",
"maintainer": null,
"docs_url": null,
"requires_python": "<4,>=3.8",
"maintainer_email": null,
"keywords": "sopel, plugin, bot, irc",
"author": null,
"author_email": "dgw <dgw@technobabbl.es>",
"download_url": "https://files.pythonhosted.org/packages/2a/25/767108be8c21a8d4f70835eb0c0ffd50dab68a24c59d7495887cece1fbee/sopel_dns-0.5.0.tar.gz",
"platform": "Linux x86, x86-64",
"description": "# sopel-dns\n\nA DNS lookup plugin for Sopel IRC bots\n\n## Installing\n\nReleases are hosted on PyPI, so after installing Sopel, all you need is `pip`:\n\n```shell\n$ pip install sopel-dns\n```\n\n### Requirements\n\n* Python 3.8+\n* Sopel 8.0+\n* `dnspython` 2.x\n\n\n## Usage\n\nBasic usage performs an 'A' record lookup:\n\n```\n<user> .dns domain.tld\n<bot> user: 10.10.0.1\n```\n\nTo look up IPv6 addresses instead, specify the 'AAAA' record type:\n\n```\n<user> .dns domain.tld AAAA\n<bot> user: fd12:3456:789a:1::1\n```\n\nOther [supported record types](#supported-dns-record-types) output their\nresults in a similar fashion. Some types, such as `MX` and `TXT`, split the\noutput across multiple lines to make it easier to read, at the cost of\npossible \"spam\" if there are many records attached to the queried domain.\n\n### Rate limiting\n\nNormal users are rate-limited to one `.dns` command every 2 minutes, both to\ncontrol channel flood and to prevent hammering whatever DNS server Sopel's\nhost system uses to resolve the submitted queries.\n\n\n## Supported DNS record types\n\n* `A`\n* `AAAA`\n* `CNAME`\n* `MX`\n* `NS`\n* `PTR`\n* `TXT`\n\nIf a record type you want isn't listed here, feel free to request it in an\n[issue](https://github.com/dgw/sopel-dns/issues/new). Even better: a pull\nrequest enabling that record type, including a demo of the resulting output.\n\n## Changelog\n\n### 0.5.0\n\nAdded:\n* Rate limit feedback indicating how much time is left in cooldown ([#3][])\n\nChanged:\n* Require Sopel 8.0+\n\nMeta:\n* Converted to modern package style, `setup.cfg` \u2192 `pyproject.toml`\n* Automated releases with GitHub Actions + PyPI Trusted Publishing\n* Reworked NEWS file to match the README's style of Markdown\n\n[#3]: https://github.com/dgw/sopel-dns/pull/3\n\n\n### 0.4.0\n\nNow requires Sopel 7.1, but also works on (upcoming) Sopel 8.0.\n\n\n### 0.3.1\n\nTightened `dnspython` requirement vs. Sopel's own. This plugin now requires\nPython 3.6+ (because that's what `dnspython` 2.x supports).\n\n\n### 0.3.0\n\nAdded `[dns]` output prefix. This also meant changing most of the plugin's\noutput from replies to normal \"say\", which is fine. The flood of HLs from\nlooking up stuff like `MX` or `TXT` records could get annoying.\n\nRate limit has been reduced from 5 minutes to 2 minutes.\n\n\n### 0.2.1\n\nFixed error when a DNS query has no answer (no results).\n\n\n### 0.2.0\n\nAdded support for choosing DNS record type to look up. Currently understands\n`A`, `AAAA`, `CNAME`, `MX`, `NS`, `PTR` (for IP addresses only), and `TXT`.\n\n\n### 0.1.0\n\nInitial release with support for querying a domain's `A` records.\n",
"bugtrack_url": null,
"license": "EFL-2.0",
"summary": "A DNS lookup plugin for Sopel IRC bots",
"version": "0.5.0",
"project_urls": {
"Bug Tracker": "https://github.com/dgw/sopel-dns/issues",
"Homepage": "https://github.com/dgw/sopel-dns"
},
"split_keywords": [
"sopel",
" plugin",
" bot",
" irc"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "4f8aad3424e9b257e9f14c93257ab4f5f1260d2c4e3e357e02a2583fcc48498a",
"md5": "32d09cf9b7aecb7e10f2a41743c073d7",
"sha256": "abf4b4ed1c05fb1f0ac7cc8c80ef97ae1cb2a50c4ca103c8f0bc929d27879b6b"
},
"downloads": -1,
"filename": "sopel_dns-0.5.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "32d09cf9b7aecb7e10f2a41743c073d7",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4,>=3.8",
"size": 4877,
"upload_time": "2024-10-21T04:37:24",
"upload_time_iso_8601": "2024-10-21T04:37:24.351943Z",
"url": "https://files.pythonhosted.org/packages/4f/8a/ad3424e9b257e9f14c93257ab4f5f1260d2c4e3e357e02a2583fcc48498a/sopel_dns-0.5.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2a25767108be8c21a8d4f70835eb0c0ffd50dab68a24c59d7495887cece1fbee",
"md5": "fe84c94c5bb9b07d1dd80f2c5098d24e",
"sha256": "cd1cd634e9427e6b482f77392643e3af59b14f0874344b48cc9793611b1ef59e"
},
"downloads": -1,
"filename": "sopel_dns-0.5.0.tar.gz",
"has_sig": false,
"md5_digest": "fe84c94c5bb9b07d1dd80f2c5098d24e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4,>=3.8",
"size": 4652,
"upload_time": "2024-10-21T04:37:25",
"upload_time_iso_8601": "2024-10-21T04:37:25.178340Z",
"url": "https://files.pythonhosted.org/packages/2a/25/767108be8c21a8d4f70835eb0c0ffd50dab68a24c59d7495887cece1fbee/sopel_dns-0.5.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-21 04:37:25",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "dgw",
"github_project": "sopel-dns",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "sopel-dns"
}