Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 30 Jul 2023 07:57:25 +0000
From:      bugzilla-noreply@freebsd.org
To:        python@FreeBSD.org
Subject:   [Bug 272811] sysutils/py-ansible-core: Missing dependency on textproc/py-toml
Message-ID:  <bug-272811-21822@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D272811

            Bug ID: 272811
           Summary: sysutils/py-ansible-core: Missing dependency on
                    textproc/py-toml
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: ports-bugs@FreeBSD.org
          Reporter: madpilot@FreeBSD.org
                CC: 0mp@FreeBSD.org, python@FreeBSD.org
                CC: 0mp@FreeBSD.org, python@FreeBSD.org

Created attachment 243700
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D243700&action=
=3Dedit
patch v1

Hi,

After recent updates to the ports tree a pkg upgrade followed by pkg autore=
move
deleted the py-toml port considering it an orphan, on machines where I have
ansible installed.

After this ansible started failing with the following error:

ERROR! Unexpected Exception, this is probably a bug: module 'toml' has no
attribute 'loads'
the full traceback was:

Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/ansible/cli/__init__.py", li=
ne
659, in cli_executor
    exit_code =3D cli.run()
  File "/usr/local/lib/python3.9/site-packages/ansible/cli/adhoc.py", line =
117,
in run
    loader, inventory, variable_manager =3D self._play_prereqs()
  File "/usr/local/lib/python3.9/site-packages/ansible/cli/__init__.py", li=
ne
564, in _play_prereqs
    inventory =3D InventoryManager(loader=3Dloader, sources=3Doptions['inve=
ntory'],
cache=3D(not options.get('flush_cache')))
  File "/usr/local/lib/python3.9/site-packages/ansible/inventory/manager.py=
",
line 167, in __init__
    self.parse_sources(cache=3Dcache)
  File "/usr/local/lib/python3.9/site-packages/ansible/inventory/manager.py=
",
line 228, in parse_sources
    parse =3D self.parse_source(source, cache=3Dcache)
  File "/usr/local/lib/python3.9/site-packages/ansible/inventory/manager.py=
",
line 279, in parse_source
    for plugin in self._fetch_inventory_plugins():
  File "/usr/local/lib/python3.9/site-packages/ansible/inventory/manager.py=
",
line 207, in _fetch_inventory_plugins
    plugin =3D inventory_loader.get(name)
  File "/usr/local/lib/python3.9/site-packages/ansible/plugins/loader.py", =
line
855, in get
    return self.get_with_context(name, *args, **kwargs).object
  File "/usr/local/lib/python3.9/site-packages/ansible/plugins/loader.py", =
line
878, in get_with_context
    self._module_cache[path] =3D self._load_module_source(name, path)
  File "/usr/local/lib/python3.9/site-packages/ansible/plugins/loader.py", =
line
828, in _load_module_source
    spec.loader.exec_module(module)
  File "<frozen importlib._bootstrap_external>", line 850, in exec_module
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_remo=
ved
  File
"/usr/local/lib/python3.9/site-packages/ansible/plugins/inventory/toml.py",
line 161, in <module>
    toml_loads =3D toml.loads  # type: ignore[assignment]
AttributeError: module 'toml' has no attribute 'loads'


So it looks like toml is an actual ansible unregistered dependency that
happened to be installed by some other dependency an is not being anymore.

I'm attaching a very simple patch I'm using locally that fixes the issue for
me.
Can you commit it or approve me committing it?

Thanks in advance!

--=20
You are receiving this mail because:
You are on the CC list for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-272811-21822>