mirror of
https://github.com/ansible-collections/community.general.git
synced 2026-02-04 07:51:50 +00:00
Add `to_toml` filter (#11423)
* Add to_toml filter
This is based heavily on the to_yaml filter, but
with a pared-down feature set.
* Protect import
* Don't quote datetime as a string
* Use Ansible error types
* Import correct error types
* Don't use AnsibleTypeError
It doesn't seem to be available on older Ansible
core versions.
* Fix antsibull-nox errors
* Install dependencies for to_toml integration test
* Reduce author list to main contributor
* Update version added for to_toml
* Use AnsibleError for missing import
* Use AnsibleFilterError for runtime type check
* Move common code to plugin_utils/_tags.py
* Mark module util as private
* Update BOTMETA for to_toml
* Fix typo
* Correct version number
* Use to_text for to_toml dict key conversions
* Add tomlkit requirement to docs
* Add missing import
* Add aliases for for to_toml integration test
---------
(cherry picked from commit 864695f898)
Co-authored-by: Matt Williams <matt@milliams.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
240 lines
5.8 KiB
INI
240 lines
5.8 KiB
INI
# Copyright (c) Ansible Project
|
|
# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
|
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
[mypy]
|
|
# check_untyped_defs = True
|
|
# disallow_untyped_defs = True
|
|
|
|
# strict = True -- only try to enable once everything (including dependencies!) is typed
|
|
strict_equality = True
|
|
strict_bytes = True
|
|
|
|
warn_redundant_casts = True
|
|
# warn_return_any = True
|
|
warn_unreachable = True
|
|
|
|
exclude = tests/integration/targets/django_.*/files/.*
|
|
|
|
[mypy-ansible.*]
|
|
# ansible-core has partial typing information
|
|
follow_untyped_imports = True
|
|
|
|
# The following imports are Python packages that:
|
|
# 1. We do not install (we can't install everything!);
|
|
# 2. That have type stubs, but we don't install them (again, we can't install everything!); or
|
|
# 3. That have no types and type stubs.
|
|
[mypy-aerospike.*]
|
|
ignore_missing_imports = True
|
|
[mypy-antsibull_nox.*]
|
|
ignore_missing_imports = True
|
|
[mypy-asyncore.*]
|
|
ignore_missing_imports = True
|
|
[mypy-boto3.*]
|
|
ignore_missing_imports = True
|
|
[mypy-bs4.*]
|
|
ignore_missing_imports = True
|
|
[mypy-cgi.*]
|
|
ignore_missing_imports = True
|
|
[mypy-chef.*]
|
|
ignore_missing_imports = True
|
|
[mypy-consul.*]
|
|
ignore_missing_imports = True
|
|
[mypy-credstash.*]
|
|
ignore_missing_imports = True
|
|
[mypy-crypt.*]
|
|
ignore_missing_imports = True
|
|
[mypy-daemon.*]
|
|
ignore_missing_imports = True
|
|
[mypy-datadog.*]
|
|
ignore_missing_imports = True
|
|
[mypy-dbus.*]
|
|
ignore_missing_imports = True
|
|
[mypy-delinea.*]
|
|
ignore_missing_imports = True
|
|
[mypy-dnf.*]
|
|
ignore_missing_imports = True
|
|
[mypy-dnsimple.*]
|
|
ignore_missing_imports = True
|
|
[mypy-etcd3.*]
|
|
ignore_missing_imports = True
|
|
[mypy-flatdict.*]
|
|
ignore_missing_imports = True
|
|
[mypy-footmark.*]
|
|
ignore_missing_imports = True
|
|
[mypy-fqdn.*]
|
|
ignore_missing_imports = True
|
|
[mypy-func.*]
|
|
ignore_missing_imports = True
|
|
[mypy-gi.*]
|
|
ignore_missing_imports = True
|
|
[mypy-github3.*]
|
|
ignore_missing_imports = True
|
|
[mypy-gssapi.*]
|
|
ignore_missing_imports = True
|
|
[mypy-hashids.*]
|
|
ignore_missing_imports = True
|
|
[mypy-heroku3.*]
|
|
ignore_missing_imports = True
|
|
[mypy-hpe3parclient.*]
|
|
ignore_missing_imports = True
|
|
[mypy-hpe3par_sdk.*]
|
|
ignore_missing_imports = True
|
|
[mypy-hpilo.*]
|
|
ignore_missing_imports = True
|
|
[mypy-hpOneView.*]
|
|
ignore_missing_imports = True
|
|
[mypy-httmock.*] # TODO!
|
|
ignore_missing_imports = True
|
|
[mypy-influxdb.*]
|
|
ignore_missing_imports = True
|
|
[mypy-jc.*]
|
|
ignore_missing_imports = True
|
|
[mypy-jenkins.*]
|
|
ignore_missing_imports = True
|
|
[mypy-jmespath.*]
|
|
ignore_missing_imports = True
|
|
[mypy-jsonpatch.*]
|
|
ignore_missing_imports = True
|
|
[mypy-kazoo.*]
|
|
ignore_missing_imports = True
|
|
[mypy-keyring.*]
|
|
ignore_missing_imports = True
|
|
[mypy-keystoneauth1.*]
|
|
ignore_missing_imports = True
|
|
[mypy-layman.*]
|
|
ignore_missing_imports = True
|
|
[mypy-ldap.*]
|
|
ignore_missing_imports = True
|
|
[mypy-legacycrypt.*]
|
|
ignore_missing_imports = True
|
|
[mypy-libcloud.*]
|
|
ignore_missing_imports = True
|
|
[mypy-linode.*]
|
|
ignore_missing_imports = True
|
|
[mypy-linode_api4.*]
|
|
ignore_missing_imports = True
|
|
[mypy-lmdb.*]
|
|
ignore_missing_imports = True
|
|
[mypy-logdna.*]
|
|
ignore_missing_imports = True
|
|
[mypy-logstash.*]
|
|
ignore_missing_imports = True
|
|
[mypy-lxc.*]
|
|
ignore_missing_imports = True
|
|
[mypy-manageiq_client.*]
|
|
ignore_missing_imports = True
|
|
[mypy-matrix_client.*]
|
|
ignore_missing_imports = True
|
|
[mypy-memcache.*]
|
|
ignore_missing_imports = True
|
|
[mypy-nc_dnsapi.*]
|
|
ignore_missing_imports = True
|
|
[mypy-nomad.*]
|
|
ignore_missing_imports = True
|
|
[mypy-nopackagewiththisname.*]
|
|
ignore_missing_imports = True
|
|
[mypy-nox.*]
|
|
ignore_missing_imports = True
|
|
[mypy-oci.*]
|
|
ignore_missing_imports = True
|
|
[mypy-oneandone.*]
|
|
ignore_missing_imports = True
|
|
[mypy-opentelemetry.*]
|
|
ignore_missing_imports = True
|
|
[mypy-ovh.*]
|
|
ignore_missing_imports = True
|
|
[mypy-ovirtsdk.*]
|
|
ignore_missing_imports = True
|
|
[mypy-packet.*]
|
|
ignore_missing_imports = True
|
|
[mypy-paho.*]
|
|
ignore_missing_imports = True
|
|
[mypy-pam.*]
|
|
ignore_missing_imports = True
|
|
[mypy-pdpyras.*]
|
|
ignore_missing_imports = True
|
|
[mypy-petname.*]
|
|
ignore_missing_imports = True
|
|
[mypy-pingdom.*]
|
|
ignore_missing_imports = True
|
|
[mypy-portage.*]
|
|
ignore_missing_imports = True
|
|
[mypy-potatoes_that_will_never_be_there.*]
|
|
ignore_missing_imports = True
|
|
[mypy-prettytable.*]
|
|
ignore_missing_imports = True
|
|
[mypy-pubnub_blocks_client.*]
|
|
ignore_missing_imports = True
|
|
[mypy-pushbullet.*]
|
|
ignore_missing_imports = True
|
|
[mypy-pycdlib.*]
|
|
ignore_missing_imports = True
|
|
[mypy-pyghmi.*]
|
|
ignore_missing_imports = True
|
|
[mypy-pylxca.*]
|
|
ignore_missing_imports = True
|
|
[mypy-pymssql.*]
|
|
ignore_missing_imports = True
|
|
[mypy-pyodbc.*]
|
|
ignore_missing_imports = True
|
|
[mypy-pyone.*]
|
|
ignore_missing_imports = True
|
|
[mypy-pypureomapi.*]
|
|
ignore_missing_imports = True
|
|
[mypy-pysnmp.*]
|
|
ignore_missing_imports = True
|
|
[mypy-pyxcli.*]
|
|
ignore_missing_imports = True
|
|
[mypy-rpm.*]
|
|
ignore_missing_imports = True
|
|
[mypy-ruamel.yaml.*]
|
|
ignore_missing_imports = True
|
|
[mypy-salt.*]
|
|
ignore_missing_imports = True
|
|
[mypy-selinux.*]
|
|
ignore_missing_imports = True
|
|
[mypy-semantic_version.*]
|
|
ignore_missing_imports = True
|
|
[mypy-sendgrid.*]
|
|
ignore_missing_imports = True
|
|
[mypy-seobject.*]
|
|
ignore_missing_imports = True
|
|
[mypy-sha.*]
|
|
ignore_missing_imports = True
|
|
[mypy-smtpd.*]
|
|
ignore_missing_imports = True
|
|
[mypy-smtpd_tls.*]
|
|
ignore_missing_imports = True
|
|
[mypy-SoftLayer.*]
|
|
ignore_missing_imports = True
|
|
[mypy-spotinst_sdk.*]
|
|
ignore_missing_imports = True
|
|
[mypy-statsd.*]
|
|
ignore_missing_imports = True
|
|
[mypy-storops.*]
|
|
ignore_missing_imports = True
|
|
[mypy-taiga.*]
|
|
ignore_missing_imports = True
|
|
[mypy-thycotic.*]
|
|
ignore_missing_imports = True
|
|
[mypy-tomlkit.*]
|
|
ignore_missing_imports = True
|
|
[mypy-univention.*]
|
|
ignore_missing_imports = True
|
|
[mypy-vexatapi.*]
|
|
ignore_missing_imports = True
|
|
[mypy-voluptuous.*]
|
|
ignore_missing_imports = True
|
|
[mypy-websocket.*]
|
|
ignore_missing_imports = True
|
|
[mypy-XenAPI.*]
|
|
ignore_missing_imports = True
|
|
[mypy-xkcdpass.*]
|
|
ignore_missing_imports = True
|
|
[mypy-xmljson.*]
|
|
ignore_missing_imports = True
|
|
[mypy-xmltodict.*]
|
|
ignore_missing_imports = True
|
|
[mypy-xmpp.*]
|
|
ignore_missing_imports = True
|